Welcome to the Technical Documentation of the MOPSEUS system. In this section, technical specifications of the system are presented.
Main Architecture of the MOPSEUS system
MOPSEUS repository system has been developed by "Athena" Research Centre. Its main features are:
- Flexibility in supporting complex data models.
- The robust digital preservation model of data, metadata and processes that the repository implements.
- Easy integration – interaction with other systems because of its Service-Oriented (SOA) architecture.
MOPSEUS consists of a set of systems and databases which are used for the storage of data, metadata, indexes and other kind of information required for their operation. However, the main feature of MOPSEUS is its modular architecture which is implemented in layers of provided services (services layers). Those layers provide all services.
The available services are accessible via a REST/SOAP interface, allowing an easy interconnection with services of higher level like those of the digital library as well as other services that will be developed in the context of the project. For instance, the end-user interacts with the digital library and especially with the front-end. On the contrary, the user interacts with the back-end if he/she is administrator or documentarist. The digital library provides a web based interface to end users, but interacts with the repository via a REST interface. This particular architecture allows easy interconnection of the system, with an unlimited number of systems / services. Among those systems/services heterogeneity exists.
The interfaces and the API that enable this interconnection have been successfully applied in a number of different projects where they were interconnected with heterogeneous systems such as:
- Foreign Academic Libraries (projects: CARARE, 3D-ICONS)
- Digital services for metadata mapping (projects: CARARE, 3D-ICONS)
- Gazeteers/Geo-parsers (Europeana)
Regarding the presentation of the information contained in the repository, the creation of multiple interfaces for each one of the thematics, maintaining at the same time one of the facilities of the repository, is possible. This approach leads to an economy of scale because it minimizes the cost of maintenance, management and learning.
Specifically, the MOPSEUS repository system is a flexible repository system which can:
- manage complex objects,
- organize information of any structure,
- manage any metadata standards (metadata schema agnostic)
- emphasize in digital preservation:
- manage thesauri (SKOS),
- store data in linked data form,
- link semantically all the data and metadata it manages
The system design can be divided into three (3) levels:
- storage layer
- services layer
- application layer
The storage layer comprises three main components:
- A relational database (supported PostgreSQL) for the storage of indexes and other information required for the operation of the services.
- A triple store for storing RDF data (semantic correlation, linked data, etc.).
- A fedora-commons repository / archive for storing all the metadata and data (binary datastreams) maintaining also a consistency between multiple versions of these.
The services layer provides the main services from which the different subsystems communicate with the storage level. These services are provided through REST / SOAP protocols and the format in which information is handled is XML / JSON. The storage layer is exclusively accessible via the services layer so as to ensure consistency and data integrity.
The main principles that the proposed solution covers are:
- Safety during communication. There will be no direct access from third party applications to the data managed by the digital repository.
- Direct (online) communication and data exchange. Communication between different applications will be direct (on line) and not grouped in processes (batch).
- Scalability to more additional features without multiple interventions at the core of the digital repository.
- Adoption and implementation of well-established international standards for the majority of features, where provided and mature.
- Separation of the communication channel between the users (User Interface) and the business logic subsystems of the digital repository (back office).
Moreover, the proposed solution adopts all modern standards of web applications, such as the W3C, which ensure compatibility with all modern web browsers (Mozilla, Internet Explorer, Safari, Opera and Google Chrome).
Particular care has been given to the accessibility of persons with disabilities, as compliance with the WCAG 2.0 standard exists.
The whole user interface is available in three different languages (Greek, English and French) although its extension in order to provide more languages is possible. In addition, relative help screens will be provided, when required, in the respective languages.
The encoding of the text is Unicode / UTF-8 so as to ensure the maximum compatibility with other services.
The proposed solution makes use of all modern standards for building web applications such as: HTML, CSS, and XSLT among others.
The digital repository adopts a multilayered architecture model (n-tier), which requires the creation of a common interoperability layer (middleware) that implements the necessary web-services (common layer interface).
MOPSEUS is a specialized middleware, implemented based on the needs of Greek heritage organizations and digital libraries. This particular middleware is the well-known middleware fedora-commons which is specialized and used worldwide for building repository systems.
Fedora-commons stores the data in a hierarchical structure in the filesystem while two databases are used for their indexing. The first database is relational (MySQL, PostgreSQL, Oracle) while the second one is semantic based and stores RDF triplets.
Fedora-commons communicates with MOPSEUS through a system of interfaces which are implemented as REST and SOAP web services. Through these interfaces, all the features provided by fedora can be achieved. This part of MOPSEUS, as well as fedora, is implemented in Java and requires an Apache Tomcat server. In this implementation the module of Tomcat is used, which is mounted - as a subsystem - of the proposed Application Server JBOSS.
The main layers that compose the provided Digital Repository are:
- User interfaces entirely implemented via web browser - independent of clients platforms.
- Layer of business rules implemented in the back-office of MOPSEUS
- Relational database system (RDBMS)
Access is possible from any popular web browser (such as Internet Explorer, Firefox, Safari and Chrome)
All the features for documenting the data of the repository are accessible through MOPSEUS (when installed on the local network – LAN). In this, individual subsystems are interacting and its users (administrators and ordinary users) have access to the features for which they are authorized. The above figure is a diagram of the architecture of the digital repository.
Usability – Accessibility
The system makes use of all web standards and web software development techniques in order to be more user-friendly and easily accessible from the potential users. Therefore, there is use of the W3C, CSS and XSLT standards and the system is compliant with the WCAG 2.0 standard for access by people with disabilities.
The adjustment of the interfaces is done by using CSS layers and XSLT documents making it simple and easy to change the way in which almost all of the information is displayed.
The interfaces of the system incorporate an assistance service which informs, helps and guides the user on how to use the software. In cases where the user performs an incorrect operation, the system informs him/her appropriately. In screens where needed, there is the possibility of direct connection (via email) with a cataloguer-administrator.
The system emphasizes on scalability, as it provides two (2) separate main APIs for accessing it.
The first (low-level) provides access through web services (REST / SOAP) and allows interconnection with other systems.
The second (high-level) provides access to high-level services, allowing even web based user interfaces that could be reused (such as widgets) to other systems.
In the case of user authentication, there is a central certification spot where one can intervene in order to expand the system's capabilities in this regard.
Also, this architecture makes it easy to create new services where one can develop a service e.g. pull content, modify it and re-import it into the system (always using at least the low-level API).
Of particular importance for the technological superiority of the offered solution is the fact that MOPSEUS supports complex objects. A complex object is composed of multiple (theoretically infinite) datastreams. A datastream may contain the documentation of an object in MODS standard and of another object in Dublin Core. A datastream can contain RDF links or any image file, PDF, Word etc. Each informational structure is illustrated in a datastream. Moreover, it is possible to keep versions for each datastream. This approach is presented in detail below.
The objects are divided into items (objects) and containers, and each has a unique identifier within the system. The first are representing digital objects such as theses and digitized documents among others. The second (containers) are entirely used for the organization of the first (items). The system is able to match all objects with namespaces and in the case of our system they can distinguish the following namespaces:
- iid: concerns objects,
- cid: concerns containers,
- config: concerns the digital objects that contain information about the operation / system parameters.
Hardware - virtual machines
MOPSEUS can be installed in any system. It does not require any specific hardware or operating system. Additionally, its architecture facilitates the installation in virtual machine environments.
All of the MOPSEUS installations have been created in virtual machine environment (as provided by GRNET SA).