Interoperability of repositories: the simple query interface in ARIADNE.This article reports on our experiences in providing interoperability The capability of two or more hardware devices or two or more software routines to work harmoniously together. For example, in an Ethernet network, display adapters, hubs, switches and routers from different vendors must conform to the Ethernet standard and interoperate with each other. between the ARIADNE knowledge pool system (KPS KPs keratic precipitates. ) (Duval, Forte, Cardinaels, Verhoeven, Van Durm, Hendrickx et al., 2001) and several other heterogeneous learning object repositories and referatories. Introduction This article gives an overview on the role of the Simple Query Interface (SQI SQI Software Quality Institute (Griffith University, Queensland, Australia) SQI Simple Query Interface SQI Soil Quality Institute SQI Service Quality Index SQI Serial Quad I/O ) (Simon, Massart, Van Assche, Ternier, Duval, Brantner et al., 2005) in providing interoperability between metadata repositories. It reports on work that has been done bridging different Learning Object Infrastructures and tries to give an overall picture of the current status. Interoperability has been achieved with two types of systems: learning object referatories and learning object repositories. A learning object referatory (e.g., EdNA online, MERLOT) maintains metadata about resources that are not managed by the system. It describes content and provides references to learning objects or learning resources. As these systems do not host the content, they are challenged with managing references that are often not persistent. A referatory usually also offers mechanisms to detect changes and trigger updates on metadata, as content on the Web evolves over time without notification. A learning object repository (LOR LOR Letter Of Reprimand (military) LoR Lord of the Rings (J.R.R. Tolkien) LOR Learning Object Repository LOR Linux.Org. ) (e.g., the ARIADNE KPS, http://www.ariadne-eu.org) offers besides a metadata repository also a content repository. For this type of system, there is no need to deal with the issues described above, as the system manages the content itself. Administering the content comes with the obligation to provide other content management services like digital rights management, version tracking, making the content accessible, etc. As our SQI applications only deal with querying metadata, this article will not cover content management and hence, we limit ourselves to metadata repositories only. These are offered by both learning object repositories and learning object referatories. We assume however that all metadata repositories are able to provide a reference. This reference can either resolve directly to the content, or can lead a user to a page, describing how to proceed further if he/she wants to obtain the content. In this article, our understanding of metadata repository will cover an individual storage layer (relational database relational database Database in which all data are represented in tabular form. The description of a particular entity is provided by the set of its attribute values, stored as one row or record of the table, called a tuple. , XML XML in full Extensible Markup Language. Markup language developed to be a simplified and more structural version of SGML. It incorporates features of HTML (e.g., hypertext linking), but is designed to overcome some of HTML's limitations. store) which can be part of a peer-to-peer network (1) A network of computers configured to allow certain files and folders to be shared with everyone or with selected users. Peer-to-peer networks are quite common in small offices that do not use a dedicated file server. (Nejdl, Wolf, Changtao, Decker, Sintek, Naeve et al., 2002), federated search Federated search is the simultaneous search of multiple online databases and is an emerging feature of automated, Web-based library and information retrieval systems. It is also often referred to as a portal, as opposed to simply a Web-based search engine. network, etc. An ARIADNE knowledge pool system is considered as one storage layer, while the federated search layer that will be described below is not. This federated search layer is not part of the ARIADNE Knowledge Pool System, although it is used by some ARIADNE tools. SQI API (Application Programming Interface) A language and message format used by an application program to communicate with the operating system or some other control program such as a database management system (DBMS) or communications protocol. SQI is a specification created under the auspices of the CEN/ISSS CEN/ISSS CEN's Information Society Standardization System (European Standardization Related) Learning Technologies Workshop. The partners involved in this process all represent very different kinds of metadata repositories. This has led to a query transport specification that is applicable in different contexts and that meets very different architectural requirements. For ARIADNE, the SQI API enables two kinds of interoperability. * Tool interoperability. Users have more freedom in picking a search engine, to search into the ARIADNE knowledge pool system. From the moment that the API is implemented on a system, its searching functionality becomes available in a whole range of applications that know how to send queries to an SQI enabled search engine. These applications that were formerly very strongly coupled to the ARIADNE knowledge pool, are now reusable on non ARIADNE repositories. Providing such an interface between search components, leaves organisations with more freedom in providing search functionality in their e-learning framework. * Interoperability between metadata repositories. The SQI API is beneficial for both foreign repositories targeting interoperability with ARIADNE and ARIADNE aiming interoperability with other repositories. - At the time of writing, the ARIADNE SQI interface is integrated in Edusource (Splash Federated Search, 2004) through an ECL (Emitter-Coupled Logic) A digital circuit composed of bipolar transistors in which the emitter ends are wired together. ECL gates switch faster than TTL gates, but consume more power. See TTL, I2L and bipolar. 1. gateway, MERLOT (1997) and Celebrate (Celebrate, n.d). Other implementations in EdNA (2005), Lionshare (2005) and EducaNext (ELENA ELENA Enhanced Learning for Evolutive Neural Architectures , n.d.) are ongoing. These repositories benefit from SQI by future integrations of other SQI-enabled repositories becoming available for free. - Inversely, the ARIADNE search tool can benefit from other repositories that implement SQI because the federated search layer it uses can be extended with other SQI targets. As more metadata repositories provide SQI targets, integrating them is only an issue of configuration provided that they offer queries in the same query language A generalized language that allows a user to select records from a database. It uses a command language, menu-driven method or a query by example (QBE) format for expressing the matching condition. and return results in the same metadata binding. Currently, the ARIADNE community can search through SQI in MERLOT, EdNA, EducaNext, RDN RDN Relative Distinguished Name (TMN) RDN Resource Discovery Network (UK) RDN Regional District of Nanaimo (Nanaimo, BC, Canada) RDN Redirected Number RdN Ragazzi Della Nord , Pond and Celebrate. SQI comes in two communication scenarios: an asynchronous Refers to events that are not synchronized, or coordinated, in time. The following are considered asynchronous operations. The interval between transmitting A and B is not the same as between B and C. The ability to initiate a transmission at either end. scenario and a synchronous scenario. One must implement at least one scenario. In the synchronous scenario, a client (source) sends a query to a repository (target) and actively waits for the target to return results. Note that in this scenario, a program (thread) halts until it receives results. In the asynchronous scenario, clear distinction is made between two actions. After the source has sent a query to a target, it proceeds execution and does not wait for the target. Using a result listener service (implemented on the source), a target can later register its results. This scenario assumes that the target is able to contact the source. Federated Search Through SQI Searching beyond the borders of ARIADNE is of great value to the end users. Before, SILO--ARIADNE's search and indexation tool--only delivered results that were indexed by ARIADNE members. With each new repository that is added through SQI, more heterogeneous content becomes available to the ARIADNE community. Both the synchronous and asynchronous interface are useful here. On one hand, a front-end tool requires an easy way to integrate API. On the other hand, the back-end architecture needs to be able to send queries and retrieve searches in a flexible way. SQI has proven to be very useful here. A programmer or web-designer that wants to integrate a search API into a front-end tool, does not want to deal with the complexities of asynchronous querying, ranking and merging results. Asynchronous requests suffer an additional complexity when dealing with software that runs on desktops. As these are often hidden behind a network address translation (NAT (Network Address Translation) An IETF standard that allows an organization to present itself to the Internet with far fewer IP addresses than there are nodes on its internal network. ) or firewall, it might not always be possible for a target to initiate contact with the hidden source and hence receiving the results asynchronously. Therefore, both SILO and a search prototype tool only use the synchronous SQI API. In the back-end, a federated search component acts as a gateway to different SQI enabled repositories. This component offers a synchronous SQI interface to the front-end and is able to issue both synchronous and asynchronous queries in the back-end. The federated search component is able to forward queries to both API's. The asynchronous API has proven to be helpful here, as it can forward a query asynchronously to a number of repositories and use one listener to collect all results. The component can also federate fed·er·ate v. fed·er·at·ed, fed·er·at·ing, fed·er·ates v.tr. To cause to join into a league, federal union, or similar association. v.intr. To become united into a federal union. queries to synchronous SQI targets, as we don't want to exclude targets that do not implement the asynchronous interface. In the latter scenario, we need a separate thread for each synchronous target to which the federated search layer connects. This thread first sends the query to the foreign target and next synchronously waits for results. SQI makes it possible to implement a query service that is either stateful or stateless Refers to software that does not keep track of configuration settings, transaction information or any other data for the next session. When a program "does not maintain state" (is stateless) or when the infrastructure of a system prevents a program from maintaining state, it cannot take . In the stateless scenario, an implementation usually re-executes a query when a source polls for additional results. This is not the behaviour we target when providing SQI on top of a federated search target. As re-executing a query might not only be time consuming, but will likely return results in another order. Because of that, a stateful federated search layer was designed, where the query string The actual characters in a search request sent to a query program. It typically contains the query command and search data. Query strings are widely used on the Web for search engine queries as well as links to databases. identifies the state of an ongoing query. The ARIADNE knowledge pool offers a stateless SQI service, as the time necessary to execute a query on this target is negligible. In this section, we briefly outlined how searches are federated Connected and treated as one. See federated database and federated directories. to other repositories. Note that SQI is agnostic ag·nos·tic n. 1. a. One who believes that it is impossible to know whether there is a God. b. One who is skeptical about the existence of God but does not profess true atheism. 2. about the architecture for interoperability and that we only explained one possible solution for this architecture. In the Edusource network, it is up to the client to decide in which repositories to conduct a search. Using the Edusource Communication Layer (ECL), a layer which can be implemented on top of a repository, a client can query a repository. The client, however, doesn't send its query to an intermediate layer, but to each repository separately which the client can discover through a Universal Description, Discovery and Integration (UDDI (Universal Description, Discovery and Integration) An industry initiative for a universal business registry (catalog) of Web services turned over to the stewardship of OASIS in 2002 as the version 3 specification of UDDI was released. ) service. As the UDDI registry contains information about the query templates a repository supports, the client itself is able to do the mapping from one query language to another query language. Note that in this context some ECL to SQI gateways are already operational (Splash Federated Search, 2004). Query Languages All partners involved in this network, offer different search methods on their repository. At a technical level, searches differ in semantics semantics [Gr.,=significant] in general, the study of the relationship between words and meanings. The empirical study of word meanings and sentence meanings in existing languages is a branch of linguistics; the abstract study of meaning in relation to language or , encoding See encode. and underlying metadata standard. * The ARIADNE KPS implements two query languages. Users can express advanced queries that are transported between applications serialized as XML messages. The following excerpt ex·cerpt n. A passage or segment taken from a longer work, such as a literary or musical composition, a document, or a film. tr.v. ex·cerpt·ed, ex·cerpt·ing, ex·cerpts 1. exemplifies such an XML document.</p> <pre> <advancedQuery> <And> <queryItem comparison="contains" path="ariadneDocument/title" value="Java"/> <queryItem comparison="lower" path="ariadneDocument/publicationDate" value="10/11/1993"/> </And> </advancedQuery> </pre> <p>As most end users only want to provide search terms to the query application without the need know what the exact semantics of the query is, ARIADNE also defines a metadata independent query languages. Using the latter query language applications can send a list of search terms to the KPS:</p> <pre> <simpleQuery> <item>LOMster</item> <item>Ternier</item> </simpleQuery> </pre> <p>Note, that it is our intention to enrich these queries with the profile of a user so that better ranking or results can be presented. * Edusource offers different templates. The most limited template enables clients to only search using search terms. In the most general case an ECL enabled repository can offer full XQuery capabilities. * The EdNA Online Distributed Search enables Google-like searches. If one uses the HTML HTML in full HyperText Markup Language Markup language derived from SGML that is used to prepare hypertext documents. Relatively easy for nonprogrammers to master, HTML is the language used for documents on the World Wide Web. API, searches are encoded as a parameter in the URL URL in full Uniform Resource Locator Address of a resource on the Internet. The resource can be any type of file stored on a server, such as a Web page, a text file, a graphics file, or an application program. . The following example illustrates this: a parameter q has as a value several search terms delimited de·lim·it also de·lim·i·tate tr.v. de·lim·it·ed also de·lim·i·tat·ed, de·lim·it·ing also de·lim·i·tat·ing, de·lim·its also de·lim·i·tates To establish the limits or boundaries of; demarcate. by a '+.' http://api.edna.edu.au/search.xml?q=relativity+special Although the EdNA API only offers limited query possibilities, some of the backhand repositories that implement this EdNA API, offer more expressive search functionality. * Similarly to ARIADNE, MERLOT offers two search syntaxes: - MERLOT's simple search syntax makes it possible to glue search terms together with boolean operators One of the Boolean logic operators such as AND, OR and NOT. : "learning object" OR "learning resource" AND "lor" - An advanced query syntax defines a proper way of expressing searches that offer richer expressiveness. As illustrated by the following example, one can search into individual metadata fields using this syntax:</p> <pre> <search> <title>LOMster</title> <creatorname>Ternier</creatorname> </search> </pre> <p>In our first interoperability step, a greatest common denominator the largest See also: Denominator for all query languages was offered at the level of the federated search service that forwards queries into the network. As all participating repositories offer a possibility to issue search term based queries, this is the only search functionality that is offered for now. CONCLUSION AND FURTHER WORK In this article, we briefly outlined how ARIADNE is connected to and connects to different metadata repositories through SQI. These repositories currently only agree on exchanging search terms. Future interoperability steps will focus on exchanging semantically more expressive searches. This will enable tools and software agents to formulate requests (e.g., based on a user profile) that will better match the needs of an end user. Nothing has been decided yet at the level of ranking the individual results. Although all metadata repositories already leverage some kind of ranking, the aggregation layer is left with the problem of merging different arbitrarily ranked results. In a next phase, all partners could either agree on the same ranking algorithms or implement different algorithms that can then be selected by the clients. Currently, in the synchronous scenario, a target decides how long to wait until the first results are sent back. For some clients it is however necessary to provide results just fast (e.g., Google) while in other usage scenario's, time doesn't matter as long as the application provides good results. (e.g., searches into a peer-to-peer network). Note that no changes at the level of the SQI API are necessary to provide this functionality. References Celebrate (n.d.). Celebrate. Retreived August 31, 2005 from http://celebrate.eun.org/ Duval, E., Forte, E., Cardinaels, K., Verhoeven, B., Van Durm, R., Hendrickx, K., et al. (2001). The ARIADNE knowledge pool system. Communications of the ACM (publication) Communications of the ACM - (CACM) A monthly publication by the Association for Computing Machinery sent to all members. CACM is an influential publication that keeps computer science professionals up to date on developments. , 44(5), 73-78. EdNA Search Centre (2005). Education network Australia search centre. Retreived August 31, 2005 from http://www.edna.edu.au/edna/search ELENA (n.d.) The ELENA smart space for learning. Retreived August 31, 2005 from http://www.hcd-online.com/ubp LionShare (2005). Lionshare. Retreived August 31, 2005 from http://lionshare.its.psu.edu/ MERLOT (1997). Multimedia Educational Resource for Learning and Online Teaching federated search. Retreived August 31, 2005 from http://fedsearch.merlot.org/ Nejdl, W., Wolf, B., Changtao, Q., Decker, S., Sintek, M., Naeve, A., et al. (2002). EDUTELLA: A P2P See peer-to-peer and point-to-point. networking infrastructure based on RDF (Resource Description Framework) A recommendation from the W3C for creating meta-data structures that define data on the Web. RDF is designed to provide a method for classification of data on Web sites in order to improve searching and navigation (see Semantic Web). . In Proceedings of The 12th International World Wide Web Conference. Budapest, Hungary. Simon, B., Massart, D., Van Assche, F., Ternier, S., Duval, E., Brantner, S., et al. (2005). A simple query interface for interoperable learning repositories. In Proceedings of The 14th International World Wide Web Conference. Chiba, Japan. Splash Federated Search (2004). Splash federated search. Retreived August 31, 2005 from http://pool.iat.sfu.ca/fedsearch/ STEFAAN TERNIER AND ERIK DUVAL Katholieke Universiteit Leuven The KATHOLIEKE UNIVERSITEIT LEUVEN (Catholic University of Leuven in English) or in short K.U.Leuven, is the largest, oldest, and most prominent university in Belgium. , Belgium stefaan.ternier@cs.kuleuven.ac.be erik.duval@cs.kuleuven.ac.be |
|
||||||||||||||||||

Printer friendly
Cite/link
Email
Feedback
Reader Opinion