Fedora (Flexible Extensible Digital Object Repository Architecture) is a framework that provides a set of abstractions about digital information to provide the basis for software systems that manage digital information, like COMETE. It provides the basis for ensuring long-term durability of the information, while making it directly available to be used in a variety of ways. It is very important to understand that Fedora provides a foundation upon which to build a variety of information management schemes for different use cases, not a full solution for a specific use case.
Fedora repository, plus précisément Fedora Commons Repository software est un Logiciel libre, en Java, servant à construire des dépôts de métadonnées. Il est aux dépôts de métadonnées ce qu'un framework web est aux systèmes de gestion de contenu (CMS).
C'est un projet mature avec une communauté vivante. Voir particulièrement la liste de liens en bas de la page.
- To understand Fedora, the quickest way is to read:
- General documentation
Collaborating with the Fedora project
- Communauté et documentations
- The Fedora project hosts phone meetings weekly "Commiter meeting" by phone and IRC. They are open to everyone.
- IRC channel: #duraspace on irc.freenode.net (View Logs)
- Developper mailing list; archive
- [Fedora Commons repository on GitHub? https://github.com/fcrepo/]
- Issue tracker
Accessing FEDORA APIs
Why Fedora was chosen
Using Fedora Repository (Documentation, GIT Source code) as a basis for metadata storage in the COMETE project was compelling : Fedora focuses on aspects the COMETE project does not focus on (versioning, CRUD), and abstracts out or provides a basis for aspects on which the COMETE project wants to innovate (search, relationships, Harvesting, Validation, format translation), and their current Roadmap is quite relevant, especially for supporting MLR.
- Furthermore, it already provides:
- A REST API
- An architecture for writing generic content models.
- Several available content models (TODO: enumerate and link)
- An extensible architecture
- A Service Framework for writing new services as stand-alone web applications.
- A module framework for writing new modules when the Service Framework won't do
- Validation Framework - Provides system operators a way to validate the integrity of part or all of their repository (TODO: Still looking for documentation, will need to look at source code)
- A basic, RDF based architecture for Digital object relationships, and modules to manage them
- An architecture for writing translation services as independent REST services (See chapter 7 in Tutorial 2)
- Not only is it designed to be extended without code change, but if code changes are necessary, it is already setup for distributed development with GIT.
- A mature, multi-polar project backed by a foundation.
- A security model
- External codebase, and unknown receptivity of the community (but their usage of github is very encouraging)
- External dependencies pulled in
- Using the Ariadne repository was rejected. Rationale: it does not map well the COMETE project's objectives.