Fedora Technisch

29
Henk van den Berg Software developer @ DANS 19-6-2008 Fedora Op Klompen Fedora Technisch

description

Fedora technische uitleg door Henk van de Berg. Deze presentatie is gegeven tijdens de Fedora Op Klompen dag 19 juni 2008.

Transcript of Fedora Technisch

Page 1: Fedora Technisch

Henk van den BergSoftware developer @ DANS

19-6-2008 Fedora Op Klompen

Fedora Technisch

Page 2: Fedora Technisch

Henk van den BergSoftware developer @ DANS

19-6-2008 Fedora Op Klompen

Programma• Systeem-architectuur

– De architectuur achter het systeem– Installatie– Api’s, SOAP & rest

• Digitale Objecten– Content Model Architecture– FOXML, MetslikeFOXML– Versioning

• AuthN & AuthZ– LDAP/tomcat users– XACML

• Zoeken– gSearch– Semantisch zoeken

Page 3: Fedora Technisch

Henk van den BergSoftware developer @ DANS

19-6-2008 Fedora Op Klompen

Programma

Page 4: Fedora Technisch

Henk van den BergSoftware developer @ DANS

19-6-2008 Fedora Op Klompen

MDMD

contentcontent

MDMD MDMD

“Repository Pattern”

Architectuur

Page 5: Fedora Technisch

Henk van den BergSoftware developer @ DANS

19-6-2008 Fedora Op Klompen

Aan de slag

Page 6: Fedora Technisch

Henk van den BergSoftware developer @ DANS

19-6-2008 Fedora Op Klompen

Installatie

$ java -jar fedora-3.0b1-installer.jar

*********************** Fedora Installation ***********************

Installation type? Options : quick, custom, client

Fedora home directory?

Fedora administrator password?

Page 7: Fedora Technisch

Henk van den BergSoftware developer @ DANS

19-6-2008 Fedora Op Klompen

Start Fedora#!/bin/shecho -----------------------------echo start script for Fedora 3.0b1echo -----------------------------

export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Homeexport FEDORA_HOME=/Fedoraexport PATH=$PATH:$FEDORA_HOME/server/bin:$JAVA_HOME/bin

echo "Using JAVA_HOME: $JAVA_HOME"echo "Using FEDORA_HOME: $FEDORA_HOME"echo "Using PATH: $PATH"echoecho "Executing $FEDORA_HOME/tomcat/bin/startup.sh"echo -----------------------------echo echo -----------------------------

$FEDORA_HOME/tomcat/bin/startup.sh

Page 8: Fedora Technisch

Henk van den BergSoftware developer @ DANS

19-6-2008 Fedora Op Klompen

API’s SOAP & REST

API-A (Access)

SOAP

REST

SOAP

REST

API-M (Management)

Fedora Rest API (Experimental)A + M

Client.jar (Java API) A + M

Page 9: Fedora Technisch

Henk van den BergSoftware developer @ DANS

19-6-2008 Fedora Op Klompen

Page 10: Fedora Technisch

Henk van den BergSoftware developer @ DANS

19-6-2008 Fedora Op Klompen

Digital Object

Page 11: Fedora Technisch

Henk van den BergSoftware developer @ DANS

19-6-2008 Fedora Op Klompen

Digital Object

FOXML 1.1FOXML 1.0METS 1.1ATOM 1.0

Ondersteunde formaten

Page 12: Fedora Technisch

Henk van den BergSoftware developer @ DANS

19-6-2008 Fedora Op Klompen

Foxml

foxml reference example.xml

<digitalObject PID="uniqueID"><!-- there are a set of core object properties --><objectProperties>

<property/><property/>...

</objectProperties><!-- there can be zero or more datastreams --><datastream>

<datastreamVersion/><datastreamVersion/>...

</datastream></digitalObject>

Page 13: Fedora Technisch

Henk van den BergSoftware developer @ DANS

