Presentation is loading. Please wait.

Presentation is loading. Please wait.

Flexible and Extensible Digital Object and Repository Architecture (FEDORA) Sandra Payette Cornell University June 29, 1999 Harvard.

Similar presentations


Presentation on theme: "Flexible and Extensible Digital Object and Repository Architecture (FEDORA) Sandra Payette Cornell University June 29, 1999 Harvard."— Presentation transcript:

1 Flexible and Extensible Digital Object and Repository Architecture (FEDORA) Sandra Payette Cornell University payette@cs.cornell.edu June 29, 1999 Harvard University http://www.cs.cornell.edu/payette/presentations/fedora99.ppt Carl Lagoze Cornell University lagoze@cs.cornell.edu

2 Repository Services Component-Ware Digital Libraries Collection Services Index Services Handles Name Service Digital Objects UI Gateway Service

3 FEDORA: Goals Normalization of content: via well-defined interfaces Interoperability: for digital objects and repositories Extensibility: naturally evolving type system Flexibility: community-driven type development Distribution: of content and services Rights management: leveraging existing/future schemes

4 FEDORA Digital Object Model  container for aggregating any digital material  disseminations of complex types  rights management  global extensibility mechanisms Repository  Service layer for “contained” DigitalObjects  Object lifecycle management  Secure environment for running mobile code

5 FEDORA History Kahn/Wilensky Warwick Framework Distributed Active Relationships Cornell FEDORA (Lagoze, Payette) CNRI Repository (Arms, Blanchi, Overly) CNRI/FEDORA - Interoperability Project Berkeley - Interoperability with MOA2 objects U of Virginia - Complex Disseminators Project Prism (DLI2)

6 Fedora DigitalObjects can be... Simple, familiar entities Complex, compound, dynamic objects

7 Dublin Core Book Future Diary-MOA Multiple “views” of a DigitalObject DataStream (MIME-typed byte stream)

8 Digital Object is... recognizable by what it can do getChapter getPage getTrack getLabel getSection getArticle getFrame getLength

9 Disseminator Type A set of behaviors that formally describes the functionality of any global or domain-specific notion of content.

10 Disseminator A generic component that associates a set of behaviors with a DigitalObject. Primitive Disseminator Extensible Type Disseminator Generic behaviors Extended behaviors

11 FEDORA DigitalObject application/ postscript application/ MARC Primitive Disseminator Structural Kernel Extensible Behavior Layer

12 application/ MARC DS 1 application/ postscript DS 2 Primitive Disseminator Client communicates with generic requests Book, DublinCore ListDisseminatorTypes Book Disseminator DublinCore Disseminator GetDissemination (Book.GetPage(1)) GetChapter GetTOC GetPage GetChapter(n), GetPage(n),GetTOC() GetMethods(Book)

13 Disseminator Design Principles Stability Orthogonality to Structure Extensibility These are achieved in FEDORA through the architectural segregation of DigitalObject structure, mechanisms, and interfaces.

14 DigitalObject Interface Stability Mechanism Structure Interface Disseminator Type Mechanisms can be updated or replaced as technology changes... … and the interface to the Digital Object remains stable

15 DigitalObject Extensibility: Adding New Types MechanismStructure Interface Book The same underlying data... Book can be operated on in novel ways… Photo Collection to create new disseminations not originally conceived of for the particular digital object. Photo Collect

16 A Disseminator is a Generic Component... … that references another FEDORA DigitalObject that disseminates a servlet GetDCField(e), GetDCRecord GetMethods(DC) application/ MARC GetDCField GetDCRecord DC DS 1 application/ postscript DS 2 DataStreams = DS 1 TypeID = URN DC1 … to produce non-generic behaviors

17 Extensibility: a look under the hood application/ MARC DC servlet application/ postscript DublinCore Record GetDissemination( GetDCRecord) DC CTID = URN DC1 DC signature GetDCField GetDCRecord DC MethodList Signature Disseminator URN DC DC Mechanism Servlet Disseminator URN DC1 Digital Object attains its extended behaviors through association and delegation

18 Registration and Proliferation of Disseminator Types A Disseminator Type...  becomes registered when the URN of the DigitalObject that disseminates its Signature is registered (in a DL name service)  becomes usable when the URN of the DigitalObject that disseminates its Servlet is registered Other DigitalObjects can utilize Disseminator Types by referencing these URNs.

19 Access Management Must have facilities to protect content No single solution Association of existing, external rights management schemes Accommodate new schemes FEDORA applies same extensibility model to rights management...

20 AccessManager Mechanisms application/ MARC text/x-acl DC ACL Mechanism Servlet Disseminator URN ACL1 URN 1 GetDCField GetDCRecord Disseminator protected by AccessManager External Servlet Utilized

21 Current Status FEDORA Implementation  CORBA IDL defines all component interfaces  Java/CORBA reference implementation  Java clients for building and accessing DigitalObjects Initial Disseminator Types  Dublin Core  Image  Article/Technical Report  Book (with CNRI / Library of Congress)

22 Current Research and Collaborations CNRI  interoperability  complex Disseminators  access manager component Berkeley  integration of community-developed types (e.g., MOA2 documents)  XML for DigitalObject structure definition

23 Current Research (cont.) U of Virginia  complex disseminators (e.g., e-text)  distributed content (e.g., DataStream level) Project Prism  security (associating enforceable policies and mechanisms with DigitalObjects)  preservation (enable long-term survival of DigitalObjects in distributed environment) Project Harmony  aggregation and interaction of multiple, complex metadata sets in DigitalObjects

24 CNRI/Cornell Interoperability Project Developed Joint Interface Definition  agreement on all conceptual abstractions  merger of RAP and FEDORA IDL Separate repository implementations  CNRI using Visigenics ORB  Cornell using Iona’s OrbixWeb ORB Test collections of Digital Objects  CNRI - Library Congress materials (books, journals, photographs, speeches)  Cornell - NCSTRL research collections

25 CNRI/Cornell Interoperability Experiments IT0: Fundamental Communication (10/98)  Inter-ORB communication  IDL recognition: request invocation; proper return types IT1: Functional Interoperability (12/98)  create/access DigitalObjects in each repository  exercise all operations on each other’s repositories IT2: Interoperability of Extensibility (3/99)  dynamic loading and running of remote servlets  full interchangeability of extensibility mechanisms  full integration of CNRI’s Handle System

26 Repository Interoperable Fedora Repositories Handles Name Service MoA2- Breen MoA2 ArchivalObjects RAP Client NCSTRL Repository

27 References Payette, Blanchi, Lagoze, and Overly: Interoperability for Digital Objects and Repositories: The Cornell/CNRI Experiments, D-Lib Magazine, May 1999. http://www.dlib.org/dlib/may99/payette/05payette.html Payette and Lagoze: Flexible and Extensible Digital Object and Repository Architecture (FEDORA), ECDL 1998. http://www.cs.cornell.edu/payette/papers/ECDL98/FEDORA.html Lagoze and Payette: An Infrastructure for Open-Architecture Digital Libraries http://ncstrl.cs.cornell.edu/Dienst/UI/1.0/Display/ncstrl.cornell/TR98-1690 Daniel, Lagoze, and Payette, A Metadata Architecture for Digital Libraries, IEEE ADL 1998. http://www.cs.cornell.edu/lagoze/papers/ADL98/dar-adl.html FEDORA Home Page http://www.cs.cornell.edu/NCSTRL/CDLRG/FEDORA.html


Download ppt "Flexible and Extensible Digital Object and Repository Architecture (FEDORA) Sandra Payette Cornell University June 29, 1999 Harvard."

Similar presentations


Ads by Google