the mellon-funded fedora project a briefing for the cornell university library january 24, 2002

67
The Mellon-Funded The Mellon-Funded Fedora Project Fedora Project A Briefing for the Cornell University Library A Briefing for the Cornell University Library January 24, 2002 January 24, 2002 Sandy Payette Thorny Staples Ross Wayland

Upload: karmiti-wilson

Post on 31-Dec-2015

33 views

Category:

Documents


2 download

DESCRIPTION

The Mellon-Funded Fedora Project A Briefing for the Cornell University Library January 24, 2002. Sandy Payette Thorny Staples Ross Wayland. The Mellon Fedora Project. History and Motivation. The FEDORA Open-source Development Project January 24, 2002. Digital Library Projects. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

The Mellon-Funded The Mellon-Funded Fedora ProjectFedora Project

A Briefing for the Cornell University LibraryA Briefing for the Cornell University LibraryJanuary 24, 2002January 24, 2002

Sandy Payette

Thorny Staples

Ross Wayland

Page 2: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

The Mellon Fedora ProjectThe Mellon Fedora Project

History and Motivation

Page 3: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

The FEDORA Open-sourceDevelopment Project

January 24, 2002

Page 4: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Digital Library ProjectsDigital Library Projects

Web sites with links to on-line resources Specific, “boutique” collections Large collections in one or two area A broad research collection in all media types and

content areas Ideally, the digital library includes all information

Page 5: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Library Digital CentersLibrary Digital Centers

Social Science Data

Geographic Information

Digital Image

Digital M usic

DIGITAL MEDIACENTER

GEOSTATDATA CENTER

SPECIAL COLLECTIONSDIGITAL CENTER

ELECTRONIC TEXT CENTER

Page 6: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Library Digital CollectionsLibrary Digital Collections

BooksRare Books

Multimedia Music

E-texts Maps Photographs Statistics

Video Art Manuscripts Data

Images3-D

ObjectsJournals

Sound Effects

Page 7: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Other Library ServicesOther Library Services

Electronic Cataloger in the Cataloging Department Digital Library Research and Development

Department Digital Services Integration (DSI) Coordinator Digital Library Production Services

Page 8: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Other Services Housed in the Other Services Housed in the LibraryLibrary

The Institute for Advanced Technology in the Humanities

The Virginia Center for Digital History The Teaching Technologies Initiative The Media Studies Program Offices

Page 9: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Information CommunitiesInformation Communities

Discipline-specific services

Specialized access and delivery

Richer collectionsCommunity-oriented resources

Page 10: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Managing the CollectionManaging the Collection

Provide a way to universally name all resources without respect to machine address

Track all files for resources, metadata and computer programs consistently

Enforce appropriate policies for use of Library resources

Provide a high level of security Support preservation activities appropriately

Page 11: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Delivering the CollectionDelivering the Collection

Deliver tools with content Allow every resource to be used in any number of

contexts Discovery searching across the full collection Deep searching in particular collections Move towards a library which aware user’s can

configure for themselves

Page 12: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Supporting Digital ScholarshipSupporting Digital Scholarship

Supporting the creation of digital scholarly projects

Collecting born-digital scholarly projects For preservation Taking over responsibility for primary delivery

Supporting information communities

Page 13: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

MetadataMetadata

Descriptive – metadata that users use to find things, like traditional library catalog records

Administrative – metadata that the library uses to manage library resources

Structural – metadata about the relationships among resources

Behavioral – computer programs that deliver digital resources to users

Page 14: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Digital Library Management and Digital Library Management and Delivery SystemDelivery System

s e a rc h in g

u s e rc o lle c tio n s

re so urc e sdig itize d by

use rs

re s o u rc e sw e

d ig itize

re s o u rc e sw eb u y

lib ra ryp ro c e s s in g

c e n tra l re p o s ito ry

u s e r a c c e s s s e rv ic e s

o th e r re p o s ito rie s

in fo rm a tio n c o m m u n ity s e rv ic e s

re trie v a l

o u r o b je c tso u ts id e o b je c ts

w e re g is te r

Page 15: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

The Flexible Extensible Digital Object The Flexible Extensible Digital Object Repository Architecture (FEDORA)Repository Architecture (FEDORA)

