Flexible and Extensible Digital Object and Repository Architecture (FEDORA) Sandra Payette Cornell University MOA2/Cornell Architecture.

Slides:



Advertisements
Similar presentations
MicroKernel Pattern Presented by Sahibzada Sami ud din Kashif Khurshid.
Advertisements

Digital Library Architecture: A Service-Based Approach
JMS messaging service  All write-only Fedora operations are published to subscribed clients  Messaging system can be durable – if client/consumer/subscriber.
Spatial Information Integration Services (SIIS) ISO/TC211 Workshop on Standards in Action Adelaide, South Australia October 2001 Mr. Neil Sandercock, SA.
Fedora Commons: Introduction and Update Swedish National Library June 24, 2008.
Building a Digital Library with Fedora International Conference on Developing Digital Institutional Repositories Hong Kong December 9, 2004.
Distributed Systems Architectures
Flexible and Extensible Digital Object and Repository Architecture (FEDORA) Sandra Payette Cornell University CS 502 Computing Methods.
The Fedora Project April 28-29, 2003 CNI, Washington DC Thornton Staples University of Virginia Sandy Payette Cornell Information Science.
A brief look at CORBA. What is CORBA Common Object Request Broker Architecture developed by OMG Combine benefits of OO and distributed computing Distributed.
Multimedia Digital Libraries Sugata Mukhopadhyay March 14, 2000.
CORBA Case Study By Jeffrey Oliver March March 17, 2003CORBA Case Study by J. T. Oliver2 History The CORBA (Common Object Request Broker Architecture)
CS 501: Software Engineering Fall 2000 Lecture 16 System Architecture III Distributed Objects.
Policy-Carrying, Policy-Enforcing Digital Objects Sandra Payette Cornell Digital Library Research Group.
The Fedora Project March 19, 2003 ISTEC Symposium, Brazil Sandy Payette Cornell Information Science.
Flexible and Extensible Digital Object and Repository Architecture (FEDORA) Sandra Payette Cornell University June 29, 1999 Harvard.
1 CS 502: Computing Methods for Digital Libraries Lecture 22 Repositories.
Policy-Carrying, Policy-Enforcing Digital Objects Sandra Payette and Carl Lagoze Cornell Digital Library Research Group ECDL2000 Lisbon, Portugal September.
Cornell/CNRI Repository Interoperability Project Interoperability Meeting February 24, 1999.
The Open Archives Initiative Simeon Warner (Cornell University) Symposium on “Scholarly Publishing and Archiving on the Web”, University.
Software Engineering Module 1 -Components Teaching unit 3 – Advanced development Ernesto Damiani Free University of Bozen - Bolzano Lesson 2 – Components.
Object Based Operating Systems1 Learning Objectives Object Orientation and its benefits Controversy over object based operating systems Object based operating.
Policy-Carrying, Policy-Enforcing Digital Objects Sandra Payette Project Prism - Cornell University DLI2 All-Projects Meeting June 14, 2000.
CORDRA Philip V.W. Dodds March The “Problem Space” The SCORM framework specifies how to develop and deploy content objects that can be shared and.
Software Architecture April-10Confidential Proprietary Master Data Management mainly inspired from Enterprise Master Data Management – An SOA approach.
Digital Object: A Virtual Online Storage Solution 598C Course Project Huajing Li.
Digital Library Architecture and Technology
Dienst Distributed Networked Publishing Carl Lagoze Digital Library Scientist Cornell University.
Digital Object Architecture
OASIS ebXML Registry Standard Open Forum 2003 on Metadata Registries 10:30 – 11:15 January 20, 2003 Kathryn Breininger The Boeing Company Chair, OASIS.
LIS 506 (Fall 2006) LIS 506 Information Technology Week 11: Digital Libraries & Institutional Repositories.
Digital Object Repositories (Example of FEDORA).What-Is- In-It-For-PAWS? PAWS Meeting Series, Spring 2007 Michael Yudelson.
Flexible and Extensible Digital Object and Repository Architecture (FEDORA) Sandra Payette Cornell University CS 502 Computing Methods.
Ocean Observatories Initiative Data Management (DM) Subsystem Overview Michael Meisinger September 29, 2009.
1 CS 502: Computing Methods for Digital Libraries Lecture 19 Interoperability Z39.50.
Modularization and Interoperability: Dublin Core and the Warwick Framework Sandra D. Payette Digital Library Research Group Cornell University November.
Metadata harvesting in regional digital libraries in PIONIER Network Cezary Mazurek, Maciej Stroiński, Marcin Werla, Jan Węglarz.
CSC 480 Software Engineering Lecture 18 Nov 6, 2002.
NA-MIC National Alliance for Medical Image Computing UCSD: Engineering Core 2 Portal and Grid Infrastructure.
Alternative Architecture for Information in Digital Libraries Onno W. Purbo
CS 501: Software Engineering Fall 1999 Lecture 12 System Architecture III Distributed Objects.
Automatic Metadata Discovery from Non-cooperative Digital Libraries By Ron Shi, Kurt Maly, Mohammad Zubair IADIS International Conference May 2003.
1 G52IWS: Web Services Chris Greenhalgh. 2 Contents The World Wide Web Web Services example scenario Motivations Basic Operational Model Supporting standards.
Cornell CS 502 Metadata for the Web Issues and Simple Answers CS 502 – Carl Lagoze – Cornell University.
The library is open Digital Assets Management & Institutional Repository Russian-IUG November 2015 Tomsk, Russia Nabil Saadallah Manager Business.
©Ian Sommerville 2000, Tom Dietterich 2001 Slide 1 Distributed Systems Architectures l Architectural design for software that executes on more than one.
OASIS ebXML Registry Standard Open Forum 2003 on Metadata Registries 10:30 – 11:15 January 20, 2003 Kathryn Breininger The Boeing Company Chair, OASIS.
Flexible and Extensible Digital Object and Repository Architecture (FEDORA) Sandra Payette Cornell University
June 3-6, 2003E-Society Lisbon Automatic Metadata Discovery from Non-cooperative Digital Libraries R. Shi, K. Maly, M. Zubair Department of Computer Science.
Identifiers and Repositories hussein suleman uct cs honours 2006.
The Mellon-Funded Fedora Project A Presentation to the European Digital Library Conference September 17, 2002 Sandy Payette and Thornton Staples.
Toward an Open Architectural Framework for Digital Objects M. Cristina Pattuelli INLS March 19, 2001.
A Semi-Automated Digital Preservation System based on Semantic Web Services Jane Hunter Sharmin Choudhury DSTC PTY LTD, Brisbane, Australia Slides by Ananta.
Grid Services for Digital Archive Tao-Sheng Chen Academia Sinica Computing Centre
1 Distributed Systems Architectures Distributed object architectures Reference: ©Ian Sommerville 2000 Software Engineering, 6th edition.
3/24/051 Value-Added Surrogates for Distributed Content Establishing a Virtual Control Zone By: Sandra Payette & Carl Lagoze Presented By: Mohamed Elmiligui.
Thanks to Michael L. Nelson, Sandra Payette, Thorton Staples
The Fedora Project March 10, 2003
The Fedora Project March 19, 2003 ISTEC Symposium, Brazil
Flexible Extensible Digital Object Repository Architecture
CS 501: Software Engineering Fall 1999
Flexible Extensible Digital Object Repository Architecture
An Architecture for Complex Objects and their Relationships
Outline Pursue Interoperability: Digital Libraries
ECDL ‘98 September 21, 1998 Carl Lagoze Cornell University
NSDL Data Repository (NDR)
Open Archive Initiative
CS 791/891 - Preservation of Digital Objects and Collections
Presentation transcript:

