A SIMPLE PUBLISHING INTERFACE FOR LEARNING OBJECT REPOSITORIES Stefaan Ternier Katholieke Universiteit Leuven Leuven, Belgium [email protected] David Massart European Schoolnet Brussels, Belgium [email protected] Frans Van Assche European Schoolnet Brussels, Belgium [email protected] Neil Smith Knowledge Integration Ltd. [email protected] Bernd Simon Vienna university of economics and business administration Vienna, Austria [email protected] Erik Duval Katholieke Universiteit Leuven Leuven, Belgium [email protected] Abstract: This paper reports on the Simple Publishing Interface (SPI), a new work item of the CEN/ISSS Workshop on Learning Technologies that aims to produce a standard software protocol for publishing learning objects to digital repositories. This standardization project will facilitate transferring metadata and learning objects from tools that produce materials to applications that persistently manage learning objects and metadata. Secondly, we will investigate if we can enable synchronization or replication of learning objects and metadata between different repositories. First, the need for an interoperable and standardized publishing API will be articulated. Next, different requirements will be presented that were collected from various European projects. Finally, SPI is compared to existing specifications. Establishing interoperability for searching learning objects has enabled search access to a vast amount of learning objects. Previous work in standardization of an interoperable search protocol, has made it easier to find relevant learning objects. The Simple Query Interface (SQI) (Simon et al. 2005), is well-adopted by the European Learning Object Repository world and is one of the base specifications of GLOBE, an international consortium of repositories that promotes federated search and metadata harvesting for making learning object transparently accessible. The goal of this new work is to make it easier to make objects available for reuse in applications that persistently manage learning objects and metadata. Several terms exist to denote applications with such functionality. Learning Object Repositories sometimes give a bias towards server applications. Learning spaces (Simon et al., 2004) denote applications with similar functionality. For instance, a personal learning space can be located on a user’s hard drive and manages content locally. A classroom space holds content made used for delivering learning in a classroom. In the remainder of this article we will use the term repository to identify systems that manage metadata and content. The term repository should however be interpreted in a very broad sense. The traditional procedure for publishing learning objects to a repository is tightly integrated with a specific repository, whereas the publication to learners typically relies on a Learning Management System (LMS) or a Virtual Learning Environment (VLE). This complicates the workflow of the creator who will often publish to learners only, so that the object does not become available for reuse in the repository. By enabling transparent publishing from within applications that learning citizens use on a regular basis, we aim at facilitating the publication of learning objects. For instance, if a user can transparently push a presentation from within authoring applications like MS PowerPoint or OpenOffice Impress, a vast amount of materials can be made available for reuse in a repository. Other important deployment contexts for the publishing Application Program Interface (API) are LMSs or VLEs. Within these applications, learning objects are typically made available to students. Integrating transport support for publishing while distributing to learners will contribute to the availability of learning objects in a repository. Synchronization or replication of content is another important use case. For example, in the MELT project, a portal that uses federated search techniques with various repositories has been created. In this network, every query is broadcasted to all partners in the network. A search like ‘natural science’ returns more than 15.000 results, which puts a heavy processing load on the portal as metadata for all results are transferred over the network. Synchronizing metadata with a central metadata store prevents from having to issue distributed searches. This requires an API that allows for synchronization of metadata and/or content. In this article, some of the requirements for a publishing API are identified. To distinguish the requester from the system that publishes an entity (a metadata instance or a learning object), two terms are used: • • The term ‘source’ labels the system that issues a publication request. Alternatively, this system can be labeled as requester. A ‘target’ identifies the system to which publication requests are sent. This can be a repository component or a middle layer component. Such a middle layer component can fulfill several tasks. It can generate and attach metadata to a resource, disaggregate and publish smaller size LO components or act for instance as an adapter to a third party publishing API. We refrained ourselves from using the terms ‘client’ and ‘server’ as they give a bias towards an interface that is only applicable in client/server applications. Moreover, the scenarios in which the API is used also envision a source running on a server. Design The design of the publishing API will be based on the design principles of the Simple Query Interface. A simple set of commands will be provided, where extensibility and flexibility will be important. By analogy with SQI, this protocol will make a distinction between semantic and syntactic interoperability. • • Syntactic interoperability is the ability of applications to deal with the structure and format of data. For instance, a language such as XML Schema Description (XSD) ensures the syntactic interoperability of XML documents as it allows for the parsing and validation of these documents. Semantic interoperability refers to the ability of two parties to agree on the meaning of data or methods. When exchanging data, semantic interoperability is achieved when data is understood by all the actors involved. The following scenarios are inspired by existing applications and practices and should be supported by a publishing API. • • • A learning object referatory manages metadata that refers to learning objects stored on separate systems. The API must thus be supportable by repositories that do not manage learning objects. Some applications manage publishing learning objects without the metadata. PENS - see Section on related work - is an example of such a protocol. Finally, the protocol must allow for publishing to repositories that manage both learning objects and metadata. In order to support these different practices, there should be no dependencies between the methods that publish metadata and the methods that publish learning objects. One should be able to publish metadata separate from publishing learning objects. For instance, a publishing scenario for referatories requires a protocol through which an application can publish metadata that refers to an already published learning object. As an example, consider the architecture depicted in Figure 1. Figure 1: Pull with harvest, publish with push technology The architecture that is depicted in figure 1, enables harvesting from repositories that expose their metadata through an OAI-PMH (Lagoze & Van de Sompel, 2001) target and illustrates how a harvest component can consume OAI-PMH services and pull metadata from repositories that it next pushes to a metadata store that provides a publishing interface, e.g. an institutional space that replicates learning objects useful to the members of that institution. This metadata store is a referatory and requires the ability to publish metadata rather than the learning object. Learning object archival tools such as the ARIADNE search and indexation tool (Neven et al., 2003) enable users to submit and describe a learning object with metadata. After submission, the end user application transfers both learning object and metadata to a learning object repository. As we target a publishing protocol that is as generic as possible, the protocol should not impose a restriction on the order of both transactions. One should thus be able to first submit the learning object followed by the metadata or vice versa: publish the learning object after the metadata has already been submitted. “By reference” and “by value” transfer of learning objects When publishing learning objects, a resource needs to transferred from a source to a target. The following does not apply for referatories as these only manage metadata. Traditionally, two approaches allow for passing data from a source to a target. 1. “By value” publishing embeds a learning object, after encoding, into the message that is sent to a target. 2. “By reference” publishing embeds a reference (e.g. a URL) to a learning object into the message that is sent to a target. When a target receives this reference from a source, it must retrieve the resource and store it in the repository to complete the publishing of the resource. “By value” publishing is useful for a standalone application, which is generally not associated with a web server on which a target can obtain a learning object. In this case, embedding a learning object in a message passed to the target lowers the threshold for pushing a learning object. “By reference” publishing is particularly suited when larger amounts of data have to be published. As embedding large files into a single message may cause degraded performance, a need exists to use a distinct method (e.g., FTP, HTTP, SCP, etc.) for uploading learning objects. Rather than imposing one of these approaches, the publish protocol will be designed to support both of them. Recalling a Published Learning Object We need to consider a scenario where disputes between the different owners of the various spaces arise. In such a situation a publisher of a learning object might want to recall a published learning object. Hence the interface needs to support recalling a published learning object or a published reference. Summary The publishing interface has to fulfil the follow requirements: 1. The interface needs to able to support the exchange of metadata and content. 2. When publishing users might want to choose whether the learning object is transferred “by value” or “by reference” to the repository. 3. Users might want to recall the publication of a learning object or the publication of metadata. Related Work The Package Exchange Notification Services (PENS) protocol supports a notification service for content packages (PENS, 2005). PENS does not support publishing metadata instances, neither does it support sending a content package ”by value”. Using this notification service a source can announce the location of a package that is available for transport. When an application like a learning management system receives a PENS notification, it can retrieve the package from the URL that is provided. This protocol makes a distinction between semantic and syntactic interoperability. The PENS specification contains an abstract data model and provides a binding to the HTTP protocol. The SRU (McCallum, 2006) Record Update service allows for creating, replacing and deleting metadata records. This specification does not deal with publishing resources and can thus be implemented on referatories only. The EduSource Communication Layer (ECL) (Hatala et al., 2004a) gives a concrete implementation to the messages proposed in IMS DRI (IMS, 2003). ECL implements a submit message for submitting learning objects or metadata to a repository. As ECL builds on IEEE LOM metadata only, it does not include parameters or methods to set the metadata schema or an application profile of LOM. ECL does not distinguish between uploading learning objects and metadata. The Open Knowledge Initiative (O.K.I) has specified Open Service Interface Definitions (OSID) through which one can submit assets to a digital repository. The repository OSID defines a JAVA Asset interface that manages both content and records. The asset interface offers methods for adding and deleting records to an Asset. The asset interface defines an updateContent method, through which one can associate content to an asset. The JISC funded SWORD project aimed to "improve the efficiency and quality of repository deposit and to diversity and expedite the options for timely population of repositories with content whilst promoting a common deposit interface and supporting the Information Environment principles of interoperability". The project reviewed related initiatives in the area and decided that the best approach, rather than develop new standards in this area, was instead to use a profile of an existing standard, the Atom Publishing Protocol (RFC 5023). This is a relatively lightweight approach based around a RESTful service. The project successfully implemented interfaces based on this protocol on four major repository systems in wide use with Higher Education: EPrints, DSpace, Fedora and IntraLibrary. The SWORD profile has also been used by a range of other systems. The work of the SWORD project will also feed into the new CEN/ISSS work item. A publishing specification was implemented in ARIADNE and has been published in (Ternier and Duval, 2003). In this article, a web services based approach was introduced that facilitates integrating the publishing process into applications where learning objects are either consumed or produced. In the ProLearn project a generalized version of this API that takes into account requirements from projects and organisations, such as ALOE, TENCompetence, MACE, MELT, EUN and ARIADNE. Initial outcomes of this work have been implemented in the TENCompetence project, ARIADNE, MACE (Prause et al., 2007) and MELT and were published in (Demidova et al., 2007). References ARIADNE, http://www.ariadne-eu.org IMS (2003). IMS Digital Repositories Interoperability - Core Functions Information Model. a Metadata Ecology for Learning and Teaching (MELT), http://info.melt-project.eu/ Metadata for Architectural Contents in Europe (MACE), http://www.mace-project.eu/ The Open Knowledge Initiative (OKI), http://www.okiproject.org/ Package Exchange Notification Services (PENS) (2005). Guidelines for Package Exchange Notitication Services. Simple Web-service Offering Repository Deposit (SWORD) http://www.ukoln.ac.uk/repositories/digirep/index/SWORD TENCompetence, http://www.tencompetence.org/ Demidova, E., Kärger, P., Olmedilla, D., Ternier, S., Duval, E., Dicerto, M., Mendez, C., and Stefanov, K. (2007). Services for knowledge resource sharing & management in an open source infrastructure for lifelong competence development. icalt, 0:691–693. Hatala, M., Richards, G., Eap, T., and Willms, J. (2004a). The Edusource Communication Language: Implementing Open Network for Learning Repositories and Services. In SAC '04: Proceedings of the 2004 ACM Symposium on Applied Computing, pages 957-962, New York, NY, USA. ACM Press. Hatala, M., Richards, G., Thorne, S., and Merriman, J. (2004b). Closing the Interoperability Gap: Connecting Open Service Interfaces with Digital Repository Interoperability. In Lorenzo Cantoni and Catherine McLoughlin, editors, Proceedings of World Conference on Educational Multimedia, Hypermedia and Telecommunications 2004, pages 78 83, Lugano, Switzerland. AACE. Lagoze, C. and Van de Sompel, H. (2001). The open archives initiative: building a low-barrier interoperability framework. In JCDL '01: Proceedings of the 1st ACM/IEEE-CS joint conference on Digital libraries, pages 5462, New York, NY, USA. ACM. McCallum, S. H. (2006). A look at new information retrieval protocols: SRU, OpenSearch/a9, CQL, and XQuery. In World Library and Information Congress: 72nd IFLA General Conference and Council. IFLA, IFLA. Neven, F., Duval, E., Ternier, S., Cardinaels, K., and Vandepitte, P. (2003). An Open and Flexible Indexationand Query tool for Ariadne. In Lassner, D. and McNaught, C., editors, Proceedings of World Conference on Educational Multimedia, Hypermedia and Telecommunications 2003, pages 107-114, Honolulu, Hawaii, USA. AACE. Prause, C., Ternier, S., de Jong, T., Apelt, S., Scholten, M., Wolpers, M., Eisenhauer, M., Vandeputte, B., Specht, M., and Duval, E. (2007). Unifying Learning Object Repositories in MACE. In First International Workshop on Learning Object Discovery & Exchange (LODE'07), Crete, Greece. Simon, B., Massart, D., Van Assche, F., Ternier, S., Duval, E., Brantner, S., Olmedilla, D., and Miklos, Z. (2005). A Simple Query Interface for Interoperable Learning Repositories. In Proceedings of the 1st Workshop on Interoperability of Webbased Educational Systems, pages 11-18. Simon, B., Dolog., P., Miklós, Z., Olmedilla, D. and Sintek, M. (2004). Conceptualising Smart Spaces for Learning. Journal of Interactive Media in Education, 2004 (9). Special Issue on the Educational Semantic Web Ternier, S. and Duval, E. (2003). Web services for the ARIADNE knowledge pool system. In Proceedings of the 3rd Annual ARIADNE Conference, pages 1-9. ARIADNE Foundation.
© Copyright 2026 Paperzz