The Community for Technology Leaders

Architecture for Learning Objects Sharing among Learning Institutions—LOP2P

André L.A.

Pages: pp. 91-95

Abstract—This paper presents an interoperability architecture that allows different educational institutions to share their learning object repositories, in order to create courses using Learning Management Systems (LMS). The initiative is in line with a current trend in educational institutions to produce learning objects and make them freely available through open web repositories. The proposed mechanism is based on Peer-to-Peer architecture, in which each institution is a peer. This paper details the two main components of the architecture, plug-in, for LMS-like systems, and Mediation Layer. Some implementation issues are also discussed.

Index Terms—Learning objects, learning management systems, learning networks.


There are many definitions of Learning Objects (LO) [ 1], [ 2], [ 3], [ 4], but they all have one point in common: the reusability. This characteristic guarantees that one piece of digital instructional material can be used and applied for various educational purposes, in different settings. For the reusability to be made more effective, the sharing of LO needs of the institutions overcomes some existing barriers.

The use of virtual learning environments in learning institutions is quite common. This kind of software manages student learning, offering an environment for a specific course in which teachers and students can interact [ 5]. This software is commonly called LMS: Learning Management Systems.

The use of LO standards on LMS, such as SCORM [ 6], IMS Content Packaging, and IEEE Learning Object Metadata (LOM) [ 2] is facilitating the use of Learning Objects in learning institutions. This approach fosters the creation of LO by these institutions.

However, even when a learning institution is interested in providing open access to its learning objects repository, there is no easy way of doing it. The existing open access repositories do not provide ways to collect the asset of a particular learning institution.

It creates an isolation problem. The learning institutions have small Learning Object repositories (LOR) with open access and free content, but they are not effectively used by others to support the creation of courses with an LO philosophy. This isolation is considered a problem, because the main philosophy of LO is its reusability. If an LO is shared with more than one institution, its reuse will be greater than if used by only one.

Another barrier is the copyright problem. The distribution of Learning Objects, like any other learning material, can preserve the rights of their creators without prohibiting their use. According to Wiley [ 7], the copyright laws provide a barrier for the reusability of Learning Objects, because of the necessity of permission to use, share, and transform them. The author defends open content licenses applied to Learning Objects as a solution to guarantee a broader reuse. These licenses include: the Creative Commons License [ 22], the GNU Free Document License [ 23], and the Open Publication License [ 24]. Low et al. [ 21] affirms that there is expectative for an international framework for development of learning materials and points to Creative Commons as an important standard license for this kind of sharing.

The main advantages of free LO sharing are:

  • when a free LO is constructed focusing on a learning theme, there is no need to construct other LOs for the same theme, avoiding the creation of other LOs for the same purpose,
  • a free LO with an extended theme can aggregate other LO within the network, if the LO license allows it,
  • when a free LO becomes more used, more people can contribute to its development, helping the creators to improve it, and
  • it gives to teachers a larger amount of materials for use in creating courses for their students.

Therefore, this paper presents architecture for the establishment of a network to provide interoperability between institutions which desires to provide open access to their free Learning Objects and wishes to share its use with other institutions. The architecture is designed to connect educational institutions interested in sharing and use of Learning Objects through a single network called Learning Object Peer-to-Peer (LOP2P) that enables the connection using the institution's LMS. The main objective is to facilitate the connection of the highest possible number of institutions, making a contribution from a high number of interested institutions, sharing and using LO from other creators.

The connection among institutions is offered through two mechanisms: an interoperability layer called Mediation Layer, for connecting to the network, and a plug-in that connects the LMS of the institution to the Mediation Layer. The following services are provided by LOP2P:

  • Learning Object Publisher: publishes the free LO in the local network, displaying them in searches conducted by other institutions.
  • Search for Learning Objects: searches for free Learning Objects in institutions connected to the network.
  • Download of Learning Objects: after a search, a free LO with free use license can be downloaded.
  • Visualization of Learning Objects: for free LOs that are configured not to be downloaded, but they can be visited and used online.

Another feature of LOP2P network is the possibility of the entry of repositories of Learning Objects (LORs), which should be made as easy as the integration of the institution's LMS in the network. With this connection, an LO repository can offer their LOs to all institutions connected in the network and obtain LOs published in LOP2P.