Developed as an NSF-funded research project at Cornell

Interpreted and re-implemented at UVA Testbed of 10,000,000 digital objects with very

good results Mellon gave us $1,000,000 to develop a usable

system around FEDORA

Page 16: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Repository DevelopmentRepository DevelopmentProject GoalsProject Goals

An efficient, scalable, freely distributable FEDORA repository system ASAP

A complete basic management interface with the initial release

Add important digital library functionality in later releases

Create multiple testbed repositories to deploy and evaluate the software

Make all software open source

Page 17: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Deployment GroupDeployment Group

The Digital Library group, Indiana U. The Humanities Computing group, New York U. The Digital Collections and Archives Department, Tufts

U. The Humanities Computing group, Kings College London The Oxford Digital Library and The Refugee Studies

Center, Oxford U. Audio/Video Project, Library of Congress A library/academic computing group, Northwestern

University

Page 18: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Project PlanProject Plan

Phase 1: Deliver the repository system and the full management interface

Phase 2: Add more production support– Security and policy enforcement– Collection objects– Disk management

Phase 3: Enhance end-user support– Versioning and Editions– Dynamic, Context Sensitive Behaviors – Efficiency and scale optimization

Page 19: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

FEDORA Development Project Description:http://fedora.comm.nsdlib.org/

Page 20: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Fedora ArchitectureFedora Architecture

Research History and Overview

Page 21: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

FEDORAFEDORAOriginal Research GoalsOriginal Research Goals

• Management - of distributed digital content and services• Access – via stable interfaces to digital objects• Interoperability - for digital objects and repositories • Extensibility – easy evolution of object behaviors• Flexibility - community-defined content models

• Security - rights management and access control • Preservation – of content and “look and feel”

Page 22: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

FEDORA FEDORA Basic Architectural AbstractionsBasic Architectural Abstractions

Digital Object– Container for aggregating any digital content– Content disseminations based on behavior definitions– Extensibility of behavior mechanisms

• Repository– Service layer for “contained” Digital Objects– Object lifecycle management– Access management

Page 23: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Persistent ID (PID)

Disseminators

System Metadata

Datastreams

FEDORA Digital ObjectFEDORA Digital Object

Globally unique persistent id

Public view: access methods for obtaining “disseminations” of digital object content

Internal view: metadata necessary to manage the object

Protected view: content that makes up the “basis” of the object

Page 24: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Digital Object InteroperabilityDigital Object Interoperability Common Behaviors for variable contentCommon Behaviors for variable content

Persistent ID (PID)

Image Disseminator

System Metadata

Datastream - mrsid

Persistent ID (PID)

Image Disseminator

System Metadata

Datastream – lres gif

Datastream – hres jpg

Datastream – thumb gif

Datastream – tiff master

Functional equivalency

Digital Object #1 Digital Object #2

Page 25: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Digital Object ExtensibilityDigital Object Extensibility Adding New BehaviorsAdding New Behaviors

The sameunderlyingcontent...

can be operated onin novel ways…

Book

Photo Collection

to create new disseminations

not originally conceived of

Persistent ID (PID)

Book Disseminator

System Metadata

Datastream

Datastream

Persistent ID (PID)

Book Disseminator

System Metadata

Datastream

Datastream

Photo Disseminator

Digital Object #3

Page 26: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Persistent ID (PID)

Method DefinitionMetadata

SystemMetadata

Datastreams (specs)

Persistent ID (PID)

Method ImplementationMetadata

SystemMetadata

Datastreams(executables)

Behavior DefinitionObject

Behavior MechanismObject

Persistent ID (PID)

Disseminators

System Metadata

Datastreams

Data Object

FEDORA Digital Object ArchitectureFEDORA Digital Object Architecture

Page 27: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

UVA Example: Shared Image Behavior DefinitionsUVA Example: Shared Image Behavior DefinitionsG en eral Im ag e O b ject

M rS ID Im ag e O b ject

Persistent ID(PID)

W e b -d e fa u ltW e b -im a g e

A d m in

SystemMetadata

B a s is(4 im a g e file s )

th u m b n ail im ag e file

