Update on the Fedora Project Where we’ve been and where we’re going Fedora Users Conference Rutgers University May 13-14 2005 Sandy Payette Co-Director.
Published byModified over 5 years ago
Presentation on theme: "Update on the Fedora Project Where we’ve been and where we’re going Fedora Users Conference Rutgers University May 13-14 2005 Sandy Payette Co-Director."— Presentation transcript:
Update on the Fedora Project Where we’ve been and where we’re going Fedora Users Conference Rutgers University May 13-14 2005 Sandy Payette Co-Director Fedora Project Cornell University
Fedora Brief History Cornell Research (1997-present) –DARPA and NSF-funded research –First reference implementation developed –Interoperable Repositories (experiments with CNRI) –Policy Enforcement First Application (1999-2001) –University of Virginia digital library prototype –Technical implementation: adapted to web; RDBMS storage –Scale/stress testing for 10,000,000 objects Open Source Software (2002-present) –Andrew W. Mellon Foundation grants –Technical implementation: XML and web services –Fedora 1.0 (May 2003) –Fedora 2.0 (Jan 2005) –Fedora 2.1 (coming soon!)
Fedora Development Team Cornell University Sandy Payette (co-director) Chris Wilper Carl Lagoze Eddie Shin University of Virginia Thorny Staples (co-director) Ross Wayland Ronda Grizzle Bill Niebel Bob Haschart Tim Sigmon
“Fedora Inside” Known Use Cases Digital Library Collections Institutional Repository Educational Software Information Network Overlay Digital Archives and Records Management Digital Asset Management File Cabinet / Document Management Scholarly publishing
Fedora – what’s new (version 2.0) FOXML (Fedora Object XML) –Simple XML format directly expresses Fedora object model –Easily adapts to Fedora new and planned features –Easily translated to other well-known formats Enhanced Ingest/Export of objects –FOXML, METS (Fedora extension) –Extensible to accommodate new XML formats –Planned: METS 1.4, MPEG21 DIDL
Fedora 2.0 (continued) Object-to-object Relationships –Ontology of common relationships (RDF schema) –Relationships stored in special datastream (RELS-EXT) Resource Index (RI) –RDF-based index of repository (Kowari triple-store) –Graph-based index includes: –Object properties and Dublin Core –Object Relationships –Object Disseminations RI Search (Search the repository as a graph) –Powerful querying of graph of inter-related objects –REST-based query interface (using RDQL or ITQL) –Results in different formats (triples, tuples, sparql)
Fedora 2.0 (continued) New Utilities Batch Modify Utility Repository Administrator Reporting Performance Tuning (~1 million objects) –Ingest testing (800K objects; 40 millisec/object) –Concurrency testing (access requests) Communications and Outreach New Fedora Web Site Improved Documentation Tutorials
Preview Fedora 2.1 (May 2005) Authentication plug-ins –HTTP Basic auth –Tomcat realms and login modules Plug-in #1 : Tomcat user/password file or database Plug-in #2 : LDAP tie-in Plug-in #3 : Radius Authentication Support for SSL Authorization module –XML-based policies using XACML –Repository-wide policies –Object-specific policies –Fine-grained policy enforcement API actions X subject attributes X object attributes
Authorization: Example Policies Repository Policy –Deny access to all API-M methods if not “administrator” –Deny access to the deleteDatastream method if not “author” Specific Object Policy –Deny access to object “uva:100” if user is not Thorny. Group Object Policy –Deny access to the “getFullArticle” dissemination of objects whose content model is “journal-article” if not “faculty” –Deny access to the “secret” datastream if user is “guest”
Authorization: Example Policies Time-oriented Policy –Permit students access to “answers” datastream of learning object cs:125 after May 15, 2005 –Deny all access learning object cs:125 after June 15, 2005 Backend Service Security Policy –Deny callback by external service represented by Bmech:10
Preview Fedora 2.1 (May 2005) Policy Builder Client –Simple user interface to create access policies –Automatically generate XACML Handle Generation Plug-in (PIDs as Handles) Enhanced OAI Provider Service (prOAI) –Harvest multiple metadata formats –Harvest datastreams and disseminations –Support for incremental harvest by modified date –Support for OAI sets –Highly configurable via queries against Resource Index Directory Ingest Service (and client tool) –Facilitate ingest of hierarchical directories of files –Submit files as.zip or.jar (with a METS manifest) –Automatically asserts parent-child relationships in RELS-EXT –Stages content and ingests as FOXML objects into repository
Fedora Service Framework (beginning Fedora 2.1)
You asked… “We wish for a out-of-box” end-user client for Fedora.” “Can’t you put the DSpace interface on top of a Fedora repository?” “We need something to show people Fedora right away (before we get $$ for development resources).” “We love Fedora. It would be really great if you distributed a default end-user client.”
The Answer: FedoraWebIR Client Web-based client for “institutional repository” Configurable End-user submission Object creation template for “content models” Basic Workflow Search/Browse Easy configuration of access policy Development to begin this summer.
More Dev-Team Priorities Federated Repositories Federation with other repositories (DSpace, aDORE) –note the Cornell/LANL NSF Pathways project. Fedora Showcase and News (on new website) “Content Model” Specification Language Advanced Object Creation Workbenches Tools for RDF browse and graph traversal Performance Tune – millions of objects Web services security and Shibboleth Code Refactoring Fedora as web app (.war) MVC2 pattern for REST-based web exposures Other misc.
Preview Dinner Talk Fedora Development Consortium –Advisory Board –Commission Working Groups –Prioritize Development Sustainability Models Collaborative Development User-contributed Tools, Apps, Services
Solution: Information Network Overlay Data Stores Document Repositories Databases Web Resources Publisher Repositories Information Network API Source Layer Network Representation Layer Client Layer
Process-orientation - workflows Validate byte- streams Ingest to Repo Link to Simulation Service Assign Access Policy Index and Register Ingest-oriented process Visit The Doctor Format Migration Object Versioning In Repo Make Copies Ingest To Archive Preservation-oriented process Ingest To Archive SIP Digital Object World of Services