the mellon-funded fedora project a briefing for the cornell university library january 24, 2002
Post on 31-Dec-2015
35 Views
Preview:
DESCRIPTION
TRANSCRIPT
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
The Mellon Fedora ProjectThe Mellon Fedora Project
History and Motivation
The FEDORA Open-sourceDevelopment Project
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
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
Library Digital CollectionsLibrary Digital Collections
BooksRare Books
Multimedia Music
E-texts Maps Photographs Statistics
Video Art Manuscripts Data
Images3-D
ObjectsJournals
Sound Effects
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
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
Information CommunitiesInformation Communities
Discipline-specific services
Specialized access and delivery
Richer collectionsCommunity-oriented resources
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
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
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
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
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
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
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
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
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
FEDORA Development Project Description:http://fedora.comm.nsdlib.org/
Fedora ArchitectureFedora Architecture
Research History and Overview
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”
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
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
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
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
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
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
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
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
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
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
UVA Prototypes UVA Prototypes
UVA Content Models and Demos
(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
(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
(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
(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
(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
(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
(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
(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
FEDORA Specifications – Part IFEDORA Specifications – Part I
Digital Object Storage
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
FEDORA XML using METSFEDORA XML using METS
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/
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)
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
METS : Sample Fedora ObjectMETS : Sample Fedora Object
Click here for image digital object
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
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
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.
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
FEDORA Specifications – Part IIFEDORA Specifications – Part II
Repository System
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
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
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
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
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
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
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
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)
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.
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.
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
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
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
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.
Questions and DiscussionQuestions and Discussion
top related