m e d re s . im ag e file

h ig h re s . im ag e file

m ax re s . im ag e file

Persistent ID(PID)

W e b -d e fa u lt

W e b -im a g e

A d m in

SystemMetadata

B a s is(M rS ID -e nc o de d

im a g e file )

W e b-Im a g eB e ha vio r D e finitio n

G e ne ra l Im a g eB e ha vio r M e c ha nis m

M rS ID Im a g eB e ha vio r M e c ha nis m

g e t-thum bna il-s ize d-im a g e

g e t-m e d-s ize d-im a g e

g e t-hig h-re s -im a g e

g e t-m a x-s ize d-im a g e

g e t-thum bna il-s ize d-im a g e

g e t-m e d-s ize d-im a g e

g e t-hig h-re s -im a g e

g e t-m a x-s ize d-im a g e

g e t-s m a lle s t-M rS ID -s ize

g e t-m idra ng e -M rS ID -s ize

g e t-hig h-re s -M rS ID -s ize

g e t-m a x-M rS ID -s ize

Page 28: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

UVA Example: Default Behavior DefinitionsUVA Example: Default Behavior Definitions

G en eral Im ag e O b ject

M rS ID Im ag e O b ject

Persistent ID(PID)

W e b -d e fa u ltW e b -im a g e

A d m in

SystemMetadata

B a s is(4 im a g e file s )

th u m b n ail im ag e file

m e d re s . im ag e file

h ig h re s . im ag e file

m ax re s . im ag e file

Persistent ID(PID)

W e b -d e fa u ltW e b -im a g e

A d m in

SystemMetadata

B a s is(M rS ID -e nc o de d

im a g e file )

W e b-D e fa ult Im a g eB e ha vio r D e finitio n

G e ne ra l D e fa ult Im a g eB e ha vio r M e c ha nis m

M rS ID D e fa ult Im a g eB e ha vio r M e c ha nis m

g e t-im a g e -w ith-s ize r-a pple t

g e t-thum bna il-s ize d im a g e

g e t-a s -pa g e

g e t-in-c o nte xt

g e t-im a g e -w ith-M rS ID -a pple t

g e t-s m a lle s t-re s -M rS ID -im a g e

Page 29: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

FedoraFedoraRepository SystemRepository System

general-purpose access control

Digital Objectswith fine-grained access controlPID

Disseminators

SystemMetadata

Basis(Datastreans)

PID

Disseminators

SystemMetadata

Basis(Datastreans)

Storage

Management Access

Page 30: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Access ManagementAccess ManagementPolicy EnforcementPolicy Enforcement

Semantics of policy language must parallel the behavioral semantics of digital objects

Fine-grained, context-sensitive policiesExtensibility for policies and enforcement

mechanismsSupport for portability of digital objectsDecentralized policy management

Page 31: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Access Control PoliciesAccess Control Policies

General Purpose– “only repository managers can add new

disseminators to digital objects in the repository.”

Object-Specific (“e.g., Lecture object”) – “guests may view course syllabus and slides 1-10

of Lecture 1, but may not view the lecture video or any other slides.”

– “students may not view Lecture 2 video unless they submit assignment for Lecture 1.”

See research at: http://www.cs.cornell.edu/payette/prism/security/policy.htm

Page 32: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

UVA Prototypes UVA Prototypes

UVA Content Models and Demos

Page 33: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

(Finding Aid example)

Finding Aid Content ModelFinding Aid Content Model

Persistent ID (PID)

DisseminatorsDisseminator

BehaviorDefinition

BehaviorMechanism

web_ead1 web_ead web_ead1

get_web_default eaddoc .java

get_tp tp.xsl

get_admin admin.xsl

get_summary summary .xsl

get_sc opec ontent sc opec ontent.xsl

get_bioghist bioghist.xsl

get_c omponent c omponent.xsl

get_arrangement arrangement.xsl

get_organization organization.xsl

get_doc ument doc ument.xsl

get_menu menu.xsl

web_default_ead1 web_default web_default_ead1

get_as_page eaddoc .java

get_in_c ontext doc ument.xsl

System M etadataadmin Administrative metadata

desc Desc riptive metadata

BasisDatastream(s)