The architecture has a philosophy of sharing of free Learning Objects, which is very similar to Peer-to-Peer file sharing systems. The main difference is that the proposed architecture shares free LOs between institutions rather than personal computers, through the LMS. An important observation is that in this architecture, each connected institution is considered a Peer.

This philosophy inherits the Peer-to-Peer model, which adds the following advantages cited by Maibaum and Mundt [ 8]:

  • no central structure is maintained, which would require higher maintenance costs,
  • it makes initiatives independent of a centralization posture in which any change in behavior of the central initiative affects the entire network,
  • the network keeps working when you disconnect any peer;
  • more uniform sharing of resources, with a higher number of peers,
  • it has better performance, and requires less bandwidth, and
  • shared resources can be used more efficiently: increase the sharing of LO.

The paper is organized as follows: Section 2 presents LOP2P architecture, Section 3 discusses some implementation issues, Section 4 presents a conceptual discussion of LOP2P creation, and Section 5 presents some final considerations and suggestions for future works.

LOP2P Architecture

The objective of this section is to demonstrate the architecture proposed in this paper for creating an interoperable network for sharing LOs: called LOP2P.

Learning institutions generally have learning environments (online at Internet), where students can access instructional material and interact with teachers or other students. The LOP2P architecture connects the institutions with the network-sharing LO through these environments, called LMS. Thus, access to objects from other learning institutions is achieved through the environment itself (LMS), which is available to teachers, coordinators, supervisors, and so on.

This approach facilitates the use of the institution's network, by people who are interested in using or promoting sharing within the learning institutions, because no new environment needs to be used; the institution merely needs to connect to the environment via an LOP2P network.

Another characteristic of LOP2P architecture is that although the institution is connected with several other institutions, the complexity is abstracted because all the operations occur in the network as though they were a single institution, facilitating the use of the network.

For the above-mentioned features to be computationally possible, LOP2P architecture has been established. The architecture specifies two types of software to ensure interoperability: the plug-in and the Mediation Layer.

2.1 LOP2P Plug-in

LOP2P architecture has been developed taking into account the structure of LMS. This software is called plug-in, because it is installed as part of LMS. The LOP2P plug-in must have some features for integration with the mechanism of communication with the network. As requirements of plug-ins, the software should consider the following scenario:

  • the plug-in should be developed using the same programming language as the one in which the LMS was created, because it needs to be integrated with the LMS, and
  • communication with the mechanism of connection to the network (Mediation Layer) should be done through an API that allows sockets over TCP/IP. Many languages have this API built-in, such as C++, C #, Java, and PHP.

Fig. 1 shows the architecture of the plug-in installed on the institution's LMS. The plug-in is connected to the Mediation Layer through sockets. Thus, the plug-in can perform requests or send requests to the Mediation Layer, which is connected to network LOP2P. As the plug-in is inserted into the server application of the LMS, the institution is connected to the LOP2P network. It is important to note that the application runs on the LMS server.

Graphic: Fig. 1. Plug-in architectures for LOP2P.

Figure    Fig. 1. Plug-in architectures for LOP2P.

Another appliance of the LOP2P plug-in concept is to enable the entrance of Learning Object repositories. This perspective enables the repository to share and obtain free LO. In this case, the plug-in must be built to connect the Learning Object repository with the Mediation Layer. Fig. 2 shows the connection between repository and the Mediation Layer. The requirements to create the plug-in are the same used for LMS connection: The code must be in the same language of the repository and the connection with LOP2P Mediation Layer must be made through a sockets API.

Graphic: Fig. 2. Plug-in architectures to connect Learning Object repositories.

Figure    Fig. 2. Plug-in architectures to connect Learning Object repositories.

2.2 Mediation Layer

The communication with an LOP2P LMS network cannot be achieved by the plug-in, due to the complexity of communication with the network to be abstracted by another mechanism, called the Mediation Layer. This approach is used to facilitate the development of plug-ins for different LMS.

The Mediation Layer promotes the communication with the LOP2P network and offers the services of the network to the plug-in, thereby, enabling the LMS to share and use Learning Objects.

