Towards an Independently Versioned Fedora RESTful API
Submitted by on Thu, 2016-04-21 11:02
Austin, TX The Fedora community is currently in the initial phases of drafting a standards-based application programming interface (API) specification that will result in a stable, independently-versioned Fedora RESTful API. A Fedora API specification will be a significant milestone for the project and the community enabling a concrete and common understanding of Fedora's role in an institution's infrastructure ecosystem.
The goal of this work is to develop a broad consensus for an API specification that will be around for some time. As part of the process community use cases for minimum features that Fedora should support in the API are being documented. One of the goals of the API specification is to clearly define the set of services that the Fedora repository offers to the surrounding ecosystem. If your institution has a vested interest in Fedora services, you are encouraged to get involved in the drafting process to ensure that the Fedora 4 specification aligns with your expectations.
In 1998 when the original paper detailing the Fedora architecture was published there were many more open questions around the boundaries of responsibility of a Fedora repository. In the subsequent 18 years, the real-world requirements defined by community use cases and experience have clarified Fedora’s role in supporting the goals of preservation and access in the context of big data and performance at scale. The API specification will clearly define the set of services Fedora will provide, while also providing stability for client applications and greater interoperability with the broader web.
Rationale for Fedora API design and implentation: https://wiki.duraspace.org/display/FEDORAAPI/Rationale
A specified Fedora API will provide:
Common understanding of Fedora’s role in an institution’s infrastructure ecosystem
Support for a clearly defined set of services
A stable API for which developers to build their apps against
A standards-based abstraction layer under which alternate server implementations can be tailored to site-specific use scenarios.
Join the initiative
You may review and comment on the draft documents here: https://wiki.duraspace.org/display/FEDORAAPI/Specification+Draft, and/or join the weekly tech calls to ask questions and discuss: https://wiki.duraspace.org/display/FF/2016+-+Tech+Meetings