basis1 pointer to XML Finding A id sourc e

Page 34: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

(TEI letter example)

TEI Letter Content ModelTEI Letter Content Model

M etad ata

Persistent ID (PID)

DisseminatorsDisseminator

BehaviorDefinition

BehaviorMechanism

w eb_teiletter1 w eb_teiletter w eb_teiletter1

get_teiletter_default teiletterdoc .pl

get_original letter.header.xs l

get_m odern m odern.xs l

get_teiheader teiheader.xs l

get_pageim ages pageim ages .xs l

we b _d e fau lt_ te ile tte r w eb_default w eb_default_teiletter

get_as_page teiletterdoc .pl

get_in_context letter.header.xs l

System M etadataadmin Administrative metadata

desc Desc riptive metadata

BasisDatastream(s)

basis1 pointer to XML TEI letter sourc e

Page 35: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

(TEI book example)

TEI Book Content ModelTEI Book Content Model

M etad ata

Persistent ID (PID)

DisseminatorsDisseminator

BehaviorDefinition

BehaviorMechanism

web_teibook1 web_teibook web_teibook1

get_web_default teidoc .java

get_teiheader admin.xsl

get_toc c ontents.xsl

get_menu_teibook menu.xsl

get_tp_teibook tp.xsl

get_id id.xsl

web_default_teibook web_default web_default_teibook

get_as_page teidoc .java

get_in_c ontext c ontents.xsl

System M etadataadmin Administrative metadata

desc Desc riptive metadata

BasisDatastream(s)

basis1 pointer to XML TEI book sourc e

Page 36: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

(Mycenae image example)

General Image Content ModelGeneral Image Content Model

M etad ata

Persistent ID (PID)

DisseminatorsDisseminator

BehaviorDefinition

BehaviorMechanism

web_image1 web_image web_image1

get_thumb HTTP GET

get_med imagedisplay .java

get_high HTTP GET

get_very high HTTP GET

web_default_image web_default web_default_image

get_as_page imagedisplay .java

get_in_c ontext HTTP GET (thumb)

System M etadataadmin Administrative metadata

desc Desc riptive metadata

BasisDatastream(s)

basis1 pointer to thumbnail size image

basis2 pointer to medium resolution image

basis3 pointer to high resolution image

basis4 pointer to highest resolution image

Page 37: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

(Pavilion III image example)

MrSID Image Content ModelMrSID Image Content Model

M etad ata

Persistent ID (PID)

DisseminatorsDisseminator

BehaviorDefinition

BehaviorMechanism

web_image_mrsid web_image web_image_mrsid

get_thumb get_image.pl

get_med get_image.pl

get_high get_image.pl

get_very high get_image.pl

web_default_image web_default web_default_image

get_as_page get_image.pl

get_in_c ontext get_image.pl

System M etadataadmin Administrative metadata

desc Desc riptive metadata

BasisDatastream(s)

basis1 pointer to MrSID formatted image

Page 38: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

(1-bit B/W TIFF example)

1-bit B/W TIFF Content Model1-bit B/W TIFF Content Model

M etad ata

Persistent ID (PID)

DisseminatorsDisseminator Behavior

DefinitionBehavior

Mechanism

web_image_bwtiff web_image web_image_bwtiff

get_thumb tif2gif.pl

get_med tif2gif.pl

get_high tif2gif.pl

get_very high tif2gif.pl

web_default_bw tiff web_default web_default_bwtiff

get_as_page tif2gif.pl

get_in_c ontext tif2gif.pl

System M etadataadmin Administrative metadata

desc Desc riptive metadata

BasisDatastream(s)

basis1 pointer to 1-bit b/w TIFF formatted image

Page 39: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

(Mycenae example)

GDMS Content ModelGDMS Content Model

(lawn example)

M etad ata

Persistent ID (PID)

DisseminatorsDisseminator

BehaviorDefinition

BehaviorMechanism

web_gdms2 web_gdms web_gdms2

get_web_default imagedef.java

get_gdmswalk gdmswalk.xsl

get_menu imagemenu.xsl

web_default_gdms web_default web_default_gdms

get_as_page imagedef.java

get_in_c ontext HTTP GET

