Although there are various community-driven developments in the Fedora ecosystem, this document describes the roughly 12-month technical focus of the core repository platform.
- Formalize the core Fedora services Application Programming Interface (API)
This priority is to clearly define the core services that Fedora promises as a standards-based RESTful API, accompany this API with any necessary domain-specific ontologies, and provide a Technology Compatibility Kit (TCK) for each service.
The Fedora services are:- Create/Read/Update/Delete on repository resources
- Standard: Linked Data Platform
- Include Import and Export of RDF, and option for RDF serialization to disk
- Versioning
- Standard (partial, only retrieval): Memento
- Transactions
- Standard: TBD
- Fixity
- Standard (partial, on ingest): http://tools.ietf.org/html/rfc3230#section-4.3.2
- Authorization
- Standard: WebAC
- Create/Read/Update/Delete on repository resources
- Formalize the core Fedora Service Provider Interfaces (SPIs)
- Eventing SPI
- Defining the interface that a Fedora repository implementation should implement to publish repository events
- Eventing SPI
- Runtime configurability
- Enable the update of configuration settings at runtime, e.g. changing hostname published in repository events
- Enable pluggability of extension modules, e.g. adding an OAI-PMH module at runtime
- Performance and Scale
- Repository limits - number of resources
- Repository limits - number of bytes
- Storage options
Note: Items 1 and 2 define... Items 3 and 4...