ESciDoc Core Infrastructure

From MPDLMediaWiki
Jump to navigation Jump to search
eSciDoc SOA

SOAP and REST style interfaces
Service layers

Core services
Context Handler · Item Handler
Container Handler
Organizational Unit Handler
User Account Handler
Authentication
Content Model Handler
Semantic Store Handler

Intermediate services
Validation Service
Statistics Manager
Technical Metadata extraction
PIDManager
Basket Handler
Duplication detection
ImageHandler(Digilib)

Application services
Depositing
Searching
Search&Export
Control of Named Entities
Citation style Manager
RightsChecking
DataAcquisition
Transformation
Fledged Data
PID Cache
OAI-PMH

SOA Introduction

edit

The eSciDoc core infrastructure is a middleware which encapsulates the repository and implements the core service layer of the eSciDoc SOA. The core infrastructure is mainly built out of existing open-source software packages. Main components are PostgreSQL, JBoss Application Server, and Tomcat Servlet Container. The eSciDoc content Repository is based on Fedora (Flexible Extensible Digital Object Repository Architecture). Fedora comes with a Semantic Store (Kowari Triplestore or MPT Store), which allows for the efficient administration of statements about objects and their relations, expressed in RDF (Resource Description Framework). Related objects form a graph, which can then be queried and used to infer new facts based on existing relations.

ESciDocCoreInfrastructure.jpg

The eSciDoc Infrastructure is implemented as a Java Enterprise Application (J2EE). It can be roughly differentiated into the Enterprise Context and a Persistence Layer. The Enterprise Context is deployed to the JBoss Application Server and the Tomcat Servlet Container. The Spring Framework provides a centralized, automated configuration and wiring of the application objects by Dependency Injection and Inversion of Control. The service layer offers web services with REST and SOAP interfaces. The Persistence Layer encompasses specialized solutions for the different types of data: an RDBMS for structured data, Fedora for unstructured data, and Kowari for semantic data.