23
DCMI RDF Application Profile Task Group Stefanie Rühle KIM WS 2015 31. März 2015

DCMI RDF Application Profile Task Group Stefanie Rühle KIM WS 2015 31. März 2015

Embed Size (px)

Citation preview

Page 1: DCMI RDF Application Profile Task Group Stefanie Rühle KIM WS 2015 31. März 2015

DCMI RDF Application Profile Task GroupStefanie RühleKIM WS 201531. März 2015

Page 2: DCMI RDF Application Profile Task Group Stefanie Rühle KIM WS 2015 31. März 2015

Overview

• Ausgangslage und Ziele der RDF AP Task Group

• Use Case Database

• Beispiel CS-6 Use of EDM in DDB

Page 3: DCMI RDF Application Profile Task Group Stefanie Rühle KIM WS 2015 31. März 2015

Exkurs: Was ist ein AP?

• Ein Metadatenprofil/Anwendungsprofil hält fest,– Was für Ressourcen beschrieben werden– Was für ein Vokabular dafür verwendet wird– Was für Regeln für dieses Vokabular gelten -> constraints

• Unterstützt die Nachnutzung von Metadaten einer lokalen Anwendung (closed world) außerhalb dieser Anwendung (open world)

– menschenlesbar -> Mapping -> pdf, xls– maschinenlesbar -> Validierung und Verarbeitung -> xsd

• „… all metadata is dirty, but you can do something about it.“– Source: Seth van Hooland and Ruben Verborgh 2014: Linked Data for Libraries,

Archives and Museums, p. 71

Page 4: DCMI RDF Application Profile Task Group Stefanie Rühle KIM WS 2015 31. März 2015

DCMI RDF-Application Profile Task Group

• Wir wollen:– RDF Daten validieren– Vokabulare “maschinenlesbar” veröffentlichen– Regeln definieren, die für die Verwendung des Vokabulars in meiner lokalen

Anwendung gelten -> constraints, extensions, variations

• Wir brauchen:– Eine menschen- und maschinenlesbare Dokumentation

• Wir fragen uns:– Wie lassen sich validierbare Regeln für RDF definieren und was für Werkzeuge

und Prozesse können helfen?

Page 5: DCMI RDF Application Profile Task Group Stefanie Rühle KIM WS 2015 31. März 2015

DCMI RDF AP TG – W3C RDF Data Shapes WG

• DCMI RDF Application Profile Task Group– wiki.dublincore.org/index.php/RDF_Application_Profiles

• RDF Validation Workshop 10-11 September 2013– www.w3.org/2012/12/rdf-val

• W3C RDF Data Shapes Working Group– „… produce a language for defining structural constraints on RDF graphs.“– „… will enable the definition of graph topologies for interface specification, code

development, and data verification.“– www.w3.org/2014/data-shapes

Page 6: DCMI RDF Application Profile Task Group Stefanie Rühle KIM WS 2015 31. März 2015

Aufgaben der RDF AP TG

• Case Studies -> verschiedene Projekte und Experten, die RDF-Daten (nach)nutzen

• Use Cases -> konkrete Anwendungsfälle aus diesen Case Studies

• Requirements -> konkrete Anforderungen an ein RDF AP, die sich aus den Use Cases ergeben

• Best Practices -> – prüfen, was für Lösungen bereits vorhanden sind– Lücken ausmachen und ggf. füllen– Prüfen anhand von eigenen Anwendungsprofilen

Page 7: DCMI RDF Application Profile Task Group Stefanie Rühle KIM WS 2015 31. März 2015

Database of Requirements on RDF Constraint Formulation and Validation

• lelystad.informatik.uni-mannheim.de/rdf-validation/

• Case Studies -> lelystad.informatik.uni-mannheim.de/rdf-validation/?q=case-studies

– CS-1 DPLA RDF Application Profile– CS-3 Digitised Manuscripts To Europeana (DM2E)– CS-4 Europeana Data Model (EDM)– CS-5 DINI AG KIM RDF Representation of Bibliographic Data– CS-6 Use of EDM in the Deutsche Digitale Bibliothek (DDB)– CS-18 OER World Map

• DC use cases -> lelystad.informatik.uni-mannheim.de/rdf-validation/?q=use-cases/dc-use-cases

• DC requirements -> lelystad.informatik.uni-mannheim.de/rdf-validation/?q=requirements/dc-requirements

Page 9: DCMI RDF Application Profile Task Group Stefanie Rühle KIM WS 2015 31. März 2015

DDB-EDM vs. Europeana EDM

• Verwendung – Anwendung DDB– Anwendung Europeana

• DDB schränkt die Nutzung von Europeana properties ein– Z. B. in Europeana darf dcterms:provenance mit literal oder non-literal values

verwendet werden– In der DDB darf dcterms:provenance nur mit non-literal values verwendet

werden, die Instanzen der Klasse dcterms:ProvenanceStatement• Verwendet Dublin Core properties und classes, die in EDM nicht genutzt

werden– Z. B. in Europeana darf dc:subject mit literal or non-literal values verwendet

