Latest updates to the note
authordgarijo
Mon, 04 Mar 2013 00:17:04 +0100
changeset 5819 d99c667ade9d
parent 5818 466a02f506bd
child 5820 f496204b73db
Latest updates to the note
dc-note/dc-note.html
dc-note/files/construct queries/entity-entity/replaces.ttl
dc-note/files/prov-dc-directmappings.ttl
dc-note/files/prov-dc-refinements.ttl
--- a/dc-note/dc-note.html	Sun Mar 03 14:49:48 2013 +0000
+++ b/dc-note/dc-note.html	Mon Mar 04 00:17:04 2013 +0100
@@ -216,9 +216,9 @@
 		properties and classes, which can be found <a href="http://www.w3.org/ns/prov-dc-directmappings.ttl">here</a>.
 		</p>
 		<p>
-		Some of the direct mapping can be refined, translating single Dublin Core Terms into a more complete  
-		representation of the provenance chain. Therefore, Dublin Core specific refinements of classes defined in PROV are needed. This
-		set of PROV refinements for representing Dublin Core activities and roles can be accessed <a href="http://www.w3.org/ns/prov-dc-refinements.ttl">here</a>.
+		Some of the direct mappings can be refined, translating single Dublin Core Terms into an extended  
+		representation of the provenance chain. Therefore, refinements of classes defined in PROV are needed to represent specific Dublin Core activities and roles. 
+		This set of PROV refinements can be accessed <a href="http://www.w3.org/ns/prov-dc-refinements.ttl">here</a>.
 		</p>
 		<p>
 		The PROV Document Overview [[PROV-OVERVIEW]] describes the overall state of PROV, and should be read before other PROV documents.
@@ -368,7 +368,7 @@
 	This section explains two main particular considerations that should be taken into account regarding the mapping:
 	<ul>
 		<li><a href="#provenance-in-dublin-core">Section 2.1</a>: The relation of the DC terms with provenance.</li>
-		<li><a href="#what-is-ex-doc1--entities-in-dublin-core">Section 2.2</a>: The definition of entities in Dublin Core.</li>
+		<li><a href="#entities-in-dublin-core">Section 2.2</a>: The definition of entities in Dublin Core.</li>
 	</ul>
 	</p>
 	<section id="provenance-in-dublin-core">
@@ -465,7 +465,7 @@
 			<td><b>Provenance</b></td>
 			<td>How</td>
 			<td><a href="#term_accessRights">accessRights</a>, <a href="#term_isVersionOf">isVersionOf</a>, <a href="#term_hasVersion">hasVersion</a>, <a href="#term_isFormatOf">isFormatOf</a>, <a href="#term_has_Format">hasFormat</a>, <a href="#term_license">license</a>,
-			<a href="#term_references">references</a>, <a href="#term_isReferencedBy">isReferencedBy</a>, <a href="#term_replaces">replaces</a>, <a href="#term_isReplacedBy">isReplacedBy</a>,  <a href="#term_rights">rights</a>,
+			<a href="#term_references">references</a>, <a href="#term_isReferencedBy">isReferencedBy</a>, <a href="#term_replaces">replaces</a>, <a href="#term_replaces">isReplacedBy</a>,  <a href="#term_rights">rights</a>,
 			<a href="#term_source">source</a></td>
 		</tr>
 		</tbody>
@@ -475,7 +475,7 @@
 	This leaves one very special term: <a href ="#term_provenance">provenance</a>. This term is defined as a "statement of any changes in ownership and 
 	custody of the resource since its creation that are significant for its authenticity, integrity, and interpretation" [[DCTERMS]],
 	a definition that corresponds to the notion of provenance for artworks. This term can be considered a link between the resource and any
-	provenance statement about the resource, so it can't be included in any of the aforementioned categories and it is out of the scope of this mapping. 
+	provenance statement about the resource, so it cannot be included in any of the aforementioned categories and it is out of the scope of this mapping. 
 	<!--Despite being relevant for provenance,
 	 this definition may overlap partially with almost half of the DCMI terms, which
 	specify concrete aspects of provenance of a resource.-->
@@ -511,7 +511,7 @@
 		 implies that the document has been created and refers to an author. Similarly, the existence 
 		 of the <code>dct:issued</code> date implies that the document has been published. This information is redundantly 
 		 implied by the <code>dct:publisher</code> statement as well. Finally, <code>dct:replaces</code> relates 