System M etadataadmin Administrative metadata

desc Desc riptive metadata

BasisDatastream

basis1 pointer to XML GDMS sourc e file

Page 40: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

(ICPSR survey example)

Numerical Data Content ModelNumerical Data Content Model

M etad ata

Persistent ID (PID)

DisseminatorsDisseminator

BehaviorDefinition

BehaviorMechanism

web_ic psr1 web_ic psr web_ic psr1

g e t_web _d e fau lt loader.pl

get_abstrac t abstrac t.xsl

get_c itation c itation.xsl

get_details tec hnic al.xsl

get_question variables.xsl

get_subset c odebook.pl

get_study ftpstudy .pl

web_default_ic psr1 web_default web_default_ ic ps r1

get_as_page loader.pl

get_in_c ontext abstrac t.xsl

System M etadataadmin Administrative metadata

desc Desc riptive metadata

BasisDatastream(s)

basis1 XML Codebook sourc e

basis2(TBD) pointer to SQL Database c ontaining data

Page 41: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

FEDORA Specifications – Part IFEDORA Specifications – Part I

Digital Object Storage

Page 42: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

XMLversion

of objects

InternalDatastreams

ExternalDatastreams

SQLversion

of objects

W eb Server

API-1Management

Interface

API-2Access

Interface

Repository System

W eb brow sers

New Repository SystemNew Repository System

Page 43: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

FEDORA XML using METSFEDORA XML using METS

Page 44: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Metadata Encoding and Metadata Encoding and Transmission Standard (METS)Transmission Standard (METS)

XML “standard” for encoding descriptive, administrative, and structural metadata of digital library objects

Developed under auspices of the Digital Library Federation

METS standard maintained by the Network Development and MARC Standards Office of the Library of Congress

http://www.loc.gov/standards/mets/

Page 45: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

METS SchemaMETS Schema METS is written in the XML Schema Language METS defines four sections for an object

– Descriptive metadata– Administrative metadata– File group– Structure map

METS goals include:– Facilitate management of objects within a repository – Provide a standard format for exchange of objects between

repositories – Provide standard format for transmission of objects to users for

rendering (via tools or applications)

Page 46: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Mapping Fedora to METSMapping Fedora to METSFedora METS

Persistent Identifier (PID)

<METS:mets OBJID=“PID1”/>

Disseminator <METS:behaviorSec STRUCTID=“S1”>

<METS:mechanism/>

<METS:interfaceDef/>

</METS:behaviorSec>

<METS:structMap ID=“S1”>

<METS:div> <METS:fptr FILEID=“ds1" /> <METS:div/>

</METS:structMap>

System Metadata

<METS:dmdSec/>

<METS:amdSec/>

Datastreams <METS:fileGrp>

<METS:file><METS:Flocat ID=“ds1" LOCATION="" xlink:simpleLink=""/> <METS:file/>

</METS:fileGrp>

New in METS

Page 47: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

METS : Sample Fedora ObjectMETS : Sample Fedora Object

Click here for image digital object

Page 48: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

METS: Sample Fedora Behavior METS: Sample Fedora Behavior Definition ObjectDefinition Object

Click here for Behavior Definition object for DC

Click here for Behavior Definition object for UVA_Images

Page 49: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

METS: Sample Fedora Behavior METS: Sample Fedora Behavior Mechanism ObjectMechanism Object

Click here for Behavior Mechanism object for UVA_MARC_DC

Click here for Behavior Mechanism object for UVA_Image_STD

Click here for Behavior Mechanism object for UVA_Image_MRSID

Page 50: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Fedora Relational DatabaseFedora Relational Database

Phase 1: Alternate form of object storage to support high-performance access (disseminations)

Repository system replicates from authoritative XML version of objects to relational database

Phase 2-3: Access sub-system works completely off the XML storage, as XML tools improve performance-wise.

Page 51: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

FEDORA Database SchemaFEDORA Database Schema

1

1 1

1

1

1

1

1

D a ta S tre a m

¤ D S _ I D

D S _ N am e

D S _ M I M E

D S _ UR L

D S _ C reate_ D ateT im e

D S _ M o d _ D ateT im e

D S _ D ele te_ D ateT im e