Another important feature of the Mediation Layer is the specification of services that should be available for sharing the Learning Objects. The four network services supplied by LOP2P architecture are based on IMS Digital Repositories Interoperability [ 9]. They are:

  • Search/Expose: service responsible for searching for Learning Objects.
  • Gather: should be based on the standard OAI Protocol for Metadata Harvesting [ 10]: establish service functions to create and maintain intermediary repositories. These repositories do not store Learning Objects, but the object metadata. In LOP2P, intermediary repositories are created in all the institutions that form part of the network, maintaining a list of metadata from other Learning Objects of other LMS. Thus, the Mediation Layer collects metadata from other repositories routinely in order to maintain updated information and avoid faults in the search for Learning Objects.
  • Request/Deliver: this service has the function of providing means for the display of Learning Objects. An institution makes the view request on the Mediation Layer of an object previously searched. The Mediation Layer sends this view request to the institution in which the object is found and forwards it to the requester.
  • Submit/Store: service responsible for receiving the request to download a Learning Object from a learning institution connected to the network and trigger. It also carries out the transmission of the Learning Object from one learning institution to another.

Fig. 3 shows the architecture of the Mediation Layer. It receives requests and sends responses to the plug-in that is in the LMS.

Graphic: Fig. 3. Mediation layer architecture.

Figure    Fig. 3. Mediation layer architecture.

It is known that Learning Objects are described by metadata that allow how to understand the use of it, without the need to run it. There are several standards of metadata to describe Learning Objects. The most commonly used metadata standards for this purpose are DublinCore and LOM. The Mediation Layer uses the LO metadata to compare the search keywords with the description of each Learning Object. Given the diversity standards of metadata applied to describe LO, and given that one of the main goals of the LOP2P architecture is to provide interoperability, the Mediation Layer must be addressed with software for translating metadata. The translation of ontologies must occur through the mapping of ontologies [ 11], a technique in which two metadata can be translated from one to another, through a mapping identifying the similarities between the metadata. This mapping are made using XSLT standard.

Implementation Issues

In order to promote a more mature discussion of the LOP2P architecture, this section shows an experiment in the development of a prototype that consists of two types of software: a plug-in for MOODLE LMS (developed in PHP programming language) and a Mediation Layer (developed in Java programming language).

3.1 Implementation of Plug-In

The purpose of the plug-in is to connect the LMS of the learning institution to the LOP2P Mediation Layer for sharing of Learning Objects. To evaluate the specification of plug-in for LOP2P architecture, a piece of software was developed for this purpose, and attached to a MOODLE installation. The plug-in for MOODLE was produced in a "Block" format.

The implementation was carried out using the PHP language. The communication with the Mediation Layer was done through API of PHP sockets. As MOODLE accepts plug-ins created by other initiatives, the adaptation of the Plug-in LMS was performed without complications, since the MOODLE's framework was used.

The implementation took about 30 hours, performed by a single programmer with one year of experience with LMS, and four years with PHP language.

3.2 Implementation of Mediation Layer

The purpose of the Mediation Layer is to ensure communication with the LMS LOP2P network. To perform that, the Mediation Layer communicates with the plug-in installed on the LMS, offering the four services of the LOP2P network.

A well-conducted implementation of a Mediation Layer can serve all the institutions that connect with the network. To ensure this characteristic, the Mediation Layer should be implemented in portable language, or languages that can be run on several different computers with different operating systems (Windows, Linux, Solaris, etc.). Because of this, the implementation was carried out using Java language with JXTA framework. JXTA was chosen because it has an active community and is used by other researchers in the field [ 8], [ 13], [ 14]. Within this framework, the mechanism of communication with the Peer-to-Peer network was implemented, abstracting the difficulties of implementing Peer-to-Peer software.

Communication with the LMS was implemented using the API sockets of Java, which generated no difficulties or incompatibilities in the exchange of information with the plug-in sockets generated by the PHP.

The implementation of the Mediation Layer lasts about 50 hours, allocating a single programmer with five years of experience of Java development.

3.3 Mediation Layer Implantation Issues

To ensure that the LOP2P network will run properly in learning institutions, the Mediation Layer was installed inside protected networks and some tests were performed. The results are discussed below.