-		 the document to another document <code>ex:doc2</code> which probably had some kind of influence on <code>ex:doc1</code>.
+		 <code>ex:doc1</code> to the document <code>ex:doc2</code>, a previous resource representing the mapping.<!-- which probably had some kind of influence on <code>ex:doc1</code>.-->
 	</p>	
 		As a <code>dc</code> 
 		metadata record describes the document as a whole,
@@ -522,12 +522,12 @@
 		 there are two approaches to deal with this issue:</p>
 	</p>		
 		<p>
-			1) Create new instances of entities, typically as blank nodes, that are all related to the original
-			document by means of <code>prov:specializationOf</code>. This leads to bloated and not very intuitive data representations. For example, consider the 
+			1) Create new instances of entities that are all related to the original
+			document by means of <code>prov:specializationOf</code>. For example, consider the 
 			translation of a single <code>dct:publisher</code> statement (as shown on the top of <a href="#figure_mapping_example">Figure 1</a>): 
 			having a publisher implies a "Publish" activity (represented with a blank node), which is related to the <code>ex:publisher</code> agent. The
 			activity must have taken as input the document to be published (<code>:_usedEntity</code>, which is a <code>prov:sprecializationOf</code> the 
-			resource we are describing), and generated the published resource (<code>:_resultingEntity</code>). Since we can't ensure that the published 
+			resource we are describing), and generated the published resource (<code>:_resultingEntity</code>). Since we cannot ensure that the published 
 			resource has not suffered any further modifications, <code>:_resultingEntity</code> is also a <code>prov:specializationOf</code> the resource
 			<code>ex:doc1</code>.
 		</p><p>
@@ -590,7 +590,7 @@
 		<p>
 		<a href="#list_of_direct_terms">Table 3</a> and <a href="#list_of_direct_mappings2">Table 4</a> provide the detailed mapping plus the rationale for each term.
 		 The rest of the terms can be found in the 
-		 <a href="#list_of_excluded_terms">list of terms left out of the mapping</a>. 
+		 <a href="#list-of-terms-excluded-from-the-mapping">list of terms left out of the mapping</a>. 
 		</p>
 		<!--
 		<div class="note">
@@ -659,7 +659,7 @@
 				<td><a href="http://www.w3.org/TR/prov-o/#alternateOf">prov:alternateOf</a></td>
 				<td> See rationale for <code>dct:isFormatOf</code>.</td>
 			</tr>
-			<tr>
+			<!--<tr>
 				<td><b id="term_replaces"><a href="http://purl.org/dc/terms/replaces">dct:replaces</a></b></td>
 				<td>rdfs:subPropertyOf</td>
 				<td><a href="http://www.w3.org/TR/prov-o/#wasInfluencedBy">prov:wasInfluencedBy</a></td>
@@ -667,7 +667,7 @@
 				derivation, revision, specialization or alternate. For example an item of a catalog can replaced with another item
 				that had nothing to do with the former (in case of mistake of the provider of the catalogue, or catalogue renovation). 
 				Thus, the term is mapped to <code>prov:wasInfluencedBy</code>.</td>
-			</tr>	
+			</tr>	-->
 			<tr>
 				<td><b id="term_source"><a href="http://purl.org/dc/terms/source">dct:source</a> </b></td>
 				<td>rdfs:subPropertyOf</td>
@@ -799,12 +799,12 @@
 					<td><a href="http://www.w3.org/TR/prov-o/#hasDerivation">prov:hadRevision</a></td>
 					<td>Inverse property of <code>dct:isVersionOf</code>.</td>
 				</tr>
-				<tr>
+				<!--<tr>
 					<td><b id="term_isReplacedBy"><a href="http://purl.org/dc/terms/isReplacedBy">dct:isReplacedBy</a></b></td>
 					<td>rdfs:subPropertyOf</td>
 					<td><a href="http://www.w3.org/TR/prov-o/#influenced">prov:influenced</a></td>
 					<td>Inverse property of <code>dct:replaces</code></td>
-			</tr>
+				</tr>-->
 				</tbody>
 			</table>
 		</div>
@@ -1029,7 +1029,9 @@
 			Dates often correspond with a who-property, e.g., creator and created or publisher and issued.
 			 Therefore, they lead to similar complex patterns (associating a date to each activity instead of an agent).
 			 When using Dublin Core terms, it is usual to see that a resource is annotated with several <code>dct</code> assertions like creator, publisher,
-			 issued, date, etc. In this section each term is treated independently. 				 
+			 issued, date, etc. In this section each term is treated independently. It is important to note that since the range for dates in Dublin Core is a 
+			 <code>rdfs:Literal</code> and <code>xsd:dateTime</code> for the <code>prov:atTime</code> property, the mapping is only valid for those literals 
+			 that are <code>xsd:dateTime</code>.
 			</p>
 			
 			<section>
