SlideShare uma empresa Scribd logo
1 de 153
Date: 01/09/2013
PROV-O: The PROV Ontology
Tutorial
Daniel Garijo
Ontology Engineering Group
Universidad Politécnica de Madrid
(with Slides from Luc Moreau, Ivan Herman, Paul Groth and
Timothy Lebo)
About me
Daniel Garijo
PhD student at the
Ontology Engineering Group
Universidad Politécnica de Madrid
(http://delicias.dia.fi.upm.es/members/dgarijo/)
Member of:
W3C Provenance Incubator Group
W3C Provenance Working Group
DCMI Metadata Provenance Task Group
DC-2013, Lisbon, Portugal
2
Download this presentation here:
http://www.slideshare.net/dgarijo/provo-tutorial-dc2013-conference
Agenda
Plan for the afternoon
• Introduction: The Provenance Working Group
• From DC to PROV: An example
• PROV-O: An Overview
• PROV-O part 1
• Coffee Break
• PROV-O part 2
• Mapping PROV-O to Dublin Core
DC-2013, Lisbon, Portugal
3
Introduction
Introduction: The Provenance
Working Group
DC-2013, Lisbon, Portugal
4
The Provenance Working Group: Goals
•We aim to express how data has evolved:
•Who played a role when creating the data?.
•Who owned the data?.
•Who contributed to the data?.
•How data was modified from its first revision?.
•How other data affected the current data?.
•Which tools where used to generate each version of the data?
•etc.
DC-2013, Lisbon, Portugal
Image from : http://www.psmag.com/science/the-background-on-your-bytes-40220/5
The Provenance Working Group: Goals (2)
DC-2013, Lisbon, Portugal
• Requires a complete model describing the various
constituents (actors, revisions, etc.)
• The model should be usable with RDF to be used on
the Semantic Web
• Has to find a balance between provenance
granularities
– simple (“scruffy”) provenance: easily usable.
– complex (“complete”) provenance: allows for a detailed
reporting of origins, versions, etc.
…but it is not that easy!
6
Scruffy provenance vs complete provenance: an example
DC-2013, Lisbon, Portugal
Example: Editing a blog post
Scruffy provenance Complete provenance
myBlogPost
:editingPost
:Daniel myBlogPost
myBlogPostv1
myBlogPostv2
:Daniel
createdBy,
modifiedBy
createdBy
used
wasGeneratedBy
versionOf
versionOfcreatedBy
7
createdBy, modifiedBy
The Provenance Working Group: Motivation
DC-2013, Lisbon, Portugal
Applications of provenance
• Art
– Ownership of pieces of art
• Open Information Systems
– origin of the data, who was responsible for its creation
• Science applications
– how the results of a publication were obtained (scientific workflows)
• News
– origins and references of blogs, news items
• Law
– licensing attribution of documents, data
– privacy information
• Etc.
8
The Provenance Working Group: Definition of Provenance
DC-2013, Lisbon, Portugal
• “Provenance is defined as a record that describes
the people, institutions, entities, and activities
involved in producing, influencing, or delivering a
piece of data or a thing”.
W3C Provenance Incubator Group
• “Provenance assertions are a form of contextual metadata and can
themselves become important records with their own provenance.”
9
The Provenance Working Group: Definition of Provenance (2)
DC-2013, Lisbon, Portugal
• Provenance is Metadata, but not all metadata
is provenance:
• The title or format of a book is metadata, but it is not part
of its provenance.
• The date of creation, the author, the publisher or the
license of a book are part of its provenance.
10
Provenance is not a new subject !
DC-2013, Lisbon, Portugal
• A lot of work has been done in
– Workflow management systems
• Reproducibility, repeatability and attribution
– Databases
• Who modified a record? How?
– knowledge representation
• How was an entity affected?
– information retrieval
• Who is responsible for this information?
11
VoID
Provenance is not a new subject!
DC-2013, Lisbon, Portugal
• Communities and vocabularies are already in use:
– Dublin Core (Documents and resources)
– Open Provenance Model (OPM) and extensions
– Provenir ontology (Sensor networks)
– Provenance vocabulary (Linked Data)
– SWAN provenance ontology (Neuromedicine resources)
– SIOC (Online blogs and forums)
– VOID (Datasets)
– etc.
… 12
How do we interchange provenance?
DC-2013, Lisbon, Portugal
• The existing models track provenance at different
granularities in different domains.
– How do we make the provenance descriptions
interchangeable?
– How do we integrate these heterogeneous provenance data?
13
The W3C’s Provenance Incubator Group
DC-2013, Lisbon, Portugal
• Worked in 2009-2010 (Chaired by Yolanda Gil)
• Issued a final report
– “Provenance XG Final Report”
• http://www.w3.org/2005/Incubator/prov/XGR-prov/
– provides an overview of the various existing approaches and
vocabularies
– proposes the creation of a dedicated W3C Working Group
• A set of terms is recommended for initial discussion
14
The W3C’s Provenance Incubator Group (2)
DC-2013, Lisbon, Portugal
• Introduces requirements for the provenance in the web:
http://www.w3.org/2005/Incubator/prov/wiki/User_Require
ments
• Maps different existing vocabulary approaches to OPM:
http://www.w3.org/2005/Incubator/prov/wiki/Provenance_V
ocabulary_Mappings
• Defines three common use case scenarios for provenance
– News Aggregator
– Disease Outbreak
– Business Contract
15
The W3C’s Provenance Working Group
DC-2013, Lisbon, Portugal
• Set up in April 2011
– (co-chaired by Paul Groth and Luc Moreau)
• Goal is to define a standard way to interchange
provenance on the web.
• Focused on the Semantic Web.
16
Participants
DC-2013, Lisbon, Portugal
• Pacific Northwest National
Laboratory
• Rensselaer Polytechnic Institute
• Revelytix, Inc
• Newcastle University
• The National Archives
• TopQuadrant
• Universidad Politécnica de
Madrid
• University of Aberdeen
• University of Edinburgh
• University of Manchester
• University of Oxford
• University of Southampton
• VU University Amsterdam
• Wright State University
• DERI Galway
• European Broadcasting Union
• FORTH
• Financial Services Technology
Consortium
• DFKI
• IBBT
• IBM
• Library of Congress
• Mayo Clinic
• NASA
• OCLC
• Open Geospatial Consortium
• OpenLink Software
• Oracle
17
+ Invited Experts
Documents published by the group
DC-2013, Lisbon, Portugal
• Main documents:
– PROV Overview (http://www.w3.org/TR/prov-overview/)
– PROV Primer (http://www.w3.org/TR/prov-primer/)
– PROV Data Model(*) (http://www.w3.org/TR/prov-dm/)
– PROV Constraints(*) (http://www.w3.org/TR/prov-constraints/)
– PROV Semantics (http://www.w3.org/TR/prov-sem/)
– PROV Notation(*) (http://www.w3.org/TR/prov-n/)
– PROV Ontology(*) (http://www.w3.org/TR/prov-o/)
– PROV XML Serialization (http://www.w3.org/TR/prov-xml/)
– PROV Access and Query (http://www.w3.org/TR/prov-aq/)
– PROV DC Mapping (http://www.w3.org/TR/prov-dc/)
– PROV Links (http://www.w3.org/TR/prov-links/)
– PROV Dictionary (http://www.w3.org/TR/prov-dictionary/)
– PROV Implementations (http://www.w3.org/TR/prov-implementations/)
(*)Rec-track documents
18
PROV is not just a model
DC-2013, Lisbon, Portugal
Model
Serializations
Extensions
19
• Main documents:
– PROV Overview (http://www.w3.org/TR/prov-overview/)
– PROV Primer (http://www.w3.org/TR/prov-primer/)
– PROV Data Model(*) (http://www.w3.org/TR/prov-dm/)
– PROV Constraints(*) (http://www.w3.org/TR/prov-constraints/)
– PROV Semantics (http://www.w3.org/TR/prov-sem/)
– PROV Notation(*) (http://www.w3.org/TR/prov-n/)
– PROV Ontology(*) (http://www.w3.org/TR/prov-o/)
– PROV XML Serialization (http://www.w3.org/TR/prov-xml/)
– PROV Access and Query (http://www.w3.org/TR/prov-aq/)
– PROV DC Mapping (http://www.w3.org/TR/prov-dc/)
– PROV Links (http://www.w3.org/TR/prov-links/)
– PROV Dictionary (http://www.w3.org/TR/prov-dictionary/)
– PROV Implementations (http://www.w3.org/TR/prov-implementations/)
(*)Rec-track documents
• Main documents:
– PROV Overview (http://www.w3.org/TR/prov-overview/)
– PROV Primer (http://www.w3.org/TR/prov-primer/)
– PROV Data Model(*) (http://www.w3.org/TR/prov-dm/)
– PROV Constraints(*) (http://www.w3.org/TR/prov-constraints/)
– PROV Semantics (http://www.w3.org/TR/prov-sem/)
– PROV Notation(*) (http://www.w3.org/TR/prov-n/)
– PROV Ontology(*) (http://www.w3.org/TR/prov-o/)
– PROV XML Serialization (http://www.w3.org/TR/prov-xml/)
– PROV Access and Query (http://www.w3.org/TR/prov-aq/)
– PROV DC Mapping (http://www.w3.org/TR/prov-dc/)
– PROV Links (http://www.w3.org/TR/prov-links/)
– PROV Dictionary (http://www.w3.org/TR/prov-dictionary/)
– PROV Implementations (http://www.w3.org/TR/prov-implementations/)
(*)Rec-track documents
PROV and types of users
DC-2013, Lisbon, Portugal
Users
Advanced
20
Developers
PROV dependencies
DC-2013, Lisbon, Portugal
21
Working Group Status
DC-2013, Lisbon, Portugal
• The Rec Track documents have been released as CR
(candidate recommendations)
• Group has finished:
– Official Wiki (frozen): http://www.w3.org/2011/prov/wiki/Main_Page
– Active Semantic Wiki: http://www.w3.org/2001/sw/wiki/PROV
– FAQ: http://www.w3.org/2001/sw/wiki/PROV-FAQ
22
Introduction
From Dublin Core to PROV-O
An example
K-CAP 2013. Banff, Canada
23
Example
DC-2013, Lisbon, Portugal
• This presentation
– Created by Daniel.
– Kai contributed with feedback.
– Used previous tutorials as references.
– Refinement of previous presentation draft.
draft
24
The example using Dublin Core Terms
DC-2013, Lisbon, Portugal
:dcProvTutorial a foaf:Document;
dct:title “PROV-O Tutorial" ;
dct:creator :daniel ;
dct:contributor :kai;
dct:created "2013-08-25" ;
dct:replaces :tutorialDraft;
dct:references :iswcProvTutorial, :iswcProvIntro.
:kai a dct:Agent.
:daniel a dct:Agent.
:tutorialDraft a foaf:Document;
dct:creator :daniel.
:iswcProvTutorial a foaf:Document;
...
25
Graphical representation
DC-2013, Lisbon, Portugal
dct:creator
:dcProvTutorial
:daniel
“2013-02-28”
dct:created
:tutorialDraft
dct:replaces
:kai
dct:contributor
:iswcProvTutorial
:iswcProvIntro
dct:references
dct:references
26
PROV-O: A very simple attribution
DC-2013, Lisbon, Portugal
:dcProvTutorial
:daniel
dct:creator
27
PROV-O: A very simple attribution (2)
DC-2013, Lisbon, Portugal
:dcProvTutorial
:daniel
dct:creator
prov:Agent prov:Entity
prov:wasAttributedTo
28
PROV-O: Making the activity explicit
DC-2013, Lisbon, Portugal
:dcProvTutorial
:daniel
dct:creator
prov:Agent prov:Entity
prov:wasAttributedTo
:makingTheTutorial
prov:wasAssociatedWith
prov:wasGeneratedBy
prov:Activity
29
PROV-O: Adding metadata of the activity
DC-2013, Lisbon, Portugal
:dcProvTutorial
:daniel
dct:creator
prov:Agent prov:Entity
prov:wasAttributedTo
:makingTheTutorial
prov:wasAssociatedWith
prov:wasGeneratedBy
prov:Activity
“2013-08-1"”
“2013-08-25"”
prov:startedAtTime
prov:endedAtTime
dct:created
30
PROV-O: Adding metadata of the activity
DC-2013, Lisbon, Portugal
:dcProvTutorial
:daniel
dct:creator
prov:Agent prov:Entity
prov:wasAttributedTo
:makingTheTutorial
prov:wasAssociatedWith
prov:wasGeneratedBy
prov:Activity
“2013-08-1"”
“2013-08-25"”
prov:startedAtTime
prov:endedAtTime
dct:created
:kai
:tutorialDraft
prov:wasAssociatedWith
prov:used
dct:contributor
dct:replaces
31
PROV-O: Basics
DC-2013, Lisbon, Portugal
• This example shows the fundamental notions of PROV-O
– Entity :
• the resources whose provenance we want to describe
– Activity:
• describes how entities are created and how they changed.
– Agent:
• responsible for the actions affecting entities.
– Usage, generation, derivation, attribution,..
• connections describing how entities, agents, and activities
interact.
32
Making the example a little more complex
DC-2013, Lisbon, Portugal
• A couple of things are still missing in the example:
– The creation process of the draft of the tutorial.
– The tutorial is a revision of the draft (a second version).
– The creation process of the referenced tutorials
– …
33
PROV-O: Making the example a little more complex (2)
DC-2013, Lisbon, Portugal
:dcProvTutorial:daniel
dct:creator
prov:Agent prov:Entity
prov:wasAttributedTo
:makingTheTutorial
prov:wasAssociatedWith
prov:wasGeneratedBy
prov:Activity
:kai
:tutorialDraft
prov:wasAssociatedWith
prov:used
:makingTheDraftprov:wasGeneratedBy
prov:wasAssociatedWith
prov:wasRevisionOf
:iswcProvTutorial
:iswcProvIntro
prov:used
prov:used
prov:wasDerivedFrom
prov:wasDerivedFrom
34
Introduction
PROV-O: An Overview
DC-2013, Lisbon, Portugal
35
Categories of PROV terms
DC-2013, Lisbon, Portugal
• Starting Point classes and properties: the basics.
• Expanded classes and properties: additional terms around the
starting point terms for richer descriptions.
• Qualified classes and properties: for advanced provenance
descriptions.
36
Categories of PROV terms: Starting points
DC-2013, Lisbon, Portugal
37
Categories of PROV terms: Expanded classes
DC-2013, Lisbon, Portugal
• Some common specific types of agents:
– Organization, Person, SoftwareAgent.
• Extra properties for describing versioning, influencing,
invalidation, creation of entities, etc.
• Extension of the Starting points to cover generic necessities in
many use cases.
– If needed, applications may further extend this terms to
their domain specific needs.
38
Categories of PROV terms: Starting points
DC-2013, Lisbon, Portugal
39
Categories of PROV terms: Qualified classes
DC-2013, Lisbon, Portugal
• Sometimes we need to further describe the properties we
have used:
– At what time was a particular resource used?
– What is the role of an agent in an association?
– Where was an entity generated?
– …
• Qualified classes provide the means for enabling such
descriptions.
– Turn relationships into classes
40
Introduction
PROV-O: The PROV Ontology
Part 1
DC-2013, Lisbon, Portugal
42
PROV-O
<http://www.w3.org/ns/prov#>
A lightweight OWL ontology for interchanging
provenance information
– “Simple”
– Domain neutral
– Meant to be extended
– Encodes PROV-DM’s “abstract model” in RDF
– There are alternate encodings for XML, etc.
DC-2013, Lisbon, Portugal
43
How to access PROV-O?
Final W3C recommendation: http://www.w3.org/TR/prov-o/
PROV in LOV:
http://lov.okfn.org/dataset/lov/details/vocabulary_prov.html
Content negotiation is enabled:
Turtle
curl -sH "Accept: text/turtle" -L http://www.w3.org/ns/prov
RDF/XML
curl -sH "Accept: application/rdf+xml" -L http://www.w3.org/ns/prov
XSD
curl -sH "Accept: application/xml" -L http://www.w3.org/ns/prov
DC-2013, Lisbon, Portugal
44
Prefixes
• @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
• @prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
• @prefix owl: <http://www.w3.org/2002/07/owl#> .
• @prefix dct: <http://purl.org/dc/terms/> .
• @prefix prov: <http://www.w3.org/ns/prov#> .
• @prefix : <http://example.com/> .
When in doubt, prefix.cc.” (http://prefix.cc/prov)
DC-2013, Lisbon, Portugal
45
PROV-O at a glance
•Starting point terms (“Simple”)
•The basics for the rest of the ontology.
• 3 classes + 9 properties
•Simple binary relationships
•Expanded terms (“Advanced”)
•7 classes + 18 properties
•Extension of the starting point terms
•Qualifying relationships (“Complex”)
•Elaborate of the 14 Starting and expanded relationships
DC-2013, Lisbon, Portugal
Agent
ActivityEntity
46
PROV-O: Starting Points
DC-2013, Lisbon, Portugal
47
Starting Points: Entities
DC-2013, Lisbon, Portugal
“An entity is a physical, digital, conceptual, or other
kind of thing with some fixed aspects; entities may be
real or imaginary”.
48
•Entities Anything that we want to describe:
•A document.
•A part of a document.
•An idea.
•A rumor.
•A product.
•A contract.
•A news article.
•A result.
•Etc.
Entity
Starting Points: Activities
DC-2013, Lisbon, Portugal
•Activities are any processes that used or generated entities:
•Computing a result.
•Making a request.
•Writing a book.
•Giving a presentation.
•Creation of car.
•Etc.
•Activities are NOT entities.
Activity
49
“An activity is something that occurs over a period of
time and acts upon or with entities; it may include
consuming, processing, transforming, modifying,
relocating, using, or generating entities”.
Starting Points: Agents
DC-2013, Lisbon, Portugal
“An agent is something that bears some form of
responsibility for an activity taking place, for the
existence of an entity, or for another agent's activity”.
•Agents receive attribution for entities and are responsible for
activities:
•Creator of a document.
•Web service accepting requests.
•Tool or managing system.
•An organization.
•The student acting on behalf of the organization.
•Etc.
•Agents can be entities.
Agent
50
Starting Points: Full example
•Music example
•2 bloggers write posts about song tracks by Led Zeppelin and
Frank Zappa. We know, thanks to the Music Ontology, that
•Tracks are publications of Signals.
•Signals are produced by recordings.
•Recordings are made from sounds, which are realizations of a Musical
Work during a musical Performance.
•At a given point both bloggers claim their respective groups to
be the authors of two songs, “A stairway to heaven”.
•Are they referring to the same work? Which one is right?
DC-2013, Lisbon, Portugal
51
Full example: How would you do it?
DC-2013, Lisbon, Portugal
Blog post 1
http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg
Fan 1
Fan 2
SignalZappa
SignalLed
Recording1841
Recording999
Blog post 2
52
SoundLedSoundZappa
Performance
in 1971
Towson-
March1988
Stair way to
heaven
(MusicalWork)
LedZeppelinTrack
FrankZappa Track
Full example: How would you do it?
DC-2013, Lisbon, Portugal
Blog post 1
http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg
Fan 1
Fan 2
SignalA
SignalB
Recording1841
Recording999
Blog post 2
53
SoundASoundB
Performance
in 1971
Towson-
March1988
Stair way to
heaven
(MusicalWork)
LedZeppelinTrack
FrankZappa Track
Entity
Entity
Entity
Entity
Entity
SignalZappa
SignalLed
SoundLedSoundZappa
Entity
Entity Entity
Entity
Full example: How would you do it?
DC-2013, Lisbon, Portugal
Blog post 1
http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg
Fan 1
Fan 2
SignalA
SignalB
Recording1841
Recording999
Blog post 2
54
SoundASoundB
Performance
in 1971
Towson-
March1988
Stair way to
heaven
(MusicalWork)
LedZeppelinTrack
FrankZappa Track
Entity
Entity
Entity
Entity
Agent
Agent
AgentAgent
Entity
SignalZappa
SignalLed
SoundLedSoundZappa
Entity
Entity Entity
Entity
Full example: How would you do it?
DC-2013, Lisbon, Portugal
Blog post 1
http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg
Fan 1
Fan 2
SignalA
SignalB
Recording1841
Recording999
Blog post 2
55
SoundASoundB
Performance
in 1971
Towson-
March1988
Stair way to
heaven
(MusicalWork)
LedZeppelinTrack
FrankZappa Track
Entity
Entity
Entity
Entity
Agent
Agent
AgentAgent
Activity
Activity
Activity
Entity
SignalZappa
SignalLed
SoundLedSoundZappa
Entity
Entity Entity
Activity
Entity
Starting Points: Class View
DC-2013, Lisbon, Portugal
56
Starting Points: Class View
DC-2013, Lisbon, Portugal
Agent
AgentAgent
Agent
57
Starting Points: Grid View
DC-2013, Lisbon, Portugal
Agent
Agent
58
Starting Points: Usage
DC-2013, Lisbon, Portugal
•Usage is crucial for describing the entities which participated in
an activity:
•The references used for creating a document.
•The query used to obtain a result.
•The inputs of a computational process.
•Etc.
Activity
Entity
prov:used
59
“Usageis the beginning of utilizing an entity by an
activity. Before usage, the activity had not begun to
utilize this entity and could not have been affected by
the entity”.
Full example: Usage
•Music example
•2 bloggers write posts about song tracks by Led Zeppelin and
Frank Zappa. We know, thanks to the Music Ontology, that
•Tracks are publications of Signals.
•Signals are produced by recordings.
•Recordings are made from sounds, which are realizations of a
Musical Work during a musical Performance.
DC-2013, Lisbon, Portugal
60
Full example: Usage
DC-2013, Lisbon, Portugal
Blog post 1
http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg
Fan 1
Fan 2
SignalA
SignalB
Recording1841
Recording999
Blog post 2
61
SoundASoundB
Performance
in 1971
Towson-
March1988
Stair way to
heaven
(MusicalWork)
LedZeppelinTrack
FrankZappa Track
SignalZappa
SignalLed
SoundLedSoundZappa
Full example: Usage
DC-2013, Lisbon, Portugal
Blog post 1
http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg
Fan 1
Fan 2
SignalA
SignalB
Recording1841
Recording999
Blog post 2
62
SoundASoundB
Performance
in 1971
Towson-
March1988
Stair way to
heaven
(MusicalWork)
LedZeppelinTrack
FrankZappa Track
prov:used
prov:used
prov:used
prov:used
SignalZappa
SignalLed
SoundLedSoundZappa
Starting Points: Association
DC-2013, Lisbon, Portugal
“An activity association is an assignment of
responsibility to an agent for an activity, indicating that
the agent had a role in the activity. It further allows for
a plan to be specified, which is the plan intended by
the agent to achieve some goals in the context of this
activity”.
•Association is crucial for assigning responsibility:
•Who is the responsible for a document?
•Who is the responsible for the creation of a result of
a computational experiment?
•Who is responsible for the development of a
product/contract, etc?
•Etc.
Activity
Agent
prov:wasAssociatedWith
63
Full example: Association
DC-2013, Lisbon, Portugal
Blog post 1
http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg
Fan 1
Fan 2
SignalA
SignalB
Recording1841
Recording999
Blog post 2
64
SoundASoundB
Performance
in 1971
Towson-
March1988
Stair way to
heaven
(MusicalWork)
LedZeppelinTrack
FrankZappa Track
SignalZappa
SignalLed
SoundLedSoundZappa
Full example: Association
DC-2013, Lisbon, Portugal
Blog post 1
http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg
Fan 1
Fan 2
SignalA
SignalB
Recording1841
Recording999
Blog post 2
65
SoundASoundB
Performance
in 1971
Towson-
March1988
Stair way to
heaven
(MusicalWork)
LedZeppelinTrack
FrankZappa Track
prov:wasAssociatedWithprov:wasAssociatedWith
SignalZappa
SignalLed
SoundLedSoundZappa
Starting Points: Generation
DC-2013, Lisbon, Portugal
“Generation is the completion of production of a new
entity by an activity. This entity did not exist before
generation and becomes available for usage after this
generation”.
•Generation is crucial for describing entities and their origin:
•How was a document generated?.
•How is a computational result created?.
•How has an entity been modified?.
•How was a result validated?
•Etc.
Activity
Entity
prov:wasGeneratedBy
66
Full example: Generation
•Music example
•2 bloggers write posts about song tracks by Led Zeppelin and
Frank Zappa. We know, thanks to the Music Ontology, that
•Tracks are publications of Signals.
•Signals are produced by recordings.
•Recordings are made from sounds, which are realizations of a Musical
Work during a musical Performance.
DC-2013, Lisbon, Portugal
67
Full example: Generation
DC-2013, Lisbon, Portugal
Blog post 1
http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg
Fan 1
Fan 2
SignalA
SignalB
Recording1841
Recording999
Blog post 2
68
SoundASoundB
Performance
in 1971
Towson-
March1988
Stair way to
heaven
(MusicalWork)
LedZeppelinTrack
FrankZappa Track
SignalZappa
SignalLed
SoundLedSoundZappa
Full example: Generation
DC-2013, Lisbon, Portugal
Blog post 1
http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg
Fan 1
Fan 2
SignalA
SignalB
Recording1841
Recording999
Blog post 2
69
SoundASoundB
Performance
in 1971
Towson-
March1988
Stair way to
heaven
(MusicalWork)
LedZeppelinTrack
FrankZappa Track
prov:wasGeneratedBy
prov:wasGeneratedBy
SignalZappa
SignalLed
SoundLedSoundZappa
Entity
Starting Points: Derivation
DC-2013, Lisbon, Portugal
“A Derivation is a transformation of an entity into
another, an update of an entity resulting in a new one,
or the construction of a new entity based on a pre-
existing entity”.
•Derivation is used for describing dependencies among entities:
•Are the contents of a document based on other entities?.
•How does a computational result depend on external
databases?.
•Which resources have influenced at some
point this entity?.
•Etc.
Entity
prov:wasDerivedFrom
70
Full example: Derivation
•Music example
•2 bloggers write posts about song tracks by Led Zeppelin and
Frank Zappa. We know, thanks to the Music Ontology, that
•Tracks are publications of Signals.
•Signals are produced by recordings.
•Recordings are made from sounds, which are realizations of a Musical
Work during a musical Performance.
DC-2013, Lisbon, Portugal
71
Full example: Derivation
DC-2013, Lisbon, Portugal
Blog post 1
http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg
Fan 1
Fan 2
SignalA
SignalB
Recording1841
Recording999
Blog post 2
72
SoundASoundB
Performance
in 1971
Towson-
March1988
Stair way to
heaven
(MusicalWork)
LedZeppelinTrack
FrankZappa Track
SignalZappa
SignalLed
SoundLedSoundZappa
Full example: Derivation
DC-2013, Lisbon, Portugal
Blog post 1
http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg
Fan 1
Fan 2
SignalA
SignalB
Recording1841
Recording999
Blog post 2
73
SoundASoundB
Performance
in 1971
Towson-
March1988
Stair way to
heaven
(MusicalWork)
LedZeppelinTrack
FrankZappa Track
prov:wasDerivedFrom
prov:wasDerivedFrom
SignalZappa
SignalLed
SoundLedSoundZappa
Starting Points: Communication
DC-2013, Lisbon, Portugal
“Communication (wasInformedBy) is the exchange of
some unspecified entity by two activities, one activity
using some entity generated by the other”.
•Communication is used for describing dependencies between
activities:
•Which activities precede the current one?.
•What are the steps required for executing the
current query?.
•Etc.
Activity
prov:wasInformedBy
Activity
74
Starting Points: Attribution
DC-2013, Lisbon, Portugal
“Attributionis the ascribing of an entity to an agent”.
•Attribution is key for giving credit to someone:
•Who is the author of a particular document?.
•Which tool/Software has been used to generate a result?.
•Who has created a this dataset?
•Etc.
Agent
Entity
prov:wasAttributedTo
75
Full example: Attribution
DC-2013, Lisbon, Portugal
Blog post 1
http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg
Fan 1
Fan 2
SignalA
SignalB
Recording1841
Recording999
Blog post 2
76
SoundASoundB
Performance
in 1971
Towson-
March1988
Stair way to
heaven
(MusicalWork)
LedZeppelinTrack
FrankZappa Track
SignalZappa
SignalLed
SoundLedSoundZappa
prov:wasAttributedTo
prov:wasAttributedTo
Agent
Starting Points: Delegation
DC-2013, Lisbon, Portugal
“Delegation (actedOnBehalfOf) is the assignment of
authority and responsibility to an agent (by itself or by
another agent) to carry out a specific activity as a
delegate or representative, while the agent it acts on
behalf of retains some responsibility for the outcome
of the delegated work”.
•Delegation is used to specify responsibility between agents:
•Who is the responsible for the generation of the result of a
computational experiment (acting on behalf of UPM?).
•Which user activated the tool to generate the report?.
•Etc. prov:actedOnBehalfOf
Agent
77
Full example
DC-2013, Lisbon, Portugal
Blog post 1 Blog post 2
http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg
Fan 1 Fan 2
prov:wasAttributedTo prov:wasAttributedTo
78
Full example
DC-2013, Lisbon, Portugal
Blog post 1
Track ISRC:
US-AT2-99-00620
http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg
Fan 1 Fan 2
prov:wasAttributedTo prov:wasAttributedTo
prov:wasDerivedFromprov:wasDerivedFrom
Track barcode:
5016583610128
Blog post 2
79
80
Full example
DC-2013, Lisbon, Portugal
Blog post 1
Track ISRC:
US-AT2-99-00620
http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg
Fan 1 Fan 2
prov:wasAttributedTo prov:wasAttributedTo
prov:wasDerivedFromprov:wasDerivedFrom
Track barcode:
5016583610128
SignalZappa SignalLed
prov:wasDerivedFromprov:wasDerivedFrom
Tracks are publications of
Signals
Blog post 2
80
Full example
DC-2013, Lisbon, Portugal
Blog post 1
Track ISRC:
US-AT2-99-00620
http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg
Fan 1 Fan 2
prov:wasAttributedTo prov:wasAttributedTo
prov:wasDerivedFromprov:wasDerivedFrom
Track barcode:
5016583610128
SignalA SignalB
prov:wasDerivedFromprov:wasDerivedFrom
Tracks are publications of
Signals
Recording1841
prov:wasGeneratedBy
Recording999
prov:wasGeneratedBy
Recording 1841 in
Playhouse Theatre,
Northumberland Av
Information from
recording not
available
Blog post 2
81
SignalZappa SignalLed
Full example
DC-2013, Lisbon, Portugal
Recording1841Recording999
Recording 1841 in
Playhouse Theatre,
Northumberland Av
Information from
recording not
available
SoundZappA SoundLed
prov:used prov:used
Realisation of a
MusicalWork during a
musical Performance
82
Full example
DC-2013, Lisbon, Portugal
Recording1841Recording999
Recording 1841 in
Playhouse Theatre,
Northumberland Av
Information from
recording not
available
SoundA SoundB
prov:used prov:used
Realisation of a
MusicalWork during a
musical Performance
Performance
in 1971
Towson-
March1988
prov:wasGeneratedBy prov:wasGeneratedBy
83
SoundZappA SoundLed
Full example
DC-2013, Lisbon, Portugal
Recording1841Recording999
Recording 1841 in
Playhouse Theatre,
Northumberland Av
Information from
recording not
available
SoundA SoundB
prov:used prov:used
Realisation of a
MusicalWork during a
musical Performance
Performance
in 1971
Towson-
March1988
prov:wasGeneratedBy prov:wasGeneratedBy
prov:wasInformedByprov:wasInformedBy
84
SoundZappA SoundLed
Full example
DC-2013, Lisbon, Portugal
Recording1841Recording999
Recording 1841 in
Playhouse Theatre,
Northumberland Av
Information from
recording not
available
SoundA SoundB
prov:used prov:used
Realisation of a
MusicalWork during a
musical Performance
Performance
in 1971
Towson-
March1988
prov:wasGeneratedBy prov:wasGeneratedBy
Stair way to
heaven
(MusicalWork)
http://musicbrainz.org/work/
968ee3c5-21fa-35de-88f9-bd1c300ac3ee
prov:used prov:used
prov:wasInformedByprov:wasInformedBy
85
SoundZappA SoundLed
Full example
DC-2013, Lisbon, Portugal
Recording1841Recording999
Recording 1841 in
Playhouse Theatre,
Northumberland Av
Information from
recording not
available
SoundA SoundB
prov:used prov:used
Realisation of a
MusicalWork during a
musical Performance
Performance
in 1971
Towson-
March1988
prov:wasGeneratedBy prov:wasGeneratedBy
Stair way to
heaven
(MusicalWork)
http://musicbrainz.org/work/
968ee3c5-21fa-35de-88f9-bd1c300ac3ee
prov:used prov:used
Frank
Zappa
Led
Zeppelin
prov:wasAssociatedWith prov:wasAssociatedWith
prov:wasInformedByprov:wasInformedBy
86
SoundZappA SoundLed
Full example
DC-2013, Lisbon, Portugal
Recording1841Recording999
Recording 1841 in
Playhouse Theatre,
Northumberland Av
Information from
recording not
available
SoundA SoundB
prov:used prov:used
Realisation of a
MusicalWork during a
musical Performance
Performance
in 1971
Towson-
March1988
prov:wasGeneratedBy prov:wasGeneratedBy
Stair way to
heaven
(MusicalWork)
http://musicbrainz.org/work/
968ee3c5-21fa-35de-88f9-bd1c300ac3ee
prov:used prov:used
Frank
Zappa
Led
Zeppelin
prov:wasAssociatedWith prov:wasAssociatedWith
prov:wasInformedByprov:wasInformedBy
87
SoundZappA SoundLed
Introduction
PROV-O: The PROV Ontology
Part 2
DC-2013, Lisbon, Portugal
88
Expanded Terms: Overview
Part 2
• PROV-O Expanded terms
• PROV-O Qualification terms
DC-2013, Lisbon, Portugal
89
PROV-O: Expanded Terms
DC-2013, Lisbon, Portugal
90
Expanded terms
• Extension of the Starting Point Terms.
• Generic definitions to remain as domain independent
as possible.
• Allow for richer descriptions of resources.
DC-2013, Lisbon, Portugal
91
Expanded Terms
DC-2013, Lisbon, Portugal
92
Expanded Terms: Agent specializations
DC-2013, Lisbon, Portugal
“A SoftwareAgent is running software”.
“An Organization is a social or legal institution such as
a company, society, etc”.
“Person agents are people”.
•Software Agent, Organization and Person are similar to foaf
agents (http://xmlns.com/foaf/spec/#term_Agent).
•These types of Agents are commonly found in the Web:
•Software tools used to create resources.
•Organizations publishing a document report.
•Specific authors of a paper.
•Etc.
93
Expanded Terms: Location
DC-2013, Lisbon, Portugal
“A Location can be an identifiable geographic place
(ISO 19112), but it can also be a non-geographic place
such as a directory, row, or column. As such, there are
numerous ways in which location can be
expressed, such as by a
coordinate, address, landmark, and so forth”.
•Locations may be bound to all types of prov resources:
•Location of a file within a file system.
•Location where a resource was used or generated.
•Location where an activity took place.
•Etc.
•The relationship prov:atLocation binds resources to locations
94
Expanded Terms: Plans
DC-2013, Lisbon, Portugal
“A plan is an entity that represents a set of actions or
steps intended by one or more agents to achieve some
goals”.
•A plan can be anything that indicates how to achieve a goal:
•A script program.
•A set of instructions written on a napkin.
•A food recipe.
•A scientific workflow template.
•An algorithm.
•Best practice guidelines.
•Etc.
95
Expanded Terms-Plans: Example
DC-2013, Lisbon, Portugal
•Plans are associated to Activities and executed by an Agents:
Bake Cake
Chef
Association
Recipe
(plan)
Cake
prov:wasAssociatedWith
prov:wasGeneratedBy
prov:hadPlan
96
Expanded Terms: Collections
DC-2013, Lisbon, Portugal
“A collection is an entity that provides a structure to
some constituents that must themselves be entities.
These constituents are said to be member of the
collections. An empty collection is a collection without
members”.
•There is a complete PROV extension for structured collections
(dictionaries) : http://www.w3.org/TR/prov-dictionary/
•Members of a collection are asserted with the
prov:hadMember relationship.
•Examples: the collection of authors who participated in a
publication, the members of a research group, etc.
97
Expanded Terms: Bundles
DC-2013, Lisbon, Portugal
“A bundle is a named set of provenance
descriptions, and is itself an entity, so allowing
provenance of provenance to be expressed.”
•Bundles can be any kind of container:
•Files containing provenance descriptions.
•Named graphs.
•Repositories.
•Etc.
•This document defines how entities could be identified across
bundles: http://www.w3.org/TR/prov-links/
98
Expanded Terms-Bundles: an Example
DC-2013, Lisbon, Portugal
:dcProvTutorial:daniel dct:creator
prov:Agent prov:Entity
prov:wasAttributedTo
:makingTheTutorial
prov:wasAssociatedWith prov:wasGeneratedBy
prov:Activity
:kai
:tutorialDraft
prov:wasAssociatedWith
prov:used
:makingTheDraftprov:wasGeneratedBy
prov:wasAssociatedWith
prov:wasRevisionOf
:iswcProvTuto
rial
:iswcProvIntro
prov:used
prov:used
prov:wasDerivedFrom
prov:wasDerivedFrom
Describing the provenance of provenance of this presentation
(first example)
prov:Bundle
:daniel
“RDF”
prov:wasAttributedTo
dct:format
99
Expanded Terms: Primary Source
DC-2013, Lisbon, Portugal
“A primary source relation is a kind of a derivation
relation from secondary materials to their primary
sources“.
•The determination of primary sources can be up to interpretation.
•Determining the primary source is key for attribution:
•What is the primary source for a blog post?
•What is the primary source of a news article?
•What are the primary sources for a research result?
•Etc.
Entity
Entity
prov:hadPrimarySource
100
Expanded Terms: Quotation
DC-2013, Lisbon, Portugal
“A quotation is the repeat of (some or all of) an
entity, such as text or image, by someone who may or
may not be its original author”.
•Quotation is key for giving credit:
•The quote in this slide was quoted from the prov-dm definition
of quotation: http://www.w3.org/TR/prov-dm/#term-quotation
•Quotes from people in news articles.
•Etc.
•Quotation is expressed with the relationship prov:wasQuotedFrom.
Entity Entity
prov:wasQuotedFrom
101
Expanded Terms: value
DC-2013, Lisbon, Portugal
“prov:value provides a value that is a direct
representation of an entity”.
•Used when entities have a string or numeric value:
•A string representing the quote in a document.
•The value of the parameter being used as input for an
experimental activity.
•Etc.
102
Expanded Terms-value and quotation: Example
DC-2013, Lisbon, Portugal
•Quoting a news article in a blog post
blogPost
newsArticle
prov:wasQuotedFrom
“According to the number of registrations in the website,
DC2013 conference was a great success”…
Summary of the DC conference.
As this article states:
“According to the number of registrations in the website,
DC2013 conference was a great success”
….
103
Expanded Terms-value and quotation: Example
DC-2013, Lisbon, Portugal
•Quoting a news article in a blog post
blogPost
newsArticle
prov:wasQuotedFrom
The blog post is not a quote! The wasQuotedFrom
relationship should be only for the quotes.
104
Expanded Terms-value and quotation: Example
DC-2013, Lisbon, Portugal
•Quoting a news article in a blog post
blogPost
newsArticle
prov:wasQuotedFrom
quoteInBlog
post
newsArticle
blogPost
“According to the
number of
registrations…”
prov:wasQuotedFrom
prov:value
dc:isPartOf
prov:hadPrimarySource,
prov:wasDerivedFrom
105
Expanded Terms: Start and End
DC-2013, Lisbon, Portugal
“Start is when an activity is deemed to have been
started by an entity, known as trigger. The activity did
not exist before its start“.
“End is when an activity is deemed to have been
ended by an entity, known as trigger. The activity no
longer exists after its end”.
•The starter/ender of the activity may be an entity or an agent.
•Useful for assigning responsibility:
•The cause for the failure of an execution.
•The email who started a discussion.
•Etc. Activity
prov:wasStartedBy
106
Entity
Expanded Terms: Invalidation
DC-2013, Lisbon, Portugal
“Invalidationis the start of the
destruction, cessation, or expiry of an existing entity
by an activity. The entity is no longer available for use
(or further invalidation) after invalidation”.
•wasInvalidatedBy is used to point at the activity responsible for
the invalidation of the entity:
•A piece of art being damaged by a fire.
•A paper being withdrawn after a discussion
with the authors.
•An information invalidated by an automatic
process because of its expiry date.
•Etc.
Activity
prov:wasInvalidatedBY
107
Entity
Expanded Terms: Revision
DC-2013, Lisbon, Portugal
“A revision is a derivation for which the resulting entity
is a revised version of some original”.
•Revision is used for asserting a strong dependency between two
entities:
•A final report is a revision of a previous version.
•A result is a refinement of previous results.
•Etc.
•Similar to dct:isVersionOf.
Entity
Entity
prov:wasRevisionFrom
108
Entity
Expanded Terms: Specialization
DC-2013, Lisbon, Portugal
“An entity that is a specialization of another shares all
aspects of the latter, and additionally presents more
specific aspects of the same thing as the latter. In
particular, the lifetime of the entity being specialized
contains that of any specialization.”
•Specialization is used for defining abstractions and
contextualized entities:
•Entities during a period of time (a weather report
being a specialization of today’s weather report).
•An agent during a trip is a specialization of that
agent.
•Two different versions of a document can be specializations
of the general entity representing the document
•Etc.
Entity
prov:specializationOf
109
Expanded Terms: Alternate Of
DC-2013, Lisbon, Portugal
“Two alternate entities present aspects of the same
thing. These aspects may be the same or different, and
the alternate entities may or may not overlap in time.”
•Alternate describe entities that specialize the same resource:
•Two different versions of a document are
alternates of each other.
•A tool designed for mobile devices is an
alternate of a desktop application.
•Etc.
•Similar to owl:sameAs, but not the same.
Entity
Entity
prov:alternateOf
110
Expanded terms-specialization and alternate: The music example
DC-2013, Lisbon, Portugal
Recording1841Recording999
SoundA SoundB
prov:used prov:used
Performance
in 1971
Towson-
March1988
prov:wasGeneratedBy prov:wasGeneratedBy
Stair way to
heaven
(MusicalWork)
http://musicbrainz.org/work/
968ee3c5-21fa-35de-88f9-bd1c300ac3ee
prov:used prov:used
Frank
Zappa
Led
Zeppelin
prov:wasAssociatedWith prov:wasAssociatedWith
111
Expanded terms-specialization and alternate: The music example
DC-2013, Lisbon, Portugal
Recording1841Recording999
SoundA SoundB
prov:used prov:used
Performance
in 1971
Towson-
March1988
prov:wasGeneratedBy prov:wasGeneratedBy
Stair way to
heaven
(MusicalWork)
http://musicbrainz.org/work/
968ee3c5-21fa-35de-88f9-bd1c300ac3ee
prov:used prov:used
Frank
Zappa
Led
Zeppelin
prov:wasAssociatedWith prov:wasAssociatedWith
prov:specializationOf prov:specializationOf
112
Expanded terms-specialization and alternate: The music example
DC-2013, Lisbon, Portugal
Recording1841Recording999
SoundA SoundB
prov:used prov:used
Performance
in 1971
Towson-
March1988
prov:wasGeneratedBy prov:wasGeneratedBy
Stair way to
heaven
(MusicalWork)
http://musicbrainz.org/work/
968ee3c5-21fa-35de-88f9-bd1c300ac3ee
prov:used prov:used
Frank
Zappa
Led
Zeppelin
prov:wasAssociatedWith prov:wasAssociatedWith
prov:specializationOf prov:specializationOf
prov:alternateOf
prov:alternateOf
113
Both Sounds are
expressions of the
same musical work
PROV-O: Qualifying terms
DC-2013, Lisbon, Portugal
114
Qualifying terms
DC-2013, Lisbon, Portugal
•Starting and expanded terms are binary.
•But we may want to further describe these relationships:
•Where was an entity generated?
•What were the roles of the associated to the activity?
•When was an entity used?
•Etc.
SoundA
Towson-
March1988
prov:wasGeneratedBy
SoundA
Towson-
March1988
prov:used
Led
Zeppelin
Towson-
March1988
prov:wasAssociatedWith
115
Qualifying terms: Usage
DC-2013, Lisbon, Portugal
•Qualifying usage:
Stair way to
heaven
(MusicalWork)
Towson-
March1988
prov:used
Usage
“1988”
Towsonprov:qualifiedUsage
prov:entity
prov:atTime
prov:atLocation
…
116
Qualifying terms: Association
DC-2013, Lisbon, Portugal
•Qualifying association:
Towson-
March1988
prov:wasAssociatedWith
Association
“1988”
Towson
prov:qualifiedAssociation
prov:agent
prov:atTime
prov:atLocation
…
Frank
Zappa
Performer
Song Lyrics
prov:hadRole
prov:hadPlan
117
Qualifying terms: Generation
DC-2013, Lisbon, Portugal
•Qualifying generation:
prov:wasGeneratedBy
Generation
“1988”
Towsonprov:qualifiedGeneration
prov:activity
prov:atTime
prov:atLocation
…SoundA
Towson-
March1988
118
Encoding qualified relationships in RDF
DC-2013, Lisbon, Portugal
•N-ary relationship pattern:
•http://www.w3.org/TR/swbp-n-aryRelations/
•Example for the usage qualifying pattern:
:towsonRecording a prov:Activity;
prov:used :musicalWork;
prov:qualifiedUsage [ a prov:Usage;
prov:entity :musicalWork ;
prov:hadRole :used-musicalWork;
prov:atTime “1988-03-23T20:40:40"^^xsd:dateTime;
prov:atLocation :towson.
];
.
:musicalWork a prov:entity;
dc:title “A stairway to heaven”.
:used-musialWork a prov:Role.
:towson a prov:Location. 119
Qualifying terms: Qualified relationships
DC-2013, Lisbon, Portugal
•The following starting point relationships and expanded terms
relationships have qualified versions:
•Usage (used)
•Generation (wasGeneratedBy)
•Association (wasAssociatedWith)
•Derivation (wasDerivedFrom)
•Quotation (wasQuotedFrom)
•Revision (wasRevisionOf)
•PrimarySource (hadPrimarySource)
•Influence (wasInfluencedBy)
•Start (wasStartedBy)
•End (wasEndedBy)
•Communication (wasInformedBy)
•Invalidation (wasInvalidatedBy)
•Attribution (wasAttributedTo)
•Delegation (actedOnBehalfOf)
Stair way to
heaven
(MusicalWork)
Towson-
March1988
prov:used
Usage
“1988”
Towsonprov:qualifiedUsage
prov:entity
prov:atTime
prov:atLocation
…
120
Introduction
PROV-O: Summary
DC-2013, Lisbon, Portugal
121
3 main classes
DC-2013, Lisbon, Portugal
Agent
Activity
Entity
122
Relating the main 3 classes
DC-2013, Lisbon, Portugal
generatedAtTime
value
hadMember
invalidatedAtTime
wasStartedBy /
wasEndedBy
wasInvalidatedBy
wasInfluencedBy /
wasQuotedFrom /
wasRevisionOf /
hadPrimarySource
Activity
Entity
Collection
xsd:dateTimexsd:dateTime
alternateOf /
specializationOf
atLocation
Location
Agent
Person
SoftwareAgent
Organization
BundlePlan
123
Qualifying patterns
DC-2013, Lisbon, Portugal
124
Mapping PROV-O to Dublin Core
DC-2013, Lisbon, Portugal
http://allfaaraa.com/wp-content/uploads/2013/02/puzzle.jpg 125
Mapping PROV-O to Dublin Core: Outline
• Preliminaries
• Provenance and DC
• Entities in PROV and DC
• Direct mappings
• PROV-O Extensions
• Complex mappings
DC-2013, Lisbon, Portugal
126
Mapping PROV-O to Dublin Core: Provenance in DC
DC-2013, Lisbon, Portugal
• Many DC terms hold provenance information
• Who affected a resource
• Creator, contributor, publisher, etc..
• How the resource was affected
• Access rights, license, hasFormat, etc.
• When the resource was affected
• Created, issued, dateSubmitted, etc.
• The rest of the terms hold metadata about the
resource
• Date, description, abstract, language, etc.
127
Mapping PROV-O to Dublin Core- Provenance in DC: Who
DC-2013, Lisbon, Portugal
• Properties with dct:Agents as range:
• creator
• contributor
• publisher
• rightsHolder
dc:AgentResource
dct property
128
Mapping PROV-O to Dublin Core- Provenance in DC: When
DC-2013, Lisbon, Portugal
• available
• created
• date
• dateAccepted
• dateCopyrighted
• dateSubmitted
• issued
• modified
• valid
Resource
dct property
dc date
129
Mapping PROV-O to Dublin Core- Provenance in DC: How
DC-2013, Lisbon, Portugal
• accessRights
• hasFormat
• hasVersion
• isFormatOf
• isVersionOf
• license
• isReferencedBy
• isReplacedBy
• references
• replaces
• rights
• source
Resource
dct property
dct
resource
130
Mapping PROV-O to Dublin Core: Resources in DC vs entities in PROV
DC-2013, Lisbon, Portugal
Resources in Dublin Core have “scruffy” provenance…
author
book
editorial
dct:creator
dct:publisher
131
Mapping PROV-O to Dublin Core: Entities in DC vs entities in PROV (2)
DC-2013, Lisbon, Portugal
But in PROV we aim for “complete“ provenance:
author
book
editorial
dc:creator
dc:publisher
authorCopy
editorialCopy
createBook
publishBook
prov:wasGeneratedBy
prov:wasGeneratedBy
prov:used
prov:
specializationOf
prov:
specializationOf
prov:wasAssociatedWith
prov:wasAssociatedWith
prov:wasAttributedTo
prov:wasAttributedTo
132
Mapping PROV-O to Dublin Core: Direct mappings
DC-2013, Lisbon, Portugal
• Direct mappings
• Simple equivalences between PROV terms and DC terms.
• Described in terms of rdfs:subClassOf, rdfs:subPropertyOf,
owl:equivalentClass.
• The mappings uses prov starting points and prov expanded
terms.
133
Mapping PROV-O to Dublin Core: Direct mappings (terms)
DC-2013, Lisbon, Portugal
134
DC Term Mapping PROV Property
created subPropertyOf generatedAtTime
dateAccepted subPropertyOf generatedAtTime
dateCopyRighted subPropertyOf generatedAtTime
dateSubmitted subPropertyOf generatedAtTime
issued subPropertyOf generatedAtTime
modified subPropertyOf generatedAtTime
creator subPropertyOf wasAttributedTo
contributor subPropertyOf wasAttributedTo
publisher subPropertyOf wasAttributedTo
rightsHolder subPropertyOf wasAttributedTo
source subPropertyOf wasDerivedFrom
hasFormat subPropertyOf alternateOf
isFormatOf subPropertyOf alternateOf,
wasDerivedFrom
Mapping PROV-O to Dublin Core: Direct mappings (terms)
DC-2013, Lisbon, Portugal
DC Term Mapping PROV Property
created subPropertyOf generatedAtTime
dateAccepted subPropertyOf generatedAtTime
dateCopyRighted subPropertyOf generatedAtTime
dateSubmitted subPropertyOf generatedAtTime
issued subPropertyOf generatedAtTime
modified subPropertyOf generatedAtTime
creator subPropertyOf wasAttributedTo
contributor subPropertyOf wasAttributedTo
publisher subPropertyOf wasAttributedTo
rightsHolder subPropertyOf wasAttributedTo
source subPropertyOf wasDerivedFrom
hasFormat subPropertyOf alternateOf
isFormatOf subPropertyOf alternateOf,
wasDerivedFrom
Generation
dates
135
Mapping PROV-O to Dublin Core: Direct mappings (terms)
DC-2013, Lisbon, Portugal
DC Term Mapping PROV Property
created subPropertyOf generatedAtTime
dateAccepted subPropertyOf generatedAtTime
dateCopyRighted subPropertyOf generatedAtTime
dateSubmitted subPropertyOf generatedAtTime
issued subPropertyOf generatedAtTime
modified subPropertyOf generatedAtTime
creator subPropertyOf wasAttributedTo
contributor subPropertyOf wasAttributedTo
publisher subPropertyOf wasAttributedTo
rightsHolder subPropertyOf wasAttributedTo
source subPropertyOf wasDerivedFrom
hasFormat subPropertyOf alternateOf
isFormatOf subPropertyOf alternateOf,
wasDerivedFrom
Generation
dates
136
Agents
Mapping PROV-O to Dublin Core: Direct mappings (terms)
DC-2013, Lisbon, Portugal
PROV property Mapping DC Term
hadPrimarySource subPropertyOf source
wasRevisionOf subPropertyOf isVersionOf
Some DC terms generalize PROV properties:
137
Mapping PROV-O to Dublin Core: Main Direct mappings (classes)
DC-2013, Lisbon, Portugal
DC Term Mapping PROV Property
Agent equivalentClass Agent
BibliographicResource subClassOf Entity
LicenseDocument subClassOf Entity
LinguisticSystem subClassOf Plan
Location equivalentClass Location
MethodOfAccrual subClassOf Plan
MethodOfInstruction subClassOf Plan
RightsStatement subClassOf Entity
PhysicalResource subClassOf Entity
Policy subClassOf Plan
ProvenanceStatement subClassOf Bundle
138
Mapping PROV-O to Dublin Core: PROV refinements
DC-2013, Lisbon, Portugal
To properly represent DC activities and roles, we have extended PROV:
Extended Term Relation to PROV PROV extended Term
Publish subClassOf Activity
Contribute subClassOf Activity
Create subClassOf Activity, Contribute
RightsAssignment subClassOf Activity
Modify subClassOf Activity
Accept subClassOf Activity
Copyright subClassOf Activity
Submit subClassOf Activity
Replace subClassOf Activity
Publisher subClassOf Role
Contributor subClassOf Role
Creator subClassOf Role, Contributor
RightsHolder subClassOf Role
139
Mapping PROV-O to Dublin Core: Complex mappings
DC-2013, Lisbon, Portugal
• Complex mappings
• Defined to generate qualified PROV statements from DC
statements.
• More complete than simple mappings.
• May be refined depending on the use case scenario where
applied.
• Provided in the form of SPARQL construct queries.
140
Mapping PROV-O to Dublin Core-Complex mappings: an example
DC-2013, Lisbon, Portugal
Transformation of dc:publisher to PROV
141
Mapping PROV-O to Dublin Core-Complex mappings: an example
DC-2013, Lisbon, Portugal
Why can’t we follow DC’s approach?
Publish would generate doc1 and then use it.
• It is not what we want to represent!
142
Mapping PROV-O to Dublin Core-Complex mappings: an Example
DC-2013, Lisbon, Portugal
CONSTRUCT {
?document a prov:Entity;
prov:wasAttributedTo ?agent.
?agent a prov:Agent.
_:usedEntity a prov:Entity;
prov:specializationOf ?document.
_:activity a prov:Activity, prov:Publish;
prov:used _:usedEntity;
prov:wasAssociatedWith ?agent;
prov:qualifiedAssociation [
a prov:Association;
prov:agent ?agent;
prov:hadRole [a prov:Publisher].
].
_:resultingEntity a prov:Entity;
prov:specializationOf ?document;
prov:wasDerivedFrom _:usedEntity;
prov:wasGeneratedBy _:activity;
prov:wasAttributedTo ?agent.
} WHERE { ?document dct:publisher ?agent. }
143
Mapping PROV-O to Dublin Core-Complex mappings: an Example
DC-2013, Lisbon, Portugal
CONSTRUCT {
?document a prov:Entity; (GENERAL ENTITY)
prov:wasAttributedTo ?agent. (DIRECT MAPPING)
?agent a prov:Agent.
_:usedEntity a prov:Entity;
prov:specializationOf ?document.
_:activity a prov:Activity, prov:Publish;
prov:used _:usedEntity;
prov:wasAssociatedWith ?agent;
prov:qualifiedAssociation [
a prov:Association;
prov:agent ?agent;
prov:hadRole [a prov:Publisher].
].
_:resultingEntity a prov:Entity;
prov:specializationOf ?document;
prov:wasDerivedFrom _:usedEntity;
prov:wasGeneratedBy _:activity;
prov:wasAttributedTo ?agent.
} WHERE { ?document dct:publisher ?agent. }
144
Mapping PROV-O to Dublin Core-Complex mappings: an Example
DC-2013, Lisbon, Portugal
CONSTRUCT {
?document a prov:Entity; (GENERAL ENTITY)
prov:wasAttributedTo ?agent. (DIRECT MAPPING)
?agent a prov:Agent.
_:usedEntity a prov:Entity; (SPECIALIZATION OF THE GENERAL ENTITY)
prov:specializationOf ?document.
_:activity a prov:Activity, prov:Publish;
prov:used _:usedEntity;
prov:wasAssociatedWith ?agent;
prov:qualifiedAssociation [
a prov:Association;
prov:agent ?agent;
prov:hadRole [a prov:Publisher].
].
_:resultingEntity a prov:Entity; (SPECIALIZATION OF THE GENERAL ENTITY)
prov:specializationOf ?document;
prov:wasDerivedFrom _:usedEntity;
prov:wasGeneratedBy _:activity;
prov:wasAttributedTo ?agent.
} WHERE { ?document dct:publisher ?agent. }
145
Mapping PROV-O to Dublin Core-Complex mappings: an Example
DC-2013, Lisbon, Portugal
CONSTRUCT {
?document a prov:Entity; (GENERAL ENTITY)
prov:wasAttributedTo ?agent. (DIRECT MAPPING)
?agent a prov:Agent.
_:usedEntity a prov:Entity; (SPECIALIZATION OF THE GENERAL ENTITY)
prov:specializationOf ?document.
_:activity a prov:Activity, prov:Publish; (ACTIVITY EXTENDING PROV)
prov:used _:usedEntity;
prov:wasAssociatedWith ?agent;
prov:qualifiedAssociation [
a prov:Association;
prov:agent ?agent;
prov:hadRole [a prov:Publisher].
].
_:resultingEntity a prov:Entity; (SPECIALIZATION OF THE GENERAL ENTITY)
prov:specializationOf ?document;
prov:wasDerivedFrom _:usedEntity;
prov:wasGeneratedBy _:activity;
prov:wasAttributedTo ?agent.
} WHERE { ?document dct:publisher ?agent. }
146
Mapping PROV-O to Dublin Core-Complex mappings: an Example
DC-2013, Lisbon, Portugal
CONSTRUCT {
?document a prov:Entity; (GENERAL ENTITY)
prov:wasAttributedTo ?agent. (DIRECT MAPPING)
?agent a prov:Agent.
_:usedEntity a prov:Entity; (SPECIALIZATION OF THE GENERAL ENTITY)
prov:specializationOf ?document.
_:activity a prov:Activity, prov:Publish; (ACTIVITY EXTENDING PROV)
prov:used _:usedEntity;
prov:wasAssociatedWith ?agent;
prov:qualifiedAssociation [ (QUALIFIED ASSOCIATION TO BIND THE ACTIVITY TO THE ROLE)
a prov:Association;
prov:agent ?agent;
prov:hadRole [a prov:Publisher].
].
_:resultingEntity a prov:Entity; (SPECIALIZATION OF THE GENERAL ENTITY)
prov:specializationOf ?document;
prov:wasDerivedFrom _:usedEntity;
prov:wasGeneratedBy _:activity;
prov:wasAttributedTo ?agent.
} WHERE { ?document dct:publisher ?agent. }
147
Mapping PROV-O to Dublin Core: Cleanup
DC-2013, Lisbon, Portugal
• The complex mapping lead to the proliferation of
blank nodes.
• Binding URIs for the blank nodes may solve the problem
• Is there a way to reduce the number of blank nodes?
• Conflate properties referring to the same state of the resource
• Sort activities by their logical order
148
Mapping PROV-O to Dublin Core: Cleanup 1
DC-2013, Lisbon, Portugal
149
Mapping PROV-O to Dublin Core: Cleanup 2
DC-2013, Lisbon, Portugal
150
Mapping PROV-O to Dublin Core: Summary
DC-2013, Lisbon, Portugal
• Direct mappings
• PROV-O Extensions
• Complex mappings
151
Acknowledgements
DC-2013, Lisbon, Portugal
•Luc Moreau, Ivan Herman, Paul Groth and Timothy Lebo
for creating some of the materials used for this
presentation:
•http://www.w3.org/2001/sw/wiki/OutreachInformation
•Victor Rodriguez Doncel for providing the sources to the
music ontology example.
•Kai Eckert, María Poveda, Oscar Corcho and Daniel Nüst
for providing feedback.
•PROV-O team: http://www.w3.org/2011/prov#prov‐o‐team
152
Introduction
Questions?
DC-2013, Lisbon, Portugal
http://thumbs.dreamstime.com/x/question-mark-five-w-s-18903552.jpg 153
PROV-O: The PROV Ontology
Tutorial
Daniel Garijo
Ontology Engineering Group
Universidad Politécnica de Madrid
(with Slides from Luc Moreau, Ivan Herman, Paul Groth and
Timothy Lebo)
Date: 01/09/2013

Mais conteúdo relacionado

Mais procurados

RDB2RDF Tutorial (R2RML and Direct Mapping) at ISWC 2013
RDB2RDF Tutorial (R2RML and Direct Mapping) at ISWC 2013RDB2RDF Tutorial (R2RML and Direct Mapping) at ISWC 2013
RDB2RDF Tutorial (R2RML and Direct Mapping) at ISWC 2013Juan Sequeda
 
Hadoopデータ基盤とMulti-CloudなML基盤への取り組みの紹介
Hadoopデータ基盤とMulti-CloudなML基盤への取り組みの紹介Hadoopデータ基盤とMulti-CloudなML基盤への取り組みの紹介
Hadoopデータ基盤とMulti-CloudなML基盤への取り組みの紹介MicroAd, Inc.(Engineer)
 
GoldenGateテクニカルセミナー2「Oracle GoldenGate 新機能情報」(2016/5/11)
GoldenGateテクニカルセミナー2「Oracle GoldenGate 新機能情報」(2016/5/11)GoldenGateテクニカルセミナー2「Oracle GoldenGate 新機能情報」(2016/5/11)
GoldenGateテクニカルセミナー2「Oracle GoldenGate 新機能情報」(2016/5/11)オラクルエンジニア通信
 
Oracle Goldengate for Big Data - LendingClub Implementation
Oracle Goldengate for Big Data - LendingClub ImplementationOracle Goldengate for Big Data - LendingClub Implementation
Oracle Goldengate for Big Data - LendingClub ImplementationVengata Guruswamy
 
Linked Open Data勉強会2020 前編:LODの基礎・作成・公開
Linked Open Data勉強会2020 前編:LODの基礎・作成・公開Linked Open Data勉強会2020 前編:LODの基礎・作成・公開
Linked Open Data勉強会2020 前編:LODの基礎・作成・公開KnowledgeGraph
 
DataProcessingInBuffettCode-20190213
DataProcessingInBuffettCode-20190213DataProcessingInBuffettCode-20190213
DataProcessingInBuffettCode-20190213Shu (shoe116)
 
Oracle Cloud Infrastructure:2022年1月度サービス・アップデート
Oracle Cloud Infrastructure:2022年1月度サービス・アップデートOracle Cloud Infrastructure:2022年1月度サービス・アップデート
Oracle Cloud Infrastructure:2022年1月度サービス・アップデートオラクルエンジニア通信
 
データ分析に必要なスキルをつけるためのツール~Jupyter notebook、r連携、機械学習からsparkまで~
データ分析に必要なスキルをつけるためのツール~Jupyter notebook、r連携、機械学習からsparkまで~データ分析に必要なスキルをつけるためのツール~Jupyter notebook、r連携、機械学習からsparkまで~
データ分析に必要なスキルをつけるためのツール~Jupyter notebook、r連携、機械学習からsparkまで~The Japan DataScientist Society
 
“Open Data Web” – A Linked Open Data Repository Built with CKAN
“Open Data Web” – A Linked Open Data Repository Built with CKAN“Open Data Web” – A Linked Open Data Repository Built with CKAN
“Open Data Web” – A Linked Open Data Repository Built with CKANChengjen Lee
 
An Ambitious Wikidata Tutorial
An Ambitious Wikidata TutorialAn Ambitious Wikidata Tutorial
An Ambitious Wikidata Tutorial_Emw
 
Creating Awesome Web APIs is a Breeze
Creating Awesome Web APIs is a BreezeCreating Awesome Web APIs is a Breeze
Creating Awesome Web APIs is a BreezeMarkus Lanthaler
 
Linked Open Data勉強会2020 後編:SPARQLの簡単な使い方、SPARQLを使った簡単なアプリ開発
Linked Open Data勉強会2020 後編:SPARQLの簡単な使い方、SPARQLを使った簡単なアプリ開発Linked Open Data勉強会2020 後編:SPARQLの簡単な使い方、SPARQLを使った簡単なアプリ開発
Linked Open Data勉強会2020 後編:SPARQLの簡単な使い方、SPARQLを使った簡単なアプリ開発KnowledgeGraph
 
LODを使ってみよう!
LODを使ってみよう!LODを使ってみよう!
LODを使ってみよう!uedayou
 
Db2 & Db2 Warehouse v11.5.4 最新情報アップデート2020年8月25日
Db2 & Db2 Warehouse v11.5.4 最新情報アップデート2020年8月25日Db2 & Db2 Warehouse v11.5.4 最新情報アップデート2020年8月25日
Db2 & Db2 Warehouse v11.5.4 最新情報アップデート2020年8月25日IBM Analytics Japan
 
OAuth2.0によるWeb APIの保護
OAuth2.0によるWeb APIの保護OAuth2.0によるWeb APIの保護
OAuth2.0によるWeb APIの保護Naohiro Fujie
 

Mais procurados (20)

Oracle GoldenGate アーキテクチャと基本機能
Oracle GoldenGate アーキテクチャと基本機能Oracle GoldenGate アーキテクチャと基本機能
Oracle GoldenGate アーキテクチャと基本機能
 
Linked Open Dataとは
Linked Open DataとはLinked Open Dataとは
Linked Open Dataとは
 
RDB2RDF Tutorial (R2RML and Direct Mapping) at ISWC 2013
RDB2RDF Tutorial (R2RML and Direct Mapping) at ISWC 2013RDB2RDF Tutorial (R2RML and Direct Mapping) at ISWC 2013
RDB2RDF Tutorial (R2RML and Direct Mapping) at ISWC 2013
 
Hadoopデータ基盤とMulti-CloudなML基盤への取り組みの紹介
Hadoopデータ基盤とMulti-CloudなML基盤への取り組みの紹介Hadoopデータ基盤とMulti-CloudなML基盤への取り組みの紹介
Hadoopデータ基盤とMulti-CloudなML基盤への取り組みの紹介
 
GoldenGateテクニカルセミナー2「Oracle GoldenGate 新機能情報」(2016/5/11)
GoldenGateテクニカルセミナー2「Oracle GoldenGate 新機能情報」(2016/5/11)GoldenGateテクニカルセミナー2「Oracle GoldenGate 新機能情報」(2016/5/11)
GoldenGateテクニカルセミナー2「Oracle GoldenGate 新機能情報」(2016/5/11)
 
Oracle Goldengate for Big Data - LendingClub Implementation
Oracle Goldengate for Big Data - LendingClub ImplementationOracle Goldengate for Big Data - LendingClub Implementation
Oracle Goldengate for Big Data - LendingClub Implementation
 
Linked Open Data勉強会2020 前編:LODの基礎・作成・公開
Linked Open Data勉強会2020 前編:LODの基礎・作成・公開Linked Open Data勉強会2020 前編:LODの基礎・作成・公開
Linked Open Data勉強会2020 前編:LODの基礎・作成・公開
 
DataProcessingInBuffettCode-20190213
DataProcessingInBuffettCode-20190213DataProcessingInBuffettCode-20190213
DataProcessingInBuffettCode-20190213
 
Oracle Cloud Infrastructure:2022年1月度サービス・アップデート
Oracle Cloud Infrastructure:2022年1月度サービス・アップデートOracle Cloud Infrastructure:2022年1月度サービス・アップデート
Oracle Cloud Infrastructure:2022年1月度サービス・アップデート
 
Apache Spark の紹介(前半:Sparkのキホン)
Apache Spark の紹介(前半:Sparkのキホン)Apache Spark の紹介(前半:Sparkのキホン)
Apache Spark の紹介(前半:Sparkのキホン)
 
データ分析に必要なスキルをつけるためのツール~Jupyter notebook、r連携、機械学習からsparkまで~
データ分析に必要なスキルをつけるためのツール~Jupyter notebook、r連携、機械学習からsparkまで~データ分析に必要なスキルをつけるためのツール~Jupyter notebook、r連携、機械学習からsparkまで~
データ分析に必要なスキルをつけるためのツール~Jupyter notebook、r連携、機械学習からsparkまで~
 
“Open Data Web” – A Linked Open Data Repository Built with CKAN
“Open Data Web” – A Linked Open Data Repository Built with CKAN“Open Data Web” – A Linked Open Data Repository Built with CKAN
“Open Data Web” – A Linked Open Data Repository Built with CKAN
 
ShEx vs SHACL
ShEx vs SHACLShEx vs SHACL
ShEx vs SHACL
 
An Ambitious Wikidata Tutorial
An Ambitious Wikidata TutorialAn Ambitious Wikidata Tutorial
An Ambitious Wikidata Tutorial
 
Oracle GoldenGate導入Tips
Oracle GoldenGate導入TipsOracle GoldenGate導入Tips
Oracle GoldenGate導入Tips
 
Creating Awesome Web APIs is a Breeze
Creating Awesome Web APIs is a BreezeCreating Awesome Web APIs is a Breeze
Creating Awesome Web APIs is a Breeze
 
Linked Open Data勉強会2020 後編:SPARQLの簡単な使い方、SPARQLを使った簡単なアプリ開発
Linked Open Data勉強会2020 後編:SPARQLの簡単な使い方、SPARQLを使った簡単なアプリ開発Linked Open Data勉強会2020 後編:SPARQLの簡単な使い方、SPARQLを使った簡単なアプリ開発
Linked Open Data勉強会2020 後編:SPARQLの簡単な使い方、SPARQLを使った簡単なアプリ開発
 
LODを使ってみよう!
LODを使ってみよう!LODを使ってみよう!
LODを使ってみよう!
 
Db2 & Db2 Warehouse v11.5.4 最新情報アップデート2020年8月25日
Db2 & Db2 Warehouse v11.5.4 最新情報アップデート2020年8月25日Db2 & Db2 Warehouse v11.5.4 最新情報アップデート2020年8月25日
Db2 & Db2 Warehouse v11.5.4 最新情報アップデート2020年8月25日
 
OAuth2.0によるWeb APIの保護
OAuth2.0によるWeb APIの保護OAuth2.0によるWeb APIの保護
OAuth2.0によるWeb APIの保護
 

Destaque

The W3C PROV standard: data model for the provenance of information, and enab...
The W3C PROV standard:data model for the provenance of information, and enab...The W3C PROV standard:data model for the provenance of information, and enab...
The W3C PROV standard: data model for the provenance of information, and enab...Paolo Missier
 
Tutorial: Social Semantics
Tutorial: Social SemanticsTutorial: Social Semantics
Tutorial: Social SemanticsMatthew Rowe
 
[2D1]Elasticsearch 성능 최적화
[2D1]Elasticsearch 성능 최적화[2D1]Elasticsearch 성능 최적화
[2D1]Elasticsearch 성능 최적화NAVER D2
 
온라인 서비스 개선을 데이터 활용법 - 김진영 (How We Use Data)
온라인 서비스 개선을 데이터 활용법  - 김진영 (How We Use Data)온라인 서비스 개선을 데이터 활용법  - 김진영 (How We Use Data)
온라인 서비스 개선을 데이터 활용법 - 김진영 (How We Use Data)Jin Young Kim
 
XECon+PHPFest2014 발표자료 - ElasticSearch를 이용한 통합검색 구축방법 - 김훈민
XECon+PHPFest2014 발표자료 - ElasticSearch를 이용한 통합검색 구축방법 - 김훈민XECon+PHPFest2014 발표자료 - ElasticSearch를 이용한 통합검색 구축방법 - 김훈민
XECon+PHPFest2014 발표자료 - ElasticSearch를 이용한 통합검색 구축방법 - 김훈민XpressEngine
 
Building Capacity for Innovation and Systems Change: Innovation Fellowship Pr...
Building Capacity for Innovation and Systems Change: Innovation Fellowship Pr...Building Capacity for Innovation and Systems Change: Innovation Fellowship Pr...
Building Capacity for Innovation and Systems Change: Innovation Fellowship Pr...The Rockefeller Foundation
 
Reducing food waste by changing the way consumers interact with food
Reducing food waste by changing the way consumers interact with foodReducing food waste by changing the way consumers interact with food
Reducing food waste by changing the way consumers interact with foodThe Rockefeller Foundation
 
Elastic Search (엘라스틱서치) 입문
Elastic Search (엘라스틱서치) 입문Elastic Search (엘라스틱서치) 입문
Elastic Search (엘라스틱서치) 입문SeungHyun Eom
 
The Future of Quantified Self in Healthcare
The Future of Quantified Self in HealthcareThe Future of Quantified Self in Healthcare
The Future of Quantified Self in HealthcareQuantified Self Dublin
 
National Disaster Resilience Competition's Resilience Academies - Emerging In...
National Disaster Resilience Competition's Resilience Academies - Emerging In...National Disaster Resilience Competition's Resilience Academies - Emerging In...
National Disaster Resilience Competition's Resilience Academies - Emerging In...The Rockefeller Foundation
 
TEDx Manchester: AI & The Future of Work
TEDx Manchester: AI & The Future of WorkTEDx Manchester: AI & The Future of Work
TEDx Manchester: AI & The Future of WorkVolker Hirsch
 

Destaque (12)

The W3C PROV standard: data model for the provenance of information, and enab...
The W3C PROV standard:data model for the provenance of information, and enab...The W3C PROV standard:data model for the provenance of information, and enab...
The W3C PROV standard: data model for the provenance of information, and enab...
 
Tutorial: Social Semantics
Tutorial: Social SemanticsTutorial: Social Semantics
Tutorial: Social Semantics
 
[2D1]Elasticsearch 성능 최적화
[2D1]Elasticsearch 성능 최적화[2D1]Elasticsearch 성능 최적화
[2D1]Elasticsearch 성능 최적화
 
온라인 서비스 개선을 데이터 활용법 - 김진영 (How We Use Data)
온라인 서비스 개선을 데이터 활용법  - 김진영 (How We Use Data)온라인 서비스 개선을 데이터 활용법  - 김진영 (How We Use Data)
온라인 서비스 개선을 데이터 활용법 - 김진영 (How We Use Data)
 
XECon+PHPFest2014 발표자료 - ElasticSearch를 이용한 통합검색 구축방법 - 김훈민
XECon+PHPFest2014 발표자료 - ElasticSearch를 이용한 통합검색 구축방법 - 김훈민XECon+PHPFest2014 발표자료 - ElasticSearch를 이용한 통합검색 구축방법 - 김훈민
XECon+PHPFest2014 발표자료 - ElasticSearch를 이용한 통합검색 구축방법 - 김훈민
 
Building Capacity for Innovation and Systems Change: Innovation Fellowship Pr...
Building Capacity for Innovation and Systems Change: Innovation Fellowship Pr...Building Capacity for Innovation and Systems Change: Innovation Fellowship Pr...
Building Capacity for Innovation and Systems Change: Innovation Fellowship Pr...
 
Reducing food waste by changing the way consumers interact with food
Reducing food waste by changing the way consumers interact with foodReducing food waste by changing the way consumers interact with food
Reducing food waste by changing the way consumers interact with food
 
Elastic Search (엘라스틱서치) 입문
Elastic Search (엘라스틱서치) 입문Elastic Search (엘라스틱서치) 입문
Elastic Search (엘라스틱서치) 입문
 
The Future of Quantified Self in Healthcare
The Future of Quantified Self in HealthcareThe Future of Quantified Self in Healthcare
The Future of Quantified Self in Healthcare
 
National Disaster Resilience Competition's Resilience Academies - Emerging In...
National Disaster Resilience Competition's Resilience Academies - Emerging In...National Disaster Resilience Competition's Resilience Academies - Emerging In...
National Disaster Resilience Competition's Resilience Academies - Emerging In...
 
Solr formation Sparna
Solr formation SparnaSolr formation Sparna
Solr formation Sparna
 
TEDx Manchester: AI & The Future of Work
TEDx Manchester: AI & The Future of WorkTEDx Manchester: AI & The Future of Work
TEDx Manchester: AI & The Future of Work
 

Semelhante a PROV-O Tutorial. DC-2013 Conference

Information sharing pipeline
Information sharing pipelineInformation sharing pipeline
Information sharing pipelineVioleta Ilik
 
Slidescambridge2012 120417062050-phpapp02
Slidescambridge2012 120417062050-phpapp02Slidescambridge2012 120417062050-phpapp02
Slidescambridge2012 120417062050-phpapp02Mimas
 
Capturing Conversations, Context and Curricula: The JLeRN Experiment and the ...
Capturing Conversations, Context and Curricula: The JLeRN Experiment and the ...Capturing Conversations, Context and Curricula: The JLeRN Experiment and the ...
Capturing Conversations, Context and Curricula: The JLeRN Experiment and the ...Sarah Currier
 
Serving Ireland's Geospatial Information as Linked Data
Serving Ireland's Geospatial Information as Linked DataServing Ireland's Geospatial Information as Linked Data
Serving Ireland's Geospatial Information as Linked DataChristophe Debruyne
 
Using e-infrastructures for biodiversity conservation - Gianpaolo Coro (CNR)
Using e-infrastructures for biodiversity conservation - Gianpaolo Coro (CNR)Using e-infrastructures for biodiversity conservation - Gianpaolo Coro (CNR)
Using e-infrastructures for biodiversity conservation - Gianpaolo Coro (CNR)Blue BRIDGE
 
Bridging Environmental Data Providers and SeaDataNet DIVA Service within a Co...
Bridging Environmental Data Providers and SeaDataNet DIVA Service within a Co...Bridging Environmental Data Providers and SeaDataNet DIVA Service within a Co...
Bridging Environmental Data Providers and SeaDataNet DIVA Service within a Co...Blue BRIDGE
 
Linked Energy Data Generation
Linked Energy Data GenerationLinked Energy Data Generation
Linked Energy Data GenerationFilip Radulovic
 
OpenAIRE and the case of Irish Repositories, by Jochen Schirrwagen (RIAN Work...
OpenAIRE and the case of Irish Repositories, by Jochen Schirrwagen (RIAN Work...OpenAIRE and the case of Irish Repositories, by Jochen Schirrwagen (RIAN Work...
OpenAIRE and the case of Irish Repositories, by Jochen Schirrwagen (RIAN Work...OpenAIRE
 
OpenAIRE and the Case of Irish Repositories
OpenAIRE and the Case of Irish RepositoriesOpenAIRE and the Case of Irish Repositories
OpenAIRE and the Case of Irish RepositoriesRIANIreland
 
Making Repository Easier With SWORD
Making Repository Easier With SWORDMaking Repository Easier With SWORD
Making Repository Easier With SWORDAdrian Stevenson
 
VREs and Research Tools - supporting collaborative research
VREs and Research Tools - supporting collaborative researchVREs and Research Tools - supporting collaborative research
VREs and Research Tools - supporting collaborative researchChristopher Brown
 
Developing Infrastructure to Support Closer Collaboration of Aggregators with...
Developing Infrastructure to Support Closer Collaboration of Aggregators with...Developing Infrastructure to Support Closer Collaboration of Aggregators with...
Developing Infrastructure to Support Closer Collaboration of Aggregators with...Nancy Pontika
 
Bridging the gap between researchers and research data management
Bridging the gap between researchers and research data management   Bridging the gap between researchers and research data management
Bridging the gap between researchers and research data management Marieke Guy
 
Open for Business - Open Archives, OpenURL, RSS and the Dublin Core
Open for Business - Open Archives, OpenURL, RSS and the Dublin CoreOpen for Business - Open Archives, OpenURL, RSS and the Dublin Core
Open for Business - Open Archives, OpenURL, RSS and the Dublin CoreAndy Powell
 
OpenAIRE: Science. Set Free, Iryna Kuchma, EIFL
OpenAIRE: Science. Set Free, Iryna Kuchma, EIFLOpenAIRE: Science. Set Free, Iryna Kuchma, EIFL
OpenAIRE: Science. Set Free, Iryna Kuchma, EIFLPlatforma Otwartej Nauki
 
OpenAIRE services and tools - presentation at #DI4R2016
OpenAIRE services and tools - presentation at #DI4R2016OpenAIRE services and tools - presentation at #DI4R2016
OpenAIRE services and tools - presentation at #DI4R2016OpenAIRE
 
OpenAIRE Open Innovation call: Next Generation Repositories
OpenAIRE Open Innovation call: Next Generation RepositoriesOpenAIRE Open Innovation call: Next Generation Repositories
OpenAIRE Open Innovation call: Next Generation RepositoriesOpenAIRE
 

Semelhante a PROV-O Tutorial. DC-2013 Conference (20)

Information sharing pipeline
Information sharing pipelineInformation sharing pipeline
Information sharing pipeline
 
Slidescambridge2012 120417062050-phpapp02
Slidescambridge2012 120417062050-phpapp02Slidescambridge2012 120417062050-phpapp02
Slidescambridge2012 120417062050-phpapp02
 
Capturing Conversations, Context and Curricula: The JLeRN Experiment and the ...
Capturing Conversations, Context and Curricula: The JLeRN Experiment and the ...Capturing Conversations, Context and Curricula: The JLeRN Experiment and the ...
Capturing Conversations, Context and Curricula: The JLeRN Experiment and the ...
 
Serving Ireland's Geospatial Information as Linked Data
Serving Ireland's Geospatial Information as Linked DataServing Ireland's Geospatial Information as Linked Data
Serving Ireland's Geospatial Information as Linked Data
 
Using e-infrastructures for biodiversity conservation - Gianpaolo Coro (CNR)
Using e-infrastructures for biodiversity conservation - Gianpaolo Coro (CNR)Using e-infrastructures for biodiversity conservation - Gianpaolo Coro (CNR)
Using e-infrastructures for biodiversity conservation - Gianpaolo Coro (CNR)
 
Bridging Environmental Data Providers and SeaDataNet DIVA Service within a Co...
Bridging Environmental Data Providers and SeaDataNet DIVA Service within a Co...Bridging Environmental Data Providers and SeaDataNet DIVA Service within a Co...
Bridging Environmental Data Providers and SeaDataNet DIVA Service within a Co...
 
Linked Energy Data Generation
Linked Energy Data GenerationLinked Energy Data Generation
Linked Energy Data Generation
 
Scholze liber 2015-06-25_final
Scholze liber 2015-06-25_finalScholze liber 2015-06-25_final
Scholze liber 2015-06-25_final
 
OpenAIRE and the case of Irish Repositories, by Jochen Schirrwagen (RIAN Work...
OpenAIRE and the case of Irish Repositories, by Jochen Schirrwagen (RIAN Work...OpenAIRE and the case of Irish Repositories, by Jochen Schirrwagen (RIAN Work...
OpenAIRE and the case of Irish Repositories, by Jochen Schirrwagen (RIAN Work...
 
OpenAIRE and the Case of Irish Repositories
OpenAIRE and the Case of Irish RepositoriesOpenAIRE and the Case of Irish Repositories
OpenAIRE and the Case of Irish Repositories
 
Making Repository Easier With SWORD
Making Repository Easier With SWORDMaking Repository Easier With SWORD
Making Repository Easier With SWORD
 
VREs and Research Tools - supporting collaborative research
VREs and Research Tools - supporting collaborative researchVREs and Research Tools - supporting collaborative research
VREs and Research Tools - supporting collaborative research
 
Developing Infrastructure to Support Closer Collaboration of Aggregators with...
Developing Infrastructure to Support Closer Collaboration of Aggregators with...Developing Infrastructure to Support Closer Collaboration of Aggregators with...
Developing Infrastructure to Support Closer Collaboration of Aggregators with...
 
Bridging the gap between researchers and research data management
Bridging the gap between researchers and research data management   Bridging the gap between researchers and research data management
Bridging the gap between researchers and research data management
 
Metadata for Interoperable Bioscience
Metadata for Interoperable BioscienceMetadata for Interoperable Bioscience
Metadata for Interoperable Bioscience
 
Open for Business - Open Archives, OpenURL, RSS and the Dublin Core
Open for Business - Open Archives, OpenURL, RSS and the Dublin CoreOpen for Business - Open Archives, OpenURL, RSS and the Dublin Core
Open for Business - Open Archives, OpenURL, RSS and the Dublin Core
 
OpenAIRE: Science. Set Free, Iryna Kuchma, EIFL
OpenAIRE: Science. Set Free, Iryna Kuchma, EIFLOpenAIRE: Science. Set Free, Iryna Kuchma, EIFL
OpenAIRE: Science. Set Free, Iryna Kuchma, EIFL
 
OpenAIRE services and tools - presentation at #DI4R2016
OpenAIRE services and tools - presentation at #DI4R2016OpenAIRE services and tools - presentation at #DI4R2016
OpenAIRE services and tools - presentation at #DI4R2016
 
Open Annotation Model
Open Annotation ModelOpen Annotation Model
Open Annotation Model
 
OpenAIRE Open Innovation call: Next Generation Repositories
OpenAIRE Open Innovation call: Next Generation RepositoriesOpenAIRE Open Innovation call: Next Generation Repositories
OpenAIRE Open Innovation call: Next Generation Repositories
 

Mais de dgarijo

FOOPS!: An Ontology Pitfall Scanner for the FAIR principles
FOOPS!: An Ontology Pitfall Scanner for the FAIR principlesFOOPS!: An Ontology Pitfall Scanner for the FAIR principles
FOOPS!: An Ontology Pitfall Scanner for the FAIR principlesdgarijo
 
FAIR Workflows: A step closer to the Scientific Paper of the Future
FAIR Workflows: A step closer to the Scientific Paper of the FutureFAIR Workflows: A step closer to the Scientific Paper of the Future
FAIR Workflows: A step closer to the Scientific Paper of the Futuredgarijo
 
Towards Reusable Research Software
Towards Reusable Research SoftwareTowards Reusable Research Software
Towards Reusable Research Softwaredgarijo
 
SOMEF: a metadata extraction framework from software documentation
SOMEF: a metadata extraction framework from software documentationSOMEF: a metadata extraction framework from software documentation
SOMEF: a metadata extraction framework from software documentationdgarijo
 
A Template-Based Approach for Annotating Long-Tailed Datasets
A Template-Based Approach for Annotating Long-Tailed DatasetsA Template-Based Approach for Annotating Long-Tailed Datasets
A Template-Based Approach for Annotating Long-Tailed Datasetsdgarijo
 
OBA: An Ontology-Based Framework for Creating REST APIs for Knowledge Graphs
OBA: An Ontology-Based Framework for Creating REST APIs for Knowledge GraphsOBA: An Ontology-Based Framework for Creating REST APIs for Knowledge Graphs
OBA: An Ontology-Based Framework for Creating REST APIs for Knowledge Graphsdgarijo
 
Towards Knowledge Graphs of Reusable Research Software Metadata
Towards Knowledge Graphs of Reusable Research Software MetadataTowards Knowledge Graphs of Reusable Research Software Metadata
Towards Knowledge Graphs of Reusable Research Software Metadatadgarijo
 
Scientific Software Registry Collaboration Workshop: From Software Metadata r...
Scientific Software Registry Collaboration Workshop: From Software Metadata r...Scientific Software Registry Collaboration Workshop: From Software Metadata r...
Scientific Software Registry Collaboration Workshop: From Software Metadata r...dgarijo
 
WDPlus: Leveraging Wikidata to Link and Extend Tabular Data
WDPlus: Leveraging Wikidata to Link and Extend Tabular DataWDPlus: Leveraging Wikidata to Link and Extend Tabular Data
WDPlus: Leveraging Wikidata to Link and Extend Tabular Datadgarijo
 
OKG-Soft: An Open Knowledge Graph With Mathine Readable Scientific Software M...
OKG-Soft: An Open Knowledge Graph With Mathine Readable Scientific Software M...OKG-Soft: An Open Knowledge Graph With Mathine Readable Scientific Software M...
OKG-Soft: An Open Knowledge Graph With Mathine Readable Scientific Software M...dgarijo
 
Towards Human-Guided Machine Learning - IUI 2019
Towards Human-Guided Machine Learning - IUI 2019Towards Human-Guided Machine Learning - IUI 2019
Towards Human-Guided Machine Learning - IUI 2019dgarijo
 
Capturing Context in Scientific Experiments: Towards Computer-Driven Science
Capturing Context in Scientific Experiments: Towards Computer-Driven ScienceCapturing Context in Scientific Experiments: Towards Computer-Driven Science
Capturing Context in Scientific Experiments: Towards Computer-Driven Sciencedgarijo
 
A Controlled Crowdsourcing Approach for Practical Ontology Extensions and Met...
A Controlled Crowdsourcing Approach for Practical Ontology Extensions and Met...A Controlled Crowdsourcing Approach for Practical Ontology Extensions and Met...
A Controlled Crowdsourcing Approach for Practical Ontology Extensions and Met...dgarijo
 
WIDOCO: A Wizard for Documenting Ontologies
WIDOCO: A Wizard for Documenting OntologiesWIDOCO: A Wizard for Documenting Ontologies
WIDOCO: A Wizard for Documenting Ontologiesdgarijo
 
Towards Automating Data Narratives
Towards Automating Data NarrativesTowards Automating Data Narratives
Towards Automating Data Narrativesdgarijo
 
Automated Hypothesis Testing with Large Scale Scientific Workflows
Automated Hypothesis Testing with Large Scale Scientific WorkflowsAutomated Hypothesis Testing with Large Scale Scientific Workflows
Automated Hypothesis Testing with Large Scale Scientific Workflowsdgarijo
 
OntoSoft: A Distributed Semantic Registry for Scientific Software
OntoSoft: A Distributed Semantic Registry for Scientific SoftwareOntoSoft: A Distributed Semantic Registry for Scientific Software
OntoSoft: A Distributed Semantic Registry for Scientific Softwaredgarijo
 
OEG tools for supporting Ontology Engineering
OEG tools for supporting Ontology EngineeringOEG tools for supporting Ontology Engineering
OEG tools for supporting Ontology Engineeringdgarijo
 
Software Metadata: Describing "dark software" in GeoSciences
Software Metadata: Describing "dark software" in GeoSciencesSoftware Metadata: Describing "dark software" in GeoSciences
Software Metadata: Describing "dark software" in GeoSciencesdgarijo
 
Reproducibility Using Semantics: An Overview
Reproducibility Using Semantics: An OverviewReproducibility Using Semantics: An Overview
Reproducibility Using Semantics: An Overviewdgarijo
 

Mais de dgarijo (20)

FOOPS!: An Ontology Pitfall Scanner for the FAIR principles
FOOPS!: An Ontology Pitfall Scanner for the FAIR principlesFOOPS!: An Ontology Pitfall Scanner for the FAIR principles
FOOPS!: An Ontology Pitfall Scanner for the FAIR principles
 
FAIR Workflows: A step closer to the Scientific Paper of the Future
FAIR Workflows: A step closer to the Scientific Paper of the FutureFAIR Workflows: A step closer to the Scientific Paper of the Future
FAIR Workflows: A step closer to the Scientific Paper of the Future
 
Towards Reusable Research Software
Towards Reusable Research SoftwareTowards Reusable Research Software
Towards Reusable Research Software
 
SOMEF: a metadata extraction framework from software documentation
SOMEF: a metadata extraction framework from software documentationSOMEF: a metadata extraction framework from software documentation
SOMEF: a metadata extraction framework from software documentation
 
A Template-Based Approach for Annotating Long-Tailed Datasets
A Template-Based Approach for Annotating Long-Tailed DatasetsA Template-Based Approach for Annotating Long-Tailed Datasets
A Template-Based Approach for Annotating Long-Tailed Datasets
 
OBA: An Ontology-Based Framework for Creating REST APIs for Knowledge Graphs
OBA: An Ontology-Based Framework for Creating REST APIs for Knowledge GraphsOBA: An Ontology-Based Framework for Creating REST APIs for Knowledge Graphs
OBA: An Ontology-Based Framework for Creating REST APIs for Knowledge Graphs
 
Towards Knowledge Graphs of Reusable Research Software Metadata
Towards Knowledge Graphs of Reusable Research Software MetadataTowards Knowledge Graphs of Reusable Research Software Metadata
Towards Knowledge Graphs of Reusable Research Software Metadata
 
Scientific Software Registry Collaboration Workshop: From Software Metadata r...
Scientific Software Registry Collaboration Workshop: From Software Metadata r...Scientific Software Registry Collaboration Workshop: From Software Metadata r...
Scientific Software Registry Collaboration Workshop: From Software Metadata r...
 
WDPlus: Leveraging Wikidata to Link and Extend Tabular Data
WDPlus: Leveraging Wikidata to Link and Extend Tabular DataWDPlus: Leveraging Wikidata to Link and Extend Tabular Data
WDPlus: Leveraging Wikidata to Link and Extend Tabular Data
 
OKG-Soft: An Open Knowledge Graph With Mathine Readable Scientific Software M...
OKG-Soft: An Open Knowledge Graph With Mathine Readable Scientific Software M...OKG-Soft: An Open Knowledge Graph With Mathine Readable Scientific Software M...
OKG-Soft: An Open Knowledge Graph With Mathine Readable Scientific Software M...
 
Towards Human-Guided Machine Learning - IUI 2019
Towards Human-Guided Machine Learning - IUI 2019Towards Human-Guided Machine Learning - IUI 2019
Towards Human-Guided Machine Learning - IUI 2019
 
Capturing Context in Scientific Experiments: Towards Computer-Driven Science
Capturing Context in Scientific Experiments: Towards Computer-Driven ScienceCapturing Context in Scientific Experiments: Towards Computer-Driven Science
Capturing Context in Scientific Experiments: Towards Computer-Driven Science
 
A Controlled Crowdsourcing Approach for Practical Ontology Extensions and Met...
A Controlled Crowdsourcing Approach for Practical Ontology Extensions and Met...A Controlled Crowdsourcing Approach for Practical Ontology Extensions and Met...
A Controlled Crowdsourcing Approach for Practical Ontology Extensions and Met...
 
WIDOCO: A Wizard for Documenting Ontologies
WIDOCO: A Wizard for Documenting OntologiesWIDOCO: A Wizard for Documenting Ontologies
WIDOCO: A Wizard for Documenting Ontologies
 
Towards Automating Data Narratives
Towards Automating Data NarrativesTowards Automating Data Narratives
Towards Automating Data Narratives
 
Automated Hypothesis Testing with Large Scale Scientific Workflows
Automated Hypothesis Testing with Large Scale Scientific WorkflowsAutomated Hypothesis Testing with Large Scale Scientific Workflows
Automated Hypothesis Testing with Large Scale Scientific Workflows
 
OntoSoft: A Distributed Semantic Registry for Scientific Software
OntoSoft: A Distributed Semantic Registry for Scientific SoftwareOntoSoft: A Distributed Semantic Registry for Scientific Software
OntoSoft: A Distributed Semantic Registry for Scientific Software
 
OEG tools for supporting Ontology Engineering
OEG tools for supporting Ontology EngineeringOEG tools for supporting Ontology Engineering
OEG tools for supporting Ontology Engineering
 
Software Metadata: Describing "dark software" in GeoSciences
Software Metadata: Describing "dark software" in GeoSciencesSoftware Metadata: Describing "dark software" in GeoSciences
Software Metadata: Describing "dark software" in GeoSciences
 
Reproducibility Using Semantics: An Overview
Reproducibility Using Semantics: An OverviewReproducibility Using Semantics: An Overview
Reproducibility Using Semantics: An Overview
 

Último

"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 

Último (20)

"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 

PROV-O Tutorial. DC-2013 Conference

  • 1. Date: 01/09/2013 PROV-O: The PROV Ontology Tutorial Daniel Garijo Ontology Engineering Group Universidad Politécnica de Madrid (with Slides from Luc Moreau, Ivan Herman, Paul Groth and Timothy Lebo)
  • 2. About me Daniel Garijo PhD student at the Ontology Engineering Group Universidad Politécnica de Madrid (http://delicias.dia.fi.upm.es/members/dgarijo/) Member of: W3C Provenance Incubator Group W3C Provenance Working Group DCMI Metadata Provenance Task Group DC-2013, Lisbon, Portugal 2 Download this presentation here: http://www.slideshare.net/dgarijo/provo-tutorial-dc2013-conference
  • 3. Agenda Plan for the afternoon • Introduction: The Provenance Working Group • From DC to PROV: An example • PROV-O: An Overview • PROV-O part 1 • Coffee Break • PROV-O part 2 • Mapping PROV-O to Dublin Core DC-2013, Lisbon, Portugal 3
  • 4. Introduction Introduction: The Provenance Working Group DC-2013, Lisbon, Portugal 4
  • 5. The Provenance Working Group: Goals •We aim to express how data has evolved: •Who played a role when creating the data?. •Who owned the data?. •Who contributed to the data?. •How data was modified from its first revision?. •How other data affected the current data?. •Which tools where used to generate each version of the data? •etc. DC-2013, Lisbon, Portugal Image from : http://www.psmag.com/science/the-background-on-your-bytes-40220/5
  • 6. The Provenance Working Group: Goals (2) DC-2013, Lisbon, Portugal • Requires a complete model describing the various constituents (actors, revisions, etc.) • The model should be usable with RDF to be used on the Semantic Web • Has to find a balance between provenance granularities – simple (“scruffy”) provenance: easily usable. – complex (“complete”) provenance: allows for a detailed reporting of origins, versions, etc. …but it is not that easy! 6
  • 7. Scruffy provenance vs complete provenance: an example DC-2013, Lisbon, Portugal Example: Editing a blog post Scruffy provenance Complete provenance myBlogPost :editingPost :Daniel myBlogPost myBlogPostv1 myBlogPostv2 :Daniel createdBy, modifiedBy createdBy used wasGeneratedBy versionOf versionOfcreatedBy 7 createdBy, modifiedBy
  • 8. The Provenance Working Group: Motivation DC-2013, Lisbon, Portugal Applications of provenance • Art – Ownership of pieces of art • Open Information Systems – origin of the data, who was responsible for its creation • Science applications – how the results of a publication were obtained (scientific workflows) • News – origins and references of blogs, news items • Law – licensing attribution of documents, data – privacy information • Etc. 8
  • 9. The Provenance Working Group: Definition of Provenance DC-2013, Lisbon, Portugal • “Provenance is defined as a record that describes the people, institutions, entities, and activities involved in producing, influencing, or delivering a piece of data or a thing”. W3C Provenance Incubator Group • “Provenance assertions are a form of contextual metadata and can themselves become important records with their own provenance.” 9
  • 10. The Provenance Working Group: Definition of Provenance (2) DC-2013, Lisbon, Portugal • Provenance is Metadata, but not all metadata is provenance: • The title or format of a book is metadata, but it is not part of its provenance. • The date of creation, the author, the publisher or the license of a book are part of its provenance. 10
  • 11. Provenance is not a new subject ! DC-2013, Lisbon, Portugal • A lot of work has been done in – Workflow management systems • Reproducibility, repeatability and attribution – Databases • Who modified a record? How? – knowledge representation • How was an entity affected? – information retrieval • Who is responsible for this information? 11
  • 12. VoID Provenance is not a new subject! DC-2013, Lisbon, Portugal • Communities and vocabularies are already in use: – Dublin Core (Documents and resources) – Open Provenance Model (OPM) and extensions – Provenir ontology (Sensor networks) – Provenance vocabulary (Linked Data) – SWAN provenance ontology (Neuromedicine resources) – SIOC (Online blogs and forums) – VOID (Datasets) – etc. … 12
  • 13. How do we interchange provenance? DC-2013, Lisbon, Portugal • The existing models track provenance at different granularities in different domains. – How do we make the provenance descriptions interchangeable? – How do we integrate these heterogeneous provenance data? 13
  • 14. The W3C’s Provenance Incubator Group DC-2013, Lisbon, Portugal • Worked in 2009-2010 (Chaired by Yolanda Gil) • Issued a final report – “Provenance XG Final Report” • http://www.w3.org/2005/Incubator/prov/XGR-prov/ – provides an overview of the various existing approaches and vocabularies – proposes the creation of a dedicated W3C Working Group • A set of terms is recommended for initial discussion 14
  • 15. The W3C’s Provenance Incubator Group (2) DC-2013, Lisbon, Portugal • Introduces requirements for the provenance in the web: http://www.w3.org/2005/Incubator/prov/wiki/User_Require ments • Maps different existing vocabulary approaches to OPM: http://www.w3.org/2005/Incubator/prov/wiki/Provenance_V ocabulary_Mappings • Defines three common use case scenarios for provenance – News Aggregator – Disease Outbreak – Business Contract 15
  • 16. The W3C’s Provenance Working Group DC-2013, Lisbon, Portugal • Set up in April 2011 – (co-chaired by Paul Groth and Luc Moreau) • Goal is to define a standard way to interchange provenance on the web. • Focused on the Semantic Web. 16
  • 17. Participants DC-2013, Lisbon, Portugal • Pacific Northwest National Laboratory • Rensselaer Polytechnic Institute • Revelytix, Inc • Newcastle University • The National Archives • TopQuadrant • Universidad Politécnica de Madrid • University of Aberdeen • University of Edinburgh • University of Manchester • University of Oxford • University of Southampton • VU University Amsterdam • Wright State University • DERI Galway • European Broadcasting Union • FORTH • Financial Services Technology Consortium • DFKI • IBBT • IBM • Library of Congress • Mayo Clinic • NASA • OCLC • Open Geospatial Consortium • OpenLink Software • Oracle 17 + Invited Experts
  • 18. Documents published by the group DC-2013, Lisbon, Portugal • Main documents: – PROV Overview (http://www.w3.org/TR/prov-overview/) – PROV Primer (http://www.w3.org/TR/prov-primer/) – PROV Data Model(*) (http://www.w3.org/TR/prov-dm/) – PROV Constraints(*) (http://www.w3.org/TR/prov-constraints/) – PROV Semantics (http://www.w3.org/TR/prov-sem/) – PROV Notation(*) (http://www.w3.org/TR/prov-n/) – PROV Ontology(*) (http://www.w3.org/TR/prov-o/) – PROV XML Serialization (http://www.w3.org/TR/prov-xml/) – PROV Access and Query (http://www.w3.org/TR/prov-aq/) – PROV DC Mapping (http://www.w3.org/TR/prov-dc/) – PROV Links (http://www.w3.org/TR/prov-links/) – PROV Dictionary (http://www.w3.org/TR/prov-dictionary/) – PROV Implementations (http://www.w3.org/TR/prov-implementations/) (*)Rec-track documents 18
  • 19. PROV is not just a model DC-2013, Lisbon, Portugal Model Serializations Extensions 19 • Main documents: – PROV Overview (http://www.w3.org/TR/prov-overview/) – PROV Primer (http://www.w3.org/TR/prov-primer/) – PROV Data Model(*) (http://www.w3.org/TR/prov-dm/) – PROV Constraints(*) (http://www.w3.org/TR/prov-constraints/) – PROV Semantics (http://www.w3.org/TR/prov-sem/) – PROV Notation(*) (http://www.w3.org/TR/prov-n/) – PROV Ontology(*) (http://www.w3.org/TR/prov-o/) – PROV XML Serialization (http://www.w3.org/TR/prov-xml/) – PROV Access and Query (http://www.w3.org/TR/prov-aq/) – PROV DC Mapping (http://www.w3.org/TR/prov-dc/) – PROV Links (http://www.w3.org/TR/prov-links/) – PROV Dictionary (http://www.w3.org/TR/prov-dictionary/) – PROV Implementations (http://www.w3.org/TR/prov-implementations/) (*)Rec-track documents
  • 20. • Main documents: – PROV Overview (http://www.w3.org/TR/prov-overview/) – PROV Primer (http://www.w3.org/TR/prov-primer/) – PROV Data Model(*) (http://www.w3.org/TR/prov-dm/) – PROV Constraints(*) (http://www.w3.org/TR/prov-constraints/) – PROV Semantics (http://www.w3.org/TR/prov-sem/) – PROV Notation(*) (http://www.w3.org/TR/prov-n/) – PROV Ontology(*) (http://www.w3.org/TR/prov-o/) – PROV XML Serialization (http://www.w3.org/TR/prov-xml/) – PROV Access and Query (http://www.w3.org/TR/prov-aq/) – PROV DC Mapping (http://www.w3.org/TR/prov-dc/) – PROV Links (http://www.w3.org/TR/prov-links/) – PROV Dictionary (http://www.w3.org/TR/prov-dictionary/) – PROV Implementations (http://www.w3.org/TR/prov-implementations/) (*)Rec-track documents PROV and types of users DC-2013, Lisbon, Portugal Users Advanced 20 Developers
  • 22. Working Group Status DC-2013, Lisbon, Portugal • The Rec Track documents have been released as CR (candidate recommendations) • Group has finished: – Official Wiki (frozen): http://www.w3.org/2011/prov/wiki/Main_Page – Active Semantic Wiki: http://www.w3.org/2001/sw/wiki/PROV – FAQ: http://www.w3.org/2001/sw/wiki/PROV-FAQ 22
  • 23. Introduction From Dublin Core to PROV-O An example K-CAP 2013. Banff, Canada 23
  • 24. Example DC-2013, Lisbon, Portugal • This presentation – Created by Daniel. – Kai contributed with feedback. – Used previous tutorials as references. – Refinement of previous presentation draft. draft 24
  • 25. The example using Dublin Core Terms DC-2013, Lisbon, Portugal :dcProvTutorial a foaf:Document; dct:title “PROV-O Tutorial" ; dct:creator :daniel ; dct:contributor :kai; dct:created "2013-08-25" ; dct:replaces :tutorialDraft; dct:references :iswcProvTutorial, :iswcProvIntro. :kai a dct:Agent. :daniel a dct:Agent. :tutorialDraft a foaf:Document; dct:creator :daniel. :iswcProvTutorial a foaf:Document; ... 25
  • 26. Graphical representation DC-2013, Lisbon, Portugal dct:creator :dcProvTutorial :daniel “2013-02-28” dct:created :tutorialDraft dct:replaces :kai dct:contributor :iswcProvTutorial :iswcProvIntro dct:references dct:references 26
  • 27. PROV-O: A very simple attribution DC-2013, Lisbon, Portugal :dcProvTutorial :daniel dct:creator 27
  • 28. PROV-O: A very simple attribution (2) DC-2013, Lisbon, Portugal :dcProvTutorial :daniel dct:creator prov:Agent prov:Entity prov:wasAttributedTo 28
  • 29. PROV-O: Making the activity explicit DC-2013, Lisbon, Portugal :dcProvTutorial :daniel dct:creator prov:Agent prov:Entity prov:wasAttributedTo :makingTheTutorial prov:wasAssociatedWith prov:wasGeneratedBy prov:Activity 29
  • 30. PROV-O: Adding metadata of the activity DC-2013, Lisbon, Portugal :dcProvTutorial :daniel dct:creator prov:Agent prov:Entity prov:wasAttributedTo :makingTheTutorial prov:wasAssociatedWith prov:wasGeneratedBy prov:Activity “2013-08-1"” “2013-08-25"” prov:startedAtTime prov:endedAtTime dct:created 30
  • 31. PROV-O: Adding metadata of the activity DC-2013, Lisbon, Portugal :dcProvTutorial :daniel dct:creator prov:Agent prov:Entity prov:wasAttributedTo :makingTheTutorial prov:wasAssociatedWith prov:wasGeneratedBy prov:Activity “2013-08-1"” “2013-08-25"” prov:startedAtTime prov:endedAtTime dct:created :kai :tutorialDraft prov:wasAssociatedWith prov:used dct:contributor dct:replaces 31
  • 32. PROV-O: Basics DC-2013, Lisbon, Portugal • This example shows the fundamental notions of PROV-O – Entity : • the resources whose provenance we want to describe – Activity: • describes how entities are created and how they changed. – Agent: • responsible for the actions affecting entities. – Usage, generation, derivation, attribution,.. • connections describing how entities, agents, and activities interact. 32
  • 33. Making the example a little more complex DC-2013, Lisbon, Portugal • A couple of things are still missing in the example: – The creation process of the draft of the tutorial. – The tutorial is a revision of the draft (a second version). – The creation process of the referenced tutorials – … 33
  • 34. PROV-O: Making the example a little more complex (2) DC-2013, Lisbon, Portugal :dcProvTutorial:daniel dct:creator prov:Agent prov:Entity prov:wasAttributedTo :makingTheTutorial prov:wasAssociatedWith prov:wasGeneratedBy prov:Activity :kai :tutorialDraft prov:wasAssociatedWith prov:used :makingTheDraftprov:wasGeneratedBy prov:wasAssociatedWith prov:wasRevisionOf :iswcProvTutorial :iswcProvIntro prov:used prov:used prov:wasDerivedFrom prov:wasDerivedFrom 34
  • 36. Categories of PROV terms DC-2013, Lisbon, Portugal • Starting Point classes and properties: the basics. • Expanded classes and properties: additional terms around the starting point terms for richer descriptions. • Qualified classes and properties: for advanced provenance descriptions. 36
  • 37. Categories of PROV terms: Starting points DC-2013, Lisbon, Portugal 37
  • 38. Categories of PROV terms: Expanded classes DC-2013, Lisbon, Portugal • Some common specific types of agents: – Organization, Person, SoftwareAgent. • Extra properties for describing versioning, influencing, invalidation, creation of entities, etc. • Extension of the Starting points to cover generic necessities in many use cases. – If needed, applications may further extend this terms to their domain specific needs. 38
  • 39. Categories of PROV terms: Starting points DC-2013, Lisbon, Portugal 39
  • 40. Categories of PROV terms: Qualified classes DC-2013, Lisbon, Portugal • Sometimes we need to further describe the properties we have used: – At what time was a particular resource used? – What is the role of an agent in an association? – Where was an entity generated? – … • Qualified classes provide the means for enabling such descriptions. – Turn relationships into classes 40
  • 41. Introduction PROV-O: The PROV Ontology Part 1 DC-2013, Lisbon, Portugal 42
  • 42. PROV-O <http://www.w3.org/ns/prov#> A lightweight OWL ontology for interchanging provenance information – “Simple” – Domain neutral – Meant to be extended – Encodes PROV-DM’s “abstract model” in RDF – There are alternate encodings for XML, etc. DC-2013, Lisbon, Portugal 43
  • 43. How to access PROV-O? Final W3C recommendation: http://www.w3.org/TR/prov-o/ PROV in LOV: http://lov.okfn.org/dataset/lov/details/vocabulary_prov.html Content negotiation is enabled: Turtle curl -sH "Accept: text/turtle" -L http://www.w3.org/ns/prov RDF/XML curl -sH "Accept: application/rdf+xml" -L http://www.w3.org/ns/prov XSD curl -sH "Accept: application/xml" -L http://www.w3.org/ns/prov DC-2013, Lisbon, Portugal 44
  • 44. Prefixes • @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . • @prefix xsd: <http://www.w3.org/2001/XMLSchema#> . • @prefix owl: <http://www.w3.org/2002/07/owl#> . • @prefix dct: <http://purl.org/dc/terms/> . • @prefix prov: <http://www.w3.org/ns/prov#> . • @prefix : <http://example.com/> . When in doubt, prefix.cc.” (http://prefix.cc/prov) DC-2013, Lisbon, Portugal 45
  • 45. PROV-O at a glance •Starting point terms (“Simple”) •The basics for the rest of the ontology. • 3 classes + 9 properties •Simple binary relationships •Expanded terms (“Advanced”) •7 classes + 18 properties •Extension of the starting point terms •Qualifying relationships (“Complex”) •Elaborate of the 14 Starting and expanded relationships DC-2013, Lisbon, Portugal Agent ActivityEntity 46
  • 46. PROV-O: Starting Points DC-2013, Lisbon, Portugal 47
  • 47. Starting Points: Entities DC-2013, Lisbon, Portugal “An entity is a physical, digital, conceptual, or other kind of thing with some fixed aspects; entities may be real or imaginary”. 48 •Entities Anything that we want to describe: •A document. •A part of a document. •An idea. •A rumor. •A product. •A contract. •A news article. •A result. •Etc. Entity
  • 48. Starting Points: Activities DC-2013, Lisbon, Portugal •Activities are any processes that used or generated entities: •Computing a result. •Making a request. •Writing a book. •Giving a presentation. •Creation of car. •Etc. •Activities are NOT entities. Activity 49 “An activity is something that occurs over a period of time and acts upon or with entities; it may include consuming, processing, transforming, modifying, relocating, using, or generating entities”.
  • 49. Starting Points: Agents DC-2013, Lisbon, Portugal “An agent is something that bears some form of responsibility for an activity taking place, for the existence of an entity, or for another agent's activity”. •Agents receive attribution for entities and are responsible for activities: •Creator of a document. •Web service accepting requests. •Tool or managing system. •An organization. •The student acting on behalf of the organization. •Etc. •Agents can be entities. Agent 50
  • 50. Starting Points: Full example •Music example •2 bloggers write posts about song tracks by Led Zeppelin and Frank Zappa. We know, thanks to the Music Ontology, that •Tracks are publications of Signals. •Signals are produced by recordings. •Recordings are made from sounds, which are realizations of a Musical Work during a musical Performance. •At a given point both bloggers claim their respective groups to be the authors of two songs, “A stairway to heaven”. •Are they referring to the same work? Which one is right? DC-2013, Lisbon, Portugal 51
  • 51. Full example: How would you do it? DC-2013, Lisbon, Portugal Blog post 1 http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg Fan 1 Fan 2 SignalZappa SignalLed Recording1841 Recording999 Blog post 2 52 SoundLedSoundZappa Performance in 1971 Towson- March1988 Stair way to heaven (MusicalWork) LedZeppelinTrack FrankZappa Track
  • 52. Full example: How would you do it? DC-2013, Lisbon, Portugal Blog post 1 http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg Fan 1 Fan 2 SignalA SignalB Recording1841 Recording999 Blog post 2 53 SoundASoundB Performance in 1971 Towson- March1988 Stair way to heaven (MusicalWork) LedZeppelinTrack FrankZappa Track Entity Entity Entity Entity Entity SignalZappa SignalLed SoundLedSoundZappa Entity Entity Entity Entity
  • 53. Full example: How would you do it? DC-2013, Lisbon, Portugal Blog post 1 http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg Fan 1 Fan 2 SignalA SignalB Recording1841 Recording999 Blog post 2 54 SoundASoundB Performance in 1971 Towson- March1988 Stair way to heaven (MusicalWork) LedZeppelinTrack FrankZappa Track Entity Entity Entity Entity Agent Agent AgentAgent Entity SignalZappa SignalLed SoundLedSoundZappa Entity Entity Entity Entity
  • 54. Full example: How would you do it? DC-2013, Lisbon, Portugal Blog post 1 http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg Fan 1 Fan 2 SignalA SignalB Recording1841 Recording999 Blog post 2 55 SoundASoundB Performance in 1971 Towson- March1988 Stair way to heaven (MusicalWork) LedZeppelinTrack FrankZappa Track Entity Entity Entity Entity Agent Agent AgentAgent Activity Activity Activity Entity SignalZappa SignalLed SoundLedSoundZappa Entity Entity Entity Activity Entity
  • 55. Starting Points: Class View DC-2013, Lisbon, Portugal 56
  • 56. Starting Points: Class View DC-2013, Lisbon, Portugal Agent AgentAgent Agent 57
  • 57. Starting Points: Grid View DC-2013, Lisbon, Portugal Agent Agent 58
  • 58. Starting Points: Usage DC-2013, Lisbon, Portugal •Usage is crucial for describing the entities which participated in an activity: •The references used for creating a document. •The query used to obtain a result. •The inputs of a computational process. •Etc. Activity Entity prov:used 59 “Usageis the beginning of utilizing an entity by an activity. Before usage, the activity had not begun to utilize this entity and could not have been affected by the entity”.
  • 59. Full example: Usage •Music example •2 bloggers write posts about song tracks by Led Zeppelin and Frank Zappa. We know, thanks to the Music Ontology, that •Tracks are publications of Signals. •Signals are produced by recordings. •Recordings are made from sounds, which are realizations of a Musical Work during a musical Performance. DC-2013, Lisbon, Portugal 60
  • 60. Full example: Usage DC-2013, Lisbon, Portugal Blog post 1 http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg Fan 1 Fan 2 SignalA SignalB Recording1841 Recording999 Blog post 2 61 SoundASoundB Performance in 1971 Towson- March1988 Stair way to heaven (MusicalWork) LedZeppelinTrack FrankZappa Track SignalZappa SignalLed SoundLedSoundZappa
  • 61. Full example: Usage DC-2013, Lisbon, Portugal Blog post 1 http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg Fan 1 Fan 2 SignalA SignalB Recording1841 Recording999 Blog post 2 62 SoundASoundB Performance in 1971 Towson- March1988 Stair way to heaven (MusicalWork) LedZeppelinTrack FrankZappa Track prov:used prov:used prov:used prov:used SignalZappa SignalLed SoundLedSoundZappa
  • 62. Starting Points: Association DC-2013, Lisbon, Portugal “An activity association is an assignment of responsibility to an agent for an activity, indicating that the agent had a role in the activity. It further allows for a plan to be specified, which is the plan intended by the agent to achieve some goals in the context of this activity”. •Association is crucial for assigning responsibility: •Who is the responsible for a document? •Who is the responsible for the creation of a result of a computational experiment? •Who is responsible for the development of a product/contract, etc? •Etc. Activity Agent prov:wasAssociatedWith 63
  • 63. Full example: Association DC-2013, Lisbon, Portugal Blog post 1 http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg Fan 1 Fan 2 SignalA SignalB Recording1841 Recording999 Blog post 2 64 SoundASoundB Performance in 1971 Towson- March1988 Stair way to heaven (MusicalWork) LedZeppelinTrack FrankZappa Track SignalZappa SignalLed SoundLedSoundZappa
  • 64. Full example: Association DC-2013, Lisbon, Portugal Blog post 1 http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg Fan 1 Fan 2 SignalA SignalB Recording1841 Recording999 Blog post 2 65 SoundASoundB Performance in 1971 Towson- March1988 Stair way to heaven (MusicalWork) LedZeppelinTrack FrankZappa Track prov:wasAssociatedWithprov:wasAssociatedWith SignalZappa SignalLed SoundLedSoundZappa
  • 65. Starting Points: Generation DC-2013, Lisbon, Portugal “Generation is the completion of production of a new entity by an activity. This entity did not exist before generation and becomes available for usage after this generation”. •Generation is crucial for describing entities and their origin: •How was a document generated?. •How is a computational result created?. •How has an entity been modified?. •How was a result validated? •Etc. Activity Entity prov:wasGeneratedBy 66
  • 66. Full example: Generation •Music example •2 bloggers write posts about song tracks by Led Zeppelin and Frank Zappa. We know, thanks to the Music Ontology, that •Tracks are publications of Signals. •Signals are produced by recordings. •Recordings are made from sounds, which are realizations of a Musical Work during a musical Performance. DC-2013, Lisbon, Portugal 67
  • 67. Full example: Generation DC-2013, Lisbon, Portugal Blog post 1 http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg Fan 1 Fan 2 SignalA SignalB Recording1841 Recording999 Blog post 2 68 SoundASoundB Performance in 1971 Towson- March1988 Stair way to heaven (MusicalWork) LedZeppelinTrack FrankZappa Track SignalZappa SignalLed SoundLedSoundZappa
  • 68. Full example: Generation DC-2013, Lisbon, Portugal Blog post 1 http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg Fan 1 Fan 2 SignalA SignalB Recording1841 Recording999 Blog post 2 69 SoundASoundB Performance in 1971 Towson- March1988 Stair way to heaven (MusicalWork) LedZeppelinTrack FrankZappa Track prov:wasGeneratedBy prov:wasGeneratedBy SignalZappa SignalLed SoundLedSoundZappa
  • 69. Entity Starting Points: Derivation DC-2013, Lisbon, Portugal “A Derivation is a transformation of an entity into another, an update of an entity resulting in a new one, or the construction of a new entity based on a pre- existing entity”. •Derivation is used for describing dependencies among entities: •Are the contents of a document based on other entities?. •How does a computational result depend on external databases?. •Which resources have influenced at some point this entity?. •Etc. Entity prov:wasDerivedFrom 70
  • 70. Full example: Derivation •Music example •2 bloggers write posts about song tracks by Led Zeppelin and Frank Zappa. We know, thanks to the Music Ontology, that •Tracks are publications of Signals. •Signals are produced by recordings. •Recordings are made from sounds, which are realizations of a Musical Work during a musical Performance. DC-2013, Lisbon, Portugal 71
  • 71. Full example: Derivation DC-2013, Lisbon, Portugal Blog post 1 http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg Fan 1 Fan 2 SignalA SignalB Recording1841 Recording999 Blog post 2 72 SoundASoundB Performance in 1971 Towson- March1988 Stair way to heaven (MusicalWork) LedZeppelinTrack FrankZappa Track SignalZappa SignalLed SoundLedSoundZappa
  • 72. Full example: Derivation DC-2013, Lisbon, Portugal Blog post 1 http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg Fan 1 Fan 2 SignalA SignalB Recording1841 Recording999 Blog post 2 73 SoundASoundB Performance in 1971 Towson- March1988 Stair way to heaven (MusicalWork) LedZeppelinTrack FrankZappa Track prov:wasDerivedFrom prov:wasDerivedFrom SignalZappa SignalLed SoundLedSoundZappa
  • 73. Starting Points: Communication DC-2013, Lisbon, Portugal “Communication (wasInformedBy) is the exchange of some unspecified entity by two activities, one activity using some entity generated by the other”. •Communication is used for describing dependencies between activities: •Which activities precede the current one?. •What are the steps required for executing the current query?. •Etc. Activity prov:wasInformedBy Activity 74
  • 74. Starting Points: Attribution DC-2013, Lisbon, Portugal “Attributionis the ascribing of an entity to an agent”. •Attribution is key for giving credit to someone: •Who is the author of a particular document?. •Which tool/Software has been used to generate a result?. •Who has created a this dataset? •Etc. Agent Entity prov:wasAttributedTo 75
  • 75. Full example: Attribution DC-2013, Lisbon, Portugal Blog post 1 http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg Fan 1 Fan 2 SignalA SignalB Recording1841 Recording999 Blog post 2 76 SoundASoundB Performance in 1971 Towson- March1988 Stair way to heaven (MusicalWork) LedZeppelinTrack FrankZappa Track SignalZappa SignalLed SoundLedSoundZappa prov:wasAttributedTo prov:wasAttributedTo
  • 76. Agent Starting Points: Delegation DC-2013, Lisbon, Portugal “Delegation (actedOnBehalfOf) is the assignment of authority and responsibility to an agent (by itself or by another agent) to carry out a specific activity as a delegate or representative, while the agent it acts on behalf of retains some responsibility for the outcome of the delegated work”. •Delegation is used to specify responsibility between agents: •Who is the responsible for the generation of the result of a computational experiment (acting on behalf of UPM?). •Which user activated the tool to generate the report?. •Etc. prov:actedOnBehalfOf Agent 77
  • 77. Full example DC-2013, Lisbon, Portugal Blog post 1 Blog post 2 http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg Fan 1 Fan 2 prov:wasAttributedTo prov:wasAttributedTo 78
  • 78. Full example DC-2013, Lisbon, Portugal Blog post 1 Track ISRC: US-AT2-99-00620 http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg Fan 1 Fan 2 prov:wasAttributedTo prov:wasAttributedTo prov:wasDerivedFromprov:wasDerivedFrom Track barcode: 5016583610128 Blog post 2 79
  • 79. 80 Full example DC-2013, Lisbon, Portugal Blog post 1 Track ISRC: US-AT2-99-00620 http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg Fan 1 Fan 2 prov:wasAttributedTo prov:wasAttributedTo prov:wasDerivedFromprov:wasDerivedFrom Track barcode: 5016583610128 SignalZappa SignalLed prov:wasDerivedFromprov:wasDerivedFrom Tracks are publications of Signals Blog post 2 80
  • 80. Full example DC-2013, Lisbon, Portugal Blog post 1 Track ISRC: US-AT2-99-00620 http://diymusician.cdbaby.com/wp-content/uploads/2013/06/Millenial-282x300.jpg Fan 1 Fan 2 prov:wasAttributedTo prov:wasAttributedTo prov:wasDerivedFromprov:wasDerivedFrom Track barcode: 5016583610128 SignalA SignalB prov:wasDerivedFromprov:wasDerivedFrom Tracks are publications of Signals Recording1841 prov:wasGeneratedBy Recording999 prov:wasGeneratedBy Recording 1841 in Playhouse Theatre, Northumberland Av Information from recording not available Blog post 2 81 SignalZappa SignalLed
  • 81. Full example DC-2013, Lisbon, Portugal Recording1841Recording999 Recording 1841 in Playhouse Theatre, Northumberland Av Information from recording not available SoundZappA SoundLed prov:used prov:used Realisation of a MusicalWork during a musical Performance 82
  • 82. Full example DC-2013, Lisbon, Portugal Recording1841Recording999 Recording 1841 in Playhouse Theatre, Northumberland Av Information from recording not available SoundA SoundB prov:used prov:used Realisation of a MusicalWork during a musical Performance Performance in 1971 Towson- March1988 prov:wasGeneratedBy prov:wasGeneratedBy 83 SoundZappA SoundLed
  • 83. Full example DC-2013, Lisbon, Portugal Recording1841Recording999 Recording 1841 in Playhouse Theatre, Northumberland Av Information from recording not available SoundA SoundB prov:used prov:used Realisation of a MusicalWork during a musical Performance Performance in 1971 Towson- March1988 prov:wasGeneratedBy prov:wasGeneratedBy prov:wasInformedByprov:wasInformedBy 84 SoundZappA SoundLed
  • 84. Full example DC-2013, Lisbon, Portugal Recording1841Recording999 Recording 1841 in Playhouse Theatre, Northumberland Av Information from recording not available SoundA SoundB prov:used prov:used Realisation of a MusicalWork during a musical Performance Performance in 1971 Towson- March1988 prov:wasGeneratedBy prov:wasGeneratedBy Stair way to heaven (MusicalWork) http://musicbrainz.org/work/ 968ee3c5-21fa-35de-88f9-bd1c300ac3ee prov:used prov:used prov:wasInformedByprov:wasInformedBy 85 SoundZappA SoundLed
  • 85. Full example DC-2013, Lisbon, Portugal Recording1841Recording999 Recording 1841 in Playhouse Theatre, Northumberland Av Information from recording not available SoundA SoundB prov:used prov:used Realisation of a MusicalWork during a musical Performance Performance in 1971 Towson- March1988 prov:wasGeneratedBy prov:wasGeneratedBy Stair way to heaven (MusicalWork) http://musicbrainz.org/work/ 968ee3c5-21fa-35de-88f9-bd1c300ac3ee prov:used prov:used Frank Zappa Led Zeppelin prov:wasAssociatedWith prov:wasAssociatedWith prov:wasInformedByprov:wasInformedBy 86 SoundZappA SoundLed
  • 86. Full example DC-2013, Lisbon, Portugal Recording1841Recording999 Recording 1841 in Playhouse Theatre, Northumberland Av Information from recording not available SoundA SoundB prov:used prov:used Realisation of a MusicalWork during a musical Performance Performance in 1971 Towson- March1988 prov:wasGeneratedBy prov:wasGeneratedBy Stair way to heaven (MusicalWork) http://musicbrainz.org/work/ 968ee3c5-21fa-35de-88f9-bd1c300ac3ee prov:used prov:used Frank Zappa Led Zeppelin prov:wasAssociatedWith prov:wasAssociatedWith prov:wasInformedByprov:wasInformedBy 87 SoundZappA SoundLed
  • 87. Introduction PROV-O: The PROV Ontology Part 2 DC-2013, Lisbon, Portugal 88
  • 88. Expanded Terms: Overview Part 2 • PROV-O Expanded terms • PROV-O Qualification terms DC-2013, Lisbon, Portugal 89
  • 89. PROV-O: Expanded Terms DC-2013, Lisbon, Portugal 90
  • 90. Expanded terms • Extension of the Starting Point Terms. • Generic definitions to remain as domain independent as possible. • Allow for richer descriptions of resources. DC-2013, Lisbon, Portugal 91
  • 92. Expanded Terms: Agent specializations DC-2013, Lisbon, Portugal “A SoftwareAgent is running software”. “An Organization is a social or legal institution such as a company, society, etc”. “Person agents are people”. •Software Agent, Organization and Person are similar to foaf agents (http://xmlns.com/foaf/spec/#term_Agent). •These types of Agents are commonly found in the Web: •Software tools used to create resources. •Organizations publishing a document report. •Specific authors of a paper. •Etc. 93
  • 93. Expanded Terms: Location DC-2013, Lisbon, Portugal “A Location can be an identifiable geographic place (ISO 19112), but it can also be a non-geographic place such as a directory, row, or column. As such, there are numerous ways in which location can be expressed, such as by a coordinate, address, landmark, and so forth”. •Locations may be bound to all types of prov resources: •Location of a file within a file system. •Location where a resource was used or generated. •Location where an activity took place. •Etc. •The relationship prov:atLocation binds resources to locations 94
  • 94. Expanded Terms: Plans DC-2013, Lisbon, Portugal “A plan is an entity that represents a set of actions or steps intended by one or more agents to achieve some goals”. •A plan can be anything that indicates how to achieve a goal: •A script program. •A set of instructions written on a napkin. •A food recipe. •A scientific workflow template. •An algorithm. •Best practice guidelines. •Etc. 95
  • 95. Expanded Terms-Plans: Example DC-2013, Lisbon, Portugal •Plans are associated to Activities and executed by an Agents: Bake Cake Chef Association Recipe (plan) Cake prov:wasAssociatedWith prov:wasGeneratedBy prov:hadPlan 96
  • 96. Expanded Terms: Collections DC-2013, Lisbon, Portugal “A collection is an entity that provides a structure to some constituents that must themselves be entities. These constituents are said to be member of the collections. An empty collection is a collection without members”. •There is a complete PROV extension for structured collections (dictionaries) : http://www.w3.org/TR/prov-dictionary/ •Members of a collection are asserted with the prov:hadMember relationship. •Examples: the collection of authors who participated in a publication, the members of a research group, etc. 97
  • 97. Expanded Terms: Bundles DC-2013, Lisbon, Portugal “A bundle is a named set of provenance descriptions, and is itself an entity, so allowing provenance of provenance to be expressed.” •Bundles can be any kind of container: •Files containing provenance descriptions. •Named graphs. •Repositories. •Etc. •This document defines how entities could be identified across bundles: http://www.w3.org/TR/prov-links/ 98
  • 98. Expanded Terms-Bundles: an Example DC-2013, Lisbon, Portugal :dcProvTutorial:daniel dct:creator prov:Agent prov:Entity prov:wasAttributedTo :makingTheTutorial prov:wasAssociatedWith prov:wasGeneratedBy prov:Activity :kai :tutorialDraft prov:wasAssociatedWith prov:used :makingTheDraftprov:wasGeneratedBy prov:wasAssociatedWith prov:wasRevisionOf :iswcProvTuto rial :iswcProvIntro prov:used prov:used prov:wasDerivedFrom prov:wasDerivedFrom Describing the provenance of provenance of this presentation (first example) prov:Bundle :daniel “RDF” prov:wasAttributedTo dct:format 99
  • 99. Expanded Terms: Primary Source DC-2013, Lisbon, Portugal “A primary source relation is a kind of a derivation relation from secondary materials to their primary sources“. •The determination of primary sources can be up to interpretation. •Determining the primary source is key for attribution: •What is the primary source for a blog post? •What is the primary source of a news article? •What are the primary sources for a research result? •Etc. Entity Entity prov:hadPrimarySource 100
  • 100. Expanded Terms: Quotation DC-2013, Lisbon, Portugal “A quotation is the repeat of (some or all of) an entity, such as text or image, by someone who may or may not be its original author”. •Quotation is key for giving credit: •The quote in this slide was quoted from the prov-dm definition of quotation: http://www.w3.org/TR/prov-dm/#term-quotation •Quotes from people in news articles. •Etc. •Quotation is expressed with the relationship prov:wasQuotedFrom. Entity Entity prov:wasQuotedFrom 101
  • 101. Expanded Terms: value DC-2013, Lisbon, Portugal “prov:value provides a value that is a direct representation of an entity”. •Used when entities have a string or numeric value: •A string representing the quote in a document. •The value of the parameter being used as input for an experimental activity. •Etc. 102
  • 102. Expanded Terms-value and quotation: Example DC-2013, Lisbon, Portugal •Quoting a news article in a blog post blogPost newsArticle prov:wasQuotedFrom “According to the number of registrations in the website, DC2013 conference was a great success”… Summary of the DC conference. As this article states: “According to the number of registrations in the website, DC2013 conference was a great success” …. 103
  • 103. Expanded Terms-value and quotation: Example DC-2013, Lisbon, Portugal •Quoting a news article in a blog post blogPost newsArticle prov:wasQuotedFrom The blog post is not a quote! The wasQuotedFrom relationship should be only for the quotes. 104
  • 104. Expanded Terms-value and quotation: Example DC-2013, Lisbon, Portugal •Quoting a news article in a blog post blogPost newsArticle prov:wasQuotedFrom quoteInBlog post newsArticle blogPost “According to the number of registrations…” prov:wasQuotedFrom prov:value dc:isPartOf prov:hadPrimarySource, prov:wasDerivedFrom 105
  • 105. Expanded Terms: Start and End DC-2013, Lisbon, Portugal “Start is when an activity is deemed to have been started by an entity, known as trigger. The activity did not exist before its start“. “End is when an activity is deemed to have been ended by an entity, known as trigger. The activity no longer exists after its end”. •The starter/ender of the activity may be an entity or an agent. •Useful for assigning responsibility: •The cause for the failure of an execution. •The email who started a discussion. •Etc. Activity prov:wasStartedBy 106 Entity
  • 106. Expanded Terms: Invalidation DC-2013, Lisbon, Portugal “Invalidationis the start of the destruction, cessation, or expiry of an existing entity by an activity. The entity is no longer available for use (or further invalidation) after invalidation”. •wasInvalidatedBy is used to point at the activity responsible for the invalidation of the entity: •A piece of art being damaged by a fire. •A paper being withdrawn after a discussion with the authors. •An information invalidated by an automatic process because of its expiry date. •Etc. Activity prov:wasInvalidatedBY 107 Entity
  • 107. Expanded Terms: Revision DC-2013, Lisbon, Portugal “A revision is a derivation for which the resulting entity is a revised version of some original”. •Revision is used for asserting a strong dependency between two entities: •A final report is a revision of a previous version. •A result is a refinement of previous results. •Etc. •Similar to dct:isVersionOf. Entity Entity prov:wasRevisionFrom 108
  • 108. Entity Expanded Terms: Specialization DC-2013, Lisbon, Portugal “An entity that is a specialization of another shares all aspects of the latter, and additionally presents more specific aspects of the same thing as the latter. In particular, the lifetime of the entity being specialized contains that of any specialization.” •Specialization is used for defining abstractions and contextualized entities: •Entities during a period of time (a weather report being a specialization of today’s weather report). •An agent during a trip is a specialization of that agent. •Two different versions of a document can be specializations of the general entity representing the document •Etc. Entity prov:specializationOf 109
  • 109. Expanded Terms: Alternate Of DC-2013, Lisbon, Portugal “Two alternate entities present aspects of the same thing. These aspects may be the same or different, and the alternate entities may or may not overlap in time.” •Alternate describe entities that specialize the same resource: •Two different versions of a document are alternates of each other. •A tool designed for mobile devices is an alternate of a desktop application. •Etc. •Similar to owl:sameAs, but not the same. Entity Entity prov:alternateOf 110
  • 110. Expanded terms-specialization and alternate: The music example DC-2013, Lisbon, Portugal Recording1841Recording999 SoundA SoundB prov:used prov:used Performance in 1971 Towson- March1988 prov:wasGeneratedBy prov:wasGeneratedBy Stair way to heaven (MusicalWork) http://musicbrainz.org/work/ 968ee3c5-21fa-35de-88f9-bd1c300ac3ee prov:used prov:used Frank Zappa Led Zeppelin prov:wasAssociatedWith prov:wasAssociatedWith 111
  • 111. Expanded terms-specialization and alternate: The music example DC-2013, Lisbon, Portugal Recording1841Recording999 SoundA SoundB prov:used prov:used Performance in 1971 Towson- March1988 prov:wasGeneratedBy prov:wasGeneratedBy Stair way to heaven (MusicalWork) http://musicbrainz.org/work/ 968ee3c5-21fa-35de-88f9-bd1c300ac3ee prov:used prov:used Frank Zappa Led Zeppelin prov:wasAssociatedWith prov:wasAssociatedWith prov:specializationOf prov:specializationOf 112
  • 112. Expanded terms-specialization and alternate: The music example DC-2013, Lisbon, Portugal Recording1841Recording999 SoundA SoundB prov:used prov:used Performance in 1971 Towson- March1988 prov:wasGeneratedBy prov:wasGeneratedBy Stair way to heaven (MusicalWork) http://musicbrainz.org/work/ 968ee3c5-21fa-35de-88f9-bd1c300ac3ee prov:used prov:used Frank Zappa Led Zeppelin prov:wasAssociatedWith prov:wasAssociatedWith prov:specializationOf prov:specializationOf prov:alternateOf prov:alternateOf 113 Both Sounds are expressions of the same musical work
  • 113. PROV-O: Qualifying terms DC-2013, Lisbon, Portugal 114
  • 114. Qualifying terms DC-2013, Lisbon, Portugal •Starting and expanded terms are binary. •But we may want to further describe these relationships: •Where was an entity generated? •What were the roles of the associated to the activity? •When was an entity used? •Etc. SoundA Towson- March1988 prov:wasGeneratedBy SoundA Towson- March1988 prov:used Led Zeppelin Towson- March1988 prov:wasAssociatedWith 115
  • 115. Qualifying terms: Usage DC-2013, Lisbon, Portugal •Qualifying usage: Stair way to heaven (MusicalWork) Towson- March1988 prov:used Usage “1988” Towsonprov:qualifiedUsage prov:entity prov:atTime prov:atLocation … 116
  • 116. Qualifying terms: Association DC-2013, Lisbon, Portugal •Qualifying association: Towson- March1988 prov:wasAssociatedWith Association “1988” Towson prov:qualifiedAssociation prov:agent prov:atTime prov:atLocation … Frank Zappa Performer Song Lyrics prov:hadRole prov:hadPlan 117
  • 117. Qualifying terms: Generation DC-2013, Lisbon, Portugal •Qualifying generation: prov:wasGeneratedBy Generation “1988” Towsonprov:qualifiedGeneration prov:activity prov:atTime prov:atLocation …SoundA Towson- March1988 118
  • 118. Encoding qualified relationships in RDF DC-2013, Lisbon, Portugal •N-ary relationship pattern: •http://www.w3.org/TR/swbp-n-aryRelations/ •Example for the usage qualifying pattern: :towsonRecording a prov:Activity; prov:used :musicalWork; prov:qualifiedUsage [ a prov:Usage; prov:entity :musicalWork ; prov:hadRole :used-musicalWork; prov:atTime “1988-03-23T20:40:40"^^xsd:dateTime; prov:atLocation :towson. ]; . :musicalWork a prov:entity; dc:title “A stairway to heaven”. :used-musialWork a prov:Role. :towson a prov:Location. 119
  • 119. Qualifying terms: Qualified relationships DC-2013, Lisbon, Portugal •The following starting point relationships and expanded terms relationships have qualified versions: •Usage (used) •Generation (wasGeneratedBy) •Association (wasAssociatedWith) •Derivation (wasDerivedFrom) •Quotation (wasQuotedFrom) •Revision (wasRevisionOf) •PrimarySource (hadPrimarySource) •Influence (wasInfluencedBy) •Start (wasStartedBy) •End (wasEndedBy) •Communication (wasInformedBy) •Invalidation (wasInvalidatedBy) •Attribution (wasAttributedTo) •Delegation (actedOnBehalfOf) Stair way to heaven (MusicalWork) Towson- March1988 prov:used Usage “1988” Towsonprov:qualifiedUsage prov:entity prov:atTime prov:atLocation … 120
  • 121. 3 main classes DC-2013, Lisbon, Portugal Agent Activity Entity 122
  • 122. Relating the main 3 classes DC-2013, Lisbon, Portugal generatedAtTime value hadMember invalidatedAtTime wasStartedBy / wasEndedBy wasInvalidatedBy wasInfluencedBy / wasQuotedFrom / wasRevisionOf / hadPrimarySource Activity Entity Collection xsd:dateTimexsd:dateTime alternateOf / specializationOf atLocation Location Agent Person SoftwareAgent Organization BundlePlan 123
  • 124. Mapping PROV-O to Dublin Core DC-2013, Lisbon, Portugal http://allfaaraa.com/wp-content/uploads/2013/02/puzzle.jpg 125
  • 125. Mapping PROV-O to Dublin Core: Outline • Preliminaries • Provenance and DC • Entities in PROV and DC • Direct mappings • PROV-O Extensions • Complex mappings DC-2013, Lisbon, Portugal 126
  • 126. Mapping PROV-O to Dublin Core: Provenance in DC DC-2013, Lisbon, Portugal • Many DC terms hold provenance information • Who affected a resource • Creator, contributor, publisher, etc.. • How the resource was affected • Access rights, license, hasFormat, etc. • When the resource was affected • Created, issued, dateSubmitted, etc. • The rest of the terms hold metadata about the resource • Date, description, abstract, language, etc. 127
  • 127. Mapping PROV-O to Dublin Core- Provenance in DC: Who DC-2013, Lisbon, Portugal • Properties with dct:Agents as range: • creator • contributor • publisher • rightsHolder dc:AgentResource dct property 128
  • 128. Mapping PROV-O to Dublin Core- Provenance in DC: When DC-2013, Lisbon, Portugal • available • created • date • dateAccepted • dateCopyrighted • dateSubmitted • issued • modified • valid Resource dct property dc date 129
  • 129. Mapping PROV-O to Dublin Core- Provenance in DC: How DC-2013, Lisbon, Portugal • accessRights • hasFormat • hasVersion • isFormatOf • isVersionOf • license • isReferencedBy • isReplacedBy • references • replaces • rights • source Resource dct property dct resource 130
  • 130. Mapping PROV-O to Dublin Core: Resources in DC vs entities in PROV DC-2013, Lisbon, Portugal Resources in Dublin Core have “scruffy” provenance… author book editorial dct:creator dct:publisher 131
  • 131. Mapping PROV-O to Dublin Core: Entities in DC vs entities in PROV (2) DC-2013, Lisbon, Portugal But in PROV we aim for “complete“ provenance: author book editorial dc:creator dc:publisher authorCopy editorialCopy createBook publishBook prov:wasGeneratedBy prov:wasGeneratedBy prov:used prov: specializationOf prov: specializationOf prov:wasAssociatedWith prov:wasAssociatedWith prov:wasAttributedTo prov:wasAttributedTo 132
  • 132. Mapping PROV-O to Dublin Core: Direct mappings DC-2013, Lisbon, Portugal • Direct mappings • Simple equivalences between PROV terms and DC terms. • Described in terms of rdfs:subClassOf, rdfs:subPropertyOf, owl:equivalentClass. • The mappings uses prov starting points and prov expanded terms. 133
  • 133. Mapping PROV-O to Dublin Core: Direct mappings (terms) DC-2013, Lisbon, Portugal 134 DC Term Mapping PROV Property created subPropertyOf generatedAtTime dateAccepted subPropertyOf generatedAtTime dateCopyRighted subPropertyOf generatedAtTime dateSubmitted subPropertyOf generatedAtTime issued subPropertyOf generatedAtTime modified subPropertyOf generatedAtTime creator subPropertyOf wasAttributedTo contributor subPropertyOf wasAttributedTo publisher subPropertyOf wasAttributedTo rightsHolder subPropertyOf wasAttributedTo source subPropertyOf wasDerivedFrom hasFormat subPropertyOf alternateOf isFormatOf subPropertyOf alternateOf, wasDerivedFrom
  • 134. Mapping PROV-O to Dublin Core: Direct mappings (terms) DC-2013, Lisbon, Portugal DC Term Mapping PROV Property created subPropertyOf generatedAtTime dateAccepted subPropertyOf generatedAtTime dateCopyRighted subPropertyOf generatedAtTime dateSubmitted subPropertyOf generatedAtTime issued subPropertyOf generatedAtTime modified subPropertyOf generatedAtTime creator subPropertyOf wasAttributedTo contributor subPropertyOf wasAttributedTo publisher subPropertyOf wasAttributedTo rightsHolder subPropertyOf wasAttributedTo source subPropertyOf wasDerivedFrom hasFormat subPropertyOf alternateOf isFormatOf subPropertyOf alternateOf, wasDerivedFrom Generation dates 135
  • 135. Mapping PROV-O to Dublin Core: Direct mappings (terms) DC-2013, Lisbon, Portugal DC Term Mapping PROV Property created subPropertyOf generatedAtTime dateAccepted subPropertyOf generatedAtTime dateCopyRighted subPropertyOf generatedAtTime dateSubmitted subPropertyOf generatedAtTime issued subPropertyOf generatedAtTime modified subPropertyOf generatedAtTime creator subPropertyOf wasAttributedTo contributor subPropertyOf wasAttributedTo publisher subPropertyOf wasAttributedTo rightsHolder subPropertyOf wasAttributedTo source subPropertyOf wasDerivedFrom hasFormat subPropertyOf alternateOf isFormatOf subPropertyOf alternateOf, wasDerivedFrom Generation dates 136 Agents
  • 136. Mapping PROV-O to Dublin Core: Direct mappings (terms) DC-2013, Lisbon, Portugal PROV property Mapping DC Term hadPrimarySource subPropertyOf source wasRevisionOf subPropertyOf isVersionOf Some DC terms generalize PROV properties: 137
  • 137. Mapping PROV-O to Dublin Core: Main Direct mappings (classes) DC-2013, Lisbon, Portugal DC Term Mapping PROV Property Agent equivalentClass Agent BibliographicResource subClassOf Entity LicenseDocument subClassOf Entity LinguisticSystem subClassOf Plan Location equivalentClass Location MethodOfAccrual subClassOf Plan MethodOfInstruction subClassOf Plan RightsStatement subClassOf Entity PhysicalResource subClassOf Entity Policy subClassOf Plan ProvenanceStatement subClassOf Bundle 138
  • 138. Mapping PROV-O to Dublin Core: PROV refinements DC-2013, Lisbon, Portugal To properly represent DC activities and roles, we have extended PROV: Extended Term Relation to PROV PROV extended Term Publish subClassOf Activity Contribute subClassOf Activity Create subClassOf Activity, Contribute RightsAssignment subClassOf Activity Modify subClassOf Activity Accept subClassOf Activity Copyright subClassOf Activity Submit subClassOf Activity Replace subClassOf Activity Publisher subClassOf Role Contributor subClassOf Role Creator subClassOf Role, Contributor RightsHolder subClassOf Role 139
  • 139. Mapping PROV-O to Dublin Core: Complex mappings DC-2013, Lisbon, Portugal • Complex mappings • Defined to generate qualified PROV statements from DC statements. • More complete than simple mappings. • May be refined depending on the use case scenario where applied. • Provided in the form of SPARQL construct queries. 140
  • 140. Mapping PROV-O to Dublin Core-Complex mappings: an example DC-2013, Lisbon, Portugal Transformation of dc:publisher to PROV 141
  • 141. Mapping PROV-O to Dublin Core-Complex mappings: an example DC-2013, Lisbon, Portugal Why can’t we follow DC’s approach? Publish would generate doc1 and then use it. • It is not what we want to represent! 142
  • 142. Mapping PROV-O to Dublin Core-Complex mappings: an Example DC-2013, Lisbon, Portugal CONSTRUCT { ?document a prov:Entity; prov:wasAttributedTo ?agent. ?agent a prov:Agent. _:usedEntity a prov:Entity; prov:specializationOf ?document. _:activity a prov:Activity, prov:Publish; prov:used _:usedEntity; prov:wasAssociatedWith ?agent; prov:qualifiedAssociation [ a prov:Association; prov:agent ?agent; prov:hadRole [a prov:Publisher]. ]. _:resultingEntity a prov:Entity; prov:specializationOf ?document; prov:wasDerivedFrom _:usedEntity; prov:wasGeneratedBy _:activity; prov:wasAttributedTo ?agent. } WHERE { ?document dct:publisher ?agent. } 143
  • 143. Mapping PROV-O to Dublin Core-Complex mappings: an Example DC-2013, Lisbon, Portugal CONSTRUCT { ?document a prov:Entity; (GENERAL ENTITY) prov:wasAttributedTo ?agent. (DIRECT MAPPING) ?agent a prov:Agent. _:usedEntity a prov:Entity; prov:specializationOf ?document. _:activity a prov:Activity, prov:Publish; prov:used _:usedEntity; prov:wasAssociatedWith ?agent; prov:qualifiedAssociation [ a prov:Association; prov:agent ?agent; prov:hadRole [a prov:Publisher]. ]. _:resultingEntity a prov:Entity; prov:specializationOf ?document; prov:wasDerivedFrom _:usedEntity; prov:wasGeneratedBy _:activity; prov:wasAttributedTo ?agent. } WHERE { ?document dct:publisher ?agent. } 144
  • 144. Mapping PROV-O to Dublin Core-Complex mappings: an Example DC-2013, Lisbon, Portugal CONSTRUCT { ?document a prov:Entity; (GENERAL ENTITY) prov:wasAttributedTo ?agent. (DIRECT MAPPING) ?agent a prov:Agent. _:usedEntity a prov:Entity; (SPECIALIZATION OF THE GENERAL ENTITY) prov:specializationOf ?document. _:activity a prov:Activity, prov:Publish; prov:used _:usedEntity; prov:wasAssociatedWith ?agent; prov:qualifiedAssociation [ a prov:Association; prov:agent ?agent; prov:hadRole [a prov:Publisher]. ]. _:resultingEntity a prov:Entity; (SPECIALIZATION OF THE GENERAL ENTITY) prov:specializationOf ?document; prov:wasDerivedFrom _:usedEntity; prov:wasGeneratedBy _:activity; prov:wasAttributedTo ?agent. } WHERE { ?document dct:publisher ?agent. } 145
  • 145. Mapping PROV-O to Dublin Core-Complex mappings: an Example DC-2013, Lisbon, Portugal CONSTRUCT { ?document a prov:Entity; (GENERAL ENTITY) prov:wasAttributedTo ?agent. (DIRECT MAPPING) ?agent a prov:Agent. _:usedEntity a prov:Entity; (SPECIALIZATION OF THE GENERAL ENTITY) prov:specializationOf ?document. _:activity a prov:Activity, prov:Publish; (ACTIVITY EXTENDING PROV) prov:used _:usedEntity; prov:wasAssociatedWith ?agent; prov:qualifiedAssociation [ a prov:Association; prov:agent ?agent; prov:hadRole [a prov:Publisher]. ]. _:resultingEntity a prov:Entity; (SPECIALIZATION OF THE GENERAL ENTITY) prov:specializationOf ?document; prov:wasDerivedFrom _:usedEntity; prov:wasGeneratedBy _:activity; prov:wasAttributedTo ?agent. } WHERE { ?document dct:publisher ?agent. } 146
  • 146. Mapping PROV-O to Dublin Core-Complex mappings: an Example DC-2013, Lisbon, Portugal CONSTRUCT { ?document a prov:Entity; (GENERAL ENTITY) prov:wasAttributedTo ?agent. (DIRECT MAPPING) ?agent a prov:Agent. _:usedEntity a prov:Entity; (SPECIALIZATION OF THE GENERAL ENTITY) prov:specializationOf ?document. _:activity a prov:Activity, prov:Publish; (ACTIVITY EXTENDING PROV) prov:used _:usedEntity; prov:wasAssociatedWith ?agent; prov:qualifiedAssociation [ (QUALIFIED ASSOCIATION TO BIND THE ACTIVITY TO THE ROLE) a prov:Association; prov:agent ?agent; prov:hadRole [a prov:Publisher]. ]. _:resultingEntity a prov:Entity; (SPECIALIZATION OF THE GENERAL ENTITY) prov:specializationOf ?document; prov:wasDerivedFrom _:usedEntity; prov:wasGeneratedBy _:activity; prov:wasAttributedTo ?agent. } WHERE { ?document dct:publisher ?agent. } 147
  • 147. Mapping PROV-O to Dublin Core: Cleanup DC-2013, Lisbon, Portugal • The complex mapping lead to the proliferation of blank nodes. • Binding URIs for the blank nodes may solve the problem • Is there a way to reduce the number of blank nodes? • Conflate properties referring to the same state of the resource • Sort activities by their logical order 148
  • 148. Mapping PROV-O to Dublin Core: Cleanup 1 DC-2013, Lisbon, Portugal 149
  • 149. Mapping PROV-O to Dublin Core: Cleanup 2 DC-2013, Lisbon, Portugal 150
  • 150. Mapping PROV-O to Dublin Core: Summary DC-2013, Lisbon, Portugal • Direct mappings • PROV-O Extensions • Complex mappings 151
  • 151. Acknowledgements DC-2013, Lisbon, Portugal •Luc Moreau, Ivan Herman, Paul Groth and Timothy Lebo for creating some of the materials used for this presentation: •http://www.w3.org/2001/sw/wiki/OutreachInformation •Victor Rodriguez Doncel for providing the sources to the music ontology example. •Kai Eckert, María Poveda, Oscar Corcho and Daniel Nüst for providing feedback. •PROV-O team: http://www.w3.org/2011/prov#prov‐o‐team 152
  • 153. PROV-O: The PROV Ontology Tutorial Daniel Garijo Ontology Engineering Group Universidad Politécnica de Madrid (with Slides from Luc Moreau, Ivan Herman, Paul Groth and Timothy Lebo) Date: 01/09/2013