Firewalls and proxies can interfere in the correct execution of Mediation Layer. The JXTA provides a solution to this problem: a connection with a special peer outside of the institution, called Relay/Rendezvous. Setting the HTTP proxy of the institution in JXTA configuration and connecting the Mediation Layer with an outside Relay/Rendezvous peer, the connection will occur without need to change the security policies. The only solicitation required was the access liberation to an address and a port of the peer Relay/Rendezvous, like ""

Fig. 4 illustrates the adopted strategy to make the Mediation Layer, inside of learning institutions with strict security policies, connects with LOP2P network.

Graphic: Fig. 4. Adopted strategy to communicate learning institutions that have strict security policies.

Figure    Fig. 4. Adopted strategy to communicate learning institutions that have strict security policies.

The Mediation Layer is connected through a HTTP proxy that cross the firewall accessing address and port of the other LOP2P peer configured as Relay/Rendezvous. All incoming requests and responses to the Mediation Layer are addressed to correct destination.


There are many initiatives for sharing Learning Objects: ARIADNE [ 12], Edusource [ 16], Edutella [ 18], GLOBE [ 25], LionShare [ 20], LOMster [ 15], and ROSA P2P [ 19]. The originality of LOP2P architecture is in providing the integration of learning institutions in a peer-to-peer network in which the peer is the institution's LMS. In other words, the peers are the institutions. Another important characteristic of the LOP2P architecture is the possibility of connecting LO repositories.

Table 1 shows some differences among the existents LO sharing systems. Again, the main difference of LOP2P over the others is the capability to connect learning institutions using their own LMS.

Table 1. Systems for Sharing Learning Objects

One common feature between ARIADNE and LOP2P is the existence of a MOODLE plug-in. In the ARIADNE MOODLE plug-in, teachers can add one of the Learning Objects of any repository of the GLOBE network [ 26] (ARIADNE, LORNET, MERLOT, and others) in his course.

In the LOP2P MOODLE plug-in, teachers can share any learning material of their courses and can make searches of Learning Objects from other institutions. Thus, learning institutions become Learning Objects repositories while being clients of a network for sharing this type of learning material. The LOP2P architecture enables network interoperability to be implemented among learning institutions wishing to use or publish Learning Objects.

Other important feature of LOP2P architecture is the dedication to sharing Learning Objects with a free license of use. In this sense, the network can also be a channel for improving the potential of use for good free Learning Objects.

It is known that there are several repositories of Learning Objects. These repositories are large databases that store the objects and allow their retrieval through an interface for people and/or computer software. Some of these initiatives are ARIADNE KPS [ 12], Edusource [ 16], GLOBE [ 25], and RIVED [ 17].

An institution wishing to connect with various repositories of Learning Objects must establish an individual connection with each one of them. Other approach is to connect to a centralized structure, like GLOBE, that establishes a network among different Learning Objects repositories.

The LOP2P architecture can be used to add these repositories to the LOP2P network. What should be done is to create a plug-in LOP2P for the mechanism for recovery Learning Objects, and connect it to a Mediation Layer. Note that it is not only LMS that can be part of the network; LOR, Learning Content Management Systems (LCMS), and other LOWare 1 systems can also be used, once a plug-in has been developed.

The LOP2P network follows a Peer-to-Peer philosophy whereby each learning institution is connected with the network as a peer, thus, forming a network between institutions devoted to the sharing of Learning Objects. A philosophy in the most widespread LOP2P network is the sharing of Learning Objects with free licenses for use, because the sharing of the architecture favors this approach.

The architecture has the purpose of serving learning institutions; therefore, there will be no problems related to the misuse of the Peer-to-Peer network, known as the problem of free-riders, i.e., users who use the facilities of decentralized networks to publish material in an unlawful manner.

Final Considerations

The objective of this paper is to present the LOP2P architecture: full technical details about the architecture would be impossible to cover in a single article. Therefore, this paper presents the main features and guidelines of the architecture, with the intention of demonstrating the purposes and viability of the LOP2P.

The main future work is to test the Mediation Layer with several different institutions. For this, the developed plug-in will be delivered to the MOODLE community, in order to find partners for this experiment.


61 ms
(Ver 3.x)