view printer-friendly version (opens in new window)
The cockroach of repository interoperability: Simple Query Interface
The European educational interoperability standards agency, the CEN-ISSS Learning Technologies Workshop, recently started specification and experimentation work on the Simple Query Interface (SQI). The specification candidate is based on work by a range of European and international projects and agencies. Given the plethora of digital repository interoperability specifications that already exist, we asked editors Erik Duval and Frans van Assche about the reasoning behind this one.
To understand the impetus behind the new spec, it is instructive to have a quick glance on who's behind it and why.
The specification as it stands at the moment is partially sponsored by the CEN/ISSS, and is based on work by Ariadne, CELEBRATE, Edutella, Elena, EduSource, ProLearn, Universal/EducaNext and Zing. Taken in turn, that means a venerable network of repositories and e-learning tools, a network brokerage system that ties the VLEs of schools together, a peer-to-peer educational resource tool network, an agent based 'smart space' project, the Canadian network of learning object repositories, a new network of excellence on professional learning, a learning object brokerage system, and the next generation webservices based specs derived from the Z39.50 library protocol. And that's before considering all the agencies that are involved in all of these projects and consortia.
Not only does this constitute a lot of people with different priorities, it also means a very wide variety of existing resources as well as technologies to make the resources available. The Elena project, for example, is exploring the possibilities of moving beyond learning objects to 'learning services'; more like events than objects, and very specific rather than generic and re-useable. Services such as tutoring via email or a video-conferences lecture are to be made available via a Semantic Web based peer-to-peer network, traversed by Personal Learning Agents. All of which is a bit of a contrast to the more conventional learning object repositories of Ariadne and EduSource.
In very practical terms, such a diverse background means that there is a demand for something that can run a query on swarms of widely distributed systems that do not necessarily share a query language, metadata schema, schema technology or anything very much in the way of a basic wire protocol. Common heavyweight repository protocols such as the Z39.50 and XQuery standards suggested by the IMS Digital Repository Interoperability (DRI) specification, presume a bit too much, and are too difficult too implement after the fact in many of these tools.
Hence you need a simple little critter of a spec that survives in almost any environment. This is where SQI comes in.
Thing is, there are already a few specs that address the same sort of space, if not necessarily with in the specifically educational community. Prime among these is Search/Retrieve for the Web (SRW), a greatly simplified version of Z39.50, implemented as a web service. This means that it transfers information in XML over http.
A potential problem with SRW is that it only does synchronous queries. A source system puts a query to a target, and waits until the target comes back with a response (the results, if at all possible).
Strategy manager of European Schoolnet and vice chair of CEN/ISSS Frans van Assche points out that such models may not work very well for heterogeneous networks that involve querying peer-to-peer applications such as Edutella. In practice, a synchronous query such as those defined by SRW assumes that the query comes from a simple client application that just receives and displays information from one server. Like the web, in fact. So if one in ten thousand or so queries gets no response from the server, the worst that can happen is that the system that sent the query 'hangs' for a bit.
If you do the same in a heterogeneous peer-to-peer network, the problems multiply, because the chances that one of the systems that receives a query is down is that much larger. Also, sending a query wouldn't be one to one, client-server affair: it quickly involves more than half of the network. Result: utter gridlock.
Hence the fact that the current draft of SQI, unusually for something designed to be simple, has both a synchronous and asynchronous mode. This asynchronous capability largely builds on the work of CELEBRATE on their learning object brokerage work, where the same issuehad already been addressed.
Not mentioned by Frans is the additional fact that some of the participants in a Elena or ProLearn type of network don't normally work with either XML (not the XMLSchema variety, anyway) or http.
Instead, SQI is, at the moment, not a language, as Ariadne President and LOM luminary Erik Duval points out. It doesn't have or need a data model, or a particular language for the query itself. Instead, SQI is an Application Programming Interface (API), which is essentially just a coherent list of agreed programming commands. All it takes care of is sending queries and responding to queries, but not the structure of the queries themselves. That means SQI is minimal, and therefore relatively easy to implement in a variety of systems.
Thing is, the same initiative that made SRW -the Z39.50 International Next Generation (ZING)- has already defined a similar API: the Z39.50 Object Oriented Model (ZOOM) abstract API. And there are more from other organisations. Like SRW, ZOOM does not claim to support asynchronous connections, but more or less private implementations of such functionality do exist.
Erik acknowledges these competing specs, but contends that nearly every community will have a favourite technology to push. The main concern, according to Erik, is to get a solution that is acceptable to the greatest number of people, quickly. Other than that, the most important requirement is that it is something simple, and something that can support multiple bindings (i.e. can be expressed in different technologies) and has scalable complexity. For instance, one could imagine that there would be a binding of SQI to SRW, ZOOM and other protocols, not unlike the way that LOM is nowadays being bound to XMLSchema and RDF technologies?
Erik stresses that the spec is not finished yet, though. It is mostly an indication of a problem space, rather than a finished solution. Over the coming months, the spec as it is being developed will be implemented and tested by the various partners, then evaluated over the summer.
As with any learning object repository related technoloogy, the recurring issue with SQI is the fact that it brings together two different communities of practice: the relatively new e-learning community and the much older (digital) library community. Each have a stake in the repository field, and each bring their own technologies and ways of working. At the moment, SQI is more on the e-learning side of the fence, but we'll see whether it will stay there.
Most of the technical details of the nacent SQI spec are available from the Interoperability Working Group pages of the Elena project, but will move to the LorInteroperability Wiki at Leuven University (link updated 20-1-2005).
Further details on the asynchronous mode is available on the CELEBRATE technical document pages.
More details on the various stakeholders in the process be found on the websites of
Elena project, and
ProLearn network of excellence
More about SRW and ZOOM can be found on the ZING pages of the Library of Congress.