werden, dcterms:subject ist nicht erlaubt– In DDB darf dc:subject nur mit literal values verwendet werden und für non-literal

values muss dcterms:subject verwendet werden• Spezifische DDB properties und Werte für die Beschreibung der Hierarchien

Page 10: DCMI RDF Application Profile Task Group Stefanie Rühle KIM WS 2015 31. März 2015

Anwendung und Anwendungsprofil

• Funktionen, die meine Anforderung unterstützt– Finde alle Romane von Lew Tolstoi– Zeige mir alle Berichte über die letzte WM– …

• Funktionen, die mein Anwendungsprofil unterstützt– closed world

• Dokumenation für Design/Implementierung meiner Anwendung• Leitfaden für die Dateneingabe• Schema, um bei der Dateneingabe zu validieren

– open World• Dokumentation, die Aggregatoren informiert, was sie erwartet• Erleichtert Konversion/Mapping meiner Daten auf das „Aggregatorenformat“• Schema, um beim Datenimport zu validieren

• Application Profile -> Validation -> Application = Metadata Quality

Page 11: DCMI RDF Application Profile Task Group Stefanie Rühle KIM WS 2015 31. März 2015

Beispiel 1 – meine Anwendung

Use Case:Die Trefferliste zeigt die Titel meiner Ressourcen

Requirement:Ein edm:ProvidedCHO muss einen und nur einen dc:title haben

Page 12: DCMI RDF Application Profile Task Group Stefanie Rühle KIM WS 2015 31. März 2015

Beispiel 1 – mein Anwendungsprofil

• Requirement: Ein edm:ProvidedCHO muss ein dc:title haben

• AP Use Case UC-DDB-4: Domain Dependent Mandatory Properties– Abhängig von dem Subjekt eines Triple sind Properties verpflichtend. Z. B.

müssen Werke einen Titel haben oder Organisationen einen Namen.– http://lelystad.informatik.uni-mannheim.de/rdf-validation/?q=node/385

• AP Requirement R-68: Required Properties– Es muss möglich sein, zu prüfen, ob die Properties, die für eine bestimmte Art

von Subjekten verpflichtend sind, vorhanden sind. – http://lelystad.informatik.uni-mannheim.de/rdf-validation/?q=node/75

Page 13: DCMI RDF Application Profile Task Group Stefanie Rühle KIM WS 2015 31. März 2015

Beispiel 1 – mein Anwendungsprofil

• … one and only one …

• AP Use Case UC-DDB-5: Domain Dependent Non-repeatable Properties– Abhängig von dem Subjekt eines Triples sind properties nicht wiederholbar. Z. B.

dere Titel eines Werkes oder die Entstehungszeit– http://lelystad.informatik.uni-mannheim.de/rdf-validation/?q=node/388

• AP Requirement R-211: Cardinality constraints– Minimum, maximum. Es muss möglich sein, zu prüfen, ob Properties mehr als

einmal vorkommen.– http://lelystad.informatik.uni-mannheim.de/rdf-validation/?q=node/424

Page 14: DCMI RDF Application Profile Task Group Stefanie Rühle KIM WS 2015 31. März 2015

Beispiel 1 – mein Description Set Profile

Ein edm:ProvidedCHO braucht einen und nur einen Titel:

:pchoDescriptionTemplatea dsp:DescriptionTemplate ;dsp:minOccur "1" ;dsp:maxOccur "infinity" ;dsp:resourceClass edm:ProvidedCHO ;dsp:statementTemplate [

a dsp:LiteralStatementTemplate ;dsp:minOccur "1" ;dsp:maxOccur "1" ;dsp:property dc:title ] .

Page 15: DCMI RDF Application Profile Task Group Stefanie Rühle KIM WS 2015 31. März 2015

Beispiel 2 – meine Anwendung

Use Case:Wir verlinken Personen Entitäten mit Werken von diesen Personen

Requirements:•ein edm:Agent kann einen oder mehre edm:wasPresentAt haben•Das rdf:object von edm:wasPresentAt muss eine Instanz der Klasse edm:Event sein

Page 16: DCMI RDF Application Profile Task Group Stefanie Rühle KIM WS 2015 31. März 2015

Beispiel 2 – mein Anwendungsprofil

• Requirement: Ein edm:Agent kann ein oder mehr edm:wasPresentAt haben

• AP Use Case UC-Europeana-21: Recommended Properties– Abhängig vom Subjekt des Triple wird die Verwendung bestimmter Properties

empfohlen, um dadurch die Qualität der Daten zu verbessern. Z. B. sollte eine Buchbeschreibung auch Verlagsangaben enthalten

– http://lelystad.informatik.uni-mannheim.de/rdf-validation/?q=node/399

• AP Requirement R-72: Recommended Properties– Es muss möglich sein zu prüfen, ob empfohlene Properties vorhanden sind. – http://lelystad.informatik.uni-mannheim.de/rdf-validation/?q=node/79

Page 17: DCMI RDF Application Profile Task Group Stefanie Rühle KIM WS 2015 31. März 2015

Beispiel 2 – mein Anwendungsprofil

• … das Objekt des Triple muss eine Instanz der Klasse edm:Event sein.

