Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

As of Fedora 2.1, the Fedora Service Framework was introduced to facilitate the integration of new services with the Fedora repository. The framework takes a service-oriented architecture approach to building new functionality around a Fedora repository. While the Fedora repository, itself, exposes its functionality as a set of web service interfaces, all of these interfaces belong to the Fedora web application that runs in its own Tomcat. The new Fedora Service Framework allows new services to be built around the core repository - as stand-alone web applications that run independently of the Fedora repository. While Fedora repository functionality can still be extended with new modules, the intent is to keep the repository service focused on the core functions of a repository. Yet, there are many other services that are beneficial companions to a repository, such as specialized ingest services, workflow services, preservation services, and many others. These are the kinds of services that the framework is intended to support. There are two main benefits to the service framework approach: (1) it allows new functionality to be added as atomic, modular services that can interact with Fedora repositories, yet not be part of the repository, (2) it makes co-development of new services for Fedora easier since each service can be independently developed and plugged into the framework. As of Fedora 2.1, the Fedora development team has released an initial set of services (Directory Ingest and OAI Provider described below), and will continue to develop new services over the course of Fedora Phase 2 (2005-2007) and beyond, especially services for workflow and preservation. Services that are part of the framework will be packaged as part of the Fedora open-source software distribution and will be kept up to date with new versions of the core Fedora repository service. Members of the Fedora community will be collaborating on the development of services and will contributed back to the Fedora Project. Further documentation will be provided to establish guidelines on how services should be designed to effectively plug into the framework. In the mean time, developers of new services can follow the design patterns of the Directory Ingest and OAI Provider services.

...

  • Repository Service: at the heart of Fedora is the repository service that enables the creation, management, storage, access, and reuse of digital objects.
  • OAI Provider Service: a configurable OAI Provider service for harvesting metadata out of a Fedora repository via OAI-PMH. The service can be configured to harvest any type Datastream or dissemination from objects in the repository. It also supports OAI sets.
  • Directory Ingest Service: a service to ingest a hierarchical directory of files into a Fedora repository. The service will accept a Submission Information Package (SIP) in the form of a .zip archive that contains directories of files along with a METS-based manifest file that describes the directory hierarchy. The default parent-child relationships that characterize a directory hierarchy can be overridden and refined to have other semantic meaning (e.g., collection-member, folder-document). Upon receipt of the SIP, the Directory Ingest service will process the .zip archive and create a Fedora digital object in the repository for every file and every directory, plus it will record the relationships among them in Fedora's RDF-based relationships datastream. A new web-based client for creating the SIP is now available (see SIP Creator). This client will enable a user select files from a file system, add metadata about files, and assert semantically-meaningful relationships, and ultimately submit the SIP to a Fedora repository.
  • Search Service: a configurable search service that can index any datastream or dissemination of Fedora digital objects. The service is pluggable, and will provide adapters for Lucene and Zebra as the default backend search engines. Other search adapters can be developed to plug into other engines.
  • Workflow and Orchestration Service: (planned 2007, under specification by Fedora Workflow Working Group and Fedora Development Team)
  • Preservation Integrity Service: (planned 2007, currently under specification by Fedora Preservation Working Group)
  • Preservation Monitoring and Alerting Services: planned 2007, currently under specification by Fedora Preservation Working Group)
  • Event Notification Service (Messaging): (planned 2007)
  • Persistent Identifier Resolution Service
  • Object Reuse and Exchange (ORE) Access Point: an interface to a Fedora repository to facilitate cross-repository interoperability (2007-2008) The Fedora Service Framework provides building blocks for higher-level customized services and user applications.

...