@@ -1209,6 +1211,53 @@
 			</section>
 		</section>
 
+	
+	<section>
+			<h4>Entity-Entity mappings (How)</h4>
+			<p>
+			In Dublin Core, most of the properties relating entities to other entities don't describe the involvement of a specific activity 
+			(e.g., <code>dct:format</code>, <code>dct:source</code> or <code>isVersionOf</code>). 
+			The only exception is <code>dct:replaces</code>, further explained below. 
+			 				 
+			</p>
+			<section>
+				<h5 id="term_replaces">dct:replaces</h5> 
+				<p>
+				There is a relation between two resources when the former replaces or displaces the latter. The replacement is
+				the result of a "search and replace" Activity, which used a specialization of the replaced entity (<code>_:old_entity</code>) and 
+				produced a specialization of the replacement (<code>_:new_entity</code>). Thus, <code>_:new_entity</code> was derived from 
+				<code>_:old_entity</code>, as it couldn't have existed without it. However, the derivation relationship cannot always be applied between the original entities, because they 
+				could have existed before the replacement took place (for example, if a book replaces another in a catalog we cannot say that it was 
+				derived from it).
+				</p>
+				<p>
+				<pre class="code">
+CONSTRUCT{
+ 	 ?document a prov:Entity .
+ 	 ?document2 a prov:Entity.
+					
+ 	 _:activity a prov:Activity, prov:Replace ;
+			prov:used _:old_entity.
+				 
+	  # The “input”
+ 	 _:old_entity a prov:Entity;
+			prov:specializationOf ?document2 ;
+			
+ 	 # The “output”
+ 	 _:new_entity a prov:Entity ;
+			prov:specializationOf ?document ;
+			prov:wasGeneratedBy _:activity;
+			prov:wasDerivedFrom _:old_entity .
+                     
+ } WHERE { 
+  ?document dct:replaces ?document2.
+ }
+				</pre></p>
+			</section>
+			<p>
+			The term <code>dct:isReplacedBy</code> would produce a similar mapping, inverting the roles of document and document2.
+			</p>
+	</section>
 	</section>
 	<section>
 	<h3>Cleanup</h3>
@@ -1318,7 +1367,7 @@
 				<td><b id="term_alternative"><a href="http://purl.org/dc/terms/alternative">dct:alternative</a></b></td>
 				<td>Descriptive metadata</td>
 				<td>Refers to an alternative title of the resource. For example "The Bible" might be also known as "The Holy Book". Titles are not identifiers,
-				so this property can't be mapped to <code>prov:alternateOf</code>.</td>
+				so this property cannot be mapped to <code>prov:alternateOf</code>.</td>
 			</tr><tr>
 				<td><b id="term_audience"><a href="http://purl.org/dc/terms/audience">dct:audience</a></b></td>
 				<td>Descriptive metadata</td>
@@ -1388,7 +1437,7 @@
 			</tr><tr>
 				<td><b id="term_spatial"><a href="http://purl.org/dc/terms/spatial">dct:spatial</a></b></td> 
 				<td>Descriptive metadata</td>
-				<td>Spatial characteristics of the content of the resource (e.g., the book is about Spain). Thus it can't be mapped to <code>prov:hadLocation</code>.</td>
+				<td>Spatial characteristics of the content of the resource (e.g., the book is about Spain). Thus it cannot be mapped to <code>prov:hadLocation</code>.</td>
 			</tr><tr>
 				<td><b id="term_subject"><a href="http://purl.org/dc/terms/subject">dct:subject</a></b></td>
 				<td>Descriptive metadata</td>
@@ -1420,7 +1469,7 @@
 				<td>Term used to point out, refer or cite a related resource to the resource being described. The references normally point
 				out to resources from which the current resource was derived, or that the current resource quoted. However, this is not 
 				always the case. For example, if a resource A included a reference
-				to a resource B stating :"Reference [B] has nothing to do with the work described here", then we can't consider the reference as a derivation
+				to a resource B stating :"Reference [B] has nothing to do with the work described here", then we cannot consider the reference as a derivation
 				or a quotation. For this reason, <code>dct:references</code> has been dropped from the mapping.</td>
 			</tr><tr>
 				<td id="term_isReferencedBy"><b><a href="http://purl.org/dc/terms/isReferencedBy">dct:isReferencedBy</a></b></td> 
@@ -1469,12 +1518,12 @@
 	<section> 
 		<h2>Mapping from PROV to DC</h2>
 			<p>
