Flexible and Extensible Digital Object and Repository Architecture (FEDORA) Sandra Payette Cornell University CS 502 Computing Methods.

Slides:



Advertisements
Similar presentations
Towards Remote Policy Enforcement for Runtime Protection of Mobile Code Using Trusted Computing Xinwen Zhang Francesco Parisi-Presicce Ravi Sandhu
Advertisements

DuraSpace: Digital Information All Ways, Always Pretoria, South Africa May 14 th, 2009.
Digital Library Architecture: A Service-Based Approach
An Introduction to Repositories Thornton Staples Director of Community Strategy and Alliances Director of the Fedora Project.
Containment and Integrity for Mobile Code Status Report to DARPA ISO: Feb Fred B. Schneider Andrew Myers Department of Computer Science Cornell University.
Object Re-Use and Exchange Mellon Retreat, Nassau Inn, Princeton, NJ, March Herbert Van de Sompel, Carl Lagoze The OAI Object Re-Use & Exchange.
Planning for Flexible Integration via Service-Oriented Architecture (SOA) APSR Forum – The Well-Integrated Repository Sydney, Australia February 2006 Sandy.
ARCHIMÈDE Presented by Guy Teasdale Directeur, Services soutien et développement Bibliothèque de l’Université Laval CARL Workshop on Institutional Repositories.
Project Prism Virtual Remote Control: Preservation Risk Management for Web Resources Nancy Y. McGovern, ECURE 2002.
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.
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.
Multimedia Digital Libraries Sugata Mukhopadhyay March 14, 2000.
Policy-Carrying, Policy-Enforcing Digital Objects Sandra Payette Cornell Digital Library Research Group.
1 Using Scalable and Secure Web Technologies to Design Global Format Registry Muluwork Geremew, Sangchul Song and Joseph JaJa Institute for Advanced Computer.
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.
PAWN: A Novel Ingestion Workflow Technology for Digital Preservation
William Y. Arms Corporation for National Research Initiatives March 22, 1999 Object models, overlay journals, and virtual collections.
Cornell/CNRI Repository Interoperability Project Interoperability Meeting February 24, 1999.
A Type System for Expressive Security Policies David Walker Cornell University.
Flexible and Extensible Digital Object and Repository Architecture (FEDORA) Sandra Payette Cornell University MOA2/Cornell Architecture.
Policy-Carrying, Policy-Enforcing Digital Objects Sandra Payette Project Prism - Cornell University DLI2 All-Projects Meeting June 14, 2000.
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.
METS-Based Cataloging Toolkit for Digital Library Management System Dong, Li Tsinghua University Library
8/28/97Organization of Information in Collections Introduction to Description: Dublin Core and History University of California, Berkeley School of Information.
1 XML as a preservation strategy Experiences with the DiVA document format Eva Müller, Uwe Klosa Electronic Publishing Centre Uppsala University Library,
Fedora Content Models for the National Science Digital Library Data Repository Fedora User’s Group Meeting Copenhagen, September 28, 2005 Carl Lagoze Cornell.
CPRG 215 Introduction to Object-Oriented Programming with Java Module 1-Introduction to Java Topic 1.1 Basics of Java Produced by Harvey Peters, 2008 Copyright.
Digital Object Repositories (Example of FEDORA).What-Is- In-It-For-PAWS? PAWS Meeting Series, Spring 2007 Michael Yudelson.
1 Schema Registries Steven Hughes, Lou Reich, Dan Crichton NASA 21 October 2015.
Introduction to Digital Libraries hussein suleman uct cs honours 2004.
Ocean Observatories Initiative Data Management (DM) Subsystem Overview Michael Meisinger September 29, 2009.
The Mellon-Funded Fedora Project A Briefing for the Cornell University Library January 24, 2002 Sandy Payette Thorny Staples Ross Wayland.
Modularization and Interoperability: Dublin Core and the Warwick Framework Sandra D. Payette Digital Library Research Group Cornell University November.
The Fedora Project April 28-29, 2003 CNI, Washington DC Thornton Staples University of Virginia Sandy Payette Cornell Information Science NOTE: CSG
Copyright © cs-tutorial.com. Overview Introduction Architecture Implementation Evaluation.
Digital Library Interoperability Architecture CS 502 – Carl Lagoze – Cornell University.
10/24/09CK The Open Ontology Repository Initiative: Requirements and Research Challenges Ken Baclawski Todd Schneider.
This presentation describes the development and implementation of WSU Research Exchange, a permanent digital repository system that is being, adding WSU.
SASI Enforcement of Security Policies : A Retrospective* PSLab 오민경.
The library is open Digital Assets Management & Institutional Repository Russian-IUG November 2015 Tomsk, Russia Nabil Saadallah Manager Business.
Globus: A Report. Introduction What is Globus? Need for Globus. Goal of Globus Approach used by Globus: –Develop High level tools and basic technologies.
Flexible and Extensible Digital Object and Repository Architecture (FEDORA) Sandra Payette Cornell University
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.
1 herbert van de sompel CS 502 Computing Methods for Digital Libraries Cornell University – Computer Science Herbert Van de Sompel
Toward an Open Architectural Framework for Digital Objects M. Cristina Pattuelli INLS March 19, 2001.
Introduction: Databases and Database Systems Lecture # 1 June 19,2012 National University of Computer and Emerging Sciences.
An Introduction to Data Modeling with Fedora Thorny Staples Fedora Commons, Inc.
Towards a High Performance Extensible Grid Architecture Klaus Krauter Muthucumaru Maheswaran {krauter,
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
Overview: Fedora Architecture and Software Features
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
VI-SEEM Data Repository
ECDL ‘98 September 21, 1998 Carl Lagoze Cornell University
NSDL Data Repository (NDR)
CS 791/891 - Preservation of Digital Objects and Collections
The Fedora Project April 28-29, 2003 CNI, Washington DC
Presentation transcript:

Flexible and Extensible Digital Object and Repository Architecture (FEDORA) Sandra Payette Cornell University CS 502 Computing Methods for Digital Libraries April 18, 2001

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

FEDORA: Goals Distribution - of digital content and services Interface Stability - for digital objects Interoperability - for digital objects and repositories Extensibility - naturally evolving type system Flexibility - community-driven type development Security - rights management and access control Preservation - longevity of digital objects

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

FEDORA History Digital Object vision (Kahn/Wilensky) Warwick Framework (container model) Distributed Active Relationships (Lagoze) Cornell FEDORA (Payette, Lagoze) CNRI Repository (Arms, Blanchi, Overly) CNRI/FEDORA Interoperability Project UVA/FEDORA (Staples, Weyland) - Complex disseminators, XML/XSL, web integration Project Prism (DLI2) – Security, preservation Lecture Browser (Mukhopadhyay, Newman)

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

Fedora Digital Object Model Disseminations Generic interface Data Stream Data Stream Data Stream Extensible Mechanism Encapsulated service request Primitive Disseminator Typed Disseminator Internal stream

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

Extensible Behaviors - “Lecture” Content Disseminations Lecture Mechanism Dublin Core GetVideo(quality) GetSlide(seqNum) GetSyncData GetDCRecord GetDCField(name) Lecture Data Archive Video-H Applet slide-2 (gif) slide-1 (gif) metadata (xml)

Digital Object Methods Content Disseminations Lecture Dublin Core Video-H Applet (java) slide-2 (gif) slide-1 (gif) metadata (xml) Lecture, DublinCore GetDissemination (Lecture.GetSlide(1)) GetSlide(n), GetVideo(res),GetApplet() GetMethods(Lecture) The Slide GetDissemTypes()

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

Registration and Proliferation of Disseminator Types Disseminator Types registered in the Handle System  visible when URN of a Signature is registered  usable when URN of a Servlet is registered Other DigitalObjects can use Disseminator Types by referencing these URNs. Handle System Fedora Repository

Big Picture: Cooperation among non-cooperating sources Lesson 1 module GetDissemination( GetLesson(1)) Library Catalog Museum Image Database Video Archive Course page

Repository Big Picture: Interoperable Repositories Handles Name Service Cornell CS Lectures Client NCSTRL Repository Library Collections

University of Virginia (UVA) Implementation Relational schema for Fedora Fedora as mediation technology Integration and normalization of many “born-digital” resources Multiple disseminations of same content to meet different scholarly needs 500,000+ digital objects High performance

UVA – Digital Objects

UVA Salisbury Cathedral

UVA Fedora Utility Interface

FEDORA: Security Distribution - of digital content and services Interface Stability - for digital objects Interoperability - for digital objects and repositories Extensibility - naturally evolving type system Flexibility - community-driven type development Security - rights management and access control Preservation - longevity of digital objects

Limitations of traditional access control mechanisms Limited expressiveness for policies Fixed set of abstractions  objects are files, directories, etc.  actions are read, write, execute, etc. Not easily extended for complex or fine- grained policies

Digital Libraries: context-specific policies Distance Education (“Lecture object”):  “guests may view course syllabus and slides 1-10 of Lecture 1, but may not view the Lecture 1 video or other slides.”  “students may not view Lecture 2 video unless they submit assignment for Lecture 1.” Library digitization (“Book object”):  “before copyright expiration on 1/1/2002 CU students can access chapters 1-6 and CU alumni can access pages 1-20 of chapter 2; after expiration, all users can access all pages of all chapters.” Business Strategy (“Technology portfolio object”):  “managers may view product specification only after product safety report has been certified by head of R&D.”  “only the executive team may run the market share simulation”

Building on existing work Fedora - digital object and repository architecture (Payette and Lagoze, 1998, 2000) Security Automata (Schneider, 1999) PoET - Policy Enforcement Toolkit (Erlingsson and Schneider, 1999, 2000)

Extensible Behaviors - “Lecture” Content Disseminations Lecture Mechanism Dublin Core GetVideo(quality) GetSlide(seqNum) GetSyncData GetDCRecord GetDCField(name) Lecture Data Archive Video-H Policy-L (PSlang) Video-L Policy-D (PSlang) slide-2 (gif) slide-1 (gif) metadata (xml)

Security Automata Theoretical basis for specifying policies that are enforceable, flexible, and fine-grained Policies are modeled as state transitions Execution Monitoring (EM)  Class of enforcement mechanisms that enforce policies by simulating a security automaton  Monitors executions upon a target (system, application, object) and prevents executions that violate policy  “Reference Monitors” are EM Source: Schneider, 1999

In-Line Reference Monitoring (IRM) Security automata simulations are merged into program object code (checks inserted before each execution) The application program, itself, becomes the reference monitor, ensuring that policy is not violated when it runs. Source: Erlingsson and Schneider, 1999, 2000 Traditional (kernel as Reference Monitor) kernel program executable OS RM Language-based security (IRM) In-lined program

Policy Enforcement Toolkit (PoET) Trusted program rewriter - modifies Java bytecode Secure class loader Event-oriented policy language (PSLang) Source: Erlingsson and Schneider, 1999, 2000 Policy in PSlang Policy in PSlang Program rewriter Secure Class loader Modified Bytecode (target with policy embedded) JVM Java Bytecode (class file) Program runs (obeys policy) PoET

FEDORA and PoET IRM Policy Enforcement Content Disseminations Video-H Lecture Mechanism Video-L Dublin Core Java bytecode in-lined with policies at runtime slide-2 (gif) slide-1 (gif) metadata (xml) access request Policy-L (PSlang) Policy-D (PSlang)

Object structure view via client Digital Object Policy

End-User View … policies enforced transparently

Future Work Policy enforcement of more complex policies, more object types. Dynamic policy binding based on object characteristics. UVA Production Fedora Open Archives Initiative compliance Preservation: dissemination of metadata to facilitate preservation Mobile computing - trust schemes to support policy enforcement as objects move

References: Fedora Payette, Sandra and Carl Lagoze, “Flexible and Extensible Digital Object and Repository Architecture,” ECDL98, Heraklion, Crete, September 21-23, 1998, Springer, 1998, (Lecture notes in computer science; Vol. 1513). Payette, Sandra, Christophe Blanchi, Carl Lagoze, and Edward Overly, “Interoperability for Digital Objects and Repositories: The Cornell/CNRI Experiments,” D-Lib Magazine, May Payette, Sandra and Carl Lagoze, Policy-Carrying, Policy-Enforcing Digital Objects, accepted by Fourth European Conference on Research andAdvanced Technology for Digital Libraries, Portugal, Springer, 2000, (Lecture notes in computer science), draft available at Payette, Sandra and Carl Lagoze, Value Added Surrogates for Distributed Content: Establishing a Virtual Control Zone, D-Lib Magazine, June 2000,

Contributors: Staples, Thornton, and Ross Wayland, "Virginia Dons Fedora: A prototype for a digital object repository," D-LIb Magazine, July 2000, Schneider, Fred B., “Enforceable Security Policies,” Computer Science Technical Report #TR , Department of Computer Science, Cornell University, July 24, 1999, Erlingsson, Ulfar and Fred B. Schneider, “SASI Enforcement of Security Policies: A Retrospective,” Computer Science Technical Report #TR , Department of Computer Science, Cornell University, July 19, 1999, Erlingsson, Ulfar and Fred B. Schneider, “IRM Enforcement of Java Stack Inspection,” Computer Science Technical Report #TR , Department of Computer Science, Cornell University, February 19, 2000,