flexible and extensible digital object and repository architecture (fedora) sandra payette cornell...

Post on 20-Dec-2015

257 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Flexible and Extensible Digital Object and Repository Architecture

(FEDORA)

Sandra PayetteCornell University

payette@cs.cornell.edu

June 29, 1999

Harvard University

http://www.cs.cornell.edu/payette/presentations/fedora99.ppt

Carl LagozeCornell University

lagoze@cs.cornell.edu

Repository Services

Component-Ware Digital Libraries

Collection Services

Index Services

Handles

NameService

DigitalObjects

UI GatewayService

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

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

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)

Fedora DigitalObjects can be...

• Simple, familiar entities

• Complex, compound, dynamic objects

DublinCore

Book

Fu

ture

Dia

ry-MO

A

Multiple “views” of a DigitalObject

DataStream (MIME-typed byte stream)

Digital Object is...

recognizable by what it can do

getChaptergetPage

getTrackgetLabel

getSectiongetArticle

getFramegetLength

Disseminator Type

A set of behaviors that formally describes the functionality of any global

or domain-specific notion of content.

Disseminator

A generic component that associates

a set of behaviors with a DigitalObject.

PrimitiveDisseminator

Extensible Type Disseminator

Generic behaviors Extended behaviors

FEDORA DigitalObject

application/postscript

application/MARC

PrimitiveDisseminator

Structural Kernel

Extensible Behavior Layer

application/MARC DS1

application/postscript DS2

PrimitiveDisseminator

Client communicates with generic requests

Book, DublinCore

ListDisseminatorTypesBook

DisseminatorDublinCore

Disseminator

GetDissemination(Book.GetPage(1))

GetChapterGetTOCGetPage

GetChapter(n), GetPage(n),GetTOC()

GetMethods(Book)

Disseminator Design Principles

• Stability

• Orthogonality to Structure

• Extensibility

These are achieved in FEDORA through the architectural segregation of DigitalObject structure, mechanisms, and interfaces.

DigitalObject Interface Stability

MechanismStructure Interface

Disseminator Type

Mechanisms can be updated or replaced as technology changes ...

… and the interface tothe Digital Object

remains stable

DigitalObject Extensibility: Adding New Types

MechanismStructure Interface

Book

The sameunderlyingdata...

Boo

k

can be operatedon in novel ways…

Photo Collection

to create new disseminationsnot originally conceived of

for the particular digital object.

Pho

toC

olle

ct

A Disseminator is a Generic Component...

… that references another FEDORA DigitalObjectthat disseminates a servlet

GetDCField(e), GetDCRecord

GetMethods(DC)

application/MARC

GetDCFieldGetDCRecord

DC

DS1

application/postscript

DS2

DataStreams = DS1

TypeID = URNDC1

… to produce non-generic behaviors

Extensibility: a look under the hood

application/MARC

DC servlet

application/postscriptDublinCore

Record

GetDissemination( GetDCRecord)

DC

CTID = URNDC1

DC sign

atur

e

GetDCFie

ld

GetDCRec

ord

DCMethodListSignature

Disseminator

URNDC

DC Mechanism

ServletDisseminator

URNDC1

Digital Object attains its extended behaviors through association and delegation

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.

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 ...

AccessManager Mechanisms

application/MARC

text/x-acl

DC

ACLMechanism

ServletDisseminator

URNACL1URN1

GetDCFieldGetDCRecord

Disseminator protected by AccessManager

External Servlet Utilized

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)

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

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

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

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

Repository

Interoperable Fedora Repositories

Handles

NameService

MoA2-Breen

MoA2 ArchivalObjects

RAP Client

NCSTRL

Repository Repository Repository

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

top related