The Mellon-Funded Fedora Project Technical Specifications Review August 26, 2002 Sandy Payette Cornell Information Science
The New FEDORA Technical Specifications – Part II
Fedora Access Sub-System
FEDORA Implementation Technologies Fedora Web Services Layer – Apache Axis for SOAP over HTTP – Apache Tomcat 4.1 Core Repository System – Sun JDK1.4 – Xerces for XML parsing Deployment Platforms – Windows – Solaris – Linux
Fedora Management Sub-System “API-M” Object Management Object Component Management Object Validation PID Generation Interacts with Storage Subsystem
Object Management Operations (in API-M) Ingest Object Get Object XML Export Object Withdraw Object Delete Object Purge Object Obtain Lock on Object Release Lock Get Object State Get Object Audit Trail
Object State StateDefinition AActive LLocked RReplicating NIncomplete WWithdrawn CMarked for Deletion DPending Deletion
Component Management Operations (in API-M) Add (Datastream or Disseminator) Modify (Datastream or Disseminator) Withdraw (Datastream or Disseminator) Delete (Datastream or Disseminator) Purge (Datastream or Disseminator) Get (Datastream or Disseminator) Get History (Datastream or Disseminator)
Component State StateDefinition AActive WWithdrawn CMarked for Deletion DPending Deletion BBroken Link
Object Validation Runs before an XML object is accepted into the repository for storage – During ingest of XML object created outside of repository – Before final commit of object built up via API-M XML Schema Validation (to METS Schema) Fedora Rules Validation (via Schematron) – Referential integrity – Required values for attributes – Allowable state transitions (object state and component state)
Fedora Storage Sub-System
Storage Sub-system: Object Reader and Writer Modules DOWriterDOReader DisseminatingDOReader DefinitiveDOReaderDefinitiveDOWriterFastDOReader XML Objects Dissemination Cache DB External Content Retriever Behavior Service Resolver DataStore DataStore-FS Managed Content Datastreams
Digital Object XML The Inner View PID System Metadata: Object Audit Trail Datastreams : 3 kinds Disseminators: pointing to behavior objects
PID Syntax Conforms to URN Syntax (RFC2141) Syntax – Namespace prefix (hyphen separators) – Delimiter (:) – Object identifier string (sequential number) Examples: – uva-lib:1225 – cornell-cs:101 – uva-bdef:10 – uva-bmech:12
System Metadata: Object Audit Trail Audit trail record put in object for all API-M transactions Fedora XML Schema for Audit trail metadata:
Datastreams: 3 Kinds Referenced External Content – Outside custodianship of repository – Referenced in digital object XML via a URI Repository Managed Content – Under custodianship of repository – Referenced in digital object XML via internal datastream identifier Implementer-defined XML Metadata – Bound to the digital object – Stored in-line as part of digital object XML
Digital Object XML Storage Sample Object Click here for test digital object
Digital Object XML Storage Sample Behavior Definition Object Click here for Behavior Definition object for Image-W
Digital Object XML Storage Sample Behavior Mechanism Object Click here for Behavior Mechanism object for UVA_Image_-W
Questions and Discussion
FEDORA Web Site: