27
Enhanced Content Models State and University Library, Denmark Open Repositories 2009 Asger Blekinge-Rasmussen Kåre Fiedler Christiansen

Enhanced Content Models State and University Library, Denmark Open Repositories 2009 Asger Blekinge-Rasmussen Kåre Fiedler Christiansen

Embed Size (px)

Citation preview

Page 1: Enhanced Content Models State and University Library, Denmark Open Repositories 2009 Asger Blekinge-Rasmussen Kåre Fiedler Christiansen

Enhanced Content Models

State and University Library, Denmark

Open Repositories 2009

Asger Blekinge-RasmussenKåre Fiedler Christiansen

Page 2: Enhanced Content Models State and University Library, Denmark Open Repositories 2009 Asger Blekinge-Rasmussen Kåre Fiedler Christiansen

Program Introduction

A look at Fedora Objects Traditional Content Models Enhanced Content Models

Description languages Validator

Templates Repository Views GUI based on the Enhanced Content Models

Page 3: Enhanced Content Models State and University Library, Denmark Open Repositories 2009 Asger Blekinge-Rasmussen Kåre Fiedler Christiansen

Introduction

Extension of Fedora 3.x Content Models Precise description of XML datastreams Precise description of relations

Additionally System for creating new data objects System for transforming data objects into

information bundles Webservice presenting the new functionality

Page 4: Enhanced Content Models State and University Library, Denmark Open Repositories 2009 Asger Blekinge-Rasmussen Kåre Fiedler Christiansen

A look at Fedora Objects

Interrelated objects Datastreams in objects Content Models

Page 5: Enhanced Content Models State and University Library, Denmark Open Repositories 2009 Asger Blekinge-Rasmussen Kåre Fiedler Christiansen

Traditional Content Models

Content Models declare the classes of data objects

Content Models declare the existince of datastreams in data objects

Content Models associate disseminators with data objects

Page 6: Enhanced Content Models State and University Library, Denmark Open Repositories 2009 Asger Blekinge-Rasmussen Kåre Fiedler Christiansen

Enhanced Content Models

Extra information in Content Models. Backwards compatible.

ECMs declare the allowed relations, with cardinality and target classes for data objects

ECMs declare the schemas for xml datastreams.

ECMs: Describe only properties about subscribing objects Describe all properties about subscribing objects

Page 7: Enhanced Content Models State and University Library, Denmark Open Repositories 2009 Asger Blekinge-Rasmussen Kåre Fiedler Christiansen

Description Languages

Datastreams XML

XMLSchema

Relations RDF

OWL Lite

Page 8: Enhanced Content Models State and University Library, Denmark Open Repositories 2009 Asger Blekinge-Rasmussen Kåre Fiedler Christiansen

Description Languages - Datastreams

<dsCompositeModel> <dsTypeModel ID="DC"> <form MIME="text/xml"/> </dsTypeModel></dsCompositeModel>

Page 9: Enhanced Content Models State and University Library, Denmark Open Repositories 2009 Asger Blekinge-Rasmussen Kåre Fiedler Christiansen

Description Languages - Datastreams

<dsCompositeModel> <dsTypeModel ID="DC"> <form MIME="text/xml"/>

</dsTypeModel></dsCompositeModel>

Page 10: Enhanced Content Models State and University Library, Denmark Open Repositories 2009 Asger Blekinge-Rasmussen Kåre Fiedler Christiansen

Description Languages - Datastreams

<dsCompositeModel> <dsTypeModel ID="DC"> <form MIME="text/xml"/> <extensions name="SCHEMA">

</extensions> </dsTypeModel></dsCompositeModel>

Page 11: Enhanced Content Models State and University Library, Denmark Open Repositories 2009 Asger Blekinge-Rasmussen Kåre Fiedler Christiansen

Description Languages - Datastreams

<dsCompositeModel> <dsTypeModel ID="DC"> <form MIME="text/xml"/> <extensions name="SCHEMA"> <schema:schema type="xsd" object="example:example_schema_object" datastream="DC_SCHEMA"/> </extensions> </dsTypeModel></dsCompositeModel>

Page 12: Enhanced Content Models State and University Library, Denmark Open Repositories 2009 Asger Blekinge-Rasmussen Kåre Fiedler Christiansen

Ontology datastream

<rdf:RDF xml:base="http://doms.statsbiblioteket.dk/relations/default/0/1/#">

<owl:ObjectProperty rdf:about="#isPartOfCollection"/>

<owl:Class rdf:about="info:fedora/doms:ContentModel_DOMS"> </owl:Class>

</rdf:RDF>

Page 13: Enhanced Content Models State and University Library, Denmark Open Repositories 2009 Asger Blekinge-Rasmussen Kåre Fiedler Christiansen

<rdf:RDF xml:base="http://doms.statsbiblioteket.dk/relations/default/0/1/#">

<owl:ObjectProperty rdf:about="#isPartOfCollection"/>

<owl:Class rdf:about="info:fedora/doms:ContentModel_DOMS"> </owl:Class>

</rdf:RDF>

Ontology datastream

Page 14: Enhanced Content Models State and University Library, Denmark Open Repositories 2009 Asger Blekinge-Rasmussen Kåre Fiedler Christiansen

Ontology datastream

<rdf:RDF xml:base="http://doms.statsbiblioteket.dk/relations/default/0/1/#">

<owl:ObjectProperty rdf:about="#isPartOfCollection"/>

<owl:Class rdf:about="info:fedora/doms:ContentModel_DOMS">

</owl:Class>

</rdf:RDF>

Page 15: Enhanced Content Models State and University Library, Denmark Open Repositories 2009 Asger Blekinge-Rasmussen Kåre Fiedler Christiansen

Ontology datastream

<rdf:RDF xml:base="http://doms.statsbiblioteket.dk/relations/default/0/1/#">

<owl:ObjectProperty rdf:about="#isPartOfCollection"/>

<owl:Class rdf:about="info:fedora/doms:ContentModel_DOMS"> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="#isPartOfCollection"/> <owl:minCardinality rdf:datatype="integer">1</owl:minCardinality> </owl:Restriction> </rdfs:subClassOf> </owl:Class>

</rdf:RDF>

Page 16: Enhanced Content Models State and University Library, Denmark Open Repositories 2009 Asger Blekinge-Rasmussen Kåre Fiedler Christiansen

Ontology datastream

<rdf:RDF xml:base="http://doms.statsbiblioteket.dk/relations/default/0/1/#">

<owl:ObjectProperty rdf:about="#isPartOfCollection"/>

<owl:Class rdf:about="info:fedora/doms:ContentModel_DOMS"> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="#isPartOfCollection"/> <owl:minCardinality rdf:datatype="integer">1</owl:minCardinality> </owl:Restriction> </rdfs:subClassOf>

</owl:Class>

</rdf:RDF>

Page 17: Enhanced Content Models State and University Library, Denmark Open Repositories 2009 Asger Blekinge-Rasmussen Kåre Fiedler Christiansen

Ontology datastream

<rdf:RDF xml:base="http://doms.statsbiblioteket.dk/relations/default/0/1/#">

<owl:ObjectProperty rdf:about="#isPartOfCollection"/>

<owl:Class rdf:about="info:fedora/doms:ContentModel_DOMS"> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="#isPartOfCollection"/> <owl:minCardinality rdf:datatype="integer">1</owl:minCardinality> </owl:Restriction> </rdfs:subClassOf>

<rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="#isPartOfCollection"/> <owl:allValuesFrom

rdf:resource="info:fedora/doms:ContentModel_Collection"/> </owl:Restriction> </rdfs:subClassOf> </owl:Class>

</rdf:RDF>

Page 18: Enhanced Content Models State and University Library, Denmark Open Repositories 2009 Asger Blekinge-Rasmussen Kåre Fiedler Christiansen

Validator service

Validate a data object

GET: /ecm/validate/{objectpid} Also available as a disseminator

Page 19: Enhanced Content Models State and University Library, Denmark Open Repositories 2009 Asger Blekinge-Rasmussen Kåre Fiedler Christiansen

Templates

Data objects created as instances of content models – just like in OO programming.

An easy way to fill out default data in new objects

Page 20: Enhanced Content Models State and University Library, Denmark Open Repositories 2009 Asger Blekinge-Rasmussen Kåre Fiedler Christiansen

Template data objects

A data object can be declared as a template by adding the relation:

IsTemplateFor

to a content model

Page 21: Enhanced Content Models State and University Library, Denmark Open Repositories 2009 Asger Blekinge-Rasmussen Kåre Fiedler Christiansen

Template services

Create template

POST: /ecm/mark/{objectpid}/asTemplateFor/{cmpid}

Discover templates:

GET: /ecm/findTemplatesFor/{cmpid} Clone template

POST: /ecm/clone/{templatepid}

Page 22: Enhanced Content Models State and University Library, Denmark Open Repositories 2009 Asger Blekinge-Rasmussen Kåre Fiedler Christiansen

Repository Views

Bundle atomic objects into logical records Each search engine record might be made up

of a bundle of fedora objects Defined by annotated relations

The view of an object is the object itself, and any object that is connected by a annotated relation

Different View angles create different logical records

Page 23: Enhanced Content Models State and University Library, Denmark Open Repositories 2009 Asger Blekinge-Rasmussen Kåre Fiedler Christiansen

Repository Views

Page 24: Enhanced Content Models State and University Library, Denmark Open Repositories 2009 Asger Blekinge-Rasmussen Kåre Fiedler Christiansen

Repository Views

Page 25: Enhanced Content Models State and University Library, Denmark Open Repositories 2009 Asger Blekinge-Rasmussen Kåre Fiedler Christiansen

View services

Get all entry objects for view angle

GET: /ecm/getEntryObjectsForViewAngle/{viewAngle

} Get objects in view

GET: /ecm/getViewObjectsForObject/{objpid}/forAngl

e/{viewAngle} Also available as disseminator

Page 26: Enhanced Content Models State and University Library, Denmark Open Repositories 2009 Asger Blekinge-Rasmussen Kåre Fiedler Christiansen

Autogenerated user interfaces

Precise description of contents allow for autogenerated programmatic interfaces

In effect, a GUI could wrap itself around the objects in the repository

Demo time :)

Page 27: Enhanced Content Models State and University Library, Denmark Open Repositories 2009 Asger Blekinge-Rasmussen Kåre Fiedler Christiansen

Rounding up

Fedora wiki will soon host a collection of (enhanced) content models

Websites http://ecm.sourceforge.net/ http://ecm.wiki.sourceforge.net/

This work has been funded by DEFF, Denmark's Electronic Research Library State and University Library, Denmark