Flexible and Extensible Digital Object and Repository Architecture (FEDORA) Sandra Payette Cornell University MOA2/Cornell Architecture Meeting December 10,

Background - CDLRG NCSTRL Dienst architecture Interoperability strawman proposal (see Leiner paper in next D-Lib) Open Architecture Research Program Cornell Reference Architecture for Distributed Digital Libraries (CRADDL) Flexible Extensible Digital Object and Repository Architecture (FEDORA) Distributed Searching Resource Discovery and Metadata (Dublin Core effort, STARTS)

Library of Congress Cornell Digital Library Digital Library Interoperability

Cornell Reference Architecture for Distributed Digital Libraries (CRADDL) Open Architecture  functionality partitioned into set of well-defined services  services accessible via well-defined protocol Modularization  promotes interoperability  scalable to different clientele (research library, informal web) Federation  enable aggregations into logical collections Distribution  of content (collections) and services  of administration and management of DL

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

FEDORA Repository Service  core service to provide a reliable and secure means to store and disseminate digital content  interoperability with other CRADDL services Digital Object Model  container for aggregating any digital material  disseminations of complex content types with rights management  global extensibility mechanisms Part of our broader effort to develop a component-ware digital library architecture

FEDORA: Conceptual Backdrop CNRI Digital Object Architecture (Kahn/Wilensky, Arms/Blanchi/Overly) Warwick Framework Distributed Active Relationships

