有天老郑在同学的聚会中看到小五愁眉满面,一问之下才知道原来小五正在困脑一件公司的案子,最近公司引进e-Learning跟许多家e-Learning厂商结盟,但是学习的教材分散在各家数位学习厂商的网站上,当员工要查询学习数据都要一家一家网站登入去寻找而耗费许多时间,使得公司的e-Learning成效不彰,因此老板希望小五可以写一个搜索页就能够找到各家的学习资源。无奈各家厂商的数据库格式与搜寻方法都不同,要全连结起来是一件烦人的大工程。听完小五的诉苦后,老郑笑笑说那就引进SQI吧,可以让你透过网络轻松取得各家厂商的数据…,在听完老郑的讲解后,小五也开的笑了出来。到底SQI有什么魔力可以解决小五困扰已久的问题?
什么是SQI
SQI主要是用在查询网络上的学习资源库的学习资源,它的全名是Simple Query Interface,就如同它全名所代表的意思,他是一个简单的查询接口让你可以查到分布在网络各地的学习资源。
如上图所表示,如果使用者想经由A厂商的网页查询A厂商与B厂商的学习资源,A厂商无须把B厂商的资源库整个拿过来架在自己的资源库内,光数据整合就需要耗费大量人力与心力,此时只需要请B厂商提供他们的SQI界面给我们来呼叫使用就可以了。
因为SQI的技术架构在web service上,因此我们必须先来简单谈谈什么是web service,web service可以想象成一个提供透过网络呼叫函式的技术。写过程序的人都知道,为了让程序有可重用性,通常会把完成特定功能的程序代码集合在一起写成一个函式,方便以后用来时就呼叫来用,假使我们写了一个得知现在计算机(A计算机)CPU温度的函式getTemperature (),可当我们在其他台计算机上想知道A计算机的CPU温度该怎么办?此时我们可以透过web service的技术让getTemperature函式透过网络来呼叫,又因为web service是透过HTTP协议传送数据,完全不用担心传送的数据会被防火墙文件下来。
SQI的函式
之前提过SQI是架构在web service上,而web service可以洗像成一个提供透过网络呼叫函式的技术,我们现在来看看SQI提供哪些函式服务:SQI提供了数个函式分成管理、设定、异步查询与同步查询四大类,让使用者可以简单的呼叫使用,我们一一来看:
呼叫SQI的流程
想必很多人都想知道怎么使用这几个函式就能够呼叫学习资源库数据,一个简单的SQI呼叫流程大致可分几个步骤如下:1. 选择所要查询的资源库的SQI
2. 利用匿名(createAnonymousSession)或非匿名(createSession)的方式取得通行账号sessionID,这个动作就像网站的登入
3. 设定查询的变量,像是setMaxQueryResults设定回传的总数、setResultsSetSize设定用同步查询时单一次回传的比数
4. 选择所要查询的模式,是同步查询还是异步查询来接收数据
5. 输入查询的字符串来得到数据执行destorySession,这个动作就像是注销SQI 传送数据的方式分成两种—同步与分同步,在SQI上同步的定义是把数据直接回传给你,但是不是一次回传全部所有数据,而是回传一定的笔数,这个笔数预设是 25,但你也可以自己用setResultsSetSize作设定。而异步则是把全部数据传送到一个接收的SQI上,为了接收数据必须实做一个 queryResultsListener。分这两种方式传送资料可以让开发者选择最适合的显示数据的方式,同步查询会一个接着一个去不同资源库查数据,每次给一定笔数方便开发者写分页程序用,但如果你不想让使用者查询数个不同数据库时等待太久,可以给它一个QueryID让他之后再上来看全部数据,这时就可以使用异步查询的方式。
SQI目前所回传的资源库信息都用XML格式储存,用LOM的规范纪录每笔学习组件的标题,描述与教材的网址,一个简单的回传格式如下:
<lom>
<general>
<identifier>
<catalog>资源库名称</catalog>
<entry>教材编号</entry>
</identifier>
<title>
<string>标题</string>
</title>
<description>
<string>描述</string>
</description>
</general>
<technical>
<location>教材网址</location>
</technical>
</lom>范例:
<lom>
<general>
<identifier>
<catalog>edna</catalog>
<entry>edna:715347</entry>
</identifier>
<title>
<string>National Geographic animal photo galleries</string>
</title>
<description>
<string>This collection of photographs of animals around the world includes birds, some insects, spiders, land mammals eg bears and apes, reptiles, underwater animals, and some habitats.Alligators and Crocodiles, Animal Minds, Animals of Antarctica, Animals of the Arctic, Animals of the Gal</string>
</description>
</general>
<technical>
<location>http://photography.nationalgeographic.com/photography/photogalleries/animals</location>
</technical>
</lom>
由此我们可知SQI只是帮我们做查询数据的动作,并没有把教材传过来的能力,想看教材还是得连回去原网站观看。
SQI应用
写到此大家已经知道SQI基本的功能与用法了,现在网络上也有网站应用此技术连结各个学习资源库,比如说是日本的资源库网站NIME便提供了应用SQI技术的联盟搜寻功能(http://nime- glad.nime.ac.jp/en/program/federated_search/index.php),可以查到NIME、MERLOT、 LORNET、edna与ARIADNE等资源库网站的数据。在国内比较著名的就是e-Learning国家资源库(http://www.lort.org.tw/),在e-Learning国家资源库内并没有教育部与数字典藏联合目录的数据,但是只要输入想查询的字符串,就能获的教育部与数字典藏联合目录的数据,无须自己分别跑到各网站查询所需的数据。下图我在国家资源库内输查询CAT数据,并勾取全部所连结的4个资源库,网站会一一帮我去找数据后显示出来。
结论
SQI技术的出现让世界资源可以连接在一起,我们无须花费时间去各个资源库取得我们想要的数据,只要鼠标一按,网站可以自动去搜集全部的资源来,只要国内做e-Learning资源库的公司愿意提供SQI出来,让数字教材与素材教材共享出来,相对未来不管学生或是老师在学习或教学上都能获得相当大帮助。
TAG: SQI 学习资源