19-6-2008 Fedora Op Klompen

Hello Fedora

public java.lang.String ingestAndCommit(java.io.InputStream in, java.lang.String ingestFormat, java.lang.String logMessage) throws java.rmi.RemoteException, java.io.IOException

fedora.client.utility.ingest.AutoIngestor

public java.lang.String uploadFile(java.io.File file) throws java.io.IOException

fedora.client.FedoraClient

1. Upload content

2. Ingest Digital Object

uploaded://123 FOXML<datastream>….

eof:456

Page 14: Fedora Technisch

Henk van den BergSoftware developer @ DANS

19-6-2008 Fedora Op Klompen

DataStream: Control Group

Externally Referenced Content (E), Redirected Content (R),Managed Content (M) or

Inline XML (X)

Page 15: Fedora Technisch

Henk van den BergSoftware developer @ DANS

19-6-2008 Fedora Op Klompen

DataStream: Reserved ID’s

Dublin Core

Object to object relationships in RDF

Datastream to datastream relationships in RDF(experimental)

Page 16: Fedora Technisch

Henk van den BergSoftware developer @ DANS

19-6-2008 Fedora Op Klompen

Object to object relations

Page 17: Fedora Technisch

Henk van den BergSoftware developer @ DANS

19-6-2008 Fedora Op Klompen

RDFResource Description Framework (RDF)

Tripples

W3C-standaard

Fedora Ontology

Page 18: Fedora Technisch

Henk van den BergSoftware developer @ DANS

19-6-2008 Fedora Op Klompen

(nogmaals) Digital Object

Content Model Architecture (CMA)

Page 19: Fedora Technisch

Henk van den BergSoftware developer @ DANS

19-6-2008 Fedora Op Klompen

Content Models

digital content entity

model of a service

how to get the service

formal model

Page 20: Fedora Technisch

Henk van den BergSoftware developer @ DANS

19-6-2008 Fedora Op Klompen

(nogmaals) Digital ObjectData object

Page 21: Fedora Technisch

Henk van den BergSoftware developer @ DANS

19-6-2008 Fedora Op Klompen

(nogmaals) Digital ObjectService Definition object

Page 22: Fedora Technisch

Henk van den BergSoftware developer @ DANS

19-6-2008 Fedora Op Klompen

(nogmaals) Digital ObjectService Deployment object

Page 23: Fedora Technisch

Henk van den BergSoftware developer @ DANS

19-6-2008 Fedora Op Klompen

(nogmaals) Digital ObjectContent Model object

Page 24: Fedora Technisch

Henk van den BergSoftware developer @ DANS

19-6-2008 Fedora Op Klompen

Versie beheer

• Aan-/uitzetten per repository• Aan-/uitzetten per datastream• Audit trail per wijziging

Page 25: Fedora Technisch

Henk van den BergSoftware developer @ DANS

19-6-2008 Fedora Op Klompen

(nogmaals) Digital Object

Page 26: Fedora Technisch

Henk van den BergSoftware developer @ DANS

19-6-2008 Fedora Op Klompen

Security

• LDAP / tomcat users• XACML

Page 27: Fedora Technisch

Henk van den BergSoftware developer @ DANS

19-6-2008 Fedora Op Klompen

Zoeken

• gSearch• Semantic search

Page 28: Fedora Technisch

Henk van den BergSoftware developer @ DANS

19-6-2008 Fedora Op Klompen

En verder…

• eSciDoc http://www.escidoc-project.de• MuraDora• Topaz http://www.topazproject.org/trac/

Page 29: Fedora Technisch

Henk van den BergSoftware developer @ DANS

19-6-2008 Fedora Op Klompen

(Voor- en) nadelen

• XACML:• - opgeslagen in files• - queries traag• - geen hierarchie ondersteuning• Transacties:• - geen locking• - geen ACID• - geen transacties

• Nog meer?