FEDORA DigitalObject: container for content  Structure (raw data structure)  Interface (content views)  Mechanisms (executables) Repository: logical service  Service layer for “contained” DigitalObjects  Object lifecycle management  Secure environment for running mobile code

Digital Library Content Simple, familiar content types Complex, compound, dynamic content types

FEDORA: Goals Normalization of digital library content - order the chaos Flexible notions of content while ensuring interoperability Stable interfaces as underlying mechanisms change Naturally evolving content type system - extensibility Community-driven content type development Complex aggregations of distributed content Rights management - leverage existing/future schemes

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

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

Structure Mechanism Content-Type Interfaces Book Dublin Core What the client sees vs. What the object is

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

Disseminator A generic component for associating a set of behaviors with a DigitalObject. Primitive Disseminator Content Type Disseminator

FEDORA DigitalObject application/ postscript application/ MARC Primitive Disseminator Structural Kernel Content-Type Wrapper

application/ MARC DS 1 application/ postscript DS 2 Primitive Disseminator DigitalObject : Client communicates with PrimitiveDisseminator Book, DublinCore ListContentTypes Book Disseminator DublinCore Disseminator GetDissemination (Book.GetPage(1)) GetChapter GetTOC GetPage GetChapter(n), GetTOC(), etc. GetMethods(Book)

Content Type Principles Stability Orthogonality to Structure Extensibility These are achieved in FEDORA through the architectural segregation of DigitalObject structure, mechanisms, and content-type interfaces.

FEDORA: Interface Stability Mechanism Structure Interface Content Type Mechanisms can be updated or replaced as technology changes... … and content interface to the Digital Object remains stable

Digital Object Extensibility: Adding New Content 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

Content Type Extensibility There must be a way to identify, register and proliferate content types in the global digital library infrastructure. Content types must become persistent, named entities in the digital library infrastructure. How? Content-type definitions and mechanism are disseminated from named DigitalObjects (using FEDORA’s own architectural abstractions).

Content Disseminator is a Generic Component... … that references another FEDORA DigitalObject that disseminates a content-type servlet GetDCField(e), GetDCRecord GetMethods(DC) application/ MARC GetDCField GetDCRecord DC DS 1 application/ postscript DS 2 DataStreams = DS 1 ContentTypeID = URN DC1

How Achieve Content-Type Extensibility? 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 content-type behaviors through association and delegation

Registration and Proliferation of Content Types A content type becomes registered when the URN of the DigitalObject that disseminates its signature is registered (in a DL name service) A content type becomes usable when the URN of the DigitalObject that disseminates its servlet is registered Other DigitalObjects can utilize content types by referencing them by 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 ACL Mechanism Servlet Disseminator URN ACL1 URN 1 GetDCField GetDCRecord Disseminator protected by AccessManager External Servlet Utilized

Current Status Full reference implementation  CORBA IDL defines all component interfaces  Java/CORBA prototype system complete Java client application for building and accessing digital objects Initial demonstration content types  Dublin Core  Article/Technical Report  Book (with CNRI / Library of Congress)  Photo

CNRI/Cornell Interoperability Project CNRI and Library of Congress partners 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  Inter-ORB communication  IDL recognition: request invocation; proper return types  Status: Success (October 1998) IT1: Functional Interoperability  create/access DigitalObjects in each repository  exercise all operations on each other’s repositories  Status: In Progress (completion 12/18) IT2: Content-Type Servlet Interoperability  dynamic loading and running of remote servlets

FEDORA: Planned Research Scale up: demonstrate complex content types and servlets with CNRI and LC Integration of new community- developed content types (e.g., MOA2) Access Management Reliability, security, integrity (DLI2 - CS/Cornell University Library) For more information:

CDLRG References Lagoze and Payette: An Infrastructure for Open-Architecture Digital Libraries Payette and Lagoze: Flexible and Extensible Digital Object and Repository Architecture (FEDORA) Lagoze and Fielding: Defining Collections in Distributed Digital Libraries Distributed Search and Resource Discovery