• AP Use Case UC-12: Object Property Range– Abhängig von der Property muss das Objekt des Triples die Instanz einer

bestimmten Klasse sein, z. B, muss das Objekt der Property edm:wasPresentAt eine Instanz der Klasse edm:Event sein, das Objekt der Property dm2e:painter eine Instanz der Klasse foaf:Person.

– http://lelystad.informatik.uni-mannheim.de/rdf-validation/?q=UC-12-OBJECT-PROPERTY-RANGE

• AP Requirement R-28: Object Property Range– Es muss möglich sein zu prüfen, ob das Objekt einer Property eine Instanz einer

bestimmten Klasse ist.– http://lelystad.informatik.uni-mannheim.de/rdf-validation/?q=R-28-OBJECT-

PROPERTY-RANGE .

Page 18: DCMI RDF Application Profile Task Group Stefanie Rühle KIM WS 2015 31. März 2015

Beispiel 2: mein Description Set Profile

Ein edm:Agent sollte ein oder mehr edm:wasPresentAt und das Objekt des Triples muss eine Instanz der Klasse edm:Event sein.

:agentDescriptionTemplate a dsp:DescriptionTemplate ;dsp:minOccur 1 ;dsp:maxOccur "infinity" ;dsp:resourceClass edm:Agent ;dsp:statementTemplate [

a dsp:NonLiteralStatementTemplate ;dsp:maxOccur "infinity" ;dsp:property edm:wasPresentAt ;dsp:nonLiteralConstraint [

a dsp:NonLiteralConstraint ;dsp:valueClass edm:Event ] ].

Page 19: DCMI RDF Application Profile Task Group Stefanie Rühle KIM WS 2015 31. März 2015

Beispiel 3 – meine Anwendung

Use Case: Wir verlinken die verschiedenen hierarchischen Ebenen einer Ressource miteinander

Requirements:Wenn ein edm:ProvidedCHO die Property dc:type mit dem Wert illustration oder chapter oder volume hat•Muss mindestens ein dcterms:isPartOf vorhanden sein•Das Objekt dieses Triples muss eine Instanz der Klasse edm:ProvidedCHO sein.

Page 20: DCMI RDF Application Profile Task Group Stefanie Rühle KIM WS 2015 31. März 2015

Beispiel 3 – mein Anwendungsprofil

• Requirement: Wenn ein edm:ProvidedCHO die Property dc:type mit dem Wert illustration oder chapter oder volume hat, muss mindestens ein dcterms:isPartOf vorhanden sein.

• AP Use Case: – In Abhängigkeit von dem Objekt einer Property ist

eine andere Property verpflichtend

• AP Requirement:– Es muss möglich sein zu prüfen, ob abhängig von

dem Objekt eines Triples ein weiterer Triple mit einer bestimmten Property vorhanden ist.

Page 21: DCMI RDF Application Profile Task Group Stefanie Rühle KIM WS 2015 31. März 2015

Beispiel 3 – mein Anwendungsprofil

• das Objekt dieses Triples muss eine Instanz der Klasse edm:ProvidedCHO sein.

• AP Use Case UC-12: Object Property Range– Abhängig von der Property muss das Objekt des Triples

die Instanz einer bestimmten Klasse sein, z. B, muss das Objekt der Property dcterms:isPartOf eine Instanz der Klasse edm:ProvidedCHO sein.

– http://lelystad.informatik.uni-mannheim.de/rdf-validation/?q=UC-12-OBJECT-PROPERTY-RANGE

• AP Requirement R-28: Object Property Range– Es muss möglich sein zu prüfen, ob das Objekt einer

Property eine Instanz einer bestimmten Klasse ist.– http://lelystad.informatik.uni-mannheim.de/rdf-validation/?

q=R-28-OBJECT-PROPERTY-RANGE .

Page 22: DCMI RDF Application Profile Task Group Stefanie Rühle KIM WS 2015 31. März 2015

[Anlass der Präsentation]

Beispiel 3 – mein Description Set Profile

:pchoDescriptionTemplatea dsp:DescriptionTemplate ;dsp:minOccur 1;dsp:maxOccur "infinity" ;dsp:resourceClass edm:ProvidedCHOdsp:statementTemplate [

a dsp:NonLiteralStatementTemplate ;dsp:minOccur "1" ;dsp:maxOccur "1" ;dsp:property dc:type ;dsp:nonLiteralConstraint [

a dsp:NonLiteralConstraint ;dsp:valueClass skos:Concept ;dsp:vocabularyEncodingScheme :volume, :chapter, :illustration, :periodical, :multivolume_work ] ;

dsp:statementTemplate [a dsp:NonLiteralStatementTemplate ;dsp:maxOccur "infinity" ;dsp:property dcterms:isPartOf ;dsp:nonLiteralConstraint [a dsp:NonLiteralConstraint ;dsp:valueClass edm:ProvidedCHO ] ] ] .

Page 23: DCMI RDF Application Profile Task Group Stefanie Rühle KIM WS 2015 31. März 2015

Vielen DankStefanie Rühle sruehle(a)sub.uni-goettingen.de