[ S y s tem M etad ata ]

M e ch a n is m A ct io n I m pl

¤ B M EC H _ I D

¤ B D EF_ I D

¤ M e th o d_ I D

¤ D S _ R O L E_ I D

D S _ R o le_ S eq

P r o to c o l_ T y p e

R etu r n _ T y p e

[ S y s tem M etad ata ]

S tru ctR o le s

¤ D S _ R O L E_ I D

S tr u c tT y p e_ ID

D S _ R O L E _ N am e

D S _ R O L E _ O r d in ality

D S _ R O L E _ S eq _ F lag

D S _ R O L E _ C reate_ D ateT im e

D S _ R O L E _ M o d _ D ateT im e

D S _ R O L E _ D ele te_ D ateT im e

[ S y s tem M etad ata ]Pa ra m e te r

¤ PA R M _ I D

M eth o d _ I D

P AR M _ N am e

P AR M _ D efau lt_ Valu e

P AR M _ D es c

P AR M _ C reate_ D ateT im e

P AR M _ M o d _ D ateT im e

P AR M _ D ele te_ D ateT im e

[ S y s tem M etad ata ]

S tru ctu re Ty pe

¤ S tru ctTy pe _ I D

S tr u c tT y p e_ D es c

S tr u c tT y p e_ C rea te_ D ateT im e

S tr u c tT y p e_ M o d _ D ateT im e

S tr u c tT y p e_ D ele te_ D ateT im e

[ S y s tem M etad ata ]

D O bj-D S -A s s o c

¤ D O _ I D

¤ D S _ I D

¤ D S _ R O L E_ I D

D S _ R o le_ S eq

[ S y s tem M etad ata ]

D O bj-D is s -A s s o c

¤ D O _ I D

¤ D I S S _ I D

[ S y s tem M etad ata ]

D is s e m in a to r

¤ D I S S _ I D

BD E F _ I D

BM E C H_ I D

D I S S _ N am e

D I S S _ C rea te_ D ateT im e

D I S S _ M o d _ D ateT im e

D I S S _ D ele te_ D ateT im e

[ S y s tem M etad ata ]

B e h a v io rD e f in it io n

¤ B D EF_ I D

BD E F _ N am e

BD E F _ D es c

BD E F _ C r ea te_ D ateT im e

BD E F _ M o d _ D ateT im e

BD E F _ D ele te_ D ateT im e

[ S y s tem M etad ata ]

M e th o d

¤ M e th o d_ I D

BD E F _ I D

M eth o d _ N am e

M eth o d _ D es c

M eth o d _ C r ea te_ D ateT im e

M eth o d _ M o d _ D ateT im e

M eth o d _ D ele te_ D ateT im e

[ S y s tem M etad ata ]

B e h a v io rM e ch a n is m

¤ B M EC H _ I D

BD E F _ I D

BM E C H_ N am e

BM E C H_ D es c r ip tio n

BM E C H_ C r eate_ D ateT im e

BM E C H_ M o d _ D ateT im e

BM E C H_ D ele te_ D ateT im e

[ S y s tem M etad ata ]

1

1

1

D O bj

¤ D O _ I D

D O _ n am e

D O _ D es c r ip tio n

D O _ C r eate_ D ateT im e

D O _ M o d _ D ateT im e

D O _ D ele te_ D ateT im e

[ S y s tem M etad ata ]

1

1

Page 52: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

FEDORA Specifications – Part IIFEDORA Specifications – Part II

Repository System

Page 53: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

XMLversion

of objects

InternalDatastreams

ExternalDatastreams

SQLversion

of objects

W eb Server

API-1Management

Interface

API-2Access

Interface

Repository System

W eb brow sers

New Repository SystemNew Repository System

Page 54: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

FEDORA API DefinitionsFEDORA API Definitions

“API-1” – interface for management sub-system– Operations necessary to create and maintain objects and

their components– Interface directly with XML version of the object

“API-2” – interface for access sub-system– Operations necessary for clients to perform

disseminations on objects in the repository– Interface directly with SQL representation of objects– No direct access to object internal structure or

components

Page 55: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Fedora Management Sub-SystemFedora Management Sub-System “API-1”“API-1”