-			The mapping from PROV to Dublin Core is not part of this note. It can be questioned whether a mapping without the refinements defined above would provide 
-			meaningful data. If the refinements are used, then the inverse of the mapping patterns used in this document can be applied.
+			The mapping from PROV to Dublin Core is not part of this note. If the refinements proposed in this document are used, then the inverse of the complex mapping 
+			patterns can be applied.
 			However, if the refinements are not used then only a few Dublin Core statements can be inferred from plain PROV statements. 
 			For example, when mapping dates only unqualified properties can be extracted,
 			as there is no information if an activity with an associated date is a creation or a modification or a publication. Likewise, the agents 
-			involved can't be mapped to creators, contributors, or publishers. While Dublin Core includes provenance information, its focus 
+			involved cannot be mapped to creators, contributors, or publishers. While Dublin Core includes provenance information, its focus 
 			lies on the broader description of resources. PROV models a provenance chain, but it provides almost no information about the involved 
 			resources themselves. 
 			</p>
@@ -1484,8 +1533,8 @@
 	<section class="appendix">
 		<h2>Acknowledgements</h2>
 	    <p>
-		This document is the result of a collaboration between the Provenance Working Group and the Dublin Core Metadata Iniciative. 
-		The editors extend special thanks to Antoine Isaac, Ivan Herman, Timothy Lebo, Luc Moreau and Satya Sahoo for their feedback; and Mar&iacute;a Poveda and Idafen Santana P&eacute;rez for their help with the HTML generation. 
+		This document is the result of a collaboration between the Provenance Working Group and the Dublin Core Metadata Initiative. 
+		The editors extend special thanks to Antoine Isaac, Ivan Herman, Timothy Lebo, Luc Moreau and Satya Sahoo for their feedback; and Mar&iacute;a Poveda and Idafen Santana for their help with the HTML generation. 
 	    </p>
 	</section>
 </body>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dc-note/files/construct queries/entity-entity/replaces.ttl	Mon Mar 04 00:17:04 2013 +0100
@@ -0,0 +1,24 @@
+ PREFIX prov: <http://www.w3.org/ns/prov#>
+ PREFIX dct: <http://purl.org/dc/terms/>
+ PREFIX owl: <http://www.w3.org/2002/07/owl#>
+ PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ 
+CONSTRUCT{
+ ?document           a                         prov:Entity .
+ ?document2          a                         prov:Entity.
+					
+ _:activity          a                         prov:Activity, prov:Replace ;
+					 prov:used                 _:old_entity.
+				 
+ # The input
+ _:old_entity        a                         prov:Entity ;
+                     prov:specializationOf     ?document2 ;
+ # The output
+ _:new_entity        a                         prov:Entity ;
+                     prov:specializationOf     ?document ;
+                     prov:wasGeneratedBy       _:activity;
+                     prov:wasDerivedFrom       _:old_entity .
+                     
+ } WHERE { 
+  ?document dct:replaces ?document2.
+ }
\ No newline at end of file
--- a/dc-note/files/prov-dc-directmappings.ttl	Sun Mar 03 14:49:48 2013 +0000
+++ b/dc-note/files/prov-dc-directmappings.ttl	Mon Mar 04 00:17:04 2013 +0100
@@ -12,7 +12,6 @@
  dct:hasVersion      owl:equivalentProperty    prov:hadRevision .
  dct:hasFormat       rdfs:subPropertyOf        prov:alternateOf .
  dct:isFormatOf      rdfs:subPropertyOf        prov:alternateOf .
- dct:replaces        rdfs:subPropertyOf        prov:wasInfluencedBby .
  dct:isReplacedBy    rdfs:subPropertyOf        prov:influenced .
  dct:source          rdfs:subPropertyOf        prov:wasDerivedFrom .
  
--- a/dc-note/files/prov-dc-refinements.ttl	Sun Mar 03 14:49:48 2013 +0000
+++ b/dc-note/files/prov-dc-refinements.ttl	Mon Mar 04 00:17:04 2013 +0100
@@ -10,6 +10,7 @@
  prov:Accept                   rdfs:subClassOf     prov:Activity .
  prov:Copyright                rdfs:subClassOf     prov:Activity .
  prov:Submit                   rdfs:subClassOf     prov:Activity .
+ prov:Replace                  rdfs:subClassOf     prov:Activity .
  prov:Publisher                rdfs:subClassOf     prov:Role .
  prov:Contributor              rdfs:subClassOf     prov:Role . 
  prov:Creator                  rdfs:subClassOf     prov:Role, prov:Contributor .
\ No newline at end of file