Create object Modify object Delete object Examine object Search objects Create/maintain Behavior Definition object Create/maintain Behavior Mechanism object Repair repository/objects Batch functions

Page 56: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Create and Maintain Create and Maintain Behavior Definition ObjectsBehavior Definition Objects

Create PIDCreate System Metadata

– Method definition metadata (e.g., in WSDL)

Create/maintain Datastreams– Alternate expressions of interface definitions– User guides or documentation

Register the Behavior Definition

Page 57: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Create and Maintain Create and Maintain Behavior MechanismBehavior Mechanism Objects Objects

Create PIDCreate System Metadata

– Method implementation metadata (e.g., in WSDL)

Create/maintain Datastreams – Executables– Programmer documentation

Register the Behavior Mechanism

Page 58: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Other FunctionalityOther Functionality

Repair– Ability to fix inconsistencies in

repository/object structure when they arise

Batch operations – Ability to perform all common functions in

batch mode

Page 59: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Fedora Access Sub-SystemFedora Access Sub-System “API-2”“API-2”

Identify Behavior Types to which an object subscribes (via the object’s Disseminators)

Get the Behavior Definition (method definitions) for a given Behavior Type

Get Disseminations of digital object content

Page 60: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Web browsers

Fedora Access Sub-SystemFedora Access Sub-System

Behavior Manager

HTTP SOAP

Web Server

Digital Objects(SQL)

Digital Objects(XML)

MRSIDImage

Mechanism

Web Service

Fedora Access Sub-System

(API-2)

TEIBook

Mechanism

Web Service

OtherMechanism

Web Service

Fedora ManagementSub-System

(API-1)

Page 61: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Access RequestAccess RequestIdentify Behavior TypesIdentify Behavior Types

Each Disseminator has a Behavior Definition Object associated with it.

Each Behavior Definition Object has a PID that also serves as the Behavior Type Identifier for a set of related behaviors

Clients can query a digital object for what Behavior Types it subscribes to.

Page 62: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Access RequestAccess RequestGet Behavior DefinitionGet Behavior Definition

Each Disseminator has a Behavior Definition Object associated with it.

Each Behavior Definition Object is stored as a Fedora digital object.

A Behavior Definition Object contains a set of method definitions that represent a set of related behaviors for a Behavior Type.

Clients can query a digital object to get a set of method definitions for a particular Behavior Type.

Page 63: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Behavior Identification RequestsBehavior Identification Requests

GetBehaviorTypes?PID=101

Web-default, Web-image, Admin

GetMethods?PID=101&BID=Web-default

get-as-page; get-in-context

MrSID Image Object

Persistent ID(101)

Web-default

Web-image

Admin

SystemMetadata

Basis(MrSID-encoded

image file)

Repository

AP

I-2

Page 64: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Access RequestAccess RequestGet DisseminationGet Dissemination

Clients can obtain content from a digital object with minimal knowledge about the object.

Behavior Type identifiers and method definitions are the basis for making dissemination requests on digital objects

A dissemination request requires just three things:– Digital Object Identifier (PID)– Behavior Type Identifier (BID)– Method name (and optional parameters) for a behavior

Page 65: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Access RequestAccess RequestGet DisseminationGet Dissemination

Digital Object: 101

Image of bird

Bird Digital Library1

White Birds: Image 1 Image 2 Image 3

GetDissem?PID=101&BID=Web-default &method=get-as-page

MrSID Image Object

Persistent ID(101)

Web-default

Web-image

Admin

SystemMetadata

Basis(MrSID-encoded

image file)

RepositoryA

PI-

2

Page 66: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

DisseminationsDisseminationsBenefitsBenefits

Simple access: dissemination requests shield clients from the internal structure of digital objects

Stable interface: dissemination requests are like requests against an abstract interface in that they are not tied to object implementation details that may change over time (e.g., storage locations of datastreams)

Foster Interoperability: different digital objects can vary in both the format of content and how it is structured, yet we can access them in a consistent manner via disseminations.

Page 67: The Mellon-Funded  Fedora Project A Briefing for the Cornell University Library January 24, 2002

Questions and DiscussionQuestions and Discussion