Merge something
authorStian Soiland-Reyes <soiland-reyes@cs.manchester.ac.uk>
Fri, 20 Apr 2012 01:14:49 +0100
changeset 2415 47b52dc6a91e
parent 2414 f5785e290373 (current diff)
parent 2412 971034e4052c (diff)
child 2416 56a4e017264e
Merge something
primer/overview.png
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/eg-25-extended-crime-file-example/document/homepage	Fri Apr 20 01:14:49 2012 +0100
@@ -0,0 +1,2 @@
+http://www.w3.org/2011/prov/wiki/Eg-25-extended-crime-file-example
+http://dvcs.w3.org/hg/prov/file/tip/examples/extended-crime-file-example
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/eg-25-extended-crime-file-example/rdf/extended-crime-file-example.ttl	Fri Apr 20 01:14:49 2012 +0100
@@ -0,0 +1,133 @@
[email protected] xsd:  <http://www.w3.org/2001/XMLSchema#> .
[email protected] prov: <http://www.w3.org/ns/prov#> .
[email protected] foaf: <http://xmlns.com/foaf/0.1/> .
[email protected] ex:   <http://example.org#> .
[email protected] sioc: <http://rdfs.org/sioc/ns#Post> .
+
+ex:accountPost{
+	ex:accountPost 
+		a prov:Account
+	.
+	ex:derek
+	   a prov:Agent;
+	   a foaf:Person;
+	   foaf:givenName "Derek"^^xsd:string;
+	   foaf:mbox      <mailto:[email protected]>;
+	   prov:actedOnBehalfOf ex:chartgen 
+	.
+	ex:monica
+	   a prov:Agent;
+	   a foaf:Person;
+	   foaf:givenName "Monica"^^xsd:string;
+	   foaf:mbox      <mailto:[email protected]>
+	.
+
+	ex:chartgen 
+	   a prov:Agent;
+	   a prov:Organization;
+	   foaf:name "Chart Generators"
+	. 
+
+	ex:aggregatedByRegions
+	   a prov:Entity;
+	   prov:atLocation <file://Users/aggr.txt>
+	.
+
+	ex:post9821 
+	   a prov:Entity, sioc:Post;   
+	   prov:wasGeneratedBy ex:publicationActivity1123;
+	   prov:atLocation ex:more-crime-happens-in-cities;  ##PERMALINK of the post
+	   ex:snapshotContent ex:postContent0;                ##Snapshot with the content of this version
+	   prov:qualifiedGeneration [
+		  a prov:Generation;
+		  prov:activity ex:publicationActivity1123;
+		  prov:atTime "2011-07-16T01:52:02Z"^^xsd:dateTime; 
+		  prov:atLocation <http://dbpedia.org/resource/Madrid>.
+	   ];
+	   sioc:title "More crime happens in cities"^^xsd:string;
+	   prov:hadOriginalSource ex:aggregatedByRegions;
+	   prov:wasAttributedTo ex:dereck
+	.
+
+	##Version 2 of the post
+	ex:post9821v1
+		a prov:Entity, sioc:Post;
+		prov:atLocation ex:more-crime-happens-in-cities;   ##PERMALINK of the post
+		ex:snapshotContent ex:postContent1;                ##Snapshot with the content of this version
+		prov:wasRevisionOf ex:post9821;
+		prov:specializationOf ex:post9821;
+		prov:wasAttributedTo ex:dereck
+	.
+
+	##Rephrasing of the post in a new version
+	ex:post9821v2
+		a prov:Entity, sioc:Post;
+		prov:atLocation ex:more-crime-happens-in-cities-for-dummies;  ##PERMALINK of the post
+		ex:snapshotContent ex:postContent2;                           ##Snapshot with the content of this version
+		prov:alternateOf ex:post9821v1;
+		prov:specializationOf ex:post9821;
+		prov:tracedTo ex:aggregatedByRegions;                         ##If the file hadn't existed, Monica would have not written the post
+		sioc:title "More crime happens in cities for dummies"^^xsd:string;
+		prov:wasAttributedTo ex:monica
+	.
+		
+	   
+	<http://dbpedia.org/resource/Madrid> 
+		a prov:Location
+	.
+
+	ex:publicationActivity1123 
+		a prov:Activity;
+		prov:wasStartedAt      "2011-07-16T01:01:01Z"^^xsd:dateTime;
+		prov:wasEndedAt        "2011-07-16T01:52:02Z"^^xsd:dateTime;
+		prov:wasAssociatedWith ex:derek;
+		prov:used              ex:aggregatedByRegions;   
+		prov:generated         ex:post9821;
+		prov:wasStartedBy 	   ex:dereck;
+		prov:wasEndedBy 	   ex:dereck
+	.
+}
+	
+ex:accountPost2{
+	ex:accountPost2 
+		a prov:Account;
+		prov:hasAnnotation ex:noteMadeByParser
+	.
+	
+	ex:john 
+		a prov:Agent
+	.
+	
+	ex:post19201
+		a prov:Entity, sioc:Post;
+		prov:wasAttributedTo ex:john;
+		prov:atLocation ex:is-there-really-more-crime;
+		ex:snapshotContent ex:postContent3;  
+		prov:wasQuotedFrom post9821v1, post9821v2;
+		prov:hadOriginalSource ex:aggregatedByRegions
+	.
+}
+
+ex:noteMadeByParser{
+	ex:noteMadeByParser 
+		a prov:Note;
+		prov:wasAttributedTo ex:boogleParser
+	.
+	
+	ex:boogleParser 
+		a prov:SoftwareAgent;
+		prov:actedOnBehalfOf ex:boogle
+	.
+	ex:boogle
+		a prov:Organization
+	.
+	
+	ex:accountPost2 
+		ex:parsedDate "2011-08-16T00:00:02Z"^^xsd:dateTime
+	.
+}
+
+	
+	
+	
+	
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/eg-25-extended-crime-file-example/rdf/extended-crime-file-pt1.ttl	Fri Apr 20 01:14:49 2012 +0100
@@ -0,0 +1,89 @@
[email protected] xsd:  <http://www.w3.org/2001/XMLSchema#> .
[email protected] prov: <http://www.w3.org/ns/prov#> .
[email protected] foaf: <http://xmlns.com/foaf/0.1/> .
[email protected] ex:   <http://example.org#> .
[email protected] sioc: <http://rdfs.org/sioc/ns#Post> .
+
+ex:accountPost{
+	ex:accountPost 
+		a prov:Account
+	.
+	ex:derek
+	   a prov:Agent;
+	   a foaf:Person;
+	   foaf:givenName "Derek"^^xsd:string;
+	   foaf:mbox      <mailto:[email protected]>;
+	   prov:actedOnBehalfOf ex:chartgen 
+	.
+	ex:monica
+	   a prov:Agent;
+	   a foaf:Person;
+	   foaf:givenName "Monica"^^xsd:string;
+	   foaf:mbox      <mailto:[email protected]>
+	.
+
+	ex:chartgen 
+	   a prov:Agent;
+	   a prov:Organization;
+	   foaf:name "Chart Generators"
+	. 
+
+	ex:aggregatedByRegions
+	   a prov:Entity;
+	   prov:atLocation <file://Users/aggr.txt>
+	.
+
+	ex:post9821 
+	   a prov:Entity, sioc:Post;   
+	   prov:wasGeneratedBy ex:publicationActivity1123;
+	   prov:atLocation ex:more-crime-happens-in-cities;  ##PERMALINK of the post
+	   ex:snapshotContent ex:postContent0;                ##Snapshot with the content of this version
+	   prov:qualifiedGeneration [
+		  a prov:Generation;
+		  prov:activity ex:publicationActivity1123;
+		  prov:atTime "2011-07-16T01:52:02Z"^^xsd:dateTime; 
+		  prov:atLocation <http://dbpedia.org/resource/Madrid>.
+	   ];
+	   sioc:title "More crime happens in cities"^^xsd:string;
+	   prov:hadOriginalSource ex:aggregatedByRegions;
+	   prov:wasAttributedTo ex:dereck
+	.
+
+	##Version 2 of the post
+	ex:post9821v1
+		a prov:Entity, sioc:Post;
+		prov:atLocation ex:more-crime-happens-in-cities;   ##PERMALINK of the post
+		ex:snapshotContent ex:postContent1;                ##Snapshot with the content of this version
+		prov:wasRevisionOf ex:post9821;
+		prov:specializationOf ex:post9821;
+		prov:wasAttributedTo ex:dereck
+	.
+
+	##Rephrasing of the post in a new version
+	ex:post9821v2
+		a prov:Entity, sioc:Post;
+		prov:atLocation ex:more-crime-happens-in-cities-for-dummies;  ##PERMALINK of the post
+		ex:snapshotContent ex:postContent2;                           ##Snapshot with the content of this version
+		prov:alternateOf ex:post9821v1;
+		prov:specializationOf ex:post9821;
+		prov:tracedTo ex:aggregatedByRegions;                         ##If the file hadn't existed, Monica would have not written the post
+		sioc:title "More crime happens in cities for dummies"^^xsd:string;
+		prov:wasAttributedTo ex:monica
+	.
+		
+	   
+	<http://dbpedia.org/resource/Madrid> 
+		a prov:Location
+	.
+
+	ex:publicationActivity1123 
+		a prov:Activity;
+		prov:wasStartedAt      "2011-07-16T01:01:01Z"^^xsd:dateTime;
+		prov:wasEndedAt        "2011-07-16T01:52:02Z"^^xsd:dateTime;
+		prov:wasAssociatedWith ex:derek;
+		prov:used              ex:aggregatedByRegions;   
+		prov:generated         ex:post9821;
+		prov:wasStartedBy 	   ex:dereck;
+		prov:wasEndedBy 	   ex:dereck
+	.
+}
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/eg-25-extended-crime-file-example/rdf/extended-crime-file-pt2.ttl	Fri Apr 20 01:14:49 2012 +0100
@@ -0,0 +1,23 @@
[email protected] xsd:  <http://www.w3.org/2001/XMLSchema#> .
[email protected] prov: <http://www.w3.org/ns/prov#> .
[email protected] foaf: <http://xmlns.com/foaf/0.1/> .
[email protected] ex:   <http://example.org#> .
[email protected] sioc: <http://rdfs.org/sioc/ns#Post> .
+
+ex:accountPost2{
+	ex:accountPost2 
+		a prov:Account;
+		prov:hasAnnotation ex:noteMadeByParser
+	.
+	
+	ex:john 
+		a prov:Agent
+	.
+	
+	ex:post19201
+		a prov:Entity, sioc:Post;
+		prov:wasAttributedTo ex:john;
+		prov:wasQuotedFrom post9821v1, post9821v2;
+		prov:hadOriginalSource ex:aggregatedByRegions
+	.
+}
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/eg-25-extended-crime-file-example/rdf/extended-crime-file-pt3.ttl	Fri Apr 20 01:14:49 2012 +0100
@@ -0,0 +1,24 @@
[email protected] xsd:  <http://www.w3.org/2001/XMLSchema#> .
[email protected] prov: <http://www.w3.org/ns/prov#> .
[email protected] foaf: <http://xmlns.com/foaf/0.1/> .
[email protected] ex:   <http://example.org#> .
[email protected] sioc: <http://rdfs.org/sioc/ns#Post> .
+
+ex:noteMadeByParser{
+	ex:noteMadeByParser 
+		a prov:Note;
+		prov:wasAttributedTo ex:boogleParser
+	.
+	
+	ex:boogleParser 
+		a prov:SoftwareAgent;
+		prov:actedOnBehalfOf ex:boogle
+	.
+	ex:boogle
+		a prov:Organization
+	.
+	
+	ex:accountPost2 
+		ex:parsedDate "2011-08-16T00:00:02Z"^^xsd:dateTime
+	.
+}
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/eg-26-provo-collections-narrative/document/homepage	Fri Apr 20 01:14:49 2012 +0100
@@ -0,0 +1,2 @@
+http://www.w3.org/2011/prov/wiki/Eg-26-provo-collections-narrative
+http://dvcs.w3.org/hg/prov/file/tip/examples/eg-26-provo-collections-narrative
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/eg-26-provo-collections-narrative/rdf/eg-26-provo-collections-narrative.ttl	Fri Apr 20 01:14:49 2012 +0100
@@ -0,0 +1,11 @@
[email protected] rdf:     <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
[email protected] rdfs:    <http://www.w3.org/2000/01/rdf-schema#> .
[email protected]fix xsd:     <http://www.w3.org/2001/XMLSchema#> .
[email protected] owl:     <http://www.w3.org/2002/07/owl#> .
[email protected] dcterms: <http://purl.org/dc/terms/> .
[email protected] sd:      <http://www.w3.org/ns/sparql-service-description#> .
[email protected] dcat:    <http://www.w3.org/ns/dcat#> .
[email protected] void:    <http://rdfs.org/ns/void#> .
[email protected] foaf:    <http://xmlns.com/foaf/0.1/> .
[email protected] prov:    <http://www.w3.org/ns/prov#> .
[email protected] :        <http://dvcs.w3.org/hg/prov/raw-file/tip/examples/eg-26-provo-collections-narrative/rdf/eg-26-provo-collections-narrative.ttl#> .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/eg-26-provo-collections-narrative/rdf/eg-26-provo-collections-narrative.ttl.sd_name	Fri Apr 20 01:14:49 2012 +0100
@@ -0,0 +1,1 @@
+http://dvcs.w3.org/hg/prov/raw-file/tip/examples/eg-26-provo-collections-narrative/rdf/eg-26-provo-collections-narrative.ttl
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/eg-26-provo-collections-narrative/rdf/insertion.ttl	Fri Apr 20 01:14:49 2012 +0100
@@ -0,0 +1,20 @@
[email protected] prov: <http://www.w3.org/ns/prov#> .
[email protected] xsd: <http://www.w3.org/2001/XMLSchema#> .
[email protected] :    <http://example.org/> .
+
+:e1 a prov:Entity .
+:e2 a prov:Entity .
+:c  a prov:EmptyCollection .
+:c1 a prov:Collection ;
+    prov:derivedByInsertionFrom :c ;
+    prov:qualifiedInsertion [ a prov:Insertion ;
+        prov:collection :c ;
+        prov:inserted [ a prov:KeyValuePair ;
+            prov:key "k1"^^xsd:string ;
+            prov:value :e1 ;
+        ], [ a prov:KeyValuePair ;
+            prov:key "k2"^^xsd:string ;
+            prov:value :e2 ;
+          ]
+    ] .
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/eg-26-provo-collections-narrative/rdf/membership.ttl	Fri Apr 20 01:14:49 2012 +0100
@@ -0,0 +1,21 @@
[email protected] prov: <http://www.w3.org/ns/prov#> .
[email protected] xsd: <http://www.w3.org/2001/XMLSchema#> .
[email protected] :    <http://example.org/> .
+
+:e1 a prov:Entity .
+:e2 a prov:Entity .
+
+:c1 a prov:Collection;
+   prov:membership [ 
+      a prov:Membership;
+      prov:member [ 
+           a prov:KeyValuePair;
+           prov:key   "k1"^^xsd:string;
+           prov:value :e1
+        ], [ 
+           a prov:KeyValuePair;
+           prov:key   "k2"^^xsd:string;
+           prov:value :e2
+        ];
+    ];
+.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/eg-26-provo-collections-narrative/rdf/removal.ttl	Fri Apr 20 01:14:49 2012 +0100
@@ -0,0 +1,11 @@
[email protected] prov: <http://www.w3.org/ns/prov#> .
[email protected] xsd: <http://www.w3.org/2001/XMLSchema#> .
[email protected] :    <http://example.org/> .
+
+:c2 a prov:Collection .
+:c3 a prov:Collection ;
+   prov:derivedByRemovalFrom :c2 ;
+   prov:qualifiedRemoval [ a prov:Removal ;
+        prov:collection :c2 ;
+        prov:removed "k1"^^xsd:string, "k3"^^xsd:string
+     ] .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/eg-27-small-command-line/readme.txt	Fri Apr 20 01:14:49 2012 +0100
@@ -0,0 +1,5 @@
+Example of modelling a zip command line
+- This is taken from the Data2Semantics project converting a database to RDF.
+- You can find the complete provenance information at https://github.com/Data2Semantics/raw2ld/blob/master/provenance/
+- Thanks to Rinke Hoekstra who did the big example pointed to above from which this is extracted
+- Note, there may be some differences between this example and the one from d2s project
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/eg-27-small-command-line/ttl/eg-27.ttl	Fri Apr 20 01:14:49 2012 +0100
@@ -0,0 +1,34 @@
[email protected] xsd: <http://www.w3.org/2001/XMLSchema#> .
[email protected] owl: <http://www.w3.org/2002/07/owl#> .
[email protected] : <http://aers.data2semantics.org/provenance/> .
[email protected] xml: <http://www.w3.org/XML/1998/namespace> .
[email protected] d2s-prov: <http://www.data2semantics.org/provenance-ontology/> .
[email protected] rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
[email protected] rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
[email protected] <http://aers.data2semantics.org/provenance/> .
+
+                                             
+###  http://www.data2semantics.org/provenance-ontology/Unzip
+
+d2s-prov:Unzip rdf:type owl:Class ;
+       rdfs:label "Unzip"@en ;
+       rdfs:subClassOf <http://www.w3.org/ns/prov-o/Activity> ;
+       rdfs:comment "Activity that unzips a binary zipped-file"@en .
+
+
+:File rdf:type owl:Class ;
+      rdfs:label "File"@en ;
+      rdfs:subClassOf <http://www.w3.org/ns/prov-o/Entity> .
+
+:aers_asci_2011q1zip rdf:type d2s-prov:File ,
+                               owl:NamedIndividual ;
+                      
+                      rdfs:label "aers_asci_2011q1.zip"@en.
+
+:unzip_aers_ascii_2011q1zip rdf:type d2s-prov:Unzip,
+                                     owl:NamedIndividual;
+                             
+      rdfs:label "unzip_aers_ascii_2011q1.zip"@en;
+      <http://www.w3.org/ns/prov-o/used> :aers_asci_2011q1zip ;
+      <http://www.w3.org/ns/prov-o/wasScheduledAfter> :download_aers_ascii_2011q1zip ;
+      <http://www.w3.org/ns/prov-o/wasControlledBy> <http://www.few.vu.nl/~hoekstra> .
--- a/model/Makefile	Fri Apr 20 01:10:42 2012 +0100
+++ b/model/Makefile	Fri Apr 20 01:14:49 2012 +0100
@@ -34,7 +34,7 @@
 	cat $(WORKDIR)/prov-dm-constraints.xhtml | sed -e "s/&le/le/g" | sed -e "s/&cup/cup/g" | sed -e "s/&ge/ge/g" | grep -v "/html" > $(WORKDIR)/prov-dm-constraints-2.xhtml
 	csplit -f $(WORKDIR)/out $(WORKDIR)/prov-dm-2.xhtml /body/
 	echo "<html>" > $(WORKDIR)/all-divs.html
-	xpath $(WORKDIR)/out01 .//div[@class] >> $(WORKDIR)/all-divs.html
+	xpath $(WORKDIR)/out01 .//div >> $(WORKDIR)/all-divs.html
 	csplit -f $(WORKDIR)/out $(WORKDIR)/prov-dm-constraints-2.xhtml /body/
 	xpath $(WORKDIR)/out01 .//div[@class] >> $(WORKDIR)/all-divs.html
 	xpath $(WORKDIR)/out01 .//span[@class] >> $(WORKDIR)/all-divs.html
--- a/model/all-divs.js	Fri Apr 20 01:10:42 2012 +0100
+++ b/model/all-divs.js	Fri Apr 20 01:14:49 2012 +0100
@@ -3,102 +3,136 @@
 //  with <script src="all-divs.js" class="remove"></script>
 //Insert glossary definitions with the following 
 // <div class="glossary-ref" ref="glossary-generation"></div>
-divs_hg='http://dvcs.w3.org/hg/prov/file/baac41bffc1f/model/prov-dm.html';
+divs_hg='http://dvcs.w3.org/hg/prov/file/4482fa5dd39f/model/prov-dm.html';
 divs_string= 
 '<html> \n' + 
-'<div class="note"> \n' + 
-'      TO EDIT \n' + 
-'    </div><div class="note"> \n' + 
-'      TO EDIT \n' + 
-'    </div><div class="buttonpanel"> \n' + 
-'      <form action="#"> \n' + 
-'        <p> \n' + 
-'          <input id="hide-asn" onclick="set_display_by_class(\'div\',\'withAsn\',\'none\');set_display_by_class(\'span\',\'withAsn\',\'none\'); set_display_by_id(\'hide-asn\',\'none\'); set_display_by_id(\'show-asn\',\'\');" type="button" value="Hide ASN" /> <input id="show-asn" onclick="set_display_by_class(\'div\',\'withAsn\',\'\'); set_display_by_class(\'span\',\'withAsn\',\'\');  set_display_by_id(\'hide-asn\',\'\'); set_display_by_id(\'show-asn\',\'none\');" style="display: none" type="button" value="Show ASN" /> \n' + 
-'        </p> \n' + 
-'      </form> \n' + 
-'    </div><div class="issue"> \n' + 
-'      There is a desire to use a single namespace that all specifications of the \n' + 
-'      PROV family can share to refer to common provenance terms. This is <a href="http://www.w3.org/2011/prov/track/issues/224">ISSUE-224</a>. \n' + 
+'<div style="text-align: left;"> \n' + 
+'      <table border="1" style="margin-left: auto; margin-right: auto;"> \n' + 
+'        <caption id="namespace-table"> \n' + 
+'          Table 1: Prefix and Namespaces used in this specification \n' + 
+'        </caption> \n' + 
+'        <tr> \n' + 
+'          <td> \n' + 
+'            <a>prefix</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            namespace uri \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            definition \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr> \n' + 
+'          <td> \n' + 
+'            <a>prov</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            http://www.w3.org/ns/prov# \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            The PROV namespace (see Section <a href="#term-NamespaceDeclaration">4.7.1</a>) \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr> \n' + 
+'          <td> \n' + 
+'            <a>xsd</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            http://www.w3.org/2000/10/XMLSchema# \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            XML Schema Namespace [[!XMLSCHEMA-2]] \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr> \n' + 
+'          <td> \n' + 
+'            <a>rdf</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            http://www.w3.org/1999/02/22-rdf-syntax-ns# \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            The RDF namespace [[!RDF-CONCEPTS]] \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr> \n' + 
+'          <td> \n' + 
+'            <a>(others)</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            (various) \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            All other namespace prefixes are used in examples only. <br /> In \n' + 
+'            particular, URIs starting with "http://example.com" represent<br /> \n' + 
+'            some application-dependent URI [[!URI]] \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'      </table> \n' + 
 '    </div><div class="glossary-ref"> \n' + 
-'    </div><div class="anexample" id="entity-example"> \n' + 
+'    </div><div class="conceptexample" id="entity-example"> \n' + 
 '      <p> \n' + 
-'        An entity may be the document at URI <a href="http://www.w3.org/TR/prov-dm/">http://www.w3.org/TR/prov-dm/</a>, \n' + 
-'        a file in a file system, a car or an idea. \n' + 
+'        An entity may be the document at URI <a href="http://www.bbc.co.uk/news/science-environment-17526723">http://www.bbc.co.uk/news/science-environment-17526723</a>, \n' + 
+'        a file in a file system, a car, or an idea. \n' + 
 '      </p> \n' + 
-'    </div><div class="anexample" id="activity-example"> \n' + 
+'    </div><div class="conceptexample" id="activity-example"> \n' + 
 '      <p> \n' + 
-'        An activity may be the publishing of a document on the web, sending a \n' + 
-'        twitter message, extracting metadata embedded in a file, or driving a \n' + 
-'        car from Boston to Cambridge, assembling a data set based on a set of \n' + 
+'        An activity may be the publishing of a document on the Web, sending a \n' + 
+'        twitter message, extracting metadata embedded in a file, driving a car \n' + 
+'        from Boston to Cambridge, assembling a data set based on a set of \n' + 
 '        measurements, performing a statistical analysis over a data set, sorting \n' + 
 '        news items according to some criteria, running a SPARQL query over a \n' + 
-'        triple store, and editing a file. \n' + 
-'      </p> \n' + 
-'    </div><div class="anexample" id="agent-example"> \n' + 
-'      <p> \n' + 
-'        Software for checking the use of grammar in a document may be defined as \n' + 
-'        an agent of a document preparation activity, and at the same time one \n' + 
-'        can describe its provenance, including for instance the vendor and the \n' + 
-'        version history. \n' + 
+'        triple store, or editing a file. \n' + 
 '      </p> \n' + 
 '    </div><div class="glossary-ref"> \n' + 
 '    </div><div class="glossary-ref"> \n' + 
-'    </div><div class="anexample" id="generation-example"> \n' + 
-'      Examples of generation are the completed creation of a file by a program, \n' + 
-'      the completed creation of a linked data set, and the completed publication \n' + 
-'      of a new version of a document. \n' + 
-'    </div><div class="anexample" id="usage-example"> \n' + 
-'      Usage examples include a procedure beginning to consume an argument, a \n' + 
-'      service starting to read a value on a port, a program beginning to read a \n' + 
-'      configuration file, or the point at which an ingredient, such as eggs, is \n' + 
-'      being added in a baking activity. Usage may entirely consume an entity \n' + 
-'      (e.g. eggs are no longer available after being added to the mix); \n' + 
-'      alternatively, a same entity may be used multiple times, possibly by \n' + 
-'      different activities (e.g. a file on a file system can be read \n' + 
-'      indefinitely). \n' + 
-'    </div><div class="anexample" id="derivation-example"> \n' + 
+'    </div><div class="conceptexample" id="generation-example"> \n' + 
+'      <p> \n' + 
+'        Examples of generation are the completed creation of a file by a \n' + 
+'        program, the completed creation of a linked data set, and the completed \n' + 
+'        publication of a new version of a document. \n' + 
+'      </p> \n' + 
+'    </div><div class="conceptexample" id="usage-example"> \n' + 
+'      <p> \n' + 
+'        Usage examples include a procedure beginning to consume an argument, a \n' + 
+'        service starting to read a value on a port, a program beginning to read \n' + 
+'        a configuration file, or the point at which an ingredient, such as eggs, \n' + 
+'        is being added in a baking activity. Usage may entirely consume an \n' + 
+'        entity (e.g. eggs are no longer available after being added to the mix); \n' + 
+'        alternatively, the same entity may be used multiple times, possibly by \n' + 
+'        different activities (e.g. a file on a file system can be read \n' + 
+'        indefinitely). \n' + 
+'      </p> \n' + 
+'    </div><div class="conceptexample" id="derivation-example"> \n' + 
 '      <p> \n' + 
 '        Examples of derivation include the transformation of a relational table \n' + 
 '        into a linked data set, the transformation of a canvas into a painting, \n' + 
 '        the transportation of a work of art from London to New York, and a \n' + 
 '        physical transformation such as the melting of ice into water. \n' + 
 '      </p> \n' + 
-'    </div><div class="anexample" id="plan-example"> \n' + 
+'    </div><div class="conceptexample" id="agent-example"> \n' + 
+'      <p> \n' + 
+'        Software for checking the use of grammar in a document may be defined as \n' + 
+'        an agent of a document preparation activity, and at the same time one \n' + 
+'        can describe its provenance, including for instance the vendor and the \n' + 
+'        version history. A site selling books on the Web, the services involved \n' + 
+'        in the processing of orders, and the companies hosting them are also \n' + 
+'        agents. \n' + 
+'      </p> \n' + 
+'    </div><div class="conceptexample" id="plan-example"> \n' + 
 '      <p> \n' + 
 '        A plan can be a blog post tutorial for how to set up a web server, a \n' + 
 '        list of instructions for a micro-processor execution, a cook\'s written \n' + 
 '        recipe for a chocolate cake, or a workflow for a scientific experiment. \n' + 
 '      </p> \n' + 
-'    </div><div class="anexample" id="collection-example"> \n' + 
-'      <p> \n' + 
-'        An example of collection is an archive of documents. Each document has \n' + 
-'        its own provenance, but the archive itself also has some provenance: who \n' + 
-'        maintained it, which documents it contained at which point in time, how \n' + 
-'        it was assembled, etc. \n' + 
-'      </p> \n' + 
-'    </div><div class="anexample" id="account-example"> \n' + 
+'    </div><div class="glossary-ref" /><div class="conceptexample" id="attribution-example"> \n' + 
 '      <p> \n' + 
-'        Having found a resource, a user may want to retrieve its provenance. For \n' + 
-'        users to decide whether they can place their trust in that resource, \n' + 
-'        they may want to analyze its provenance, but also determine who the \n' + 
-'        provenance is attributed to, and when it was generated. Hence, from the \n' + 
-'        PROV-DM data model, the provenance is regarded as an entity, an \n' + 
-'        AccountEntity, for which provenance can be sought. \n' + 
+'        A blog post can be attributed to an author, a mobile phone to its \n' + 
+'        manufacturer. \n' + 
 '      </p> \n' + 
-'    </div><div class="anexample" id="software-agents-example"> \n' + 
+'    </div><div class="conceptexample" id="association-example"> \n' + 
 '      <p> \n' + 
-'        Even software agents can be assigned some responsibility for the effects \n' + 
-'        they have in the world, so for example if one is using a Text Editor and \n' + 
-'        one\'s laptop crashes, then one would say that the Text Editor was \n' + 
-'        responsible for crashing the laptop. If one invokes a service to buy a \n' + 
-'        book, that service can be considered responsible for drawing funds from \n' + 
-'        one\'s bank to make the purchase (the company that runs the service and \n' + 
-'        the web site would also be responsible, but the point here is that we \n' + 
-'        assign some measure of responsibility to software as well). \n' + 
-'      </p> \n' + 
-'    </div><div class="anexample" id="association-example"> \n' + 
-'      <p> \n' + 
-'        Examples of association between an activity and agent are: \n' + 
+'        Examples of association between an activity and an agent are: \n' + 
 '      </p> \n' + 
 '      <ul> \n' + 
 '        <li> \n' + 
@@ -112,10 +146,11 @@
 '          a public event, sponsored by a company, and hosted by a museum; \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          an XSLT transform initiated by a user; \n' + 
+'          an XSLT transform launched by a user based on an XSL style sheet (a \n' + 
+'          plan). \n' + 
 '        </li> \n' + 
 '      </ul> \n' + 
-'    </div><div class="anexample" id="responsibilityChain-example"> \n' + 
+'    </div><div class="conceptexample" id="responsibility-example"> \n' + 
 '      <p> \n' + 
 '        A student publishing a web page describing an academic department could \n' + 
 '        result in both the student and the department being agents associated \n' + 
@@ -123,24 +158,520 @@
 '        page but it matters a lot that the department told the student to put up \n' + 
 '        the web page. \n' + 
 '      </p> \n' + 
-'    </div><div class="note"> \n' + 
-'      TODO: short text required to explain the overview diagram \n' + 
-'    </div><div class="note"> \n' + 
-'      Illustration to be hand crafted instead of being generated automatically. \n' + 
-'      It\'s important to adopt a common style for all illustrations across all \n' + 
-'      PROV documents. \n' + 
-'    </div><div class="glossary-ref" /><div class="attributes" id="attributes-entity"> \n' + 
-'      An entity<span class="withAsn">, written <span class="name">entity(id, [ \n' + 
-'      attr1=val1, ...])</span> in PROV-ASN, </span> contains: \n' + 
+'    </div><div class="conceptexample" id="collection-example"> \n' + 
+'      <p> \n' + 
+'        An example of collection is an archive of documents. Each document has \n' + 
+'        its own provenance, but the archive itself also has some provenance: who \n' + 
+'        maintained it, which documents it contained at which point in time, how \n' + 
+'        it was assembled, etc. \n' + 
+'      </p> \n' + 
+'    </div><div class="conceptexample" id="account-example"> \n' + 
+'      <p> \n' + 
+'        For users to decide whether they can place their trust in a resource, \n' + 
+'        they may want to analyze the resource\'s provenance, but also determine \n' + 
+'        who its provenance is attributed to, and when it was generated. In other \n' + 
+'        words, users need to be able to determine the provenance of provenance. \n' + 
+'        Hence, provenance is also regarded as an entity (of type Account), by \n' + 
+'        which provenance of provenance can then be expressed. \n' + 
+'      </p> \n' + 
+'    </div><div style="text-align: left;"> \n' + 
+'      <table border="1" style="margin-left: auto; margin-right: auto;"> \n' + 
+'        <caption id="overview-types-and-relations"> \n' + 
+'          Table 2: Mapping of Provenance concepts to types and relations \n' + 
+'        </caption> \n' + 
+'        <tr> \n' + 
+'          <td> \n' + 
+'            <a><b>PROV Concepts</b></a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <b>PROV-DM types or relations</b> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <b>Name</b> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr> \n' + 
+'          <td> \n' + 
+'            <a>Entity</a> \n' + 
+'          </td> \n' + 
+'          <td rowspan="3"> \n' + 
+'            PROV-DM Types \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="dfn-Entity">entity</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr> \n' + 
+'          <td> \n' + 
+'            <a>Activity</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="dfn-Activity">activity</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr> \n' + 
+'          <td> \n' + 
+'            <a>Agent</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="dfn-agent">agent</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr> \n' + 
+'          <td> \n' + 
+'            <a>Generation</a> \n' + 
+'          </td> \n' + 
+'          <td rowspan="6"> \n' + 
+'            PROV-DM Relations \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="wasGeneratedBy">wasGeneratedBy</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr> \n' + 
+'          <td> \n' + 
+'            <a>Usage</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="used">used</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr> \n' + 
+'          <td> \n' + 
+'            <a>Attribution</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="wasAttributedTo">wasAttributedTo</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr> \n' + 
+'          <td> \n' + 
+'            <a>Association</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="wasAssociatedWith">wasAssociatedWith</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr> \n' + 
+'          <td> \n' + 
+'            <a>Responsibility</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="actedOnBehalfOf">actedOnBehalfOf</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr> \n' + 
+'          <td> \n' + 
+'            <a>Derivation</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="wasDerivedFrom">wasDerivedFrom</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'      </table> \n' + 
+'    </div><div style="text-align: center; "> \n' + 
+'      <img src="images/OverviewDiagram.png" alt="Simplified  Overview of PROV-DM" style="max-width: 70%; " /> Figure 1: Simplified Overview of PROV-DM \n' + 
+'    </div><div class="anexample"> \n' + 
+'      <p> \n' + 
+'        An activity with identifier <span class="name">a1</span> and an \n' + 
+'        attribute <span class="name">type</span> with value <span class="name">createFile</span>. \n' + 
+'      </p> \n' + 
+'<pre class="codeexample" xml:space="preserve"> \n' + 
+'activity(a1, [prov:type="createFile"]) \n' + 
+'</pre> \n' + 
+'      Two entities with identifiers <span class="name">e1</span> and <span class="name">e2</span>. \n' + 
+'<pre class="codeexample" xml:space="preserve"> \n' + 
+'entity(e1) \n' + 
+'entity(e2) \n' + 
+'</pre> \n' + 
+'      The activity <span class="name">a1</span> used <span class="name">e1</span>, \n' + 
+'      and <span class="name">e2</span> was generated by <span class="name">a1</span>. \n' + 
+'<pre class="codeexample" xml:space="preserve"> \n' + 
+'used(a1,e1) \n' + 
+'wasGeneratedBy(e2,a1) \n' + 
+'</pre> \n' + 
+'      The same description, but with an explicit identifier <span class="name">u1</span> \n' + 
+'      for the usage, and the syntactic marker <span class="name">-</span> to \n' + 
+'      mark the absence of identifier in the generation. \n' + 
+'<pre class="codeexample" xml:space="preserve"> \n' + 
+'used(u1,a1,e1) \n' + 
+'wasGeneratedBy(-,e2,a1) \n' + 
+'</pre> \n' + 
+'    </div><div style="text-align: center; "> \n' + 
+'      <img src="images/w3-publication3.png" alt="Provenance of a Document (1)" style="max-width: 98%; " /> Figure 2: Provenance of a Document (1) \n' + 
+'    </div><div style="text-align: center;"> \n' + 
+'      <img src="images/w3-publication1.png" alt="Provenance of a Document (2)" style="max-width: 90%; " /> Figure 3: Provenance of a Document (2) \n' + 
+'    </div><div id="prov-dm-components-ul"> \n' + 
 '      <ul> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">id</span>: an identifier identifying an \n' + 
+'          <b>Component 1: entities and activities.</b> The first component \n' + 
+'          consists of entities, activities, and concepts linking them, such as \n' + 
+'          generation, usage, start, end. The first component is the only one \n' + 
+'          comprising time-related concepts. \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <b>Component 2: agents and responsibility.</b> The second component \n' + 
+'          consists of agents and concepts ascribing responsibility to agents. \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <b>Component 3: derivations.</b> The third component is formed with \n' + 
+'          derivations and derivation subtypes. \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <b>Component 4: alternate.</b> The fourth component consists of \n' + 
+'          relations linking entities referring to the same thing. \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <b>Component 5: collections.</b> The fifth component is about \n' + 
+'          collections and concepts capturing their transformation, such as \n' + 
+'          insertion and removal. \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <b>Component 6: annotations.</b> The sixth component is concerned with \n' + 
+'          annotations to PROV-DM instances. \n' + 
+'        </li> \n' + 
+'      </ul> \n' + 
+'    </div><div style="text-align: center;"> \n' + 
+'      <img src="images/components.png" alt="PROV-DM Components" style="max-width: 90%; " /> <map id="componentMap"> \n' + 
+'      <area title="collections" href="#component5" coords="220,0,440,70" alt="collections" shape="rect" /> \n' + 
+'      <area title="alternate" href="#component4" coords="450,0,510,140" alt="alternate" shape="rect" /> \n' + 
+'      <area title="annotations" href="#component6" coords="530,0,590,220" alt="annotations" shape="rect" /> \n' + 
+'      <area title="activities/entities" href="#component1" coords="80,150,510,220" alt="activities/entities" shape="rect" /> \n' + 
+'      <area title="derivations" href="#component3" coords="80,0,210,70" alt="derivations" shape="rect" /> \n' + 
+'      <area title="agents/responsibility" href="#component2" coords="0,0,70,220" alt="agents/responsibility" shape="rect" /></map> \n' + 
+'      Figure 4: PROV-DM Components \n' + 
+'    </div><div id="relations-at-a-glance-div" style="text-align: center;"> \n' + 
+'      <table border="1" style="margin-left: auto; margin-right: auto;"> \n' + 
+'        <caption id="relations-at-a-glance"> \n' + 
+'          Table 3: PROV-DM Relations At a Glance \n' + 
+'        </caption> \n' + 
+'        <tr> \n' + 
+'          <td /> \n' + 
+'          <td> \n' + 
+'            Entity \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            Activity \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            Agent \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            Note \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr> \n' + 
+'          <td> \n' + 
+'            Entity \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <div class="component3-color"> \n' + 
+'              <a>wasDerivedFrom</a><br /><a>wasRevisionOf</a><br /><a>wasQuotedFrom</a><br /><a>hadOriginalSource</a> \n' + 
+'            </div> \n' + 
+'            <div class="component4-color"> \n' + 
+'              <a>alternateOf</a><br /><a>specializationOf</a> \n' + 
+'            </div> \n' + 
+'          </td> \n' + 
+'          <td class="component1-color"> \n' + 
+'            <a title="wasGeneratedBy">wasGeneratedBy</a> \n' + 
+'          </td> \n' + 
+'          <td class="component2-color"> \n' + 
+'            <a>wasAttributedTo</a> \n' + 
+'          </td> \n' + 
+'          <td class="component6-color"> \n' + 
+'            <a>hasAnnotation</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr> \n' + 
+'          <td> \n' + 
+'            Activity \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <div class="component1-color"> \n' + 
+'              <a>used</a><br /><a>wasStartedBy</a><br /><a>wasEndedBy</a> \n' + 
+'            </div> \n' + 
+'          </td> \n' + 
+'          <td class="component1-color"> \n' + 
+'            <a>wasStartedByActivity</a><br /><a>wasInformedBy</a> \n' + 
+'          </td> \n' + 
+'          <td class="component2-color"> \n' + 
+'            <a>wasAssociatedWith</a> \n' + 
+'          </td> \n' + 
+'          <td class="component6-color"> \n' + 
+'            <a>hasAnnotation</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr> \n' + 
+'          <td> \n' + 
+'            Agent \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'          </td> \n' + 
+'          <td class="component2-color"> \n' + 
+'            <a>actedOnBehalfOf</a> \n' + 
+'          </td> \n' + 
+'          <td class="component6-color"> \n' + 
+'            <a>hasAnnotation</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr> \n' + 
+'          <td> \n' + 
+'            Note \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'          </td> \n' + 
+'          <td class="component6-color"> \n' + 
+'            <a>hasAnnotation</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'      </table> \n' + 
+'    </div><div class="component3-color"> \n' + 
+'              <a>wasDerivedFrom</a><br /><a>wasRevisionOf</a><br /><a>wasQuotedFrom</a><br /><a>hadOriginalSource</a> \n' + 
+'            </div><div class="component4-color"> \n' + 
+'              <a>alternateOf</a><br /><a>specializationOf</a> \n' + 
+'            </div><div class="component1-color"> \n' + 
+'              <a>used</a><br /><a>wasStartedBy</a><br /><a>wasEndedBy</a> \n' + 
+'            </div><div id="prov-dm-types-and-relations" style="text-align: left;"> \n' + 
+'      <table border="1" style="margin-left: auto; margin-right: auto;"> \n' + 
+'        <caption id="prov-dm-types-and-relations_"> \n' + 
+'          Table 4: PROV-DM Types and Relations \n' + 
+'        </caption> \n' + 
+'        <tr> \n' + 
+'          <td> \n' + 
+'            <a><b>Type or Relation Name</b></a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <b>Representation in the PROV-N notation</b> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr class="component1-color"> \n' + 
+'          <td> \n' + 
+'            <a>Entity</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="dfn-Entity">entity(id, [ attr1=val1, ...])</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr class="component1-color"> \n' + 
+'          <td> \n' + 
+'            <a>Activity</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="dfn-Activity">activity(id, st, et, [ attr1=val1, ...])</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr class="component1-color"> \n' + 
+'          <td> \n' + 
+'            <a>Generation</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="wasGeneratedBy">wasGeneratedBy(id,e,a,t,attrs)</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr class="component1-color"> \n' + 
+'          <td> \n' + 
+'            <a>Usage</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="used">used(id,a,e,t,attrs)</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr class="component1-color"> \n' + 
+'          <td> \n' + 
+'            <a>Start</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="wasStartedBy">wasStartedBy(id,a,e,t,attrs)</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr class="component1-color"> \n' + 
+'          <td> \n' + 
+'            <a>End</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="wasEndedBy">wasEndedBy(id,a,e,t,attrs)</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr class="component1-color"> \n' + 
+'          <td> \n' + 
+'            <a>Communication</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="wasInformedBy">wasInformedBy(id,a2,a1,attrs)</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr class="component1-color"> \n' + 
+'          <td> \n' + 
+'            <a>Start by Activity</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="wasStartedByActivity">wasStartedByActivity(id, a2, a1, \n' + 
+'            attrs)</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr class="component2-color"> \n' + 
+'          <td> \n' + 
+'            <a>Agent</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="dfn-agent">agent(id, [ attr1=val1, ...])</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr class="component2-color"> \n' + 
+'          <td> \n' + 
+'            <a>Attribution</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="wasAttributedTo">wasAttributedTo(id,e,ag,attr)</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr class="component2-color"> \n' + 
+'          <td> \n' + 
+'            <a>Association</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="wasAssociatedWith">wasAssociatedWith(id,a,ag,pl,attrs)</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr class="component2-color"> \n' + 
+'          <td> \n' + 
+'            <a>Responsibility</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="actedOnBehalfOf">actedOnBehalfOf(id,ag2,ag1,a,attrs)</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr class="component3-color"> \n' + 
+'          <td> \n' + 
+'            <a>Derivation</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="wasDerivedFrom">wasDerivedFrom(id, e2, e1, a, g2, u1, \n' + 
+'            attrs)</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr class="component3-color"> \n' + 
+'          <td> \n' + 
+'            <a>Revision</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="wasRevisionOf">wasRevisionOf(id,e2,e1,ag,attrs)</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr class="component3-color"> \n' + 
+'          <td> \n' + 
+'            <a>Quotation</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="wasQuotedFrom">wasQuotedFrom(id,e2,e1,ag2,ag1,attrs)</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr class="component3-color"> \n' + 
+'          <td> \n' + 
+'            <a>Original Source</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="hadOriginalSource">hadOriginalSource(id,e2,e1,attrs)</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr class="component3-color"> \n' + 
+'          <td> \n' + 
+'            <a>Traceability</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="tracedTo">tracedTo(id,e2,e1,attrs)</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr class="component4-color"> \n' + 
+'          <td> \n' + 
+'            <a>Alternate</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="alternateOf">alternateOf(alt1, alt2)</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr class="component4-color"> \n' + 
+'          <td> \n' + 
+'            <a>Specialization</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="specializationOf">specializationOf(sub, super)</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr class="component5-color"> \n' + 
+'          <td> \n' + 
+'            <a>Collection</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a>Collection</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr class="component5-color"> \n' + 
+'          <td> \n' + 
+'            <a>Insertion</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="derivedByInsertionFrom">derivedByInsertionFrom(id, c2, c1, \n' + 
+'            {(key_1, e_1), ..., (key_n, e_n)}, attrs)</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr class="component5-color"> \n' + 
+'          <td> \n' + 
+'            <a>Removal</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="derivedByRemovalFrom">derivedByRemovalFrom(id, c2, c1, \n' + 
+'            {key_1, ... key_n}, attrs)</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr class="component5-color"> \n' + 
+'          <td> \n' + 
+'            <a>Membership</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="memberOf">memberOf(c, {(key_1, e_1), ..., (key_n, e_n)})</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr class="component6-color"> \n' + 
+'          <td> \n' + 
+'            <a>Note</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="dfn-note">note(id, [ attr1=val1, ...])</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'        <tr class="component6-color"> \n' + 
+'          <td> \n' + 
+'            <a>Annotation</a> \n' + 
+'          </td> \n' + 
+'          <td> \n' + 
+'            <a title="hasAnnotation">hasAnnotation(r,n)</a> \n' + 
+'          </td> \n' + 
+'        </tr> \n' + 
+'      </table> \n' + 
+'    </div><div style="text-align: center;"> \n' + 
+'      <img src="images/Entities-Activities.png" alt="entities and activities" /> \n' + 
+'      Figure 5: Entities and Activities Component Overview \n' + 
+'    </div><div class="glossary-ref" /><div class="attributes" id="attributes-entity"> \n' + 
+'      An <dfn title="dfn-Entity" id="dfn-entity">entity</dfn><span class="withPn">, \n' + 
+'      written <span class="pnExpression" id="pn-entity">entity(id, [attr1=val1, \n' + 
+'      ...])</span> in PROV-N, </span> has: \n' + 
+'      <ul> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="entity.id">id</span>: an identifier for an \n' + 
 '          entity; \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">attributes</span>: an OPTIONAL set of \n' + 
-'          attribute-value pairs representing this entity\'s situation in the \n' + 
-'          world. \n' + 
+'          <span class="attribute" id="entity.attributes">attributes</span>: an \n' + 
+'          OPTIONAL set of attribute-value pairs ((<span class="name">attr1</span>, \n' + 
+'          <span class="name">val1</span>), ...) representing additional \n' + 
+'          information about this entity. \n' + 
 '        </li> \n' + 
 '      </ul> \n' + 
 '    </div><div class="anexample"> \n' + 
@@ -151,9 +682,10 @@
 'entity(tr:WD-prov-dm-20111215, [ prov:type="document", ex:version="2" ]) \n' + 
 '</pre> \n' + 
 '      states the existence of an entity, denoted by identifier <span class="name">tr:WD-prov-dm-20111215</span>, \n' + 
-'      with type <span class="name">document</span> and version number <span class="name">2</span>. The attributes <span class="name">ex:version</span> \n' + 
+'      with type <span class="name">document</span> and version number <span class="name">2</span>. The attribute <span class="name">ex:version</span> \n' + 
 '      is application specific, whereas the attribute <span class="name">type</span> \n' + 
-'      is reserved in the PROV-DM namespace. \n' + 
+'      (see <a href="#term-attribute-type">Section 4.7.4.4</a>) is reserved in \n' + 
+'      the <a title="prov-namespace">PROV namespace</a>. \n' + 
 '       <!-- The following expression</p> <pre class="codeexample"> \n' + 
 '        entity(tr:WD-prov-dm-20111215, [ prov:type="document", ex:version="2" ]) \n' + 
 '        entity(e0, [ prov:type="File", ex:path="/shared/crime.txt", \n' + 
@@ -163,39 +695,31 @@
 '        class="name">/shared/crime.txt</span> in the file system, and creator \n' + 
 '        alice. The attributes <span class="name">path</span> and <span \n' + 
 '        class="name">creator</span> are application specific, whereas the \n' + 
-'        attribute <span class="name">type</span> is reserved in the PROV-DM \n' + 
+'        attribute <span class="name">type</span> is reserved in the PROV \n' + 
 '        namespace. --> \n' + 
-'    </div><div class="issue"> \n' + 
-'      The characterization interval of an entity is currently implicit. Making \n' + 
-'      it explicit would allow us to define wasComplementOf more precisely. \n' + 
-'      Beginning and end of characterization interval could be expressed by \n' + 
-'      attributes (similarly to activities). How do we define the end of an \n' + 
-'      entity? This is <a href="http://www.w3.org/2011/prov/track/issues/204">ISSUE-204</a>. \n' + 
-'    </div><div class="issue"> \n' + 
-'      There is still some confusion about what the identifiers really denote. \n' + 
-'      For instance, are they entity identifiers or entity record identifiers. \n' + 
-'      This is <a href="http://www.w3.org/2011/prov/track/issues/183">ISSUE-183</a>. \n' + 
-'      An example and questions appear in <a href="http://www.w3.org/2011/prov/track/issues/215">ISSUE-215</a>. A \n' + 
-'      related issued is also raised in <a href="http://www.w3.org/2011/prov/track/issues/145">ISSUE-145</a>. \n' + 
 '    </div><div class="glossary-ref" /><div class="attributes" id="attributes-activity"> \n' + 
-'      An activity<span class="withAsn">, written <span class="name">activity(id, \n' + 
-'      st, et, [ attr1=val1, ...])</span> in PROV-ASN,</span> contains: \n' + 
+'      An <dfn title="dfn-Activity" id="dfn-activity">activity</dfn><span class="withPn">, written <span class="pnExpression" id="pn-activity">activity(id, \n' + 
+'      st, et, [attr1=val1, ...])</span> in PROV-N,</span> has: \n' + 
 '      <ul> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">id</span>: an identifier identifying an \n' + 
+'          <span class="attribute" id="activity.id">id</span>: an identifier for \n' + 
+'          an activity; \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="activity.startTime">startTime</span>: an \n' + 
+'          OPTIONAL time (<span class="name">st</span>) for the start of the \n' + 
 '          activity; \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">startTime</span>: an OPTIONAL time for the \n' + 
-'          start of the activity; \n' + 
+'          <span class="attribute" id="activity.endTime">endTime</span>: an \n' + 
+'          OPTIONAL time (<span class="name">et</span>) for the end of the \n' + 
+'          activity; \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">endTime</span>: an OPTIONAL time for the end \n' + 
-'          of the activity; \n' + 
-'        </li> \n' + 
-'        <li> \n' + 
-'          <span class="attribute">attributes</span>: an OPTIONAL set of \n' + 
-'          attribute-value pairs for this activity. \n' + 
+'          <span class="attribute" id="activity.attributes">attributes</span>: an \n' + 
+'          OPTIONAL set of attribute-value pairs ((<span class="name">attr1</span>, \n' + 
+'          <span class="name">val1</span>), ...) representing additional \n' + 
+'          information about this activity. \n' + 
 '        </li> \n' + 
 '      </ul> \n' + 
 '    </div><div class="anexample"> \n' + 
@@ -213,104 +737,35 @@
 '        The attribute <span class="name">host</span> is application specific \n' + 
 '        (declared in some namespace with prefix <span class="name">ex</span>). \n' + 
 '        The attribute <span class="name">type</span> is a reserved attribute of \n' + 
-'        PROV-DM, allowing for sub-typing to be expressed. \n' + 
+'        PROV-DM, allowing for sub-typing to be expressed (see <a href="#term-attribute-type">Section 4.7.4.4</a>). \n' + 
 '      </p> \n' + 
-'    </div><div class="glossary-ref" /><div class="attributes" id="attributes-agent"> \n' + 
-'      An agent<span class="withAsn">, noted <span class="name">agent(id, [ \n' + 
-'      attr1=val1, ...])</span> in PROV-ASN,</span> contains: \n' + 
+'    </div><div class="glossary-ref" /><div class="attributes" id="attributes-generation"> \n' + 
+'      <dfn title="wasGeneratedBy">Generation</dfn><span class="withPn">, written \n' + 
+'      <span class="pnExpression">wasGeneratedBy(id,e,a,t,attrs)</span> in \n' + 
+'      PROV-N,</span> has: \n' + 
 '      <ul> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">id</span>: an identifier identifying an agent; \n' + 
-'        </li> \n' + 
-'        <li> \n' + 
-'          <span class="attribute">attributes</span>: a set of attribute-value \n' + 
-'          pairs representing this agent\'s situation in the world. \n' + 
-'        </li> \n' + 
-'      </ul> \n' + 
-'    </div><div class="anexample"> \n' + 
-'      <p> \n' + 
-'        The following expression is about an agent identified by <span class="name">e1</span>, which is a person, named Alice, with employee \n' + 
-'        number 1234. \n' + 
-'      </p> \n' + 
-'<pre class="codeexample" xml:space="preserve"> \n' + 
-'agent(e1, [ex:employee="1234", ex:name="Alice", prov:type="prov:Human" %% xsd:QName]) \n' + 
-'</pre> \n' + 
-'      <p> \n' + 
-'        It is optional to specify the type of an agent. When present, it is \n' + 
-'        expressed using the <span class="name">prov:type</span> attribute. \n' + 
-'      </p> \n' + 
-'    </div><div class="issue"> \n' + 
-'      Shouldn\'t we allow for entities (not agent) to be associated with an \n' + 
-'      activity? Should we drop the inference association-agent? <a href="http://www.w3.org/2011/prov/track/issues/203">ISSUE-203</a>. \n' + 
-'    </div><div class="attributes" id="attributes-note"> \n' + 
-'      A <dfn title="dfn-note">note</dfn><span class="withAsn">, noted <span class="name">note(id, [ attr1=val1, ...])</span> in PROV-ASN,</span> \n' + 
-'      contains: \n' + 
-'      <ul> \n' + 
-'        <li> \n' + 
-'          <span class="attribute">id</span>: an identifier identifying the note; \n' + 
+'          <span class="attribute" id="generation.id">id</span>: an OPTIONAL \n' + 
+'          identifier for a generation; \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">attributes</span>: a set of attribute-value \n' + 
-'          pairs, whose meaning is application specific. \n' + 
-'        </li> \n' + 
-'      </ul> \n' + 
-'    </div><div class="anexample" id="anexample-note1"> \n' + 
-'      <p> \n' + 
-'        The following note consists of a set of application-specific \n' + 
-'        attribute-value pairs, intended to help the rendering of what it is \n' + 
-'        associated with, by specifying its color and its position on the screen. \n' + 
-'      </p> \n' + 
-'<pre class="codeexample" xml:space="preserve"> \n' + 
-'note(ex2:n1,[ex2:color="blue", ex2:screenX=20, ex2:screenY=30]) \n' + 
-'hasAnnotation(tr:WD-prov-dm-20111215,ex2:n1) \n' + 
-'</pre> \n' + 
-'      <p> \n' + 
-'        The note is associated with the entity <span class="name">tr:WD-prov-dm-20111215</span> \n' + 
-'        previously introduced (<a title="annotation">hasAnnotation</a> is \n' + 
-'        discussed in Section <a href="#term-annotation">Annotation</a>). The \n' + 
-'        note\'s identifier and attributes are declares in a separate namespace \n' + 
-'        denoted by prefix <span class="name">ex2</span>. \n' + 
-'      </p> \n' + 
-'    </div><div class="anexample" id="anexample-note2"> \n' + 
-'      <p> \n' + 
-'        Alternatively, a reputation service may enrich a provenance record with \n' + 
-'        notes providing reputation ratings about agents. In the following \n' + 
-'        fragment, both agents <span class="name">ex:Simon</span> and <span class="name">ex:Paolo</span> are rated "excellent". \n' + 
-'      </p> \n' + 
-'<pre class="codeexample" xml:space="preserve"> \n' + 
-'note(ex3:n2,[ex3:reputation="excellent"]) \n' + 
-'hasAnnotation(ex:Simon,ex3:n2) \n' + 
-'hasAnnotation(ex:Paolo,ex3:n2) \n' + 
-'</pre> \n' + 
-'      <p> \n' + 
-'        The note\'s identifier and attributes are declares in a separate \n' + 
-'        namespace denoted by prefix <span class="name">ex3</span>. \n' + 
-'      </p> \n' + 
-'    </div><div class="glossary-ref" /><div class="attributes" id="attributes-generation"> \n' + 
-'      <dfn title="dfn-Generation">Generation</dfn><span class="withAsn">, \n' + 
-'      written <span class="name">wasGeneratedBy(id,e,a,t,attrs)</span> in \n' + 
-'      PROV-ASN,</span> has the following components: \n' + 
-'      <ul> \n' + 
-'        <li> \n' + 
-'          <span class="attribute">id</span>: an OPTIONAL identifier identifying \n' + 
-'          a generation; \n' + 
+'          <span class="attribute" id="generation.entity">entity</span>: an \n' + 
+'          identifier (<span class="name">e</span>) for a created entity; \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">entity</span>: an identifier identifying a \n' + 
-'          created entity; \n' + 
+'          <span class="attribute" id="generation.activity">activity</span>: an \n' + 
+'          OPTIONAL identifier (<span class="name">a</span>) for the activity \n' + 
+'          that creates the entity; \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">activity</span>: an OPTIONAL identifier \n' + 
-'          identifying the activity that creates the entity; \n' + 
+'          <span class="attribute" id="generation.time">time</span>: an OPTIONAL \n' + 
+'          "generation time" (<span class="name">t</span>), the time at which the \n' + 
+'          entity was completely created; \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">time</span>: an OPTIONAL "generation time", \n' + 
-'          the time at which the entity was completely created; \n' + 
-'        </li> \n' + 
-'        <li> \n' + 
-'          <span class="attribute">attributes</span>: an OPTIONAL set of \n' + 
-'          attribute-value pairs that describes the modalities of generation of \n' + 
-'          this entity by this activity. \n' + 
+'          <span class="attribute" id="generation.attributes">attributes</span>: \n' + 
+'          an OPTIONAL set (<span class="name">attrs</span>) of attribute-value \n' + 
+'          pairs representing additional information about this generation. \n' + 
 '        </li> \n' + 
 '      </ul> \n' + 
 '    </div><div class="anexample"> \n' + 
@@ -318,53 +773,54 @@
 '        The following expressions \n' + 
 '      </p> \n' + 
 '<pre class="codeexample" xml:space="preserve"> \n' + 
-'  wasGeneratedBy(e1,a1, 2001-10-26T21:32:52, [ex:port="p1", ex:order=1]) \n' + 
-'  wasGeneratedBy(e2,a1, 2001-10-26T10:00:00, [ex:port="p1", ex:order=2]) \n' + 
+'  wasGeneratedBy(e1,a1, 2001-10-26T21:32:52, [ex:port="p1"]) \n' + 
+'  wasGeneratedBy(e2,a1, 2001-10-26T10:00:00, [ex:port="p2"]) \n' + 
 '</pre> \n' + 
 '      <p> \n' + 
 '        state the existence of two generations (with respective times <span class="name">2001-10-26T21:32:52</span> and <span class="name">2001-10-26T10:00:00</span>), \n' + 
 '        at which new entities, identified by <span class="name">e1</span> and \n' + 
 '        <span class="name">e2</span>, are created by an activity, identified by \n' + 
-'        <span class="name">a1</span>. The first one is available as the first \n' + 
-'        value on port p1, whereas the other is the second value on port p1. The \n' + 
-'        semantics of <span class="name">port</span> and <span class="name">order</span> \n' + 
+'        <span class="name">a1</span>. The first one is available on port <span class="name">p1</span>, whereas the other is available on port <span class="name">p2</span>. The semantics of <span class="name">port</span> \n' + 
 '        are application specific. \n' + 
 '      </p> \n' + 
 '    </div><div class="anexample"> \n' + 
 '      <p> \n' + 
 '        In some cases, we may want to record the time at which an entity was \n' + 
 '        generated without having to specify the activity that generated it. To \n' + 
-'        support this requirement, the activity component in generation is \n' + 
+'        support this requirement, the activity element in generation is \n' + 
 '        optional. Hence, the following expression indicates the time at which an \n' + 
 '        entity is generated, without naming the activity that did it. \n' + 
 '      </p> \n' + 
 '<pre class="codeexample" xml:space="preserve"> \n' + 
-'  wasGeneratedBy(e,,2001-10-26T21:32:52) \n' + 
+'  wasGeneratedBy(e,-,2001-10-26T21:32:52) \n' + 
 '</pre> \n' + 
+'    </div><div class="issue"> \n' + 
+'      A construct that marks the "end of life" of an entity may be introduced. \n' + 
+'      This is <a href="http://www.w3.org/2011/prov/track/issues/204">ISSUE-204</a>. \n' + 
 '    </div><div class="glossary-ref" /><div class="attributes" id="attributes-usage"> \n' + 
-'      <dfn title="dfn-Usage">Usage</dfn><span class="withAsn">, written <span class="name">used(id,a,e,t,attrs)</span> in PROV-ASN,</span> has the \n' + 
-'      following constituents: \n' + 
+'      <dfn title="used">Usage</dfn><span class="withPn">, written <span class="pnExpression">used(id,a,e,t,attrs)</span> in PROV-N,</span> has: \n' + 
 '      <ul> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">id</span>: an OPTIONAL identifier identifying \n' + 
-'          a usage; \n' + 
+'          <span class="attribute" id="usage.id">id</span>: an OPTIONAL \n' + 
+'          identifier for a usage; \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">activity</span>: an identifier for the \n' + 
-'          consuming activity; \n' + 
+'          <span class="attribute" id="usage.activity">activity</span>: an \n' + 
+'          identifier (<span class="name">a</span>) for the consuming activity; \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">entity</span>: an identifier for the consumed \n' + 
-'          entity; \n' + 
+'          <span class="attribute" id="usage.entity">entity</span>: an identifier \n' + 
+'          (<span class="name">e</span>) for the consumed entity; \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">time</span>: an OPTIONAL "usage time", the \n' + 
-'          time at which the entity started to be used; \n' + 
+'          <span class="attribute" id="usage.time">time</span>: an OPTIONAL \n' + 
+'          "usage time" (<span class="name">t</span>), the time at which the \n' + 
+'          entity started to be used; \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">attributes</span>: an OPTIONAL set of \n' + 
-'          attribute-value pairs that describe the modalities of usage of this \n' + 
-'          entity by this activity. \n' + 
+'          <span class="attribute" id="usage.attributes">attributes</span>: an \n' + 
+'          OPTIONAL set (<span class="name">attrs</span>) of attribute-value \n' + 
+'          pairs representing additional information about this usage. \n' + 
 '        </li> \n' + 
 '      </ul> \n' + 
 '    </div><div class="anexample"> \n' + 
@@ -376,122 +832,325 @@
 '  used(a1,e2,2011-11-16T16:00:01,[ex:parameter="p2"]) \n' + 
 '</pre> \n' + 
 '      <p> \n' + 
-'        state that the activity identified by <span class="name">a1</span> \n' + 
-'        consumed two entities identified by <span class="name">e1</span> and \n' + 
-'        <span class="name">e2</span>, at times <span class="name">2011-11-16T16:00:00</span> \n' + 
+'        state that the activity identified by <span class="name">a1</span> used \n' + 
+'        two entities identified by <span class="name">e1</span> and <span class="name">e2</span>, at times <span class="name">2011-11-16T16:00:00</span> \n' + 
 '        and <span class="name">2011-11-16T16:00:01</span>, respectively; the \n' + 
 '        first one was found as the value of parameter <span class="name">p1</span>, \n' + 
 '        whereas the second was found as value of parameter <span class="name">p2</span>. \n' + 
 '        The semantics of <span class="name">parameter</span> is application \n' + 
 '        specific. \n' + 
 '      </p> \n' + 
-'    </div><div class="note"> \n' + 
-'      <p> \n' + 
-'        A usage record\'s id is OPTIONAL. It MUST be present when annotating \n' + 
-'        usage records (see Section <a href="#term-annotation">Annotation Record</a>) \n' + 
-'        or when defining precise-1 derivations (see <a href="#Derivation-Relation">Derivation</a>). \n' + 
-'      </p> \n' + 
-'    </div><div class="glossary-ref" /><div class="attributes" id="attributes-activity-association"> \n' + 
-'      An <dfn title="dfn-activity-association">activity association</dfn><span class="withAsn">, written <span class="name">wasAssociatedWith(id,a,ag,pl,attrs)</span> \n' + 
-'      in PROV-ASN,</span> has the following constituents: \n' + 
+'    </div><div class="glossary-ref" /><div class="attributes" id="attributes-start"> \n' + 
+'      An activity <dfn title="wasStartedBy">start</dfn><span class="withPn">, \n' + 
+'      written <span class="pnExpression">wasStartedBy(id,a,e,t,attrs)</span> in \n' + 
+'      PROV-N,</span> has: \n' + 
 '      <ul> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">id</span>: an OPTIONAL identifier for the \n' + 
-'          association between an activity and an agent; \n' + 
+'          <span class="attribute" id="start.id">id</span>: an OPTIONAL \n' + 
+'          identifier for the activity start; \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">activity</span>: an identifier for the \n' + 
+'          <span class="attribute" id="start.activity">activity</span>: an \n' + 
+'          identifier (<span class="name">a</span>) for the started activity; \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="start.trigger">trigger</span>: an OPTIONAL \n' + 
+'          identifier (<span class="name">e</span>) for the entity triggering the \n' + 
 '          activity; \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">agent</span>: an identifier for the agent \n' + 
+'          <span class="attribute" id="start.time">time</span>: the OPTIONAL time \n' + 
+'          (<span class="name">t</span>) at which the activity was started; \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="start.attributes">attributes</span>: an \n' + 
+'          OPTIONAL set (<span class="name">attrs</span>) of attribute-value \n' + 
+'          pairs representing additional information about this activity start. \n' + 
+'        </li> \n' + 
+'      </ul> \n' + 
+'    </div><div class="anexample"> \n' + 
+'      <p> \n' + 
+'        The following example contains the description of an activity <span class="name">a1</span> (a discussion), which was started at a specific \n' + 
+'        time, and was triggered by an email message <span class="name">e1</span>. \n' + 
+'      </p> \n' + 
+'<pre class="codeexample" xml:space="preserve"> \n' + 
+'entity(e1,[prov:type="email message"]) \n' + 
+'activity(a1,[prov:type="Discuss"]) \n' + 
+'wasStartedBy(a1,e1,2011-11-16T16:05:00) \n' + 
+'</pre> \n' + 
+'      Furthermore, if the message is also an input to the activity, this can be \n' + 
+'      described as follows: \n' + 
+'<pre class="codeexample" xml:space="preserve"> \n' + 
+'used(a1,e1,-) \n' + 
+'</pre> \n' + 
+'    </div><div class="anexample"> \n' + 
+'      <p> \n' + 
+'        In the following example, a race is started by a bang, and \n' + 
+'        responsibility for this trigger is attributed to an agent <span class="name">ex:DarthVader</span>. \n' + 
+'      </p> \n' + 
+'<pre class="codeexample" xml:space="preserve"> \n' + 
+'activity(ex:foot_race) \n' + 
+'wasStartedBy(ex:foot_race,ex:bang,2012-03-09T08:05:08-05:00) \n' + 
+'entity(ex:bang) \n' + 
+'agent(ex:Bob) \n' + 
+'wasAttributedTo(ex:bang,ex:Bob) \n' + 
+'</pre> \n' + 
+'    </div><div class="glossary-ref" /><div class="anexample"> \n' + 
+'      <p> \n' + 
+'        The following example is a description of an activity <span class="name">a1</span> \n' + 
+'        (editing) that was ended following an approval document <span class="name">e1</span>. \n' + 
+'      </p> \n' + 
+'<pre class="codeexample" xml:space="preserve"> \n' + 
+'entity(e1,[prov:type="approval document"]) \n' + 
+'activity(a1,[prov:type="Editing"]) \n' + 
+'wasEndedBy(a1,e1) \n' + 
+'</pre> \n' + 
+'    </div><div class="glossary-ref" /><div class="attributes" id="attributes-wasInformedBy"> \n' + 
+'      A <dfn title="wasInformedBy">communication</dfn><span class="withPn">, \n' + 
+'      written as <span class="pnExpression">wasInformedBy(id,a2,a1,attrs)</span> \n' + 
+'      in PROV-N,</span> has: \n' + 
+'      <ul> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="wasInformedBy.id">id</span>: an OPTIONAL \n' + 
+'          identifier identifying the relation; \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="wasInformedBy.informed">informed</span>: \n' + 
+'          the identifier (<span class="name">a2</span>) of the informed \n' + 
+'          activity; \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="wasInformedBy.informant">informant</span>: \n' + 
+'          the identifier (<span class="name">a1</span>) of the informant \n' + 
+'          activity; \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="wasInformedBy.attributes">attributes</span>: \n' + 
+'          an OPTIONAL set (<span class="name">attrs</span>) of attribute-value \n' + 
+'          pairs representing additional information about this communication. \n' + 
+'        </li> \n' + 
+'      </ul> \n' + 
+'    </div><div class="anexample"> \n' + 
+'      <p> \n' + 
+'        Consider two activities <span class="name">a1</span> and <span class="name">a2</span>, the former performed by a government agency, and \n' + 
+'        the latter by a driver caught speeding. \n' + 
+'      </p> \n' + 
+'<pre class="codeexample" xml:space="preserve"> \n' + 
+'activity(a1, [prov:type="traffic regulations enforcing"]) \n' + 
+'activity(a2, [prov:type="fine paying; check writing; mailing"]) \n' + 
+'wasInformedBy(a2,a1) \n' + 
+'</pre> \n' + 
+'      The last line indicates that some implicit entity was generated by <span class="name">a1</span> and used by <span class="name">a2</span>; this \n' + 
+'      entity may be a traffic ticket that had a notice of fine, amount, and \n' + 
+'      payment mailing details. \n' + 
+'    </div><div class="glossary-ref" /><div class="attributes" id="attributes-startByActivity"> \n' + 
+'      A <dfn title="wasStartedByActivity">start by activity</dfn><span class="withPn">, written as <span class="pnExpression">wasStartedByActivity(id, \n' + 
+'      a2, a1, attrs)</span> in PROV-N,</span> has: \n' + 
+'      <ul> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="startByActivity.id">id</span>: an OPTIONAL \n' + 
+'          identifier of the relation; \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="startByActivity.started">started</span>: \n' + 
+'          the identifier (<span class="name">a2</span>) of the started activity; \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="startByActivity.starter">starter</span>: \n' + 
+'          the identifier (<span class="name">a1</span>) of the activity that \n' + 
+'          started the other; \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="startByActivity.attributes">attributes</span>: \n' + 
+'          an OPTIONAL set (<span class="name">attrs</span>) of attribute-value \n' + 
+'          pairs representing additional information about this start by \n' + 
+'          activity. \n' + 
+'        </li> \n' + 
+'      </ul> \n' + 
+'    </div><div class="anexample"> \n' + 
+'      <p> \n' + 
+'        Suppose activities <span class="name">a1</span> and <span class="name">a2</span> \n' + 
+'        are computer processes that are executed on different hosts, and that \n' + 
+'        <span class="name">a1</span> started <span class="name">a2</span>. This \n' + 
+'        can be expressed as in the following fragment: \n' + 
+'      </p> \n' + 
+'<pre class="codeexample" xml:space="preserve"> \n' + 
+'activity(a1,t1,t2,[ex:host="server1.example.org",prov:type="workflow"]) \n' + 
+'activity(a2,t3,t4,[ex:host="server2.example.org",prov:type="subworkflow"]) \n' + 
+'wasStartedByActivity(a2,a1) \n' + 
+'</pre> \n' + 
+'      It is assumed that the activities <span class="name">a1</span> and <span class="name">a2</span> are of type "workflow" and "subworkflow", \n' + 
+'      respectively; the latter was started by the former. \n' + 
+'    </div><div style="text-align: center;"> \n' + 
+'      <img src="images/Agents-Responsibility.png" alt="agents and responsibilities" /> Figure 6: Agents and Responsibilities \n' + 
+'      Component Overview \n' + 
+'    </div><div class="glossary-ref" /><div class="attributes" id="attributes-agent"> \n' + 
+'      An <dfn title="dfn-agent" id="dfn-agent">agent</dfn><span class="withPn">, \n' + 
+'      written <span class="pnExpression" id="pn-agent">agent(id, [attr1=val1, \n' + 
+'      ...])</span> in PROV-N,</span> has: \n' + 
+'      <ul> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="agent.id">id</span>: an identifier for an \n' + 
+'          agent; \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="agent.attributes">attributes</span>: a set \n' + 
+'          of attribute-value pairs ((<span class="name">attr1</span>, <span class="name">val1</span>), ...) representing additional information \n' + 
+'          about this agent. \n' + 
+'        </li> \n' + 
+'      </ul> \n' + 
+'    </div><div class="glossary-ref" /><div class="glossary-ref" /><div class="glossary-ref" /><div class="anexample"> \n' + 
+'      <p> \n' + 
+'        The following expression is about an agent identified by <span class="name">e1</span>, which is a person, named Alice, with employee \n' + 
+'        number 1234. \n' + 
+'      </p> \n' + 
+'<pre class="codeexample" xml:space="preserve"> \n' + 
+'agent(e1, [ex:employee="1234", ex:name="Alice", prov:type="prov:Person" %% xsd:QName]) \n' + 
+'</pre> \n' + 
+'      <p> \n' + 
+'        It is optional to specify the type of an agent. When present, it is \n' + 
+'        expressed using the <span class="name">prov:type</span> attribute. \n' + 
+'      </p> \n' + 
+'    </div><div class="glossary-ref" /><div class="attributes" id="attributes-attribution"> \n' + 
+'      An <dfn title="wasAttributedTo">attribution</dfn> relation<span class="withPn">, written <span class="pnExpression">wasAttributedTo(id,e,ag,attrs)</span> \n' + 
+'      in PROV-N,</span> has: \n' + 
+'      <ul> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="attribution.id">id</span>: an OPTIONAL \n' + 
+'          identifier for the relation; \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="attribution.entity">entity</span>: an \n' + 
+'          entity identifier (<span class="name">e</span>); \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="attribution.agent">agent</span>: the \n' + 
+'          identifier (<span class="name">ag</span>) of the agent whom the entity \n' + 
+'          is ascribed to; \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="attribution.attributes">attributes</span>: \n' + 
+'          an OPTIONAL set (<span class="name">attrs</span>) of attribute-value \n' + 
+'          pairs representing additional information about this attribution. \n' + 
+'        </li> \n' + 
+'      </ul> \n' + 
+'    </div><div class="anexample" id="anexample-attribution"> \n' + 
+'      <p> \n' + 
+'        Revisiting the example of <a href="#section-example-one">Section 3.1</a>, \n' + 
+'        we can ascribe <span class="name">tr:WD-prov-dm-20111215</span> to some \n' + 
+'        agents without an explicit activity. The reserved attribute <span class="name">role</span> (see <a href="#term-attribute-role">Section \n' + 
+'        4.7.4.3</a>) allows for role of the agent in the attribution to be \n' + 
+'        specified. \n' + 
+'      </p> \n' + 
+'<pre class="codeexample" xml:space="preserve"> \n' + 
+'agent(ex:Paolo, [ prov:type="Person" ]) \n' + 
+'agent(ex:Simon, [ prov:type="Person" ]) \n' + 
+'entity(tr:WD-prov-dm-20111215, [ prov:type="process:RecsWD" %% xsd:QName ]) \n' + 
+'wasAttributedTo(tr:WD-prov-dm-20111215, ex:Paolo, [prov:role="editor"]) \n' + 
+'wasAttributedTo(tr:WD-prov-dm-20111215, ex:Simon, [prov:role="contributor"]) \n' + 
+'</pre> \n' + 
+'    </div><div class="glossary-ref" /><div class="attributes" id="attributes-activity-association"> \n' + 
+'      An <dfn title="wasAssociatedWith">activity association</dfn><span class="withPn">, written <span class="pnExpression">wasAssociatedWith(id,a,ag,pl,attrs)</span> \n' + 
+'      in PROV-N,</span> has: \n' + 
+'      <ul> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="association.id">id</span>: an OPTIONAL \n' + 
+'          identifier for the association between an activity and an agent; \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="association.activity">activity</span>: an \n' + 
+'          identifier (<span class="name">a</span>) for the activity; \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="association.agent">agent</span>: an \n' + 
+'          OPTIONAL identifier (<span class="name">ag</span>) for the agent \n' + 
 '          associated with the activity; \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">plan</span>: an OPTIONAL identifier for the \n' + 
-'          plan adopted by the agent in the context of this activity; \n' + 
+'          <span class="attribute" id="association.plan">plan</span>: an OPTIONAL \n' + 
+'          identifier (<span class="name">pl</span>) for the plan adopted by the \n' + 
+'          agent in the context of this activity; \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">attributes</span>: an OPTIONAL set of \n' + 
-'          attribute-value pairs that describe the modalities of association of \n' + 
+'          <span class="attribute" id="association.attributes">attributes</span>: \n' + 
+'          an OPTIONAL set (<span class="name">attrs</span>) of attribute-value \n' + 
+'          pairs representing additional information about this association of \n' + 
 '          this activity with this agent. \n' + 
 '        </li> \n' + 
 '      </ul> \n' + 
-'    </div><div class="anexample"> \n' + 
-'      In the following example, a designer and an operator agents are associated \n' + 
-'      with an activity. The designer\'s goals are achieved by a workflow <span class="name">ex:wf</span>. \n' + 
+'    </div><div class="anexample" id="anexample-wasAssociateWith"> \n' + 
+'      <p> \n' + 
+'        In the following example, a designer and an operator agents are \n' + 
+'        associated with an activity. The designer\'s goals are achieved by a \n' + 
+'        workflow <span class="name">ex:wf</span>, described as an an entity of \n' + 
+'        type <span class="name"><a>plan</a></span>. \n' + 
+'      </p> \n' + 
 '<pre class="codeexample" xml:space="preserve"> \n' + 
-'activity(ex:a,[prov:type="workflow execution"]) \n' + 
-'agent(ex:ag1,[prov:type="operator"]) \n' + 
-'agent(ex:ag2,[prov:type="designer"]) \n' + 
-'wasAssociatedWith(ex:a,ex:ag1,[prov:role="loggedInUser", ex:how="webapp"]) \n' + 
-'wasAssociatedWith(ex:a,ex:ag2,ex:wf,[prov:role="designer", ex:context="project1"]) \n' + 
-'entity(ex:wf,[prov:type="prov:Plan"%% xsd:QName, ex:label="Workflow 1",  \n' + 
+'activity(ex:a, [prov:type="workflow execution"]) \n' + 
+'agent(ex:ag1, [prov:type="operator"]) \n' + 
+'agent(ex:ag2, [prov:type="designer"]) \n' + 
+'wasAssociatedWith(ex:a, ex:ag1, -, [prov:role="loggedInUser", ex:how="webapp"]) \n' + 
+'wasAssociatedWith(ex:a, ex:ag2, ex:wf,[prov:role="designer", ex:context="project1"]) \n' + 
+'entity(ex:wf, [prov:type="prov:Plan" %% xsd:QName, ex:label="Workflow 1",  \n' + 
 '              ex:url="http://example.org/workflow1.bpel" %% xsd:anyURI]) \n' + 
 '</pre> \n' + 
 '      Since the workflow <span class="name">ex:wf</span> is itself an entity, \n' + 
 '      its provenance can also be expressed in PROV-DM: it can be generated by \n' + 
 '      some activity and derived from other entities, for instance. \n' + 
-'    </div><div class="issue"> \n' + 
-'      The activity association record does not allow for a plan to be asserted \n' + 
-'      without an agent. This seems over-restrictive. Discussed in the context of \n' + 
-'      <a href="http://www.w3.org/2011/prov/track/issues/203">ISSUE-203</a>. \n' + 
-'    </div><div class="issue"> \n' + 
-'      Agents should not be inferred. WasAssociatedWith should also work with \n' + 
-'      entities. This is <a href="http://www.w3.org/2011/prov/track/issues/206">ISSUE-206</a>. \n' + 
-'    </div><div class="anexample"> \n' + 
+'    </div><div class="anexample" id="anexample-wasAssociateWith-2"> \n' + 
 '      <p> \n' + 
-'        In the following example, \n' + 
+'        In some cases, one wants to indicate a plan was followed, without having \n' + 
+'        to specify which agent was involved. \n' + 
 '      </p> \n' + 
 '<pre class="codeexample" xml:space="preserve"> \n' + 
-'wasStartedBy(a,ag,[ex:mode="manual"]) \n' + 
-'wasEndedby(a,ag,[ex:mode="manual"]) \n' + 
+'activity(ex:a,[prov:type="workflow execution"]) \n' + 
+'wasAssociatedWith(ex:a,-,ex:wf) \n' + 
+'entity(ex:wf,[prov:type="prov:Plan"%% xsd:QName, ex:label="Workflow 1",  \n' + 
+'              ex:url="http://example.org/workflow1.bpel" %% xsd:anyURI]) \n' + 
 '</pre> \n' + 
-'      <p> \n' + 
-'        there is an activity denoted by <span class="name">a</span> that was \n' + 
-'        started and ended by an agent denoted by <span class="name">ag</span>, \n' + 
-'        in "manual" mode, an application specific characterization of these \n' + 
-'        relations. \n' + 
-'      </p> \n' + 
-'    </div><div class="issue"> \n' + 
-'      Should we define start/end records as representation of activity start/end \n' + 
-'      events. Should time be associated with these events rather than with \n' + 
-'      activities. This will be similar to what we do for entities. This is issue \n' + 
-'      <a href="http://www.w3.org/2011/prov/track/issues/207">ISSUE-207</a>. \n' + 
-'    </div><div class="glossary-ref" /><div class="attributes" id="attributes-responsibility-chain"> \n' + 
-'      A <dfn title="dfn-responsibility-chain">responsibility chain</dfn><span class="withAsn">, written <span class="name">actedOnBehalfOf(id,ag2,ag1,a,attrs)</span> \n' + 
-'      in PROV-ASN,</span> has the following constituents: \n' + 
+'      In this case, it is assumed that an agent exists, but it has not been \n' + 
+'      specified. \n' + 
+'    </div><div class="glossary-ref" /><div class="attributes" id="attributes-responsibility"> \n' + 
+'      A <dfn title="actedOnBehalfOf">responsibility</dfn> link<span class="withPn">, written <span class="pnExpression">actedOnBehalfOf(id,ag2,ag1,a,attrs)</span> \n' + 
+'      in PROV-N,</span> has: \n' + 
 '      <ul> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">id</span>: an OPTIONAL identifier identifying \n' + 
-'          the responsibility chain; \n' + 
-'        </li> \n' + 
-'        <li> \n' + 
-'          <span class="attribute">subordinate</span>: an identifier for the \n' + 
-'          agent associated with an activity, acting on behalf of the responsible \n' + 
-'          agent; \n' + 
+'          <span class="attribute" id="responsibility.id">id</span>: an OPTIONAL \n' + 
+'          identifier for the responsibility link between subordinate and \n' + 
+'          responsible; \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">responsible</span>: an identifier for the \n' + 
-'          agent, on behalf of which the subordinate agent acted; \n' + 
+'          <span class="attribute" id="responsibility.subordinate">subordinate</span>: \n' + 
+'          an identifier (<span class="name">ag2</span>) for the agent associated \n' + 
+'          with an activity, acting on behalf of the responsible agent; \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">activity</span>: an OPTIONAL identifier of an \n' + 
-'          activity for which the responsibility chain holds; \n' + 
+'          <span class="attribute" id="responsibility.responsible">responsible</span>: \n' + 
+'          an identifier (<span class="name">ag1</span>) for the agent, on behalf \n' + 
+'          of which the subordinate agent acted; \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">attributes</span>: an OPTIONAL set of \n' + 
-'          attribute-value pairs that describe the modalities of this relation. \n' + 
+'          <span class="attribute" id="responsibility.activity">activity</span>: \n' + 
+'          an OPTIONAL identifier (<span class="name">a</span>) of an activity \n' + 
+'          for which the responsibility link holds; \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="responsibility.attributes">attributes</span>: \n' + 
+'          an OPTIONAL set (<span class="name">attrs</span>) of attribute-value \n' + 
+'          pairs representing additional information about this responsibility \n' + 
+'          link. \n' + 
 '        </li> \n' + 
 '      </ul> \n' + 
 '    </div><div class="anexample"> \n' + 
-'      In the following example, a programmer, a researcher and a funder agents \n' + 
-'      are described. The programmer and researcher are associated with a \n' + 
-'      workflow activity. The programmer acts on behalf of the researcher \n' + 
-'      (delegation) encoding the commands specified by the researcher; the \n' + 
-'      researcher acts on behalf of the funder, who has an contractual agreement \n' + 
-'      with the researcher. The terms \'delegation\' and \'contact\' used in this \n' + 
-'      example are domain specific. \n' + 
+'      <p> \n' + 
+'        The following fragment describes three agents: a programmer, a \n' + 
+'        researcher, and a funder. The programmer and researcher are associated \n' + 
+'        with a workflow activity. The programmer acts on behalf of the \n' + 
+'        researcher (delegation) encoding the commands specified by the \n' + 
+'        researcher; the researcher acts on behalf of the funder, who has a \n' + 
+'        contractual agreement with the researcher. The terms \'delegation\' and \n' + 
+'        \'contact\' used in this example are domain specific. \n' + 
+'      </p> \n' + 
 '<pre class="codeexample" xml:space="preserve"> \n' + 
 'activity(a,[prov:type="workflow"]) \n' + 
 'agent(ag1,[prov:type="programmer"]) \n' + 
@@ -499,158 +1158,514 @@
 'agent(ag3,[prov:type="funder"]) \n' + 
 'wasAssociatedWith(a,ag1,[prov:role="loggedInUser"]) \n' + 
 'wasAssociatedWith(a,ag2) \n' + 
+'wasAssociatedWith(a,ag3) \n' + 
 'actedOnBehalfOf(ag1,ag2,a,[prov:type="delegation"]) \n' + 
 'actedOnBehalfOf(ag2,ag3,a,[prov:type="contract"]) \n' + 
 '</pre> \n' + 
-'    </div><div class="glossary-ref" /><div class="note"> \n' + 
-'      This text was not edited much. It keeps on referring to \n' + 
-'      asserter/assertion. Before editing this section, we would like to have <a href="http://www.w3.org/2011/prov/track/issues/249">ISSUE-249</a> \n' + 
-'      resolved. \n' + 
-'    </div><div class="attributes" id="attributes-derivation"> \n' + 
-'      A <dfn>precise-1 derivation</dfn><span class="withAsn">, written <span class="name">wasDerivedFrom(id, e2, e1, a, g2, u1, attrs)</span> in \n' + 
-'      PROV-ASN,</span> contains: \n' + 
+'    </div><div style="text-align: center;"> \n' + 
+'      <img src="images/Derivation.png" alt="derivation" /> Figure 7: Derivation \n' + 
+'      Component Overview \n' + 
+'    </div><div class="glossary-ref" /><div class="attributes" id="attributes-derivation"> \n' + 
+'      A <dfn title="wasDerivedFrom">derivation</dfn><span class="withPn">, \n' + 
+'      written <span class="pnExpression" id="pn-wasDerivedFrom">wasDerivedFrom(id, \n' + 
+'      e2, e1, a, g2, u1, attrs)</span> in PROV-N,</span> has: \n' + 
 '      <ul> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">id</span>: an OPTIONAL identifier identifying \n' + 
+'          <span class="attribute" id="derivation.id">id</span>: an OPTIONAL \n' + 
+'          identifier for a derivation; \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="derivation.generatedEntity">generatedEntity</span>: \n' + 
+'          the identifier (<span class="name">ee</span>) of the entity generated \n' + 
+'          by the derivation; \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="derivation.usedEntity">usedEntity</span>: \n' + 
+'          the identifier (<span class="name">e1</span>) of the entity used by \n' + 
 '          the derivation; \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">generatedEntity</span>: the identifier of the \n' + 
-'          generation entity; \n' + 
-'        </li> \n' + 
-'        <li> \n' + 
-'          <span class="attribute">usedEntity</span>: the identifier of the used \n' + 
-'          entity; \n' + 
+'          <span class="attribute" id="derivation.activity">activity</span>: an \n' + 
+'          OPTIONAL identifier (<span class="name">a</span>) for the activity \n' + 
+'          using and generating the above entities; \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">activity</span>: the identifier of the \n' + 
-'          activity using and generating the above entities; \n' + 
+'          <span class="attribute" id="derivation.generation">generation</span>: \n' + 
+'          an OPTIONAL identifier (<span class="name">g2</span>) for the \n' + 
+'          generation involving the generated entity and activity; \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">generation</span>: the identifier the \n' + 
-'          generation for the generated entity and activity; \n' + 
+'          <span class="attribute" id="derivation.usage">usage</span>: an \n' + 
+'          OPTIONAL identifier (<span class="name">u1</span>) for the usage \n' + 
+'          involving the used entity and activity; \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">usage</span>: the identifier of the usage for \n' + 
-'          the used entity and activity; \n' + 
-'        </li> \n' + 
-'        <li> \n' + 
-'          <span class="attribute">attributes</span>: an OPTIONAL set of \n' + 
-'          attribute-value pairs that describe the modalities of this derivation, \n' + 
-'          optionally including the attribute-value pair <span class="name">prov:steps="single"</span>. \n' + 
+'          <span class="attribute" id="derivation.attributes">attributes</span>: \n' + 
+'          an OPTIONAL set (<span class="name">attrs</span>) of attribute-value \n' + 
+'          pairs representing additional information about this derivation. \n' + 
 '        </li> \n' + 
 '      </ul> \n' + 
 '    </div><div class="anexample"> \n' + 
 '      <p> \n' + 
-'        The following descriptions state the existence of derivations. \n' + 
+'        The following descriptions are about derivations between <span class="name">e2</span> and <span class="name">e1</span>, but no \n' + 
+'        information is provided as to the identity of the activity (and usage \n' + 
+'        and generation) underpinning the derivation. In the second line, a type \n' + 
+'        attribute is also provided. \n' + 
 '      </p> \n' + 
 '<pre class="codeexample" xml:space="preserve"> \n' + 
-'wasDerivedFrom(e5,e3,a4,g2,u2) \n' + 
-'wasDerivedFrom(e5,e3,a4,g2,u2,[prov:steps="single"]) \n' + 
-' \n' + 
-'wasDerivedFrom(e3,e2,[prov:steps="single"]) \n' + 
-' \n' + 
-'wasDerivedFrom(e2,e1,[]) \n' + 
-'wasDerivedFrom(e2,e1,[prov:steps="any"]) \n' + 
-' \n' + 
-'wasDerivedFrom(e2,e1,2012-01-18T16:00:00, [prov:steps="any"]) \n' + 
+'wasDerivedFrom(e2, e1) \n' + 
+'wasDerivedFrom(e2, e1, [prov:type="physical transform"]) \n' + 
 '</pre> \n' + 
 '      <p> \n' + 
-'        The first two are precise-1 derivations expressing that the activity \n' + 
-'        identified by <span class="name">a4</span>, by using the entity denoted \n' + 
-'        by <span class="name">e3</span> according to usage <span class="name">u2</span> \n' + 
-'        derived the entity denoted by <span class="name">e5</span> and generated \n' + 
-'        it according to generation <span class="name">g2</span>. \n' + 
+'        The following description expresses that activity <span class="name">a</span>, \n' + 
+'        using the entity <span class="name">e1</span> according to usage <span class="name">u1</span>, derived the entity <span class="name">e2</span> \n' + 
+'        and generated it according to generation <span class="name">g2</span>. \n' + 
+'        It is followed by descriptions for generation <span class="name">g2</span> \n' + 
+'        and usage <span class="name">u1</span>. \n' + 
 '      </p> \n' + 
+'<pre class="codeexample" xml:space="preserve"> \n' + 
+'wasDerivedFrom(e2, e1, a, g2, u1) \n' + 
+'wasGeneratedBy(g2, e2, a, -) \n' + 
+'used(u1, a, e1, -) \n' + 
+'</pre> \n' + 
 '      <p> \n' + 
-'        The third line describes an imprecise-1 derivation, which is similar for \n' + 
-'        <span class="name">e3</span> and <span class="name">e2</span>, but it \n' + 
-'        leaves the activity and associated attributes implicit. The fourth and \n' + 
-'        fifth lines are about imprecise-n derivations between <span class="name">e2</span> \n' + 
-'        and <span class="name">e1</span>, but no information is provided as to \n' + 
-'        the number and identity of activities underpinning the derivation. The \n' + 
-'        sixth derivation extends the fifth with the derivation time of <span class="name">e2</span>. \n' + 
+'        With such a comprehensive description of derivation, a program that \n' + 
+'        analyzes provenance can identify the activity underpinning the \n' + 
+'        derivation, it can identify how the original entity <span class="name">e1</span> \n' + 
+'        was used by the activity (e.g. for instance, which argument it was \n' + 
+'        passed as, if the activity is the result of a function invocation), and \n' + 
+'        which output the derived entity <span class="name">e2</span> was \n' + 
+'        obtained from (say, for a function returning multiple results). \n' + 
 '      </p> \n' + 
-'    </div><div class="issue"> \n' + 
-'      Several points were raised about the attribute steps. Its name, its \n' + 
-'      default value <a href="http://www.w3.org/2011/prov/track/issues/180">ISSUE-180</a>. \n' + 
-'      <a href="http://www.w3.org/2011/prov/track/issues/179">ISSUE-179</a>. \n' + 
-'    </div><div class="issue"> \n' + 
-'      Emphasize the notion of \'affected by\' <a href="http://www.w3.org/2011/prov/track/issues/133">ISSUE-133</a>. \n' + 
-'    </div><div class="issue"> \n' + 
-'      Is imprecise-1 derivation necessary? Can we just use precise-1 and \n' + 
-'      imprecise-n? <a href="http://www.w3.org/2011/prov/track/issues/249">ISSUE-249</a>. \n' + 
-'    </div><div class="attributes" id="attributes-alternate"> \n' + 
-'      An <dfn title="dfn-Alternate">alternate relation</dfn><span class="withAsn">, \n' + 
-'      written <span class="name">alternateOf(id, alt1, alt2, attrs)</span> in \n' + 
-'      PROV-ASN,</span> addresses case (1). It has the following constituents: \n' + 
+'    </div><div class="anexample" id="anexample-revision"> \n' + 
+'      <p> \n' + 
+'        Revisiting the example of <a href="#section-example-two">Section 3.2</a>, \n' + 
+'        we can now state that the report <span class="name">tr:WD-prov-dm-20111215</span> \n' + 
+'        is a revision of the report <span class="name">tr:WD-prov-dm-20111018</span>, \n' + 
+'        approved by agent <span class="name">w3:Consortium</span>. \n' + 
+'      </p> \n' + 
+'<pre class="codeexample" xml:space="preserve"> \n' + 
+'entity(tr:WD-prov-dm-20111215, [ prov:type="process:RecsWD" %% xsd:QName ]) \n' + 
+'entity(tr:WD-prov-dm-20111018, [ prov:type="process:RecsWD" %% xsd:QName ]) \n' + 
+'wasRevisionOf(tr:WD-prov-dm-20111215, tr:WD-prov-dm-20111018, w3:Consortium) \n' + 
+'</pre> \n' + 
+'    </div><div class="anexample" id="anexample-quotation"> \n' + 
+'      <p> \n' + 
+'        The following paragraph is a quote from one of <a href="http://thinklinks.wordpress.com/2012/03/07/thoughts-from-the-dagstuhl-principles-of-provenance-workshop/">the \n' + 
+'        author\'s blogs</a>. \n' + 
+'      </p> \n' + 
+'      <blockquote id="bl-dagstuhl" /> \n' + 
+'      <em> "During the workshop, it became clear to me that the consensus based \n' + 
+'      models (which are often graphical in nature) can not only be formalized \n' + 
+'      but also be directly connected to these database focused formalizations. I \n' + 
+'      just needed to get over the differences in syntax. This could imply that \n' + 
+'      we could have nice way to trace provenance across systems and through \n' + 
+'      databases and be able to understand the mathematical properties of this \n' + 
+'      interconnection."</em> \n' + 
+'      <p> \n' + 
+'        If <a href="http://thinklinks.wordpress.com/2012/03/07/thoughts-from-the-dagstuhl-principles-of-provenance-workshop/"><span class="name">wp:thoughts-from-the-dagstuhl-principles-of-provenance-workshop/</span></a> \n' + 
+'        denotes the original blog by agent <span class="name">ex:Paul</span>, \n' + 
+'        and <a href="#bl-dagstuhl"><span class="name">dm:bl-dagstuhl</span></a> \n' + 
+'        denotes the above paragraph, then the following descriptions express \n' + 
+'        that the above paragraph is copied by agent <span class="name">ex:Luc</span> \n' + 
+'        from a part of the blog, attributed to the agent <span class="name">ex:Paul</span>. \n' + 
+'      </p> \n' + 
+'<pre class="codeexample" xml:space="preserve"> \n' + 
+'entity(wp:thoughts-from-the-dagstuhl-principles-of-provenance-workshop/) \n' + 
+'agent(ex:Luc) \n' + 
+'agent(ex:Paul) \n' + 
+'wasQuotedFrom(dm:bl-dagstuhl,wp:thoughts-from-the-dagstuhl-principles-of-provenance-workshop/,ex:Luc,ex:Paul) \n' + 
+'</pre> \n' + 
+'    </div><div class="anexample"> \n' + 
+'      <p> \n' + 
+'        Let us consider the concept introduced in the current section, \n' + 
+'        identified as <a href="#concept-original-source"><span class="name">dm:concept-original-source</span></a>, \n' + 
+'        and the Google page <a href="http://googlenewsblog.blogspot.com/2010/11/credit-where-credit-is-due.html"><span class="name">go:credit-where-credit-is-due.html</span></a>, where the \n' + 
+'        notion original-source was originally described (to the knowledge of the \n' + 
+'        authors). \n' + 
+'      </p> \n' + 
+'<pre class="codeexample" xml:space="preserve"> \n' + 
+'entity(dm:concept-original-source) \n' + 
+'entity(go:credit-where-credit-is-due.html) \n' + 
+'hadOriginalSource(dm:concept-original-source,go:credit-where-credit-is-due.html) \n' + 
+'</pre> \n' + 
+'    </div><div class="anexample"> \n' + 
+'      <p> \n' + 
+'        We refer to the example of <a href="#section-example-two">Section 3.1</a>, \n' + 
+'        and specifically to <a href="#prov-a-document">Figure 2</a>. We can see \n' + 
+'        that there is a path from <span class="name">tr:WD-prov-dm-20111215</span> \n' + 
+'        to <span class="name">w3:Consortium</span> and to <span class="name">process:rec-advance</span>. \n' + 
+'        This is expressed as follows. \n' + 
+'      </p> \n' + 
+'<pre class="codeexample" xml:space="preserve"> \n' + 
+' tracedTo(tr:WD-prov-dm-20111215,w3:Consortium) \n' + 
+' tracedTo(tr:WD-prov-dm-20111215,process:rec-advance) \n' + 
+'</pre> \n' + 
+'    </div><div style="text-align: center;"> \n' + 
+'      <img src="images/Alternates.png" alt="alternates" /> Figure 8: Alternates \n' + 
+'      Component Overview \n' + 
+'    </div><div class="anexample" id="entity-example1"> \n' + 
+'      <p> \n' + 
+'        User Alice writes an article. In its provenance, she wishes to refer to \n' + 
+'        the precise version of the article with a date-specific URI, as she \n' + 
+'        might edit the article later. Alternatively, user Bob refers to the \n' + 
+'        article in general, indepedently of its variants over time. \n' + 
+'      </p> \n' + 
+'    </div><div class="attributes" id="attributes-specialization"> \n' + 
+'      A <dfn title="specializationOf">specialization</dfn> relation<span class="withPn">, written <span class="pnExpression">specializationOf(sub, \n' + 
+'      super)</span> in PROV-N,</span> has: \n' + 
 '      <ul> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">id</span>: an OPTIONAL identifier for the \n' + 
-'          association between the two alternates; \n' + 
+'          <span class="attribute" id="specialization.specializedEntity">specializedEntity</span>: \n' + 
+'          an identifier (<span class="name">sub</span>) of the specialized \n' + 
+'          entity; \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">firstAlternate</span>: an identifier of the \n' + 
-'          first of the two entities; \n' + 
+'          <span class="attribute" id="specialization.generalEntity">generalEntity</span>: \n' + 
+'          an identifier (<span class="name">super</span>) of the entity that is \n' + 
+'          being specialized. \n' + 
+'        </li> \n' + 
+'      </ul> \n' + 
+'    </div><div class="anexample" id="anexample-specialization"> \n' + 
+'      <p> \n' + 
+'        The BBC news home page on 2012-03-23 <span class="name">ex:bbcNews2012-03-23</span> \n' + 
+'        is a specialization of the BBC news page in general <a href="http://www.bbc.co.uk/news/">bbc:news/</a>. This can be expressed \n' + 
+'        as follows. \n' + 
+'      </p> \n' + 
+'<pre class="codeexample" xml:space="preserve"> \n' + 
+'specializationOf(ex:bbcNews2012-03-23, bbc:news/) \n' + 
+'</pre> \n' + 
+'      Given that the BBC news does not define a URI for this day\'s news page, we \n' + 
+'      are creating a qualified name in the namespace <span class="name">ex</span>. \n' + 
+'    </div><div class="attributes" id="attributes-alternate"> \n' + 
+'      An <dfn title="alternateOf">alternate</dfn> relation<span class="withPn">, \n' + 
+'      written <span class="pnExpression">alternateOf(e1, e2)</span> in PROV-N,</span> \n' + 
+'      has: \n' + 
+'      <ul> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="alternate.alternate1">alternate1</span>: \n' + 
+'          an identifier (<span class="name">e1</span>) of the first of the two \n' + 
+'          entities; \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">secondAlternate</span>: an identifier of the \n' + 
-'          second of the two entities; \n' + 
-'        </li> \n' + 
-'        <li> \n' + 
-'          <span class="attribute">attributes</span>: an OPTIONAL set of \n' + 
-'          attribute-value pairs to further describe this relation. \n' + 
+'          <span class="attribute" id="alternate.alternate2">alternate2</span>: \n' + 
+'          an identifier (<span class="name">e2</span>) of the second of the two \n' + 
+'          entities. \n' + 
 '        </li> \n' + 
 '      </ul> \n' + 
 '    </div><div class="anexample" id="anexample-alternate"> \n' + 
 '      <p> \n' + 
-'        The following expressions describe two persons, respectively holder of a \n' + 
-'        Facebook account and a Twitter account, and their relation as alternate. \n' + 
+'        A given news item on the BBC News site <a href="http://www.bbc.co.uk/news/science-environment-17526723">bbc:news/science-environment-17526723</a> \n' + 
+'        for desktop is an alternate of a <a href="http://www.bbc.co.uk/news/mobile/science-environment-17526723">bbc:news/mobile/science-environment-17526723</a> \n' + 
+'        for mobile devices. \n' + 
 '      </p> \n' + 
 '<pre class="codeexample" xml:space="preserve"> \n' + 
-'entity(facebook:ABC, [ prov:type="person with Facebook account " ]) \n' + 
-'entity(twitter:XYZ, [ prov:type="person with Twitter account" ]) \n' + 
-'alternateOf(facebook:ABC, twitter:XYZ) \n' + 
+'entity(bbc:news/science-environment-17526723, [ prov:type="a news item for desktop"]) \n' + 
+'entity(bbc:news/mobile/science-environment-17526723, [ prov:type="a news item for mobile devices"]) \n' + 
+'alternateOf(bbc:news/science-environment-17526723, bbc:news/mobile/science-environment-17526723) \n' + 
 '</pre> \n' + 
-'    </div><div class="attributes" id="attributes-specialization"> \n' + 
-'      A <dfn title="dfn-Specialization">specialization relation</dfn><span class="withAsn">, written <span class="name">specializationOf(id, sub, \n' + 
-'      super, attrs)</span> in PROV-ASN,</span> addresses case (2). It has the \n' + 
-'      following constituents: \n' + 
+'      <p> \n' + 
+'        They are both specialization of an (unspecified) entity. \n' + 
+'      </p> \n' + 
+'    </div><div class="anexample" id="anexample-alternate2"> \n' + 
+'      <p> \n' + 
+'        Considering again the two versions of the technical report <span class="name"><a href="http://www.w3.org/TR/2011/WD-prov-dm-20111215">tr:WD-prov-dm-20111215</a></span> \n' + 
+'        (second working draft) and <span class="name"><span class="name"><a href="http://www.w3.org/TR/2011/WD-prov-dm-20111018">tr:WD-prov-dm-20111018</a></span></span> \n' + 
+'        (first working draft). They are alternate of each other. \n' + 
+'      </p> \n' + 
+'<pre class="codeexample" xml:space="preserve"> \n' + 
+'entity(tr:WD-prov-dm-20111018) \n' + 
+'entity(tr:WD-prov-dm-20111215) \n' + 
+'alternateOf(tr:WD-prov-dm-20111018,tr:WD-prov-dm-20111215) \n' + 
+'</pre> \n' + 
+'      <p> \n' + 
+'        They are both specialization of the page <a href="http://www.w3.org/TR/prov-dm/">http://www.w3.org/TR/prov-dm/</a>. \n' + 
+'      </p> \n' + 
+'    </div><div style="text-align: center;"> \n' + 
+'      <img src="images/Collections.png" alt="collections" /> Figure 9: \n' + 
+'      Collections Component Overview \n' + 
+'    </div><div class="anexample"> \n' + 
+'<pre class="codeexample" xml:space="preserve"> \n' + 
+'entity(c0, [prov:type="prov:EmptyCollection" %% xsd:QName])  // c0 is an empty collection \n' + 
+'entity(c1, [prov:type="prov:Collection"  %% xsd:QName])      // c1 is a collection, with unknown content \n' + 
+'</pre> \n' + 
+'    </div><div class="attributes" id="attributes-derivedByInsertionFrom"> \n' + 
+'      <p> \n' + 
+'        An <dfn title="derivedByInsertionFrom">Insertion</dfn> relation<span class="withPn">, written <span class="pnExpression">derivedByInsertionFrom(id, \n' + 
+'        c2, c1, {(key_1, e_1), ..., (key_n, e_n)}, attrs)</span>,</span> has: \n' + 
+'      </p> \n' + 
 '      <ul> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">id</span>: an OPTIONAL identifier for the \n' + 
-'          association between the two entities; \n' + 
-'        </li> \n' + 
-'        <li> \n' + 
-'          <span class="attribute">specializedEntity</span>: an identifier of the \n' + 
-'          specialized entity; \n' + 
+'          <span class="attribute" id="derivedByInsertionFrom.id">id</span>: an \n' + 
+'          OPTIONAL identifier identifying the relation; \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">generalEntity</span>: an identifier of the \n' + 
-'          entity that is being specialized; \n' + 
+'          <span class="attribute" id="derivedByInsertionFrom.after">after</span>: \n' + 
+'          an identifier (<span class="name">c2</span>) for the collection <em>after</em> \n' + 
+'          insertion; \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          <span class="attribute">attributes</span>: an OPTIONAL set of \n' + 
-'          attribute-value pairs to further describe this relation. \n' + 
+'          <span class="attribute" id="derivedByInsertionFrom.before">before</span>: \n' + 
+'          an identifier (<span class="name">c1</span>) for the collection <em>before</em> \n' + 
+'          insertion; \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="derivedByInsertionFrom.key-entity-set">key-entity-set</span>: \n' + 
+'          the inserted key-entity pairs <span class="name">(key_1, e_1)</span>, \n' + 
+'          ..., <span class="name">(key_n, e_n)</span> in which each <span class="name">key_i</span> is a <a>value</a>, and <span class="name">e_i</span> \n' + 
+'          is an identifier for the entity that has been inserted with the key; \n' + 
+'          each <span class="name">key_i</span> is expected to be unique for the \n' + 
+'          key-entity-set; \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="derivedByInsertionFrom.attributes">attributes</span>: \n' + 
+'          an OPTIONAL set (<span class="name">attrs</span>) of attribute-value \n' + 
+'          pairs representing additional information about this relation. \n' + 
 '        </li> \n' + 
 '      </ul> \n' + 
-'    </div><div class="anexample" id="anexample-specialization"> \n' + 
+'    </div><div class="anexample"> \n' + 
+'<pre class="codeexample" xml:space="preserve"> \n' + 
+'entity(c0, [prov:type="prov:EmptyCollection" %% xsd:QName])    // c0 is an empty collection \n' + 
+'entity(e1) \n' + 
+'entity(e2) \n' + 
+'entity(e3) \n' + 
+'entity(c1, [prov:type="prov:Collection" %% xsd:QName]) \n' + 
+'entity(c2, [prov:type="prov:Collection" %% xsd:QName]) \n' + 
+' \n' + 
+'derivedByInsertionFrom(c1, c0, {("k1", e1), ("k2", e2)})        \n' + 
+'derivedByInsertionFrom(c2, c1, {("k3", e3)})     \n' + 
+'</pre> \n' + 
+'      From this set of descriptions, we conclude: \n' + 
+'      <ul> \n' + 
+'        <li> \n' + 
+'          <span class="name">c0</span> is the set <span class="name">{ }</span> \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="name">c1</span> is the set <span class="name">{ ("k1", \n' + 
+'          e1), ("k2", e2) }</span> \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="name">c2</span> is the set <span class="name">{ ("k1", \n' + 
+'          e1), ("k2", e2), ("k3", e3) }</span> \n' + 
+'        </li> \n' + 
+'      </ul> \n' + 
+'    </div><div class="anexample"> \n' + 
+'<pre class="codeexample" xml:space="preserve"> \n' + 
+'entity(c0, [prov:type="prov:EmptyCollection" %% xsd:QName])    // c0 is an empty collection \n' + 
+'entity(e1) \n' + 
+'entity(e2) \n' + 
+'entity(e3) \n' + 
+'entity(c1, [prov:type="prov:Collection" %% xsd:QName]) \n' + 
+'entity(c2, [prov:type="prov:Collection" %% xsd:QName]) \n' + 
+' \n' + 
+'derivedByInsertionFrom(c1, c0, {("k1", e1), ("k2", e2)})        \n' + 
+'derivedByInsertionFrom(c2, c1, {("k1", e3)})     \n' + 
+'</pre> \n' + 
+'      This is a case of <em>update</em> of <span class="name">e1</span> to <span class="name">e3</span> for the same key, <span class="name">"k1"</span>. \n' + 
+'      <br /> From this set of descriptions, we conclude: \n' + 
+'      <ul> \n' + 
+'        <li> \n' + 
+'          <span class="name">c0</span> is the set <span class="name">{ }</span> \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="name">c1</span> is the set <span class="name">{ ("k1", \n' + 
+'          e1), ("k2", e2) }</span> \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="name">c2</span> is the set <span class="name">{ ("k1", \n' + 
+'          e3), ("k2", e2) }</span> \n' + 
+'        </li> \n' + 
+'      </ul> \n' + 
+'    </div><div class="attributes" id="attributes-derivedByRemovalFrom"> \n' + 
 '      <p> \n' + 
-'        The following expressions describe two persons, the second of which is \n' + 
-'        holder of a Twitter account. The second entity is a specialization of \n' + 
-'        the first. \n' + 
+'        A <dfn title="derivedByRemovalFrom">Removal</dfn> relation, written \n' + 
+'        <span class="pnExpression">derivedByRemovalFrom(id, c2, c1, {key_1, ... \n' + 
+'        key_n}, attrs)</span>, has: \n' + 
+'      </p> \n' + 
+'      <ul> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="derivedByRemovalFrom.id">id</span>: an \n' + 
+'          OPTIONAL identifier identifying the relation; \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="derivedByRemovalFrom.after">after</span>: \n' + 
+'          an identifier (<span class="name">c2</span>) for the collection <em>after</em> \n' + 
+'          the deletion; \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="derivedByRemovalFrom.before">before</span>: \n' + 
+'          an identifier (<span class="name">c1</span>) for the collection <em>before</em> \n' + 
+'          the deletion; \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="derivedByRemovalFrom.key-set">key-set</span>: \n' + 
+'          a set of deleted keys <span class="name">key_1</span>, ..., <span class="name">key_n</span>, for which each <span class="name">key_i</span> \n' + 
+'          is a <a>value</a>; \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="derivedByRemovalFrom.attributes">attributes</span>: \n' + 
+'          an OPTIONAL set (<span class="name">attrs</span>) of attribute-value \n' + 
+'          pairs representing additional information about this relation. \n' + 
+'        </li> \n' + 
+'      </ul> \n' + 
+'    </div><div class="anexample"> \n' + 
+'<pre class="codeexample" xml:space="preserve"> \n' + 
+'entity(c0, [prov:type="prov:EmptyCollection"])    // c0 is an empty collection \n' + 
+'entity(e1) \n' + 
+'entity(e2) \n' + 
+'entity(e3) \n' + 
+'entity(c1, [prov:type="prov:Collection"]) \n' + 
+'entity(c2, [prov:type="prov:Collection"]) \n' + 
+' \n' + 
+'derivedByInsertionFrom(c1, c0, {("k1", e1), ("k2",e2)})        \n' + 
+'derivedByInsertionFrom(c2, c1, {("k3", e3)}) \n' + 
+'derivedByRemovalFrom(c3, c2, {"k1", "k3"})    \n' + 
+'</pre> \n' + 
+'      From this set of descriptions, we conclude: \n' + 
+'      <ul> \n' + 
+'        <li> \n' + 
+'          <span class="name">c0</span> is the set <span class="name">{ }</span> \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="name">c1</span> is the set <span class="name">{ ("k1", \n' + 
+'          e1), ("k2", e2) }</span> \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="name">c2</span> is the set <span class="name">{ ("k1", \n' + 
+'          e1), ("k2", e2), ("k3", e3) }</span> \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="name">c3</span> is the set <span class="name">{ ("k2", \n' + 
+'          e2) }</span> \n' + 
+'        </li> \n' + 
+'      </ul> \n' + 
+'    </div><div class="attributes" id="attributes-memberOf"> \n' + 
+'      A <dfn title="memberOf">membership</dfn> relation, written <span class="pnExpression">memberOf(id, c, {(key_1, e_1), ..., (key_n, e_n)}, \n' + 
+'      attrs)</span>, has: \n' + 
+'      <ul> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="memberOf.id">id</span>: an OPTIONAL \n' + 
+'          identifier identifying the relation; \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="memberOf.after">after</span>: an \n' + 
+'          identifier (<span class="name">c</span>) for the collection whose \n' + 
+'          members are asserted; \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="memberOf.key-entity-set">key-entity-set</span>: \n' + 
+'          a set of key-entity pairs <span class="name">(key_1, e_1)</span>, ..., \n' + 
+'          <span class="name">(key_n, e_n)</span> that are members of the \n' + 
+'          collection; \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="memberOf.complete">complete</span>: an \n' + 
+'          OPTIONAL boolean <a title="value">Value</a>; if true, it indicates \n' + 
+'          that no other member belongs to the collection; \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="memberOf.attributes">attributes</span>: an \n' + 
+'          OPTIONAL set (<span class="name">attrs</span>) of attribute-value \n' + 
+'          pairs representing additional information about this relation. \n' + 
+'        </li> \n' + 
+'      </ul> \n' + 
+'    </div><div class="anexample"> \n' + 
+'<pre class="codeexample" xml:space="preserve"> \n' + 
+'entity(c1, [prov:type="prov:Collection"  %% xsd:QName])    // c1 is a collection, with unknown content \n' + 
+'entity(c2, [prov:type="prov:Collection"  %% xsd:QName])    // c2 is a collection, with unknown content \n' + 
+' \n' + 
+'entity(e1) \n' + 
+'entity(e2) \n' + 
+' \n' + 
+'memberOf(c1, {("k1", e1), ("k2", e2)} )   \n' + 
+'memberOf(c2, {("k1", e1), ("k2", e2)}, true)   \n' + 
+' \n' + 
+'entity(e3) \n' + 
+'entity(c3, [prov:type="prov:Collection"  %% xsd:QName]) \n' + 
+' \n' + 
+'derivedByInsertionFrom(c3, c1, {("k3", e3)})      \n' + 
+'</pre> \n' + 
+'      From these descriptions, we conclude: \n' + 
+'      <ul> \n' + 
+'        <li> \n' + 
+'          <span class="name">c1</span> has the following pairs as members: <span class="name">("k1", e1), ("k2", e2)</span>, and may contain others. \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="name">c2</span> exactly has the following pairs as \n' + 
+'          members: <span class="name">("k1", e1), ("k2", e2)</span>, and does \n' + 
+'          not contain any other. \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="name">c3</span> has the following pairs as members: <span class="name">("k1", e1), ("k2", e2), ("k3", v3)</span>, and may \n' + 
+'          contain others. \n' + 
+'        </li> \n' + 
+'      </ul> \n' + 
+'      <p> \n' + 
+'        Thus, the states of <span class="name">c1</span> and <span class="name">c3</span> \n' + 
+'        are only partially known. \n' + 
+'      </p> \n' + 
+'    </div><div class="attributes" id="attributes-note"> \n' + 
+'      A <dfn title="dfn-note" id="dfn-note">note</dfn><span class="withPn">, \n' + 
+'      written <span class="pnExpression">note(id, [attr1=val1, ...])</span> in \n' + 
+'      PROV-N,</span> has: \n' + 
+'      <ul> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="note.id">id</span>: an identifier for a \n' + 
+'          note; \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="note.attributes">attributes</span>: a set \n' + 
+'          of attribute-value pairs ((<span class="name">attr1</span>, <span class="name">val1</span>), ...) representing application-specific \n' + 
+'          information. \n' + 
+'        </li> \n' + 
+'      </ul> \n' + 
+'    </div><div class="anexample" id="anexample-note1"> \n' + 
+'      <p> \n' + 
+'        The following note consists of a set of application-specific \n' + 
+'        attribute-value pairs, intended to help the rendering of the \n' + 
+'        pre-existing entity it is associated with, by specifying its color and \n' + 
+'        its position on the screen. \n' + 
 '      </p> \n' + 
 '<pre class="codeexample" xml:space="preserve"> \n' + 
-'entity(ex:Bob, [ prov:type="person", ex:name="Bob" ]) \n' + 
-'entity(twitter:XYZ, [ prov:type="person with Twitter account" ]) \n' + 
-'specializationOf(twitter:XYZ, ex:Bob) \n' + 
+'note(ex:n1,[ex:color="blue", ex:screenX=20, ex:screenY=30]) \n' + 
+'hasAnnotation(tr:WD-prov-dm-20111215,ex:n1) \n' + 
 '</pre> \n' + 
-'    </div><div class="issue"> \n' + 
-'      A discussion on alternative definition of these relations has not yet \n' + 
-'      reached a satisfactory conclusion. This is <a href="http://www.w3.org/2011/prov/track/issues/29">ISSUE-29</a>. Also <a href="http://www.w3.org/2011/prov/track/issues/96">ISSUE-96</a>. \n' + 
-'    </div><div class="glossary" id="glossary-annotation"> \n' + 
-'      An <dfn title="concept-annotation">annotation</dfn> is a link between \n' + 
-'      something that is identifiable and a note referred to by its identifier. \n' + 
+'      <p> \n' + 
+'        The note is linked to the entity <span class="name">tr:WD-prov-dm-20111215</span>, \n' + 
+'        with relation <a title="annotation">hasAnnotation</a> discussed in <a href="#term-annotation">Section 4.6.2</a>. The note\'s identifier and \n' + 
+'        attributes are declared in the namespace denoted by prefix <span class="name">ex</span> to illustrate that the rendering application may \n' + 
+'        differ from the application involving entity <span class="name">tr:WD-prov-dm-20111215</span>. \n' + 
+'      </p> \n' + 
+'    </div><div class="anexample" id="anexample-note2"> \n' + 
+'      <p> \n' + 
+'        Alternatively, a reputation service may enrich an existing provenance \n' + 
+'        record with notes providing reputation ratings about agents. In the \n' + 
+'        following fragment, both agents <span class="name">ex2:Simon</span> and \n' + 
+'        <span class="name">ex2:Paolo</span> are rated "excellent". \n' + 
+'      </p> \n' + 
+'<pre class="codeexample" xml:space="preserve"> \n' + 
+'note(ex3:n2,[ex3:reputation="excellent"]) \n' + 
+'hasAnnotation(ex2:Simon,ex3:n2) \n' + 
+'hasAnnotation(ex2:Paolo,ex3:n2) \n' + 
+'</pre> \n' + 
+'      <p> \n' + 
+'        The note\'s identifier and attributes are declared in a separate \n' + 
+'        namespace denoted by prefix <span class="name">ex3</span>. \n' + 
+'      </p> \n' + 
+'    </div><div class="attributes" id="attributes-annotation"> \n' + 
+'      An <dfn title="hasAnnotation">annotation relation</dfn><span class="withPn">, \n' + 
+'      written <span class="pnExpression">hasAnnotation(r,n)</span> in PROV-N,</span> \n' + 
+'      has: \n' + 
+'      <ul> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="annotation.id">something</span>: the \n' + 
+'          identifier (<span class="name">r</span>) of something being annotated; \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="attribute" id="annotation.note">note</span>: an \n' + 
+'          identifier (<span class="name">n</span>) of a note. \n' + 
+'        </li> \n' + 
+'      </ul> \n' + 
 '    </div><div class="anexample"> \n' + 
 '      <p> \n' + 
 '        The following expressions \n' + 
@@ -683,47 +1698,56 @@
 '      </p> \n' + 
 '    </div><div class="anexample"> \n' + 
 '      <p> \n' + 
-'        The following activity start describes the role of the agent identified \n' + 
-'        by <span class="name">ag</span> in this start relation with activity \n' + 
-'        <span class="name">a</span>. \n' + 
-'      </p> \n' + 
-'<pre class="codeexample" xml:space="preserve"> \n' + 
-'   wasStartedBy(a,ag, [prov:role="program-operator"]) \n' + 
-'</pre> \n' + 
-'    </div><div class="anexample"> \n' + 
-'      <p> \n' + 
-'        The following describes an agent of type software agent. \n' + 
+'        The following entity is provided with a label attribute. \n' + 
 '      </p> \n' + 
 '<pre class="codeexample" xml:space="preserve"> \n' + 
-'   agent(ag, [prov:type="prov:ComputingSystem" %% xsd:QName]) \n' + 
+' entity(ex:e1, [prov:label="This is a label"]) \n' + 
 '</pre> \n' + 
 '    </div><div class="anexample"> \n' + 
 '      <p> \n' + 
-'        The following expression declares an imprecise-1 derivation, which is \n' + 
-'        known to involve one activity, though its identity, usage details of \n' + 
-'        <span class="name">ex:e1</span>, and generation details of <span class="name">ex:e2</span> are not explicit. \n' + 
-'      </p> \n' + 
-'<pre class="codeexample" xml:space="preserve"> \n' + 
-'   wasDerivedFrom(ex:e2, ex:e1, [prov:steps="single"]) \n' + 
-'</pre> \n' + 
-'    </div><div class="issue"> \n' + 
-'      This is <a href="http://www.w3.org/2011/prov/track/issues/219">ISSUE-219</a>. \n' + 
-'    </div><div class="anexample"> \n' + 
-'      <p> \n' + 
 '        The following expression describes entity Mona Lisa, a painting, with a \n' + 
 '        location attribute. \n' + 
 '      </p> \n' + 
 '<pre class="codeexample" xml:space="preserve"> \n' + 
 ' entity(ex:MonaLisa, [prov:location="Le Louvres, Paris", prov:type="StillImage"]) \n' + 
 '</pre> \n' + 
-'    </div><div class="note"> \n' + 
-'      Usually, in programming languages, Literal are a notation for values. So, \n' + 
-'      Literals should probably be moved to the serialization. Here, instead, we \n' + 
-'      should define the types of values. Thoughts? \n' + 
 '    </div><div class="anexample"> \n' + 
 '      <p> \n' + 
-'        The following examples respectively are the string "abc", the string \n' + 
-'        "abc", the integer number 1, and the IRI "http://example.org/foo". \n' + 
+'        The following activity is associated with an agent acting as the \n' + 
+'        operator. \n' + 
+'      </p> \n' + 
+'<pre class="codeexample" xml:space="preserve"> \n' + 
+' wasAssociatedWith(a, ag, [prov:role="operator"]) \n' + 
+'</pre> \n' + 
+'    </div><div class="anexample"> \n' + 
+'      <p> \n' + 
+'        The following describes an agent of type software agent. \n' + 
+'      </p> \n' + 
+'<pre class="codeexample" xml:space="preserve"> \n' + 
+'   agent(ag, [prov:type="prov:SoftwareAgent" %% xsd:QName]) \n' + 
+'</pre> \n' + 
+'    </div><div class="anexample"> \n' + 
+'      <p> \n' + 
+'        The following example illustrates the provenance of the number <span class="name">4</span> obtained by an activity that computed the length \n' + 
+'        of an input string <span class="name">"abcd"</span>. The input and the \n' + 
+'        output are expressed as entities <span class="name">ex:in</span> and \n' + 
+'        <span class="name">ex:out</span>, respectively. They each have a <span class="name">prov:value</span> attribute associated with the \n' + 
+'        corresponding value. \n' + 
+'      </p> \n' + 
+'<pre class="codeexample" xml:space="preserve"> \n' + 
+'entity(ex:in, [prov:value="abcd"])  \n' + 
+'entity(ex:out, [prov:value=4])  \n' + 
+'activity(ex:len, [prov:type="string-length"]) \n' + 
+'used(ex:len,ex:in) \n' + 
+'wasGeneratedBy(ex:out,ex:len) \n' + 
+'wasDerivedFrom(ex:out,ex:in) \n' + 
+'</pre> \n' + 
+'    </div><div class="note"> \n' + 
+'      Should we also have prov:encoding? \n' + 
+'    </div><div class="anexample" id="anexample-value"> \n' + 
+'      <p> \n' + 
+'        The following examples respectively are the string "abc", the integer \n' + 
+'        number 1, and the IRI "http://example.org/foo". \n' + 
 '      </p> \n' + 
 '<pre class="codeexample" xml:space="preserve"> \n' + 
 '  "abc" \n' + 
@@ -731,149 +1755,45 @@
 '  "http://example.org/foo" %% xsd:anyURI \n' + 
 '</pre> \n' + 
 '      <p> \n' + 
-'        The following example shows a literal of type <span class="name">xsd:QName</span> \n' + 
+'        The following example shows a value of type <span class="name">xsd:QName</span> \n' + 
 '        (see <a href="http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/#QName">QName</a> \n' + 
 '        [[!XMLSCHEMA-2]]). The prefix <span class="name">ex</span> MUST be bound \n' + 
 '        to a <a>namespace</a> declared in a <a>namespace declaration</a>. \n' + 
 '      </p> \n' + 
-'<pre class="codeexample" xml:space="preserve"> \n' + 
+'<pre class="codeexample" xml:space="preserve">  \n' + 
 '  "ex:value" %% xsd:QName \n' + 
 '</pre> \n' + 
-'    </div><div class="note"> \n' + 
-'      It\'s a legacy of the charter that time is a top level section. Time is a \n' + 
-'      specific kind of value, and should be folded into the "value" section. \n' + 
-'    </div><div class="anexample"> \n' + 
-'      <p> \n' + 
-'        Revisiting the example of <a href="#section-example-a">Section 3.1</a>, \n' + 
-'        we can now state that the report <span class="name">tr:WD-prov-dm-20111215</span> \n' + 
-'        is a revision of the report <span class="name">tr:WD-prov-dm-20111018</span>, \n' + 
-'        approved by agent <span class="name">w3:Consortium</span>. \n' + 
-'      </p> \n' + 
-'<pre class="codeexample" xml:space="preserve"> \n' + 
-'entity(tr:WD-prov-dm-20111215, [ prov:type="pr:RecsWD" %% xsd:QName ]) \n' + 
-'entity(tr:WD-prov-dm-20111018, [ prov:type="pr:RecsWD" %% xsd:QName ]) \n' + 
-'wasRevisionOf(tr:WD-prov-dm-20111215, tr:WD-prov-dm-20111018, w3:Consortium) \n' + 
-'</pre> \n' + 
-'    </div><div class="anexample"> \n' + 
-'      <p> \n' + 
-'        Revisiting the example of <a href="#section-example-b">Section 3.2</a>, \n' + 
-'        we can ascribe <span class="name">tr:WD-prov-dm-20111215</span> to some \n' + 
-'        agents without having to make an activity explicit. \n' + 
-'      </p> \n' + 
-'<pre class="codeexample" xml:space="preserve"> \n' + 
-'agent(ex:Paolo, [ prov:type="Human" ]) \n' + 
-'agent(ex:Simon, [ prov:type="Human" ]) \n' + 
-'entity(tr:WD-prov-dm-20111215, [ prov:type="pr:RecsWD" %% xsd:QName ]) \n' + 
-'wasAttributedTo(tr:WD-prov-dm-20111215, ex:Paolo, [prov:role="editor"]) \n' + 
-'wasAttributedTo(tr:WD-prov-dm-20111215, ex:Simon, [prov:role="contributor"]) \n' + 
-'</pre> \n' + 
-'    </div><div class="anexample"> \n' + 
+'    </div><div class="anexample" id="anexample-time"> \n' + 
 '      <p> \n' + 
-'        Consider two long running services, which we represent by activities \n' + 
-'        <span class="name">s1</span> and <span class="name">s2</span>. \n' + 
-'      </p> \n' + 
-'<pre class="codeexample" xml:space="preserve"> \n' + 
-'activity(s1,,,[prov:type="service"]) \n' + 
-'activity(s2,,,[prov:type="service"]) \n' + 
-'wasInformedBy(s2,s1) \n' + 
-'</pre> \n' + 
-'      The last line indicates that some entity was generated by <span class="name">s1</span> and used by <span class="name">s2</span>. \n' + 
-'    </div><div class="anexample"> \n' + 
-'      <p> \n' + 
-'        Suppose activities <span class="name">a1</span> and <span class="name">a2</span> \n' + 
-'        are computer processes that are executed on different hosts, and that \n' + 
-'        <span class="name">a1</span> started <span class="name">a2</span>. This \n' + 
-'        can be expressed as in the following fragment: \n' + 
+'        In the following example, the generation time of entity <span class="name">e1</span> is expressed according to <a href="http://www.w3.org/TR/xmlschema-2/#dateTime">xsd:dateTime</a> \n' + 
+'        [[!XMLSCHEMA-2]]. \n' + 
 '      </p> \n' + 
-'<pre class="codeexample" xml:space="preserve"> \n' + 
-'activity(a1,t1,t2,[ex:host="server1.example.org",prov:type="workflow"]) \n' + 
-'activity(a2,t3,t4,[ex:host="server2.example.org",prov:type="subworkflow"]) \n' + 
-'wasStartedBy(a2,a1) \n' + 
-'</pre> \n' + 
-'    </div><div class="anexample"> \n' + 
-'      <p> \n' + 
-'        We refer to the example of <a href="#section-example-a">Section 3.1</a>, \n' + 
-'        and specifically to <a href="#prov-tech-report">Figure prov-tech-report</a>. \n' + 
-'        We can see that there is a path from <span class="name">tr:WD-prov-dm-20111215</span> \n' + 
-'        to <span class="name">w3:Consortium</span> or to <span class="name">pr:rec-advance</span>. \n' + 
-'        This is expressed as follows. \n' + 
-'      </p> \n' + 
-'<pre class="codeexample" xml:space="preserve"> \n' + 
-' tracedTo(tr:WD-prov-dm-20111215,w3:Consortium) \n' + 
-' tracedTo(tr:WD-prov-dm-20111215,pr:rec-advance) \n' + 
+'<pre class="codeexample" xml:space="preserve">  \n' + 
+'  wasGeneratedBy(e1,a1, 2001-10-26T21:32:52) \n' + 
 '</pre> \n' + 
 '    </div><div class="note"> \n' + 
-'      I propose to delete the following, given that this document does not \n' + 
-'      mention inferences. [LM] \n' + 
-'      <p> \n' + 
-'        Further considerations: \n' + 
-'      </p> \n' + 
-'      <ul> \n' + 
-'        <li> \n' + 
-'          Traceability is more general than <a href="#Derivation-Relation">Derivation</a>. \n' + 
-'          This means that an assertion of the form: <span class="name">tracedTo(...,e2,e1,...)</span> \n' + 
-'          can be inferred from an assertion of the form: <span class="name">wasDerivedFrom(e2,e1,..)</span>. \n' + 
-'          The precise inference rules are specified in [REF]. \n' + 
-'        </li> \n' + 
-'        <li> \n' + 
-'          Traceability is related to responsibility by way of inference rules \n' + 
-'          that involve <a href="#term-responsibility">responsibility chain</a> \n' + 
-'          and <a href="#term-Generation">generation</a> relations. These rules \n' + 
-'          are specified in [REF] \n' + 
-'        </li> \n' + 
-'      </ul> \n' + 
-'    </div><div class="note"> \n' + 
-'      looking at the definition, there is something wrong. It\'s not true that e2 \n' + 
-'      was neceaary for e1 (in the transitive case) and that e1 bears \n' + 
-'      responsibility. [LM] \n' + 
-'    </div><div class="note"> \n' + 
-'      I find that quotation is really a misnomer. This expands into derivation \n' + 
-'      with attribution, in what sense is the derived entity a "quote" of the \n' + 
-'      original? . The agent that is quoted is particularly obscure. It does not \n' + 
-'      seem to be involved in the quoting at all. Why isn\'t quoting an activity \n' + 
-'      with the quoting agent associated with it? [PM] \n' + 
-'    </div><div class="note"> \n' + 
-'      Omitted as this is likely to be removed [PM] \n' + 
-'    </div><div class="issue"> \n' + 
-'      Drop this relation <a href="http://www.w3.org/2011/prov/track/issues/220">ISSUE-220</a>. \n' + 
-'    </div><div class="note"> \n' + 
-'      I find this relation confusing. Please add an example. I wouldn\'t really \n' + 
-'      know when to use this. [PM] \n' + 
-'    </div><div class="anexample"> \n' + 
-'<pre class="codeexample" xml:space="preserve"> \n' + 
-'   entity(c, [prov:type="EmptyCollection"])    // e is an empty collection \n' + 
-'   entity(v1) \n' + 
-'   entity(v2) \n' + 
-'   entity(c1, [prov:type="Collection"]) \n' + 
-'   entity(c2, [prov:type="Collection"]) \n' + 
-'   \n' + 
-'  CollectionAfterInsertion(c1, c, "k1", v1)       // c1 = { ("k1",v1) } \n' + 
-'  CollectionAfterInsertion(c2, c1, "k2", v2)      // c2 = { ("k1",v1), ("k2", v2) } \n' + 
-'  CollectionAfterRemoval(c3, c2, k1)              // c3 = { ("k2",v2) } \n' + 
+'      We need to check that we are including all xsd types that are the latest \n' + 
+'      versions of XML Schema/RDF. \n' + 
+'    </div><div class="anexample" id="anexample-sub-relation"> \n' + 
+'          <p> \n' + 
+'            In the following example, <span class="name">e2</span> is a \n' + 
+'            translation of <span class="name">e1</span>, expressed as a sub-type \n' + 
+'            of derivation. \n' + 
+'          </p> \n' + 
+'<pre class="codeexample" xml:space="preserve">  \n' + 
+'  wasDerivedFrom(e2,e1, [prov:type="ex:Translation" %% xsd:QName]) \n' + 
 '</pre> \n' + 
-'    </div><div class="note"> \n' + 
-'      I propose to call them afterInsertion instead of CollectionAfterInsertion \n' + 
-'      (likewise, for deletion). What about attributes and optional Id? \n' + 
-'    </div><div class="note"> \n' + 
-'      Deleted further items. Some of them are constraints which belong to part \n' + 
-'      2. \n' + 
-'    </div><div id="glossary_div" class="remove"> \n' + 
+'        </div><div class="anexample" id="anexample-sub-type"> \n' + 
+'          <p> \n' + 
+'            In the following example, <span class="name">e</span> is described \n' + 
+'            as a Car, a type of entity. \n' + 
+'          </p> \n' + 
+'<pre class="codeexample" xml:space="preserve">  \n' + 
+'  entity(e, [prov:type="ex:Car" %% xsd:QName]) \n' + 
+'</pre> \n' + 
+'        </div><div id="glossary_div" class="remove"> \n' + 
 '      <!--  glossary loaded from glossary.js will be hooked up here, class \n' + 
 '        remove, will remove this element from the final output. --> \n' + 
-'    </div><div class="note"> \n' + 
-'      TO EDIT \n' + 
-'    </div><div class="note"> \n' + 
-'      TO EDIT \n' + 
-'    </div><div class="buttonpanel"> \n' + 
-'      <form action="#"> \n' + 
-'        <p> \n' + 
-'          <input id="hide-bnf" onclick="set_display_by_class(\'div\',\'grammar\',\'none\'); set_display_by_id(\'hide-bnf\',\'none\');  set_display_by_id(\'show-bnf\',\'\');" type="button" value="Hide Grammar" /> <input id="show-bnf" onclick="set_display_by_class(\'div\',\'grammar\',\'\'); set_display_by_id(\'hide-bnf\',\'\');  set_display_by_id(\'show-bnf\',\'none\');" style="display: none" type="button" value="Show Grammar" /> <input id="hide-examples" onclick="set_display_by_class(\'div\',\'anexample\',\'none\'); set_display_by_id(\'hide-examples\',\'none\'); set_display_by_id(\'show-examples\',\'\');" type="button" value="Hide Examples" /> <input id="show-examples" onclick="set_display_by_class(\'div\',\'anexample\',\'\'); set_display_by_id(\'hide-examples\',\'\'); set_display_by_id(\'show-examples\',\'none\');" style="display: none" type="button" value="Show Examples" /> \n' + 
-'        </p> \n' + 
-'      </form> \n' + 
-'    </div><div class="note"> \n' + 
-'      TODO \n' + 
-'    </div><div class="note"> \n' + 
-'      Tentative definition of destruction! \n' + 
 '    </div><div class="anexample" id="a-report-example"> \n' + 
 '      Different users may take different perspectives on a resource with a URL. \n' + 
 '      For each perspective, an entity may be expressed: \n' + 
@@ -914,17 +1834,13 @@
 '      A file at some point during its lifecycle, which includes multiple edits \n' + 
 '      by multiple people, can be described by its type, its location in the file \n' + 
 '      system, a creator, and content. \n' + 
-'    </div><div class="issue"> \n' + 
-'      We need to refine the definition of entity and activity, and all the \n' + 
-'      concepts in general. This is <a href="http://www.w3.org/2011/prov/track/issues/223">ISSUE-223</a>. \n' + 
 '    </div><div class="note"> \n' + 
-'      The last point is important and needs to be discussed by the Working \n' + 
-'      Group. It indicates that within an account: \n' + 
+'      The last point is important. It indicates that within an account: \n' + 
 '      <ul> \n' + 
 '        <li> \n' + 
 '          It is always possible to add new provenance descriptions, e.g. stating \n' + 
-'          that a given entity was used by an activity. This is very much an open \n' + 
-'          world assumption. \n' + 
+'          that a given entity was used by an activity, or derived from another. \n' + 
+'          This is very much an open world assumption. \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
 '          It is not permitted to add new attributes to a given entity (a form of \n' + 
@@ -934,146 +1850,93 @@
 '          (cf Example <a href="#merge-with-rename">merge-with-rename</a>). \n' + 
 '        </li> \n' + 
 '      </ul> \n' + 
-'    </div><div class="note"> \n' + 
-'      <p> \n' + 
-'        Overview the kind of constraints \n' + 
-'      </p> \n' + 
-'      <ul> \n' + 
-'        <li> \n' + 
-'          Definitional constraints (<a href="#definitional-constraints">Section \n' + 
-'          4</a>) \n' + 
-'        </li> \n' + 
-'        <li> \n' + 
-'          Account constraints (<a href="#account-constraints">Section 5</a>) \n' + 
-'        </li> \n' + 
-'        <li> \n' + 
-'          Event ordering constraints (<a href="#interpretation">Section 6</a>) \n' + 
-'        </li> \n' + 
-'        <li> \n' + 
-'          Structural constraints (<a href="#structural-constraints">Section 7</a>) \n' + 
-'        </li> \n' + 
-'        <li> \n' + 
-'          Collection constraints (<a href="#collection-constraints">Section 8</a>) \n' + 
-'        </li> \n' + 
-'      </ul> \n' + 
-'    </div><div class="note"> \n' + 
-'      Proposing to remove the subsections in this section, since some have no \n' + 
-'      constraints. \n' + 
-'    </div><div class="issue"> \n' + 
-'      There is still some confusion about what the identifiers really denote. \n' + 
-'      For instance, are they entity identifiers or entity record identifiers. \n' + 
-'      This is <a href="http://www.w3.org/2011/prov/track/issues/183">ISSUE-183</a>. \n' + 
-'      An example and questions appear in <a href="http://www.w3.org/2011/prov/track/issues/215">ISSUE-215</a>. A \n' + 
-'      related issued is also raised in <a href="http://www.w3.org/2011/prov/track/issues/145">ISSUE-145</a>. \n' + 
-'    </div><div class="issue"> \n' + 
-'      The characterization interval of an entity record is currently implicit. \n' + 
-'      Making it explicit would allow us to define alternateOf and \n' + 
-'      specializationOf more precisely. Beginning and end of characterization \n' + 
-'      interval could be expressed by attributes (similarly to activities). How \n' + 
-'      do we define the end of an entity? This is <a href="http://www.w3.org/2011/prov/track/issues/204">ISSUE-204</a>. \n' + 
+'    </div><div class="interpretation-forward"> \n' + 
+'      For the interpretation of an entity, see <a href="#usage-precedes-invalidation">usage-precedes-invalidation</a>. \n' + 
 '    </div><div class="interpretation-forward"> \n' + 
 '      For the interpretation of an activity, see <a href="#start-precedes-end">start-precedes-end</a>. \n' + 
-'    </div><div class="issue"> \n' + 
-'      Shouldn\'t we allow for entities (not agent) to be associated with an \n' + 
-'      activity? Should we drop the inference association-agent? <a href="http://www.w3.org/2011/prov/track/issues/203">ISSUE-203</a>. \n' + 
-'      <p> \n' + 
-'        One can assert an agent record or alternatively, one can infer an agent \n' + 
-'        record by its association with an activity. \n' + 
-'      </p> \n' + 
-'      <div class="inference" id="association-agent"> \n' + 
-'        <span class="conditional">If</span> the records <span class="name">entity(e,attrs)</span> \n' + 
-'        and <span class="name">wasAssociatedWith(a,e)</span> hold for some \n' + 
-'        identifiers <span class="name">a</span>, <span class="name">e</span>, \n' + 
-'        and attribute-values <span class="name">attrs</span>, then the record \n' + 
-'        <span class="name">agent(e,attrs)</span> also holds. \n' + 
-'      </div> \n' + 
-'    </div><div class="inference" id="association-agent"> \n' + 
-'        <span class="conditional">If</span> the records <span class="name">entity(e,attrs)</span> \n' + 
-'        and <span class="name">wasAssociatedWith(a,e)</span> hold for some \n' + 
-'        identifiers <span class="name">a</span>, <span class="name">e</span>, \n' + 
-'        and attribute-values <span class="name">attrs</span>, then the record \n' + 
-'        <span class="name">agent(e,attrs)</span> also holds. \n' + 
-'      </div><div class="interpretation-forward"> \n' + 
+'    </div><div class="interpretation-forward"> \n' + 
 '      For the interpretation of a generation, see <a href="#generation-within-activity">generation-within-activity</a>. \n' + 
+'    </div><div class="constraint" id="unique-generation-time"> \n' + 
+'      Given an entity denoted by <span class="name">e</span> and two time \n' + 
+'      instants <span class="name">t1</span> and <span class="name">t2</span>, \n' + 
+'      <span class="conditional">if</span> <span class="name">wasGeneratedBy(e, \n' + 
+'      -, t1)</span> and <span class="name">wasGeneratedBy(e, -, t2)</span> hold, \n' + 
+'      then <span class="name">t1</span>=<span class="name">t2</span>. \n' + 
 '    </div><div class="structural-forward"> \n' + 
-'      See <a href="#generation-uniqueness">generation-uniqueness</a> for a \n' + 
-'      structural constraint on generations. \n' + 
+'      See <a href="#generation-uniqueness">generation-uniqueness</a> for further \n' + 
+'      structural constraints on generations. \n' + 
 '    </div><div class="interpretation-forward"> \n' + 
 '      For the interpretation of a usage, see <a href="#generation-precedes-usage">generation-precedes-usage</a> \n' + 
 '      and <a href="#usage-within-activity">usage-within-activity</a>. \n' + 
+'    </div><div class="constraint" id="unique-startTime"> \n' + 
+'      Given an activity <span class="name">activity(a,t1,t2,attrs1)</span> and \n' + 
+'      its start <span class="name">wasStartedBy(id,a,e,t,attrs2)</span>, then \n' + 
+'      <span class="name">t</span>=<span class="name">t1</span>. \n' + 
+'    </div><div class="constraint" id="unique-endTime"> \n' + 
+'      Given an activity <span class="name">activity(a,t1,t2,attrs1)</span> and \n' + 
+'      its end <span class="name">wasEndedBy(id,a,e,t,attrs2)</span>, then <span class="name">t</span>=<span class="name">t2</span>. \n' + 
+'    </div><div class="constraint" id="wasInformedBy-Definition"> \n' + 
+'      Given two activities identified by <span class="name">a1</span> and <span class="name">a2</span>, <span class="name">wasInformedBy(a2,a1)</span> \n' + 
+'      holds, <span class="conditional">if and only if</span> there is an entity \n' + 
+'      with some identifier <span class="name">e</span> and some sets of \n' + 
+'      attribute-value pairs <span class="name">attrs1</span> and <span class="name">attrs2</span>, such that <span class="name">wasGeneratedBy(e,a1,-,attrs1)</span> \n' + 
+'      and <span class="name">used(a2,e,-,attrs2)</span> hold. \n' + 
 '    </div><div class="interpretation-forward"> \n' + 
-'      For the interpretation of an activity association, see <a href="#wasAssociatedWith-ordering">wasAssociatedWith-ordering</a>. \n' + 
-'    </div><div class="issue"> \n' + 
-'      The activity association record does not allow for a plan to be asserted \n' + 
-'      without an agent. This seems over-restrictive. Discussed in the context of \n' + 
-'      <a href="http://www.w3.org/2011/prov/track/issues/203">ISSUE-203</a>. \n' + 
-'    </div><div class="issue"> \n' + 
-'      Agents should not be inferred. WasAssociatedWith should also work with \n' + 
-'      entities. This is <a href="http://www.w3.org/2011/prov/track/issues/206">ISSUE-206</a>. \n' + 
-'    </div><div class="issue"> \n' + 
-'      Should we define start/end records as representation of activity start/end \n' + 
-'      events. Should time be associated with these events rather than with \n' + 
-'      activities. This will be similar to what we do for entities. This is issue \n' + 
-'      <a href="http://www.w3.org/2011/prov/track/issues/207">ISSUE-207</a>. \n' + 
-'    </div><div class="inference" id="derivation-implications"> \n' + 
-'      Given two entities denoted by <span class="name">e1</span> and <span class="name">e2</span>, <span class="conditional">if</span> the assertion \n' + 
-'      <span class="name">wasDerivedFrom(e2, e1, a, g2, u1, attrs)</span> holds \n' + 
-'      for some generation identified by <span class="name">g2</span>, and usage \n' + 
-'      identified by <span class="name">u1</span>, then <span class="name">wasDerivedFrom(e2,e1,[prov:steps="single"] \n' + 
-'      cup; attrs)</span> also holds.<br /> Given two entities denoted by <span class="name">e1</span> and <span class="name">e2</span>, <span class="conditional">if</span> the assertion <span class="name">wasDerivedFrom(e2, \n' + 
-'      e1, [prov:steps="single"] cup; attrs)</span> holds, then <span class="name">wasDerivedFrom(e2,e1,attrs)</span> also holds.<br /> \n' + 
+'      For the interpretation of an information flow ordering, see <a href="#wasInformedBy-ordering">wasInformedBy-ordering</a>. \n' + 
+'    </div><div class="constraint" id="wasStartedBy"> \n' + 
+'      Given two activities with identifiers <span class="name">a1</span> and \n' + 
+'      <span class="name">a2</span>, <span class="name">wasStartedBy(a2,a1)</span> \n' + 
+'      holds <span class="conditional">if and only if</span> there exist an \n' + 
+'      entity with some identifier <span class="name">e</span> and some \n' + 
+'      attributes <span class="name">gAttr</span> and <span class="name">sAttr</span>, \n' + 
+'      such that <span class="name">wasGeneratedBy(e,a1,-,gAttr)</span> and <span class="name">wasStartedBy(a2,e,-,sAttr)</span> hold. \n' + 
+'    </div><div class="interpretation-forward"> \n' + 
+'      For the interpretation of a control flow ordering, see <a href="#wasStartedBy-ordering">wasStartedBy-ordering</a>. \n' + 
+'    </div><div class="inference" id="attribution-implication"> \n' + 
+'      <span class="conditional">If</span> <span class="name">wasAttributedTo(e,ag)</span> \n' + 
+'      holds for some identifiers <span class="name">e</span> and <span class="name">ag</span>, <span class="conditional">then</span> there exists \n' + 
+'      an activity with some identifier <span class="name">a</span> such that the \n' + 
+'      following statements hold: \n' + 
+'<pre xml:space="preserve"> \n' + 
+'activity(a, t1, t2, attr1) \n' + 
+'wasGenerateBy(e, a, -) \n' + 
+'wasAssociatedWith(a, ag, -, attr2) \n' + 
+'</pre> \n' + 
+'      for some sets of attribute-value pairs <span class="name">attr1</span> and \n' + 
+'      <span class="name">attr2</span>, time <span class="name">t1</span>, and \n' + 
+'      <span class="name">t2</span>. \n' + 
+'    </div><div class="interpretation-forward"> \n' + 
+'      For the interpretation of an association, see <a href="#wasAssociatedWith-ordering">wasAssociatedWith-ordering</a>. \n' + 
+'    </div><div class="interpretation-forward"> \n' + 
+'      For the interpretation of responsibility, see <a href="#actedOnBehalfOf-ordering">actedOnBehalfOf-ordering</a>. \n' + 
 '    </div><div class="interpretation-forward"> \n' + 
 '      For the interpretation of a derivation, see <a href="#derivation-usage-generation-ordering">derivation-usage-generation-ordering</a> \n' + 
 '      and <a href="#derivation-generation-generation-ordering">derivation-generation-generation-ordering</a> \n' + 
-'    </div><div class="inference" id="activity-introduction"> \n' + 
-'      <span class="conditional">If</span> <span class="name">wasDerivedFrom(e2,e1)</span> \n' + 
-'      holds, <span class="conditional">then</span> there exist an activity, with \n' + 
-'      identifier <span class="name">a</span>, a usage identified by <span class="name">u</span>, and a generation identified by <span class="name">g</span> \n' + 
-'      such that: \n' + 
-'<pre class="codeexample" xml:space="preserve"> \n' + 
-'activity(a,aAttrs) \n' + 
-'wasGeneratedBy(g,e2,a,gAttrs) \n' + 
-'used(u,a,e1,uAttrs) \n' + 
-'</pre> \n' + 
-'      for sets of attribute-value pairs <span class="name">gAttrs</span>, <span class="name">uAttrs</span>, and <span class="name">aAttrs</span>. \n' + 
-'    </div><div class="inference" id="derivation-time-elimination"> \n' + 
-'      <span class="conditional">If</span> <span class="name">wasDerivedFrom(e2,e1,t,attrs)</span> \n' + 
-'      holds, <span class="conditional">then</span> the following expressions \n' + 
-'      also hold: <span class="name">wasDerivedFrom(e2,e1,attrs)</span> and <span class="name">wasGeneratedBy(e2,t)</span>. \n' + 
 '    </div><div class="structural-forward"> \n' + 
 '      See <a href="#derivation-use">derivation-use</a> for a structural \n' + 
 '      constraint on derivations. \n' + 
-'    </div><div class="issue"> \n' + 
-'      Several points were raised about the attribute steps. Its name, its \n' + 
-'      default value <a href="http://www.w3.org/2011/prov/track/issues/180">ISSUE-180</a>. \n' + 
-'      <a href="http://www.w3.org/2011/prov/track/issues/179">ISSUE-179</a>. \n' + 
-'    </div><div class="issue"> \n' + 
-'      Emphasize the notion of \'affected by\' <a href="http://www.w3.org/2011/prov/track/issues/133">ISSUE-133</a>. \n' + 
-'    </div><div class="issue"> \n' + 
-'      Simplify derivation <a href="http://www.w3.org/2011/prov/track/issues/249">ISSUE-249</a>. \n' + 
-'    </div><div class="note"> \n' + 
-'      In order to further convey the intended meaning, the following properties \n' + 
-'      are associated to these two relations. \n' + 
-'      <ul> \n' + 
-'        <li> \n' + 
-'          <span class="name">specializationOf(e2,e1)</span> is <strong>transitive</strong>: \n' + 
-'          <span class="name">specializationOf(e3,e2)</span> and <span class="name">specializationOf(e2,e1)</span> implies <span class="name">specializationOf(e3,e1)</span>. \n' + 
-'        </li> \n' + 
-'        <li> \n' + 
-'          <span class="name">specializationOf(e2,e1)</span> is <strong>anti-symmetric</strong>: \n' + 
-'          <span class="name">specializationOf(e2,e1)</span> implies that <span class="name">specializationOf(e1,e2)</span> does not hold. \n' + 
-'        </li> \n' + 
-'        <li> \n' + 
-'          <span class="name">alternateOf(e2,e1)</span> is <strong>symmetric</strong>: \n' + 
-'          <span class="name">alternateOf(e2,e1)</span> implies <span class="name">alternateOf(e1,e2)</span>. \n' + 
-'        </li> \n' + 
-'      </ul> \n' + 
-'      There are proposals to make alternateOf a transitive property. This is \n' + 
-'      still under discussion and the default is for alternateOf <strong>not</strong> \n' + 
-'      to be transitive, and this is what the current text reflects. \n' + 
-'    </div><div class="issue"> \n' + 
-'      A discussion on alternative definition of these relations has not reached \n' + 
-'      a satisfactory conclusion yet. This is <a href="http://www.w3.org/2011/prov/track/issues/29">ISSUE-29</a>. Also <a href="http://www.w3.org/2011/prov/track/issues/96">ISSUE-96</a>. \n' + 
+'    </div><div class="inference" id="wasRevision"> \n' + 
+'      Given two identifiers <span class="name">e1</span> and <span class="name">e2</span> \n' + 
+'      identifying two entities, and an identifier <span class="name">ag</span> \n' + 
+'      identifying an agent, <span class="conditional">if</span> <span class="name">wasRevisionOf(e2,e1,ag)</span> holds, <span class="conditional">then</span> there exists an entity with some \n' + 
+'      identifier <span class="name">e</span> and some attribute-values <span class="name">eAttrs</span>, <span class="name">dAttrs</span>, such that \n' + 
+'      the following hold: \n' + 
+'<pre xml:space="preserve"> \n' + 
+'wasDerivedFrom(e2,e1,dAttrs) \n' + 
+'entity(e,eAttrs) \n' + 
+'specializationOf(e2,e) \n' + 
+'specializationOf(e1,e) \n' + 
+'wasAttributedTo(e2,ag) \n' + 
+'</pre> \n' + 
+'    </div><div class="inference" id="quotation-implication"> \n' + 
+'      <span class="conditional">If</span> <span class="name">wasQuotedFrom(e2,e1,ag2,ag1,attrs)</span> \n' + 
+'      holds for some identifiers <span class="name">e2</span>, <span class="name">e1</span>, \n' + 
+'      <span class="name">ag2</span>, <span class="name">ag1</span>, <span class="conditional">then</span> the following hold: \n' + 
+'<pre xml:space="preserve"> \n' + 
+'wasDerivedFrom(e2,e1) \n' + 
+'wasAttributedTo(e2,ag2) \n' + 
+'wasAttributedTo(e1,ag1) \n' + 
+'</pre> \n' + 
 '    </div><div class="inference" id="traceability-inference"> \n' + 
 '      Given two identifiers <span class="name">e2</span> and <span class="name">e1</span> \n' + 
 '      for entities, the following statements hold: \n' + 
@@ -1090,24 +1953,20 @@
 '          also holds. \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          <span class="conditional">If</span> <span class="name">wasGeneratedBy(e2,a,gAttr) \n' + 
-'          and wasAssociatedWith(a,e1)</span> hold, for some <span class="name">a</span> \n' + 
-'          and <span class="name">gAttr</span>, <span class="conditional">then</span> \n' + 
-'          <span class="name">tracedTo(e2,e1)</span> also holds. \n' + 
+'          <span class="conditional">If</span> <span class="name">wasAttributedTo(e2,ag1,aAttr)</span> \n' + 
+'          holds, <span class="conditional">then</span> <span class="name">tracedTo(e2,ag1)</span> \n' + 
+'          also holds. \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          <span class="conditional">If</span> <span class="name">wasGeneratedBy(e2,a,gAttr)</span>, \n' + 
-'          <span class="name">wasAssociatedWith(a,e)</span> and <span class="name">actedOnBehalfOf(e,e1)</span> \n' + 
-'          hold, for some <span class="name">a</span>, <span class="name">e</span>, \n' + 
-'          and <span class="name">gAttr</span>, <span class="conditional">then</span> \n' + 
-'          <span class="name">tracedTo(e2,e1)</span> also holds. \n' + 
+'          <span class="conditional">If</span> <span class="name">wasAttributedTo(e2,ag2,aAttr)</span>, \n' + 
+'          <span class="name">wasGeneratedBy(e2,a,gAttr)</span>, and <span class="name">actedOnBehalfOf(ag2,ag1,a,rAttr)</span> hold, for some \n' + 
+'          <span class="name">a</span>, <span class="name">ag2</span>, <span class="name">ag1</span>, <span class="name">aAttr</span>, <span class="name">gAttr</span>, and <span class="name">rAttr</span>, <span class="conditional">then</span> <span class="name">tracedTo(e2,ag1)</span> \n' + 
+'          also holds. \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          <span class="conditional">If</span> <span class="name">wasGeneratedBy(e2,a,gAttr) \n' + 
-'          and wasStartedBy(a,e1,sAttr)</span> hold, for some <span class="name">a</span>, \n' + 
-'          <span class="name">e</span>, and <span class="name">gAttr</span>, and \n' + 
-'          <span class="name">sAttr</span>, <span class="conditional">then</span> \n' + 
-'          <span class="name">tracedTo(e2,e1)</span> also holds. \n' + 
+'          <span class="conditional">If</span> <span class="name">wasGeneratedBy(e2,a,gAttr)</span> \n' + 
+'          and <span class="name">wasStartedBy(a,e1,sAttr)</span> hold, for some \n' + 
+'          <span class="name">a</span>, <span class="name">gAttr</span> , <span class="name">sAttr</span> \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
 '          <span class="conditional">If</span> <span class="name">tracedTo(e2,e)</span> \n' + 
@@ -1135,90 +1994,56 @@
 '          holds, or \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          <span class="name">wasBasedOn(e<sup>i</sup>,e<sup>i+1</sup>)</span> \n' + 
+'          <span class="name">wasAttributedTo(e<sup>i</sup>,e<sup>i+1</sup>)</span> \n' + 
 '          holds, or \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
-'          <span class="name">wasGeneratedBy(e<sup>i</sup>,a,gAttr) and \n' + 
-'          wasAssociatedWith(a,e<sup>i+1</sup>)</span> hold, for some <span class="name">a</span> and <span class="name">gAttr</span>, or \n' + 
-'        </li> \n' + 
-'        <li> \n' + 
-'          <span class="name">wasGeneratedBy(e<sup>i</sup>,a,gAttr)</span>, <span class="name">wasAssociatedWith(a,e)</span> and <span class="name">actedOnBehalfOf(e,e<sup>i+1</sup>)</span> \n' + 
-'          hold, for some <span class="name">a</span>, <span class="name">e</span> \n' + 
-'          and <span class="name">gAttr</span>, or \n' + 
+'          <span class="name">wasAttributedTo(e<sup>i</sup>,e)</span>, <span class="name">wasGeneratedBy(e<sup>i</sup>,a,gAttr)</span>, and <span class="name">actedOnBehalfOf(e,e<sup>i+1</sup>,a,rAttr)</span> hold, \n' + 
+'          for some <span class="name">a</span>, <span class="name">e</span> and \n' + 
+'          <span class="name">gAttr</span>, <span class="name">rAttr</span>, or \n' + 
 '        </li> \n' + 
 '        <li> \n' + 
 '          <span class="name">wasGeneratedBy(e<sup>i</sup>,a,gAttr) and \n' + 
 '          wasStartedBy(a,e<sup>i+1</sup>,sAttr)</span> hold, for some <span class="name">a</span>, <span class="name">e</span>, and <span class="name">gAttr</span>, and <span class="name">sAttr</span>. \n' + 
 '        </li> \n' + 
 '      </ul> \n' + 
-'    </div><div class="constraint" id="wasInformedBy-Definition"> \n' + 
-'      Given two activities identified by <span class="name">a1</span> and <span class="name">a2</span>, <span class="name">wasInformedBy(a2,a1)</span> \n' + 
-'      holds, <span class="conditional">if and only if</span> there is an entity \n' + 
-'      with some identifier <span class="name">e</span> and some sets of \n' + 
-'      attribute-value pairs <span class="name">attrs1</span> and <span class="name">attrs2</span>, such that <span class="name">wasGeneratedBy(e,a1,attrs1)</span> \n' + 
-'      and <span class="name">used(a2,e,attrs2)</span> hold. \n' + 
-'    </div><div class="interpretation-forward"> \n' + 
-'      For the interpretation of an information flow ordering, see <a href="#wasInformedBy-ordering">wasInformedBy-ordering</a>. \n' + 
-'    </div><div class="constraint" id="wasStartedBy"> \n' + 
-'      Given two activities with identifiers <span class="name">a1</span> and \n' + 
-'      <span class="name">a2</span>, <span class="name">wasStartedBy(a2,a1)</span> \n' + 
-'      holds <span class="conditional">if and only if</span> there exist an \n' + 
-'      entity with some identifier <span class="name">e</span> and some \n' + 
-'      attributes <span class="name">gAttr</span> and <span class="name">sAttr</span>, \n' + 
-'      such that <span class="name">wasGeneratedBy(e,a1,gAttr)</span> and <span class="name">wasStartedBy(a2,e,sAttr)</span> hold. \n' + 
-'    </div><div class="interpretation-forward"> \n' + 
-'      For the interpretation of a control flow ordering, see <a href="#wasStartedBy-ordering">wasStartedBy-ordering</a>. \n' + 
-'    </div><div class="inference" id="wasRevision"> \n' + 
-'      Given two identifiers <span class="name">old</span> and <span class="name">new</span> \n' + 
-'      identifying two entities, and an identifier <span class="name">ag</span> \n' + 
-'      identifying an agent, <span class="conditional">if</span> <span class="name">wasRevisionOf(new,old,ag)</span> holds, <span class="conditional">then</span> there exists an entity with some \n' + 
-'      identifier <span class="name">e</span> and some attribute-values <span class="name">eAttrs</span>, <span class="name">dAttrs</span>, such that \n' + 
-'      the following hold: \n' + 
-'      <ul> \n' + 
-'        <li> \n' + 
-'          <span class="name">wasDerivedFrom(new,old,dAttrs)</span>; \n' + 
-'        </li> \n' + 
-'        <li> \n' + 
-'          <span class="name">entity(e,eAttrs)</span>; \n' + 
-'        </li> \n' + 
-'        <li> \n' + 
-'          <span class="name">specializationOf(new,e)</span>; \n' + 
-'        </li> \n' + 
-'        <li> \n' + 
-'          <span class="name">specializationOf(old,e)</span>. \n' + 
-'        </li> \n' + 
-'      </ul> \n' + 
-'      The derivation may be imprecise-1 or imprecise-n. \n' + 
-'    </div><div class="inference" id="attribution-implication"> \n' + 
-'      <span class="conditional">If</span> <span class="name">wasAttributedTo(e,ag)</span> \n' + 
-'      holds for some identifiers <span class="name">e</span> and <span class="name">ag</span>, <span class="conditional">then</span>, there \n' + 
-'      exists an activity with some identifier <span class="name">a</span> such \n' + 
-'      that the following statements hold: \n' + 
+'    </div><div class="anexample" id="anexample-not-symmetric"> \n' + 
+'      "Alice\'s toyota car on fifth Avenue" is a specialization of "Alice\'s \n' + 
+'      toyota car", but the converse does not hold. \n' + 
+'    </div><div class="anexample" id="anexample-specialization-not-anti-symmetric"> \n' + 
+'      anti-symmetric counter-example??? \n' + 
+'    </div><div class="anexample" id="anexample-specialization-is-transitive"> \n' + 
+'      A specialization of "this email message" would be, for example, the \n' + 
+'      "printed version on my desk", which is a specialization of "my thoughts on \n' + 
+'      this email thread". So, the "printed version on my desk" is also a \n' + 
+'      specialization "my thoughts on this email thread". \n' + 
+'    </div><div class="anexample" id="anexample-alternate-not-transitive1"> \n' + 
+'      <p> \n' + 
+'        At 6pm, the customer in a chair is a woman in a red dress, who happens \n' + 
+'        to be Alice. After she leaves, another customer arrives at 7pm, a man \n' + 
+'        with glasses, who happens to be Bob. Transitivity does not hold since \n' + 
+'        the <span class="name">womanInRedDress</span> is not alternate of <span class="name">customerInChairAt7pm</span>. \n' + 
+'      </p> \n' + 
 '<pre xml:space="preserve"> \n' + 
-'activity(a,t1,t2,attr1) \n' + 
-'wasGenerateBy(e,a) \n' + 
-'wasAssociatedWith(a,ag,attr2) \n' + 
+'alternate(womanInRedDress,customerInChairAt6pm) \n' + 
+'specialization(customerInChairAt6pm,Alice) \n' + 
+'specialization(womanInRedDress,Alice) \n' + 
+' \n' + 
+'alternate(manWithGlasses,customerInChairAt7pm) \n' + 
+'specialization(customerInChairAt7pm,Bob) \n' + 
+'specialization(manWithGlasses,Bob) \n' + 
+' \n' + 
+'alternate(customerInChairAt6pm, customerInChairAt7pm) \n' + 
+'specialization(customerInChairAt6pm, customerInChair) \n' + 
+'specialization(customerInChairAt7pm, customerInChair) \n' + 
 '</pre> \n' + 
-'      for some sets of attribute-value pairs <span class="name">attr1</span> and \n' + 
-'      <span class="name">attr2</span>, time <span class="name">t1</span>, and \n' + 
-'      <span class="name">t2</span>. \n' + 
-'    </div><div class="inference" id="quotation-implication"> \n' + 
-'      <span class="conditional">If</span> <span class="name">wasQuotedFrom(e2,e1,ag2,ag1,attrs)</span> \n' + 
-'      holds for some identifiers <span class="name">e2</span>, <span class="name">e1</span>, \n' + 
-'      <span class="name">ag2</span>, <span class="name">ag1</span>, <span class="conditional">then</span> the following hold: \n' + 
-'<pre xml:space="preserve"> \n' + 
-'wasDerivedFrom(e2,e1) \n' + 
-'wasAttributedTo(e2,ag2) \n' + 
-'wasAttributedTo(e1,ag1) \n' + 
-'</pre> \n' + 
-'    </div><div class="issue"> \n' + 
-'      Drop this relation <a href="http://www.w3.org/2011/prov/track/issues/220">ISSUE-220</a>. \n' + 
+'    </div><div class="anexample"> \n' + 
+'      Two copies of the same book, where copy A was destroyed before copy B was \n' + 
+'      made. \n' + 
 '    </div><div class="anexample" id="example-two-entities-one-id"> \n' + 
 '      <p> \n' + 
 '        Let us consider two descriptions of a same entity, which we have taken \n' + 
-'        from two different contexts (see example). A working draft published by \n' + 
-'        the <span class="name">w3:Consortium</span>: \n' + 
+'        from two different contexts. A working draft published by the <span class="name">w3:Consortium</span>: \n' + 
 '      </p> \n' + 
 '<pre class="codeexample" xml:space="preserve"> \n' + 
 'entity(tr:WD-prov-dm-20111215, [ prov:type="pr:RecsWD" %% xsd:QName ]) \n' + 
@@ -1229,19 +2054,20 @@
 '</pre> \n' + 
 '      <p> \n' + 
 '        Both descriptions are about the same entity identified by <span class="name">tr:WD-prov-dm-20111215</span>, but they contain different \n' + 
-'        attributes, reflecting the context in which they occur. \n' + 
+'        attributes, describing the situation or partial state of the these \n' + 
+'        entities according to the context in which they occur. \n' + 
 '      </p> \n' + 
 '    </div><div class="constraint" id="unique-description-in-account"> \n' + 
 '      <p> \n' + 
 '        Given an entity identifier <span class="name">e</span>, there is at most \n' + 
-'        one description <span class="name">entity(e,av)</span> occurring in a \n' + 
-'        given account, where <span class="name">av</span> is some set of \n' + 
+'        one description <span class="name">entity(e,attrs)</span> occurring in a \n' + 
+'        given account, where <span class="name">attrs</span> is some set of \n' + 
 '        attribute-values. Other descriptions of the same entity can exist in \n' + 
 '        different accounts. \n' + 
 '      </p> \n' + 
 '      <p> \n' + 
-'        This constraint similarly applies to all other types of identifiable \n' + 
-'        entities and relations. \n' + 
+'        This constraint similarly applies to all other types and relations, with \n' + 
+'        explicit identity. \n' + 
 '      </p> \n' + 
 '    </div><div class="structural-forward"> \n' + 
 '      See Section <a href="#structural-constraints">structural-constraints</a> \n' + 
@@ -1262,11 +2088,14 @@
 '    </div><div class="interpretation" id="generation-precedes-usage"> \n' + 
 '      For any entity, the following ordering constraint holds: the <a title="entity generation event">generation</a> of an entity always <a>precedes</a> \n' + 
 '      any of its <a title="entity usage event">usages</a>. \n' + 
+'    </div><div class="interpretation" id="usage-precedes-invalidation"> \n' + 
+'      For any entity, the following ordering constraint holds: any <a title="entity usage event">usage</a> of an entity always <a>precedes</a> \n' + 
+'      its <a title="entity invalidation event">invalidation</a>. \n' + 
 '    </div><div class="interpretation" id="usage-within-activity"> \n' + 
 '      Given an activity with identifier <span class="name">a</span>, an entity \n' + 
 '      with identifier <span class="name">e</span>, a set of attribute-value \n' + 
 '      pairs <span class="name">attrs</span>, and optional time <span class="name">t</span>, \n' + 
-'      <span class="conditional">if</span> assertion <span class="name">used(a,e,attrs)</span> \n' + 
+'      <span class="conditional">if</span> <span class="name">used(a,e,attrs)</span> \n' + 
 '      or <span class="name">used(a,e,attrs,t)</span> holds, <span class="conditional">then</span> the following ordering constraint holds: \n' + 
 '      the <a title="entity usage event">usage</a> of the entity denoted by <span class="name">e</span> <a>precedes</a> the <a title="activity end event">end</a> \n' + 
 '      of activity denoted by <span class="name">a</span> and <a>follows</a> its \n' + 
@@ -1285,18 +2114,14 @@
 '      with identifier <span class="name">e1</span> and <span class="name">e2</span>, \n' + 
 '      a generation identified by <span class="name">g2</span>, and a usage \n' + 
 '      identified by <span class="name">u1</span>, <span class="conditional">if</span> \n' + 
-'      <span class="name">wasDerivedFrom(e2,e1,a,g2,u1,attrs)</span> or <span class="name">wasDerivedFrom(e2,e1,[prov:steps="single"] cup; attrs)</span> \n' + 
-'      holds, <span class="conditional">then</span> the following ordering \n' + 
-'      constraint holds: the <a title="entity usage event">usage</a> of entity \n' + 
-'      denoted by <span class="name">e1</span> <a>precedes</a> the <a title="entity generation event">generation</a> of the entity denoted by \n' + 
+'      <span class="name">wasDerivedFrom(e2,e1,a,g2,u1,attrs)</span> holds, <span class="conditional">then</span> the following ordering constraint holds: \n' + 
+'      the <a title="entity usage event">usage</a> of entity denoted by <span class="name">e1</span> <a>precedes</a> the <a title="entity generation event">generation</a> of the entity denoted by \n' + 
 '      <span class="name">e2</span>. \n' + 
 '    </div><div class="interpretation" id="derivation-generation-generation-ordering"> \n' + 
-'      Given two entities denoted by <span class="name">e1</span> and <span class="name">e2</span>, <span class="conditional">if</span> <span class="name">wasDerivedFrom(e2,e1,[prov:steps="any"] cup; attrs)</span> \n' + 
-'      holds, <span class="conditional">then</span> the following ordering \n' + 
-'      constraint holds: the <a title="entity generation event">generation event</a> \n' + 
-'      of the entity denoted by <span class="name">e1</span> <a>precedes</a> the \n' + 
-'      <a title="entity generation event">generation event</a> of the entity \n' + 
-'      denoted by <span class="name">e2</span>. \n' + 
+'      Given two entities denoted by <span class="name">e1</span> and <span class="name">e2</span>, <span class="conditional">if</span> <span class="name">wasDerivedFrom(e2,e1, attrs)</span> holds, <span class="conditional">then</span> the following ordering constraint holds: \n' + 
+'      the <a title="entity generation event">generation event</a> of the entity \n' + 
+'      denoted by <span class="name">e1</span> <a>precedes</a> the <a title="entity generation event">generation event</a> of the entity denoted \n' + 
+'      by <span class="name">e2</span>. \n' + 
 '    </div><div class="interpretation" id="wasInformedBy-ordering"> \n' + 
 '      Given two activities denoted by <span class="name">a1</span> and <span class="name">a2</span>, <span class="conditional">if</span> <span class="name">wasInformedBy(a2,a1)</span> holds, <span class="conditional">then</span> \n' + 
 '      the following ordering constraint holds: the <a title="activity start event">start event</a> of the activity denoted by \n' + 
@@ -1306,45 +2131,57 @@
 '      the following ordering constraint holds: the <a title="activity start event">start</a> event of the activity denoted by \n' + 
 '      <span class="name">a1</span> <a>precedes</a> the <a title="activity start event">start event</a> of the activity denoted by \n' + 
 '      <span class="name">a2</span>. \n' + 
-'    </div><div class="issue"> \n' + 
-'      In the following, we assume that we can talk about the end of an entity \n' + 
-'      (or agent) For this, we use the term \'destruction\' This is <a href="http://www.w3.org/2011/prov/track/issues/204">ISSUE-204</a>. \n' + 
 '    </div><div class="interpretation" id="wasStartedByAgent-ordering"> \n' + 
-'      Given an activity denoted by <span class="name">a</span> and an agent \n' + 
-'      denoted by <span class="name">ag</span>, <span class="conditional">if</span> \n' + 
-'      <span class="name">wasStartedBy(a,ag)</span> holds, <span class="conditional">then</span> the following ordering constraints hold: \n' + 
+'      Given an activity denoted by <span class="name">a</span> and an entity \n' + 
+'      denoted by <span class="name">e</span>, <span class="conditional">if</span> \n' + 
+'      <span class="name">wasStartedBy(a,e)</span> holds, <span class="conditional">then</span> the following ordering constraints hold: \n' + 
 '      the <a title="activity start event">start</a> event of the activity \n' + 
-'      denoted by <span class="name">a</span> <a>follows</a> the <a title="entity generation event">generation event</a> for agent denoted by \n' + 
-'      <span class="name">ag</span>, and <a>precedes</a> the destruction event of \n' + 
-'      the same agent. \n' + 
+'      denoted by <span class="name">a</span> <a>follows</a> the <a title="entity generation event">generation event</a> for entity <span class="name">e</span>, and <a>precedes</a> the invalidation event of the \n' + 
+'      same entity. \n' + 
+'    </div><div class="interpretation" id="wasEndedByAgent-ordering"> \n' + 
+'      Given an activity denoted by <span class="name">a</span> and an entity \n' + 
+'      denoted by <span class="name">e</span>, <span class="conditional">if</span> \n' + 
+'      <span class="name">wasEndedBy(a,e)</span> holds, <span class="conditional">then</span> \n' + 
+'      the following ordering constraints hold: the <a title="activity end event">end</a> \n' + 
+'      event of the activity denoted by <span class="name">a</span> <a>follows</a> \n' + 
+'      the <a title="entity generation event">generation event</a> for entity \n' + 
+'      <span class="name">e</span>, and <a>precedes</a> the invalidation event of \n' + 
+'      the same entity. \n' + 
 '    </div><div class="interpretation" id="wasAssociatedWith-ordering"> \n' + 
 '      Given an activity denoted by <span class="name">a</span> and an agent \n' + 
 '      denoted by <span class="name">ag</span>, <span class="conditional">if</span> \n' + 
 '      <span class="name">wasAssociatedWith(a,ag)</span> holds, <span class="conditional">then</span> the following ordering constraints hold: \n' + 
 '      the <a title="activity start event">start</a> event of the activity \n' + 
-'      denoted by <span class="name">a</span> precedes the destruction event of \n' + 
+'      denoted by <span class="name">a</span> precedes the invalidation event of \n' + 
 '      the agent denoted by <span class="name">ag</span>, and the <a title="entity generation event">generation event</a> for agent denoted by \n' + 
 '      <span class="name">ag</span> <a>precedes</a> the activity <a title="activity end event">end</a> event. \n' + 
-'    </div><div class="issue"> \n' + 
-'      For completeness, we should define ordering constraint for \n' + 
-'      wasAssociatedWith and actedOnBehalfOf. For wasAssociatedWith(a,ag), it \n' + 
-'      feels that ag must have some overlap with a. For \n' + 
-'      actedOnBehalfOf(ag1,ag2,a), it seem that ag2 should have existed before \n' + 
-'      the overlap between ag1 and a. This is <a href="http://www.w3.org/2011/prov/track/issues/221">ISSUE-221</a>. \n' + 
-'    </div><div class="issue"> \n' + 
-'      It is suggested that a stronger name for wasAssociatedWith should be \n' + 
-'      adopted. This is <a href="http://www.w3.org/2011/prov/track/issues/182">ISSUE-182</a>. \n' + 
+'    </div><div class="interpretation" id="wasAttributedWith-ordering"> \n' + 
+'      Given an entity denoted by <span class="name">e</span> and an agent \n' + 
+'      denoted by <span class="name">ag</span>, <span class="conditional">if</span> \n' + 
+'      <span class="name">wasAttributedWith(e,ag)</span> holds, <span class="conditional">then</span> the following ordering constraints hold: \n' + 
+'      the <a title="entity generation event">generation</a> event of the entity \n' + 
+'      denoted by <span class="name">e</span> precedes the invalidation event of \n' + 
+'      the agent denoted by <span class="name">ag</span>, and the <a title="entity generation event">generation event</a> for agent denoted by \n' + 
+'      <span class="name">ag</span> <a>precedes</a> the entity <a title="entity invalidation event">invalidation</a> event. \n' + 
+'    </div><div class="interpretation" id="actedOnBehalfOf-ordering"> \n' + 
+'      Given two agents <span class="name">ag1</span> and <span class="name">ag2</span>, \n' + 
+'      <span class="conditional">if</span> <span class="name">actedOnBehalfOf(ag2,ag1)</span> \n' + 
+'      holds, <span class="conditional">then</span> the following ordering \n' + 
+'      constraints hold: the <a title="entity generation event">generation</a> \n' + 
+'      event of the agent denoted by <span class="name">ag2</span> precedes the \n' + 
+'      invalidation event of agent <span class="name">ag1</span>, and the <a title="entity generation event">generation event</a> for agent denoted by \n' + 
+'      <span class="name">ag1</span> <a>precedes</a> <a title="entity invalidation event">invalidation</a> event for <span class="name">ag2</span>. \n' + 
 '    </div><div class="anexample"> \n' + 
 '      <p> \n' + 
-'        In the following assertions, a workflow execution <span class="name">a0</span> \n' + 
+'        In the following descriptions, a workflow execution <span class="name">a0</span> \n' + 
 '        consists of two sub-workflow executions <span class="name">a1</span> and \n' + 
 '        <span class="name">a2</span>. Sub-workflow execution <span class="name">a2</span> \n' + 
 '        generates entity <span class="name">e</span>, so does <span class="name">a0</span>. \n' + 
 '      </p> \n' + 
 '<pre class="codeexample" xml:space="preserve"> \n' + 
-'activity(a0,,,[prov:type="workflow execution"]) \n' + 
-'activity(a1,,,[prov:type="workflow execution"]) \n' + 
-'activity(a2,,,[prov:type="workflow execution"]) \n' + 
+'activity(a0, [prov:type="workflow execution"]) \n' + 
+'activity(a1, [prov:type="workflow execution"]) \n' + 
+'activity(a2, [prov:type="workflow execution"]) \n' + 
 'wasInformedBy(a2,a1) \n' + 
 ' \n' + 
 'wasGeneratedBy(e,a0) \n' + 
@@ -1359,7 +2196,7 @@
 '      </p> \n' + 
 '    </div><div class="anexample"> \n' + 
 '      <p> \n' + 
-'        The same example is now revisited, with the following assertions that \n' + 
+'        The same example is now revisited, with the following descriptions that \n' + 
 '        are structurally well-formed. Two accounts are introduced, and there is \n' + 
 '        a single generation for entity <span class="name">e</span> per account. \n' + 
 '      </p> \n' + 
@@ -1367,181 +2204,146 @@
 '        In a first account, entitled "summary", we find: \n' + 
 '      </p> \n' + 
 '<pre class="codeexample" xml:space="preserve"> \n' + 
-'        activity(a0,t1,t2,[prov:type="workflow execution"]) \n' + 
-'        wasGeneratedBy(e,a0) \n' + 
+'activity(a0,t1,t2,[prov:type="workflow execution"]) \n' + 
+'wasGeneratedBy(e,a0,-) \n' + 
 '</pre> \n' + 
 '      <p> \n' + 
 '        In a second account, entitled "detail", we find: \n' + 
 '      </p> \n' + 
 '<pre class="codeexample" xml:space="preserve"> \n' + 
-'        activity(a1,t1,t3,[prov:type="workflow execution"]) \n' + 
-'        activity(a2,t3,t2,[prov:type="workflow execution"]) \n' + 
-'        wasInformedBy(a2,a1) \n' + 
-'        wasGeneratedBy(e,a2) \n' + 
+'activity(a1,t1,t3,[prov:type="workflow execution"]) \n' + 
+'activity(a2,t3,t2,[prov:type="workflow execution"]) \n' + 
+'wasInformedBy(a2,a1) \n' + 
+'wasGeneratedBy(e,a2,-) \n' + 
 '</pre> \n' + 
 '    </div><div class="constraint" id="generation-uniqueness"> \n' + 
 '      Given an entity denoted by <span class="name">e</span>, two activities \n' + 
 '      denoted by <span class="name">a1</span> and <span class="name">a2</span>, \n' + 
+'      two time instants <span class="name">t1</span> and <span class="name">t2</span>, \n' + 
 '      and two sets of attribute-value pairs <span class="name">attrs1</span> and \n' + 
 '      <span class="name">attrs2</span>, <span class="conditional">if</span> \n' + 
-'      <span class="name">wasGeneratedBy(id1,e,a1,attrs1)</span> and <span class="name">wasGeneratedBy(id2,e,a2,attrs2)</span> exist in the scope of \n' + 
-'      a given account, <span class="conditional">then</span> <span class="name">id1</span>=<span class="name">id2</span>, <span class="name">a1</span>=<span class="name">a2</span> \n' + 
+'      <span class="name">wasGeneratedBy(id1, e, a1, t1, attrs1)</span> and <span class="name">wasGeneratedBy(id2, e, a2, t2, attrs2)</span> exist in the \n' + 
+'      scope of a given account, <span class="conditional">then</span> <span class="name">id1</span>=<span class="name">id2</span>, <span class="name">a1</span>=<span class="name">a2</span>, <span class="name">t1</span>=<span class="name">t2</span> \n' + 
 '      and <span class="name">attrs1</span>=<span class="name">attrs2</span>. \n' + 
 '    </div><div class="inference" id="derivation-use"> \n' + 
 '      <p> \n' + 
-'        Given an activity with identifier <span class="name">a</span>, entities \n' + 
-'        denoted by <span class="name">e1</span> and <span class="name">e2</span>, \n' + 
-'        and a set of attribute-value pairs <span class="name">attrs2</span>, \n' + 
-'        <span class="conditional">if</span> <span class="name">wasDerivedFrom(e2,e1, \n' + 
-'        [prov:steps="single"])</span> and <span class="name">wasGeneratedBy(e2,a,attrs2)</span> \n' + 
-'        hold, <span class="conditional">then</span> <span class="name">used(a,e1,attrs1)</span> \n' + 
-'        also holds for some set of attribute-value pairs <span class="name">attrs1</span>. \n' + 
-'      </p> \n' + 
-'    </div><div class="note"> \n' + 
-'      Can the semantics characterize better what can be achieved with \n' + 
-'      structurally well-formed accounts? \n' + 
-'    </div><div class="note" id="note-related-to-issue-105"> \n' + 
-'      Satya discussed the example of a sculpture, whose hand and leg are \n' + 
-'      sculpted independently by two different sculptors. He suggested that the \n' + 
-'      sculpture is generated by two distinct activities. This section explains \n' + 
-'      that it is not the case. The example can be formulated as follows. \n' + 
-'      <p> \n' + 
-'        <a href="examples/sculpture.prov-asn">Sculpture example in ASN</a> \n' + 
+'        Given an activity <span class="name">a</span>, entities denoted by <span class="name">e1</span> and <span class="name">e2</span>, and sets of \n' + 
+'        attribute-value pairs <span class="name">dAttrs</span>, <span class="name">gAttrs</span>, <span class="conditional">if</span> <span class="name">wasDerivedFrom(e2,e1, a, dAttrs)</span> and <span class="name">wasGeneratedBy(e2,a,-,gAttrs)</span> hold, <span class="conditional">then</span> <span class="name">used(a,e1,-,uAttrs)</span> \n' + 
+'        also holds for some set of attribute-value pairs <span class="name">uAttrs</span>. \n' + 
 '      </p> \n' + 
-'      <p> \n' + 
-'        <a href="examples/sculpture.png">Sculpture example image</a> \n' + 
-'      </p> \n' + 
-'      <p> \n' + 
-'        We see that ex:s_3 (the sculpture in its final state) was derived from \n' + 
-'        ex:l_2 (containment) which was generated by ex:a2. However, ex:s_3 is \n' + 
-'        not directly generated by ex:a2. We may want to consider an abbreviation \n' + 
-'        for this: wasGeneratedBy*(ex:s_3,ex:a2). \n' + 
-'      </p> \n' + 
-'    </div><div class="note"> \n' + 
-'      Raw material taken from prov-dm3. Some further text required. \n' + 
-'    </div><div class="constraint" id="collection-parallel-insertions"> \n' + 
-'      <p> \n' + 
-'        One can have multiple assertions regarding the state of a collection \n' + 
-'        following a <em>set</em> of insertions, for example: \n' + 
-'      </p> \n' + 
+'    </div><div class="constraint" id="membership-as-insertion"> \n' + 
+'      <span class="name">memberOf(c, {(k1, v1), ...})</span> holds <span class="conditional">if and only if</span> there exists a collection <span class="name">c0</span>, such that <span class="name">derivedByInsertionFrom(c, \n' + 
+'      c0, {(k1, v1), ...})</span>. \n' + 
+'    </div><div class="constraint" id="collection-unique-derivation"> \n' + 
+'      A collection MUST NOT be derived through multiple insertions, removal, or \n' + 
+'      membership relations. \n' + 
+'    </div><div class="anexample"> \n' + 
+'      Consider the following descriptions about three collections. \n' + 
 '<pre class="codeexample" xml:space="preserve"> \n' + 
-'CollectionAfterInsertion(c2, c1, k1, v1) \n' + 
-'CollectionAfterInsertion(c2, c1, k2, v2) \n' + 
-'... \n' + 
+'entity(c1, [prov:type="prov:Collection"  %% xsd:QName]) \n' + 
+'entity(c2, [prov:type="prov:Collection"  %% xsd:QName]) \n' + 
+'entity(c3, [prov:type="prov:Collection"  %% xsd:QName]) \n' + 
+' \n' + 
+' \n' + 
+'derivedByInsertionFrom(c3, c1, {("k1", e1), ("k2", e2)}) \n' + 
+'derivedByInsertionFrom(c3, c2, {("k3", e3)}) \n' + 
 '</pre> \n' + 
 '      <p> \n' + 
-'        This is interpreted as <em>" <span class="name">c2</span> is the state \n' + 
-'        that results from inserting <span class="name">(k1, v1)</span>, <span class="name">(k2, v2)</span> etc. into <span class="name">c1</span>"</em> \n' + 
+'        There is no interpretation for such descriptions since <span class="name">c3</span> \n' + 
+'        is derived multiple times by insertion. \n' + 
 '      </p> \n' + 
-'    </div><div class="note"> \n' + 
-'      Shouldn\'t we have the same for deletion, and combination of insertion and \n' + 
-'      deletion? \n' + 
-'    </div><div class="constraint" id="collection-branching-derivations"> \n' + 
-'      It is possible to have multiple derivations from a single root collection, \n' + 
-'      as shown in the following example. \n' + 
-'      <div class="anexample"> \n' + 
-'<pre class="codeexample" xml:space="preserve"> \n' + 
-'  entity(c, [prov:type="EmptyCollection"])    // e is an empty collection \n' + 
-'  entity(v1) \n' + 
-'  entity(v2) \n' + 
-'  entity(v3) \n' + 
-'  entity(c1, [prov:type="Collection"]) \n' + 
-'  entity(c2, [prov:type="Collection"]) \n' + 
-'  entity(c3, [prov:type="Collection"]) \n' + 
-'   \n' + 
-'  CollectionAfterInsertion(c1, c, k1, v1)       // c1 = { (k1,v1) } \n' + 
-'  CollectionAfterInsertion(c2, c, k2, v2)       // c2 = { (k2 v2) } \n' + 
-'  CollectionAfterInsertion(c3, c1, k3,v3)       // c3 = { (k1,v1),  (k3,v3) } \n' + 
-'</pre> \n' + 
-'      </div> \n' + 
 '    </div><div class="anexample"> \n' + 
+'      <p> \n' + 
+'        As a particular case, collection <span class="name">c</span> is derived \n' + 
+'        multiple times from the same <span class="name">c1</span>. \n' + 
+'      </p> \n' + 
 '<pre class="codeexample" xml:space="preserve"> \n' + 
-'  entity(c, [prov:type="EmptyCollection"])    // e is an empty collection \n' + 
-'  entity(v1) \n' + 
-'  entity(v2) \n' + 
-'  entity(v3) \n' + 
-'  entity(c1, [prov:type="Collection"]) \n' + 
-'  entity(c2, [prov:type="Collection"]) \n' + 
-'  entity(c3, [prov:type="Collection"]) \n' + 
-'   \n' + 
-'  CollectionAfterInsertion(c1, c, k1, v1)       // c1 = { (k1,v1) } \n' + 
-'  CollectionAfterInsertion(c2, c, k2, v2)       // c2 = { (k2 v2) } \n' + 
-'  CollectionAfterInsertion(c3, c1, k3,v3)       // c3 = { (k1,v1),  (k3,v3) } \n' + 
-'</pre> \n' + 
-'      </div><div class="constraint" id="collection-unique-ancestor"> \n' + 
-'      Given the pair of assertions: \n' + 
-'<pre class="codeexample" xml:space="preserve"> \n' + 
-'CollectionAfterInsertion(c, c1, k1, v1) \n' + 
-'CollectionAfterInsertion(c, c2, k2, v2) \n' + 
+'derivedByInsertionFrom(id1, c, c1, {("k1", e1), ("k2", e2)}) \n' + 
+'derivedByInsertionFrom(id2, c, c1, {("k3", e3), ("k4", e4)}) \n' + 
 '</pre> \n' + 
-'      it follows that <span class="name">c1==c2</span>. \n' + 
-'    </div><div class="note"> \n' + 
-'      Original text stated it follows that <span class="name">c1==c2, k1==k2, \n' + 
-'      v1==v2</span>, because one cannot have two different derivations for the \n' + 
-'      same final collection state. This is incompatible with parallel insertion \n' + 
-'      constraint. \n' + 
-'    </div><div class="note"> \n' + 
-'      Shouldn\'t we have the same for deletion, and combination of insertion and \n' + 
-'      deletion? \n' + 
-'    </div><div class="constraint" id="collection-unique-value-for-key"> \n' + 
-'      Given the following set of insertions: \n' + 
+'      <p> \n' + 
+'        The interpretation of such descriptions is also unspecified. \n' + 
+'      </p> \n' + 
+'      <p> \n' + 
+'        To describe the insertion of the 4 key-entity pairs, one would instead \n' + 
+'        write: \n' + 
+'      </p> \n' + 
 '<pre class="codeexample" xml:space="preserve"> \n' + 
-'CollectionAfterInsertion(c1, c, k, v1) \n' + 
-'CollectionAfterInsertion(c1, c, k, v2) \n' + 
+'derivedByInsertionFrom(id1, c, c1, {("k1", e1), ("k2", e2), ("k3", e3), ("k4", e4)}) \n' + 
 '</pre> \n' + 
-'      it follows that <span class="name">v1==v2</span>. \n' + 
 '    </div><div class="anexample"> \n' + 
+'      <p> \n' + 
+'        The following descriptions \n' + 
+'      </p> \n' + 
 '<pre class="codeexample" xml:space="preserve"> \n' + 
-'  entity(c, [prov:type="collection"])    // e is a collection, possibly not empty \n' + 
-'  entity(v1) \n' + 
-'  entity(v2, [prov:type="collection"])    // v2 is a collection \n' + 
-' \n' + 
-'  CollectionAfterInsertion(c1, c, k1, v1)       // c1 <em>includes</em> { (k1,v1) } but may contain additional unknown pairs \n' + 
-'  CollectionAfterInsertion(c2, c1, k2, v2)      // c2 includes { (k1,v1), (k2 v2) } where v2 is a collection with unknown state \n' + 
+'derivedByInsertionFrom(c, c1, {("k1", e1)}) \n' + 
+'derivedByRemovalFrom(c, c2, {"k2"}) \n' + 
+'</pre> \n' + 
+'      have no interpretation. Nor have the following: \n' + 
+'<pre class="codeexample" xml:space="preserve"> \n' + 
+'derivedByInsertionFrom(c, c1, {("k1", e1)}) \n' + 
+'memberOf(c, {"k2"}). \n' + 
 '</pre> \n' + 
 '    </div><div class="anexample"> \n' + 
 '<pre class="codeexample" xml:space="preserve"> \n' + 
-'  entity(c, [prov:type="emptyCollection"])    // e is an empty collection \n' + 
-'  entity(v1) \n' + 
-'  entity(v2) \n' + 
+'entity(c0, [prov:type="prov:EmptyCollection" %% xsd:QName])    // c0 is an empty collection \n' + 
+'entity(c1, [prov:type="prov:Collection" %% xsd:QName]) \n' + 
+'entity(c2, [prov:type="prov:Collection" %% xsd:QName]) \n' + 
+'entity(c3, [prov:type="prov:Collection" %% xsd:QName]) \n' + 
+'entity(e1) \n' + 
+'entity(e2) \n' + 
+'entity(e3) \n' + 
 ' \n' + 
-'  CollectionAfterInsertion(c1, c, k1, v1)       // c1 = { (k1,v1) } \n' + 
-'  wasDerivedFrom(c2, c1)                        // the asserted knows that c2 is somehow derived from c1, but cannot assert the precise sequence of updates \n' + 
-'    CollectionAfterInsertion(c3, c2, k2, v2)        \n' + 
+'derivedByInsertionFrom(c1, c0, {("k1", e1)})       \n' + 
+'derivedByInsertionFrom(c2, c0, {("k2", e2)})        \n' + 
+'derivedByInsertionFrom(c3, c1, {("k3", e3)})        \n' + 
 '</pre> \n' + 
-'      <p> \n' + 
-'        Here <span class="name">c3</span> includes <span class="name">{ (k2 v2) \n' + 
-'        }</span> but the earlier "gap" leaves uncertainty regarding <span class="name">(k1,v1)</span> (it may have been removed) or any other pair \n' + 
-'        that may have been added as part of the derivation activities. \n' + 
-'      </p> \n' + 
-'    </div><div class="note"> \n' + 
-'      Purely tentative \n' + 
-'    </div><div class="note"> \n' + 
-'          What is the meaning here? Is it any different? Are stating anything \n' + 
-'          about newer version of tr:prov-dm that occur after \n' + 
-'          2011-12-15T12:00:00? \n' + 
-'        </div><div class="note"> \n' + 
-'          What is the meaning here? that only the version that was created by \n' + 
-'          this event is attributed to ex:Simon, but not previous ones. This \n' + 
-'          means that it is not specfied whether he was an author in anterior \n' + 
-'          versions. \n' + 
-'        </div><div class="note"> \n' + 
-'          Speculative, since we have not defined the destruction event (yet?. \n' + 
-'          What is the meaning here? that only the versions that existed during \n' + 
-'          this characterization interval were attributed to ex:Simon. \n' + 
-'        </div><span class="glossary" id="glossary-account"> An <dfn>account</dfn> is a \n' + 
-'      named bundle of provenance descriptions. </span><span class="glossary" id="glossary-entity"> <dfn id="concept-accountEntity">AccountEntity</dfn> is the category of entities \n' + 
-'      that are accounts, i.e. named bundles of provenance descriptions. </span><span class="conditional">If</span><span class="name">entity(e,attrs)</span><span class="name">wasAssociatedWith(a,e)</span><span class="name">a</span><span class="name">e</span><span class="name">attrs</span><span class="name">agent(e,attrs)</span><span class="name">e1</span><span class="name">e2</span><span class="conditional">if</span><span class="name">wasDerivedFrom(e2, e1, a, g2, u1, attrs)</span><span class="name">g2</span><span class="name">u1</span><span class="name">wasDerivedFrom(e2,e1,[prov:steps="single"] \n' + 
-'      cup; attrs)</span><span class="name">e1</span><span class="name">e2</span><span class="conditional">if</span><span class="name">wasDerivedFrom(e2, \n' + 
-'      e1, [prov:steps="single"] cup; attrs)</span><span class="name">wasDerivedFrom(e2,e1,attrs)</span><span class="conditional">If</span><span class="name">wasDerivedFrom(e2,e1)</span><span class="conditional">then</span><span class="name">a</span><span class="name">u</span><span class="name">g</span><span class="name">gAttrs</span><span class="name">uAttrs</span><span class="name">aAttrs</span><span class="name">wasGeneratedBy(g, \n' + 
-'      e2, a, attrs2)</span><span class="name">used(u, a, e1, \n' + 
-'      attrs1)</span><span class="name">e1</span><span class="name">e2</span><span class="name">attrs1</span><span class="name">attrs2</span><span class="name">a</span><span class="name">wasDerivedFrom(e2, \n' + 
-'      e1, a, g, u)</span><span class="name">wasDerivedFrom(e2,e1)</span><span class="name">e2</span><span class="name">e1</span><span class="name">e2</span><span class="name">e1</span><span class="conditional">If</span><span class="name">wasDerivedFrom(e2,e1,t,attrs)</span><span class="conditional">then</span><span class="name">wasDerivedFrom(e2,e1,attrs)</span><span class="name">wasGeneratedBy(e2,t)</span><span class="name">specializationOf(e2,e1)</span><span class="name">specializationOf(e3,e2)</span><span class="name">specializationOf(e2,e1)</span><span class="name">specializationOf(e3,e1)</span><span class="name">specializationOf(e2,e1)</span><span class="name">specializationOf(e2,e1)</span><span class="name">specializationOf(e1,e2)</span><span class="name">alternateOf(e2,e1)</span><span class="name">alternateOf(e2,e1)</span><span class="name">alternateOf(e1,e2)</span><span class="name">e2</span><span class="name">e1</span><span class="conditional">If</span><span class="name">wasDerivedFrom(e2,e1,a,g2,u1)</span><span class="name">a</span><span class="name">g2</span><span class="name">u1</span><span class="conditional">then</span><span class="name">tracedTo(e2,e1)</span><span class="conditional">If</span><span class="name">wasDerivedFrom(e2,e1)</span><span class="conditional">then</span><span class="name">tracedTo(e2,e1)</span><span class="conditional">If</span><span class="name">wasGeneratedBy(e2,a,gAttr) \n' + 
-'          and wasAssociatedWith(a,e1)</span><span class="name">a</span><span class="name">gAttr</span><span class="conditional">then</span><span class="name">tracedTo(e2,e1)</span><span class="conditional">If</span><span class="name">wasGeneratedBy(e2,a,gAttr)</span><span class="name">wasAssociatedWith(a,e)</span><span class="name">actedOnBehalfOf(e,e1)</span><span class="name">a</span><span class="name">e</span><span class="name">gAttr</span><span class="conditional">then</span><span class="name">tracedTo(e2,e1)</span><span class="conditional">If</span><span class="name">wasGeneratedBy(e2,a,gAttr) \n' + 
-'          and wasStartedBy(a,e1,sAttr)</span><span class="name">a</span><span class="name">e</span><span class="name">gAttr</span><span class="name">sAttr</span><span class="conditional">then</span><span class="name">tracedTo(e2,e1)</span><span class="conditional">If</span><span class="name">tracedTo(e2,e)</span><span class="name">tracedTo(e,e1)</span><span class="name">e</span><span class="conditional">then</span><span class="name">tracedTo(e2,e1)</span><span class="conditional">If</span><span class="name">tracedTo(r2,r1,attrs)</span><span class="name">r2</span><span class="name">r1</span><span class="name">attrs</span><span class="conditional">then</span><span class="name">e<sup>0</sup></span><span class="name">e<sup>1</sup></span><span class="name">e<sup>n</sup></span><span class="name">nge;1</span><span class="name">e<sup>0</sup></span><span class="name">r2</span><span class="name">e<sup>n</sup></span><span class="name">r1</span><span class="name">0le;ile;n-1</span><span class="name">wasDerivedFrom(e<sup>i</sup>,e<sup>i+1</sup>,a,g2,u1)</span><span class="name">a</span><span class="name">g2</span><span class="name">u1</span><span class="name">wasDerivedFrom(e<sup>i</sup>,e<sup>i+1</sup>)</span><span class="name">wasBasedOn(e<sup>i</sup>,e<sup>i+1</sup>)</span><span class="name">wasGeneratedBy(e<sup>i</sup>,a,gAttr) and \n' + 
-'          wasAssociatedWith(a,e<sup>i+1</sup>)</span><span class="name">a</span><span class="name">gAttr</span><span class="name">wasGeneratedBy(e<sup>i</sup>,a,gAttr)</span><span class="name">wasAssociatedWith(a,e)</span><span class="name">actedOnBehalfOf(e,e<sup>i+1</sup>)</span><span class="name">a</span><span class="name">e</span><span class="name">gAttr</span><span class="name">wasGeneratedBy(e<sup>i</sup>,a,gAttr) and \n' + 
-'          wasStartedBy(a,e<sup>i+1</sup>,sAttr)</span><span class="name">a</span><span class="name">e</span><span class="name">gAttr</span><span class="name">sAttr</span><span class="name">a1</span><span class="name">a2</span><span class="name">wasInformedBy(a2,a1)</span><span class="conditional">if and only if</span><span class="name">e</span><span class="name">attrs1</span><span class="name">attrs2</span><span class="name">wasGeneratedBy(e,a1,attrs1)</span><span class="name">used(a2,e,attrs2)</span><span class="name">wasInformedBy</span><span class="name">wasInformedBy(a3,a1)</span><span class="name">wasInformedBy(a2,a1)</span><span class="name">e1</span><span class="name">e1</span><span class="name">a1</span><span class="name">a2</span><span class="name">wasInformedBy(a3,a2)</span><span class="name">e2</span><span class="name">e2</span><span class="name">a2</span><span class="name">a3</span><span class="name">e1</span><span class="name">e2</span><span class="name">a3</span><span class="name">a1</span><span class="name">a3</span><span class="name">a1</span><span class="name">a2</span><span class="name">a1</span><span class="name">a1</span><span class="name">a2</span><span class="name">wasStartedBy(a2,a1)</span><span class="conditional">if and only if</span><span class="name">e</span><span class="name">gAttr</span><span class="name">sAttr</span><span class="name">wasGeneratedBy(e,a1,gAttr)</span><span class="name">wasStartedBy(a2,e,sAttr)</span><span class="name">wasStartedBy</span><span class="name">wasStartedBy</span><span class="name">wasStartedBy</span><span class="name">old</span><span class="name">new</span><span class="name">ag</span><span class="conditional">if</span><span class="name">wasRevisionOf(new,old,ag)</span><span class="conditional">then</span><span class="name">e</span><span class="name">eAttrs</span><span class="name">dAttrs</span><span class="name">wasDerivedFrom(new,old,dAttrs)</span><span class="name">entity(e,eAttrs)</span><span class="name">specializationOf(new,e)</span><span class="name">specializationOf(old,e)</span><span class="name">wasRevisionOf</span><span class="name">wasDerivedFrom</span><span class="name">e2</span><span class="name">e1</span><span class="name">wasDerivedFrom(e2,e1)</span><span class="conditional">If</span><span class="name">wasAttributedTo(e,ag)</span><span class="name">e</span><span class="name">ag</span><span class="conditional">then</span><span class="name">a</span><span class="name">attr1</span><span class="name">attr2</span><span class="name">t1</span><span class="name">t2</span><span class="conditional">If</span><span class="name">wasQuotedFrom(e2,e1,ag2,ag1,attrs)</span><span class="name">e2</span><span class="name">e1</span><span class="name">ag2</span><span class="name">ag1</span><span class="conditional">then</span><span class="name">w3:Consortium</span><span class="name">tr:WD-prov-dm-20111215</span><span class="name">e</span><span class="name">entity(e,av)</span><span class="name">av</span><span class="name">alternateOf</span><span class="name">a</span><span class="name">e</span><span class="name">attrs</span><span class="name">t</span><span class="conditional">if</span><span class="name">used(a,e,attrs)</span><span class="name">used(a,e,attrs,t)</span><span class="conditional">then</span><span class="name">e</span><span class="name">a</span><span class="name">a</span><span class="name">e</span><span class="name">attrs</span><span class="name">t</span><span class="conditional">if</span><span class="name">wasGeneratedBy(e,a,attrs)</span><span class="name">wasGeneratedBy(e,a,attrs,t)</span><span class="conditional">then</span><span class="name">e</span><span class="name">a</span><span class="name">a</span><span class="name">e2</span><span class="name">e1</span><span class="name">e1</span><span class="name">e2</span><span class="name">e1</span><span class="name">e2</span><span class="name">a</span><span class="name">e1</span><span class="name">e2</span><span class="name">g2</span><span class="name">u1</span><span class="conditional">if</span><span class="name">wasDerivedFrom(e2,e1,a,g2,u1,attrs)</span><span class="name">wasDerivedFrom(e2,e1,[prov:steps="single"] cup; attrs)</span><span class="conditional">then</span><span class="name">e1</span><span class="name">e2</span><span class="name">e1</span><span class="name">e1</span><span class="name">e2</span><span class="conditional">if</span><span class="name">wasDerivedFrom(e2,e1,[prov:steps="any"] cup; attrs)</span><span class="conditional">then</span><span class="name">e1</span><span class="name">e2</span><span class="name">e1</span><span class="name">e2</span><span class="name">e1</span><span class="name">e2</span><span class="name">e1</span><span class="name">a1</span><span class="name">a2</span><span class="name">a1</span><span class="name">a2</span><span class="name">a1</span><span class="name">a2</span><span class="conditional">if</span><span class="name">wasInformedBy(a2,a1)</span><span class="conditional">then</span><span class="name">a1</span><span class="name">a2</span><span class="name">a1</span><span class="name">a2</span><span class="name">a1</span><span class="name">a2</span><span class="name">a1</span><span class="name">a2</span><span class="conditional">if</span><span class="name">wasStartedBy(a2,a1)</span><span class="conditional">then</span><span class="name">a1</span><span class="name">a2</span><span class="name">a</span><span class="name">ag</span><span class="conditional">if</span><span class="name">wasStartedBy(a,ag)</span><span class="conditional">then</span><span class="name">a</span><span class="name">ag</span><span class="name">a</span><span class="name">ag</span><span class="conditional">if</span><span class="name">wasAssociatedWith(a,ag)</span><span class="conditional">then</span><span class="name">a</span><span class="name">ag</span><span class="name">ag</span><span class="name">g1</span><span class="name">g2</span><span class="name">a0</span><span class="name">a1</span><span class="name">a2</span><span class="name">a2</span><span class="name">e</span><span class="name">a0</span><span class="name">e</span><span class="name">a0</span><span class="name">a2</span><span class="name">e</span><span class="name">e</span><span class="name">a1</span><span class="name">a2</span><span class="name">attrs1</span><span class="name">attrs2</span><span class="conditional">if</span><span class="name">wasGeneratedBy(id1,e,a1,attrs1)</span><span class="name">wasGeneratedBy(id2,e,a2,attrs2)</span><span class="conditional">then</span><span class="name">id1</span><span class="name">id2</span><span class="name">a1</span><span class="name">a2</span><span class="name">attrs1</span><span class="name">attrs2</span><span class="name">a</span><span class="name">e1</span><span class="name">e2</span><span class="name">attrs2</span><span class="conditional">if</span><span class="name">wasDerivedFrom(e2,e1, \n' + 
-'        [prov:steps="single"])</span><span class="name">wasGeneratedBy(e2,a,attrs2)</span><span class="conditional">then</span><span class="name">used(a,e1,attrs1)</span><span class="name">attrs1</span><span class="name">e2</span><span class="name">e1</span><span class="name">wasDerivedFrom(e2,e1)</span><span class="name">used(a,e1)</span><span class="name">wasGeneratedBy(e2,a,attrs2)</span><span class="name">e1</span><span class="name">e2</span><span class="name">c2</span><span class="name">(k1, v1)</span><span class="name">(k2, v2)</span><span class="name">c1</span><span class="name">c1==c2</span><span class="name">c1==c2, k1==k2, \n' + 
-'      v1==v2</span><span class="name">v1==v2</span><span class="name">c2</span><span class="name">c3</span><span class="name">{ (k2 v2) \n' + 
-'        }</span><span class="name">(k1,v1)</span><span class="name">tr:prov-dm</span><span class="name">tr:prov-dm</span><span class="name">tr:WD-prov-dm-20111215</span><span class="name">tr:WD-prov-dm-20111018</span><span class="name">w3:Consortium</span><span class="name">tr:prov-dm</span><span class="name">w3:Consortium</span><span class="name">ex:acc1</span><span class="name">ex:acc1</span><span class="name">tr:prov-dm</span><span class="name">tr:prov-dm</span></html> \n' + 
+'      From this set of descriptions, we conclude: \n' + 
+'<pre class="codeexample" xml:space="preserve"> \n' + 
+'  c1 = { ("k1", e1) } \n' + 
+'  c2 = { ("k2", e2) } \n' + 
+'  c3 = { ("k1", e1), ("k3", e3)} \n' + 
+'</pre> \n' + 
+'    </div><div class="anexample"> \n' + 
+'      In the example, the state of <span class="name">c2</span> is only \n' + 
+'      partially known because the collection is constructed from partially known \n' + 
+'      other collections. \n' + 
+'<pre class="codeexample" xml:space="preserve"> \n' + 
+'entity(c0, [prov:type="prov:EmptyCollection" %% xsd:QName])    // c0 is an empty collection \n' + 
+'entity(c1, [prov:type="prov:Collection" %% xsd:QName])     \n' + 
+'entity(c2, [prov:type="prov:Collection" %% xsd:QName])     \n' + 
+'entity(c3, [prov:type="prov:Collection" %% xsd:QName])     \n' + 
+'entity(e1) \n' + 
+'entity(e2) \n' + 
+' \n' + 
+'derivedByInsertionFrom(c1, c0, {("k1", e1)})        \n' + 
+'wasDerivedFrom(c2, c1)                        \n' + 
+'derivedByInsertionFrom(c3, c2, {("k2", e2)})        \n' + 
+' </pre> \n' + 
+'      From this set of descriptions, we conclude: \n' + 
+'      <ul> \n' + 
+'        <li> \n' + 
+'          <span class="name">c1 = { ("k1", e1) }</span> \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="name">c2</span> is somehow derived from <span class="name">c1</span>, \n' + 
+'          but the precise sequence of updates is unknown \n' + 
+'        </li> \n' + 
+'        <li> \n' + 
+'          <span class="name">c3</span> includes <span class="name">("k2", e2)</span> \n' + 
+'          but the earlier "gap" leaves uncertainty regarding <span class="name">("k1", \n' + 
+'          e1)</span> (it may have been removed) or any other pair that may have \n' + 
+'          been added as part of the derivation activities. \n' + 
+'        </li> \n' + 
+'      </ul> \n' + 
+'    </div><span class="glossary" id="glossary-account"> An <dfn>account</dfn> is a \n' + 
+'      entity that contains a bundle of provenance descriptions. </span><span class="name">Account</span><span class="name">e</span><span class="name">t1</span><span class="name">t2</span><span class="conditional">if</span><span class="name">wasGeneratedBy(e, \n' + 
+'      -, t1)</span><span class="name">wasGeneratedBy(e, -, t2)</span><span class="name">t1</span><span class="name">t2</span><span class="name">activity(a,t1,t2,attrs1)</span><span class="name">wasStartedBy(id,a,e,t,attrs2)</span><span class="name">t</span><span class="name">t1</span><span class="name">activity(a,t1,t2,attrs1)</span><span class="name">wasEndedBy(id,a,e,t,attrs2)</span><span class="name">t</span><span class="name">t2</span><span class="name">a1</span><span class="name">a2</span><span class="name">wasInformedBy(a2,a1)</span><span class="conditional">if and only if</span><span class="name">e</span><span class="name">attrs1</span><span class="name">attrs2</span><span class="name">wasGeneratedBy(e,a1,-,attrs1)</span><span class="name">used(a2,e,-,attrs2)</span><span class="name">wasInformedBy</span><span class="name">wasInformedBy(a3,a1)</span><span class="name">wasInformedBy(a2,a1)</span><span class="name">e1</span><span class="name">e1</span><span class="name">a1</span><span class="name">a2</span><span class="name">wasInformedBy(a3,a2)</span><span class="name">e2</span><span class="name">e2</span><span class="name">a2</span><span class="name">a3</span><span class="name">e1</span><span class="name">e2</span><span class="name">a3</span><span class="name">a1</span><span class="name">a3</span><span class="name">a1</span><span class="name">a2</span><span class="name">a1</span><span class="name">a1</span><span class="name">a2</span><span class="name">wasStartedBy(a2,a1)</span><span class="conditional">if and only if</span><span class="name">e</span><span class="name">gAttr</span><span class="name">sAttr</span><span class="name">wasGeneratedBy(e,a1,-,gAttr)</span><span class="name">wasStartedBy(a2,e,-,sAttr)</span><span class="conditional">If</span><span class="name">wasAttributedTo(e,ag)</span><span class="name">e</span><span class="name">ag</span><span class="conditional">then</span><span class="name">a</span><span class="name">attr1</span><span class="name">attr2</span><span class="name">t1</span><span class="name">t2</span><span class="name">wasAssociatedWith(a, \n' + 
+'        ag, -, attr)</span><span class="name">wasAssociatedWith(a, -, \n' + 
+'        pl, attr)</span><span class="name">wasGeneratedBy(g, \n' + 
+'      e2, a, -, attrs2)</span><span class="name">used(u, a, e1, \n' + 
+'      -, attrs1)</span><span class="name">e1</span><span class="name">e2</span><span class="name">attrs1</span><span class="name">attrs2</span><span class="name">a</span><span class="name">wasDerivedFrom(e2, e1, a, g, u)</span><span class="name">wasDerivedFrom(e2,e1)</span><span class="name">e2</span><span class="name">e1</span><span class="name">e2</span><span class="name">e1</span><span class="name">e1</span><span class="name">e2</span><span class="name">ag</span><span class="conditional">if</span><span class="name">wasRevisionOf(e2,e1,ag)</span><span class="conditional">then</span><span class="name">e</span><span class="name">eAttrs</span><span class="name">dAttrs</span><span class="name">wasRevisionOf(e2,e1,-,attr)</span><span class="name">wasRevisionOf</span><span class="name">wasDerivedFrom</span><span class="name">e2</span><span class="name">e1</span><span class="name">wasDerivedFrom(e2,e1)</span><span class="conditional">If</span><span class="name">wasQuotedFrom(e2,e1,ag2,ag1,attrs)</span><span class="name">e2</span><span class="name">e1</span><span class="name">ag2</span><span class="name">ag1</span><span class="conditional">then</span><span class="name">wasQuotedFrom(e2,e1,-,-,attrs)</span><span class="name">e2</span><span class="name">e1</span><span class="conditional">If</span><span class="name">wasDerivedFrom(e2,e1,a,g2,u1)</span><span class="name">a</span><span class="name">g2</span><span class="name">u1</span><span class="conditional">then</span><span class="name">tracedTo(e2,e1)</span><span class="conditional">If</span><span class="name">wasDerivedFrom(e2,e1)</span><span class="conditional">then</span><span class="name">tracedTo(e2,e1)</span><span class="conditional">If</span><span class="name">wasAttributedTo(e2,ag1,aAttr)</span><span class="conditional">then</span><span class="name">tracedTo(e2,ag1)</span><span class="conditional">If</span><span class="name">wasAttributedTo(e2,ag2,aAttr)</span><span class="name">wasGeneratedBy(e2,a,gAttr)</span><span class="name">actedOnBehalfOf(ag2,ag1,a,rAttr)</span><span class="name">a</span><span class="name">ag2</span><span class="name">ag1</span><span class="name">aAttr</span><span class="name">gAttr</span><span class="name">rAttr</span><span class="conditional">then</span><span class="name">tracedTo(e2,ag1)</span><span class="conditional">If</span><span class="name">wasGeneratedBy(e2,a,gAttr)</span><span class="name">wasStartedBy(a,e1,sAttr)</span><span class="name">a</span><span class="name">gAttr</span><span class="name">sAttr</span><span class="conditional">If</span><span class="name">tracedTo(e2,e)</span><span class="name">tracedTo(e,e1)</span><span class="name">e</span><span class="conditional">then</span><span class="name">tracedTo(e2,e1)</span><span class="conditional">If</span><span class="name">tracedTo(r2,r1,attrs)</span><span class="name">r2</span><span class="name">r1</span><span class="name">attrs</span><span class="conditional">then</span><span class="name">e<sup>0</sup></span><span class="name">e<sup>1</sup></span><span class="name">e<sup>n</sup></span><span class="name">nge;1</span><span class="name">e<sup>0</sup></span><span class="name">r2</span><span class="name">e<sup>n</sup></span><span class="name">r1</span><span class="name">0le;ile;n-1</span><span class="name">wasDerivedFrom(e<sup>i</sup>,e<sup>i+1</sup>,a,g2,u1)</span><span class="name">a</span><span class="name">g2</span><span class="name">u1</span><span class="name">wasDerivedFrom(e<sup>i</sup>,e<sup>i+1</sup>)</span><span class="name">wasAttributedTo(e<sup>i</sup>,e<sup>i+1</sup>)</span><span class="name">wasAttributedTo(e<sup>i</sup>,e)</span><span class="name">wasGeneratedBy(e<sup>i</sup>,a,gAttr)</span><span class="name">actedOnBehalfOf(e,e<sup>i+1</sup>,a,rAttr)</span><span class="name">a</span><span class="name">e</span><span class="name">gAttr</span><span class="name">rAttr</span><span class="name">wasGeneratedBy(e<sup>i</sup>,a,gAttr) and \n' + 
+'          wasStartedBy(a,e<sup>i+1</sup>,sAttr)</span><span class="name">a</span><span class="name">e</span><span class="name">gAttr</span><span class="name">sAttr</span><span class="name">specializationOf(e1,e2)</span><span class="name">T1-2</span><span class="name">specializationOf(e2,e3)</span><span class="name">T2-3</span><span class="name">T1-2</span><span class="name">T2-3</span><span class="name">e2</span><span class="name">alternate(e,e)</span><span class="name">e</span><span class="name">e</span><span class="name">alternate(e1,e2)</span><span class="name">e</span><span class="name">e1</span><span class="name">e2</span><span class="name">e</span><span class="name">alternate(e2,e1)</span><span class="name">alternate(e1,e2)</span><span class="name">e1-2</span><span class="name">e1</span><span class="name">e2</span><span class="name">e1-2</span><span class="name">alternate(e2,e3)</span><span class="name">e2-3</span><span class="name">e2</span><span class="name">e3</span><span class="name">e2-3</span><span class="name">e1-3</span><span class="name">e1</span><span class="name">e3</span><span class="name">womanInRedDress</span><span class="name">customerInChairAt7pm</span><span class="name">customerInChairAt6pm</span><span class="name">customerInChairAt7pm</span><span class="name">womanInRedDress</span><span class="name">customerInChairAt6pm</span><span class="name">w3:Consortium</span><span class="name">tr:WD-prov-dm-20111215</span><span class="name">e</span><span class="name">entity(e,attrs)</span><span class="name">attrs</span><span class="name">alternateOf</span><span class="name">a</span><span class="name">e</span><span class="name">attrs</span><span class="name">t</span><span class="conditional">if</span><span class="name">used(a,e,attrs)</span><span class="name">used(a,e,attrs,t)</span><span class="conditional">then</span><span class="name">e</span><span class="name">a</span><span class="name">a</span><span class="name">e</span><span class="name">attrs</span><span class="name">t</span><span class="conditional">if</span><span class="name">wasGeneratedBy(e,a,attrs)</span><span class="name">wasGeneratedBy(e,a,attrs,t)</span><span class="conditional">then</span><span class="name">e</span><span class="name">a</span><span class="name">a</span><span class="name">e2</span><span class="name">e1</span><span class="name">e1</span><span class="name">e2</span><span class="name">e1</span><span class="name">e2</span><span class="name">a</span><span class="name">e1</span><span class="name">e2</span><span class="name">g2</span><span class="name">u1</span><span class="conditional">if</span><span class="name">wasDerivedFrom(e2,e1,a,g2,u1,attrs)</span><span class="conditional">then</span><span class="name">e1</span><span class="name">e2</span><span class="name">e1</span><span class="name">e2</span><span class="conditional">if</span><span class="name">wasDerivedFrom(e2,e1, attrs)</span><span class="conditional">then</span><span class="name">e1</span><span class="name">e2</span><span class="name">e1</span><span class="name">e2</span><span class="name">e1</span><span class="name">e2</span><span class="name">a1</span><span class="name">a2</span><span class="name">a1</span><span class="name">a2</span><span class="name">a1</span><span class="name">a2</span><span class="conditional">if</span><span class="name">wasInformedBy(a2,a1)</span><span class="conditional">then</span><span class="name">a1</span><span class="name">a2</span><span class="name">a2</span><span class="name">a1</span><span class="name">a1</span><span class="name">a2</span><span class="name">a1</span><span class="name">a2</span><span class="conditional">if</span><span class="name">wasStartedBy(a2,a1)</span><span class="conditional">then</span><span class="name">a1</span><span class="name">a2</span><span class="name">a</span><span class="name">e</span><span class="conditional">if</span><span class="name">wasStartedBy(a,e)</span><span class="conditional">then</span><span class="name">a</span><span class="name">e</span><span class="name">a</span><span class="name">e</span><span class="conditional">if</span><span class="name">wasEndedBy(a,e)</span><span class="conditional">then</span><span class="name">a</span><span class="name">e</span><span class="name">a</span><span class="name">ag</span><span class="conditional">if</span><span class="name">wasAssociatedWith(a,ag)</span><span class="conditional">then</span><span class="name">a</span><span class="name">ag</span><span class="name">ag</span><span class="name">e</span><span class="name">ag</span><span class="conditional">if</span><span class="name">wasAttributedWith(e,ag)</span><span class="conditional">then</span><span class="name">e</span><span class="name">ag</span><span class="name">ag</span><span class="name">ag1</span><span class="name">ag2</span><span class="conditional">if</span><span class="name">actedOnBehalfOf(ag2,ag1)</span><span class="conditional">then</span><span class="name">ag2</span><span class="name">ag1</span><span class="name">ag1</span><span class="name">ag2</span><span class="name">g1</span><span class="name">g2</span><span class="name">a0</span><span class="name">a1</span><span class="name">a2</span><span class="name">a2</span><span class="name">e</span><span class="name">a0</span><span class="name">e</span><span class="name">a0</span><span class="name">a2</span><span class="name">e</span><span class="name">e</span><span class="name">a1</span><span class="name">a2</span><span class="name">t1</span><span class="name">t2</span><span class="name">attrs1</span><span class="name">attrs2</span><span class="conditional">if</span><span class="name">wasGeneratedBy(id1, e, a1, t1, attrs1)</span><span class="name">wasGeneratedBy(id2, e, a2, t2, attrs2)</span><span class="conditional">then</span><span class="name">id1</span><span class="name">id2</span><span class="name">a1</span><span class="name">a2</span><span class="name">t1</span><span class="name">t2</span><span class="name">attrs1</span><span class="name">attrs2</span><span class="name">a</span><span class="name">e1</span><span class="name">e2</span><span class="name">dAttrs</span><span class="name">gAttrs</span><span class="conditional">if</span><span class="name">wasDerivedFrom(e2,e1, a, dAttrs)</span><span class="name">wasGeneratedBy(e2,a,-,gAttrs)</span><span class="conditional">then</span><span class="name">used(a,e1,-,uAttrs)</span><span class="name">uAttrs</span><span class="name">e2</span><span class="name">e1</span><span class="name">wasDerivedFrom(e2,e1)</span><span class="name">used(a,e1,-)</span><span class="name">wasGeneratedBy(e2,a,-)</span><span class="name">e1</span><span class="name">e2</span><span class="name">memberOf(c, {(k1, v1), ...})</span><span class="conditional">if and only if</span><span class="name">c0</span><span class="name">derivedByInsertionFrom(c, \n' + 
+'      c0, {(k1, v1), ...})</span><span class="name">c3</span><span class="name">c</span><span class="name">c1</span><span class="name">c2</span><span class="name">c1 = { ("k1", e1) }</span><span class="name">c2</span><span class="name">c1</span><span class="name">c3</span><span class="name">("k2", e2)</span><span class="name">("k1", \n' + 
+'          e1)</span></html> \n' + 
 ' ' ;
--- a/model/comments/issue-331-Khalid.txt	Fri Apr 20 01:10:42 2012 +0100
+++ b/model/comments/issue-331-Khalid.txt	Fri Apr 20 01:14:49 2012 +0100
@@ -147,8 +147,6 @@
 attributes.
 
 
-What you suggest can be expressed with 
-derivedByInsertionFrom(c1, c0, {("k1", e1), ("k2", e2), ...})       
-where c0 is an empty collection.
+We have added an optional attribute complete to the relation membship
+to address this specific point.
 
-Do we need another relation for this?
--- a/model/comments/issue-331-Satya.txt	Fri Apr 20 01:10:42 2012 +0100
+++ b/model/comments/issue-331-Satya.txt	Fri Apr 20 01:14:49 2012 +0100
@@ -214,6 +214,9 @@
    > Section MailScanner has detected a possible fraud attempt from "4.7.4.2" claiming to be 4.7.4.2:
    > 1. Location is not covered by either XSD or RDF specification (from Section 4.7.5)?  
    > 
+
+No, we leave the encoding of locations open, but they must be values.
+
    > Minor:
    > Section 4.2.4:
    > 1. Use "superior" instead of "responsible" for actedOnBehalfOf
--- a/model/comments/issue-331-Tim.txt	Fri Apr 20 01:10:42 2012 +0100
+++ b/model/comments/issue-331-Tim.txt	Fri Apr 20 01:14:49 2012 +0100
@@ -517,7 +517,8 @@
   > and the paragraph. Perhaps a simple diagram would help follow. (but then this would be inconsistent with other definitions…)
   > 
 
-TODO: ??? add a picture?
+We could add a figure, but, as said, it would be inconsistent.
+We have reorganized the example. Hopefully, it is now more readable.
 
   > 
   > 
--- a/model/comments/issue-331-graham.txt	Fri Apr 20 01:10:42 2012 +0100
+++ b/model/comments/issue-331-graham.txt	Fri Apr 20 01:14:49 2012 +0100
@@ -460,7 +460,9 @@
   > "id: an identifier for an entity;" - this is redundant and potentially
   > confusing.  Suggest "id: an identifier".
 
-TODO: ?????????, no action 
+It was agreed a long time ago that the identifier identifies the entity as opposed to the record. So, we don't see what is redundant or confusing here.
+
+Could you raise an issue and/or clarify your comment?
 
   > 
   > "attributes: an optional set of attribute-value pairs ((attr1, val1), ...)
@@ -626,6 +628,8 @@
 TODO: I think there is some value in stating there is an other document to
 look at, and outline what it tackles.
 
+Section was renamed, and trimmed down.
+
 
 
   > 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/model/comments/issue-332-Tim.txt	Fri Apr 20 01:14:49 2012 +0100
@@ -0,0 +1,210 @@
+PROV-N editors,
+
+I think the draft is acceptable for public release.
+Please see my general comments below.
+
+Regards,
+Tim
+
+http://dvcs.w3.org/hg/prov/raw-file/default/model/releases/ED-prov-dm-20120402/prov-n.html
+
+
+==================
+General comments
+
+1)
+Perhaps "RDF's reliance on triples" should be "RDF's insistence on triples" :-)
+
+PM: text has been changed 
+
+2) 
+the intro to syntactic marker - shows assertions with a missing marker for the id (the first position)
+
+wasDerivedFrom(e2, e1, a, g2, u1)
+wasDerivedFrom(e2, e1, a, -, -)
+wasDerivedFrom(e2, e1, -, -, -)
+
+should be
+
+wasDerivedFrom(-, e2, e1, a, g2, u1)
+wasDerivedFrom(-, e2, e1, a, -, -)
+wasDerivedFrom(-, e2, e1, -, -, -)
+
+
+apparently the marker is optional. Why is it optional?
+
+PM because the grammar is smarter than it looks... it does allow the id to disappear completely. This is not intuitive and Luc and I had a discussion about this, which led to the conclusion that this is convenient but the parser only works because of some other peculiarity of the grammar. So it may be wise to revisit the grammar at a later stage.
+
+That the ID can disappear is now made clear in the text, sec. 2.4:
+"Additionally, the grammar rules are defined in such a way that the optional identifier can be omitted altogether with no ambiguity arising."
+
+
+
+3)
+I'm not sure what to take away from this:
+"""
+ PROV-N exposes attributes that PROV-DM provides an interpretation for [PROV-DM-CONSTRAINTS] directly as positional arguments of expressions, whereas those for which PROV-DM provides no interpretation are expressed among the optional attribute-value pairs. This latter category of attributes includes prov:label, prov:location, prov:role, and prov:type.
+"""
+* suggest adding an example of the two (start time is positional, foo=bar and prov:role are latter category)
+
+PM: text has changed now, entire sentence gone
+
+
+
+4)
+I was a bit surprised that DM and -constraints says that "it is assumed that containers exist", but then PROV-N does it.   
+I guess it makes sense.
+
+PM: the DM should perhaps point to the PROV-N entry where this is defined (sec. 4).
+
+
+
+5)
+entityExpression ::= entity ( identifier optional-attribute-values )
+
+but "identifier" is not defined anywhere within view.
+* recommend adding a link to the productions that are not defined within view.
+
+PM we are considering this. good suggestion, quite a bit of additional work involved :-)
+
+
+6)
+expression
+ ::=
+entityExpression | activityExpression | generationExpression | usageExpression
+  | startExpression | endExpression | communicationExpression | startByActivityExpression
+  | agentExpression | attributionExpression | associationExpression | responsibilityExpression
+  | derivationExpression | revisionExpression | quotationExpression
+  | hadOriginalSourceExpression | traceabilityExpression
+  | alternateExpression | specializationExpression
+  | noteExpression | annotationExpression
+
+* recommend adding these as links to their production (and in general, anywhere one is mentioned it should be a link)
+
+PM: see earlier comment
+
+
+
+7)
+Why are the identifiers not in a prefix?
+e.g.
+
+ "i" in wasInformedBy(i, ex:a1, ex:a2)
+
+This occurs throughout.
+And the places like "
+wasAttributedTo(e, ag)
+" don't have prefixes on other arguments.
+
+PM: because the syntax for identifiers allows this, unlike that for RDF/Turtle where you need either a prefix or just a :
+
+see 3.7.2:
+A qualified name's prefix is optional. If a prefix occurs in a qualified name, it refers to a namespace declared in a namespace declaration. In the absence of prefix, the qualified name refers to the default namespace
+
+
+
+
+8)
+Ensuring spaces follow commas in the examples would help readability.
+
+PM: this is now mostly the case everywhere -- we may have missed a few?
+
+9)
+Looks like we hit the RDF vs XML xsd namespace problem again:
+"xsd denotes the XML Schema namespace http://www.w3.org/2001/XMLSchema." 
+
+PM: not sure how to deal with this. More insight, please?
+
+
+
+
+10)
+(My Turtle bias showing)
+When I define the default namespace, do I use NO colon or JUST a colon?
+I.e., is the error on the first or second entity in:
+
+container
+  default <http://example.org/0/>
+
+  entity(isThisOK)
+
+  entity(:orIsThis)
+
+end
+
+Or, another way, "Is the colon part of the prefix?" In Turtle it is not, the XML side would say it is.
+This is touched on in section 4.7.2 Identifier
+
+Can I have:
+ 
+container
+
+  prefix : <http://example.org/99/>
+
+  entity(:isThisOK)
+
+end
+
+PM: NO colon is my understanding from 3.7.2. Luc please confirm?
+
+
+
+11)
+Getting rid of %% QName would be nice 
+
+"prov:type="ex:Programmer" %% xsd:QName"
+
+(per note "Wouldn't it be useful to introduce a literal for a qualified name? Currenlty, we have to write:")
+
+PM: agreed. no proposed solution yet but aware of the problem
+
+
+
+12)
+
+Why is  prov:AccountEntity not just prov:Account?
+Should we rename prov:Plan to prov:PlanEntity and prov:EmptyCollection to prov:EmptyCollectionEntity ? (please, no.)
+
+PM: edited into prov:Account. Luc please check as you may have used AccountEntity deliberately?
+
+
+13)
+In the example:
+
+container
+  prefix ex <http://example.org/>
+
+  entity(e2,
+
+…
+What is the namespace for e2?
+(Yes, my RDF bias shows here, sorry.)
+
+PM: the default namespace?  I guess here the prefix is just not used.
+
+
+
+14)
+why distinguish containers and accounts?
+Why not use the container as the account, and let the container be named or unnamed?
+Is it because XML needs a root element :-)
+
+PM: I let Luc answer this one
+
+
+On Mar 29, 2012, at 9:38 AM, Provenance Working Group Issue Tracker wrote:
+
+> PROV-ISSUE-332 (review-prov-n-wd5): issue to collect feedback on prov-n wd5 [prov-n]
+>
+> http://www.w3.org/2011/prov/track/issues/332
+>
+> Raised by: Luc Moreau
+> On product: prov-n
+>
+> When sending feedback on prov-n document wd5, please send it under this issue or individual new issues.
+>
+>
+>
+>
+>
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/model/diff.html	Fri Apr 20 01:14:49 2012 +0100
@@ -0,0 +1,3250 @@
+<!DOCTYPE html PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN' 'http://www.w3.org/TR/html4/loose.dtd'>
+<html lang="en" dir="ltr">
+<head><style type="text/css"><!--
+
+.insert { background-color: #aaffaa }
+.delete { background-color: #ff8888; text-decoration: line-through }
+.tagInsert { background-color: #007700; color: #ffffff }
+.tagDelete { background-color: #770000; color: #ffffff }
+
+--></style> 
+    <title>PROV-DM: The PROV Data Model</title> 
+    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
+    
+
+    <style type="text/css">
+      .note { font-size:small; margin-left:50px }
+     </style>
+
+     
+     
+    
+
+    
+
+    
+
+     
+  <style type="text/css">
+/*****************************************************************
+ * ReSpec CSS
+ * Robin Berjon (robin at berjon dot com)
+ * v0.05 - 2009-07-31
+ *****************************************************************/
+
+
+/* --- INLINES --- */
+em.rfc2119 { 
+    text-transform:     lowercase;
+    font-variant:       small-caps;
+    font-style:         normal;
+    color:              #900;
+}
+
+h1 acronym, h2 acronym, h3 acronym, h4 acronym, h5 acronym, h6 acronym, a acronym,
+h1 abbr, h2 abbr, h3 abbr, h4 abbr, h5 abbr, h6 abbr, a abbr {
+    border: none;
+}
+
+dfn {
+    font-weight:    bold;
+}
+
+a.internalDFN {
+    color:  inherit;
+    border-bottom:  1px solid #99c;
+    text-decoration:    none;
+}
+
+a.externalDFN {
+    color:  inherit;
+    border-bottom:  1px dotted #ccc;
+    text-decoration:    none;
+}
+
+a.bibref {
+    text-decoration:    none;
+}
+
+code {
+    color:  #ff4500;
+}
+
+
+/* --- WEB IDL --- */
+pre.idl {
+    border-top: 1px solid #90b8de;
+    border-bottom: 1px solid #90b8de;
+    padding:    1em;
+    line-height:    120%;
+}
+
+pre.idl::before {
+    content:    "WebIDL";
+    display:    block;
+    width:      150px;
+    background: #90b8de;
+    color:  #fff;
+    font-family:    initial;
+    padding:    3px;
+    font-weight:    bold;
+    margin: -1em 0 1em -1em;
+}
+
+.idlType {
+    color:  #ff4500;
+    font-weight:    bold;
+    text-decoration:    none;
+}
+
+/*.idlModule*/
+/*.idlModuleID*/
+/*.idlInterface*/
+.idlInterfaceID, .idlDictionaryID {
+    font-weight:    bold;
+    color:  #005a9c;
+}
+
+.idlSuperclass {
+    font-style: italic;
+    color:  #005a9c;
+}
+
+/*.idlAttribute*/
+.idlAttrType, .idlFieldType, .idlMemberType {
+    color:  #005a9c;
+}
+.idlAttrName, .idlFieldName, .idlMemberName {
+    color:  #ff4500;
+}
+.idlAttrName a, .idlFieldName a, .idlMemberName a {
+    color:  #ff4500;
+    border-bottom:  1px dotted #ff4500;
+    text-decoration: none;
+}
+
+/*.idlMethod*/
+.idlMethType {
+    color:  #005a9c;
+}
+.idlMethName {
+    color:  #ff4500;
+}
+.idlMethName a {
+    color:  #ff4500;
+    border-bottom:  1px dotted #ff4500;
+    text-decoration: none;
+}
+
+/*.idlParam*/
+.idlParamType {
+    color:  #005a9c;
+}
+.idlParamName {
+    font-style: italic;
+}
+
+.extAttr {
+    color:  #666;
+}
+
+/*.idlConst*/
+.idlConstType {
+    color:  #005a9c;
+}
+.idlConstName {
+    color:  #ff4500;
+}
+.idlConstName a {
+    color:  #ff4500;
+    border-bottom:  1px dotted #ff4500;
+    text-decoration: none;
+}
+
+/*.idlException*/
+.idlExceptionID {
+    font-weight:    bold;
+    color:  #c00;
+}
+
+.idlTypedefID, .idlTypedefType {
+    color:  #005a9c;
+}
+
+.idlRaises, .idlRaises a.idlType, .idlRaises a.idlType code, .excName a, .excName a code {
+    color:  #c00;
+    font-weight:    normal;
+}
+
+.excName a {
+    font-family:    monospace;
+}
+
+.idlRaises a.idlType, .excName a.idlType {
+    border-bottom:  1px dotted #c00;
+}
+
+.excGetSetTrue, .excGetSetFalse, .prmNullTrue, .prmNullFalse, .prmOptTrue, .prmOptFalse {
+    width:  45px;
+    text-align: center;
+}
+.excGetSetTrue, .prmNullTrue, .prmOptTrue { color:  #0c0; }
+.excGetSetFalse, .prmNullFalse, .prmOptFalse { color:  #c00; }
+
+.idlImplements a {
+    font-weight:    bold;
+}
+
+dl.attributes, dl.methods, dl.constants, dl.fields, dl.dictionary-members {
+    margin-left:    2em;
+}
+
+.attributes dt, .methods dt, .constants dt, .fields dt, .dictionary-members dt {
+    font-weight:    normal;
+}
+
+.attributes dt code, .methods dt code, .constants dt code, .fields dt code, .dictionary-members dt code {
+    font-weight:    bold;
+    color:  #000;
+    font-family:    monospace;
+}
+
+.attributes dt code, .fields dt code, .dictionary-members dt code {
+    background:  #ffffd2;
+}
+
+.attributes dt .idlAttrType code, .fields dt .idlFieldType code, .dictionary-members dt .idlMemberType code {
+    color:  #005a9c;
+    background:  transparent;
+    font-family:    inherit;
+    font-weight:    normal;
+    font-style: italic;
+}
+
+.methods dt code {
+    background:  #d9e6f8;
+}
+
+.constants dt code {
+    background:  #ddffd2;
+}
+
+.attributes dd, .methods dd, .constants dd, .fields dd, .dictionary-members dd {
+    margin-bottom:  1em;
+}
+
+table.parameters, table.exceptions {
+    border-spacing: 0;
+    border-collapse:    collapse;
+    margin: 0.5em 0;
+    width:  100%;
+}
+table.parameters { border-bottom:  1px solid #90b8de; }
+table.exceptions { border-bottom:  1px solid #deb890; }
+
+.parameters th, .exceptions th {
+    color:  #fff;
+    padding:    3px 5px;
+    text-align: left;
+    font-family:    initial;
+    font-weight:    normal;
+    text-shadow:    #666 1px 1px 0;
+}
+.parameters th { background: #90b8de; }
+.exceptions th { background: #deb890; }
+
+.parameters td, .exceptions td {
+    padding:    3px 10px;
+    border-top: 1px solid #ddd;
+    vertical-align: top;
+}
+
+.parameters tr:first-child td, .exceptions tr:first-child td {
+    border-top: none;
+}
+
+.parameters td.prmName, .exceptions td.excName, .exceptions td.excCodeName {
+    width:  100px;
+}
+
+.parameters td.prmType {
+    width:  120px;
+}
+
+table.exceptions table {
+    border-spacing: 0;
+    border-collapse:    collapse;
+    width:  100%;
+}
+
+/* --- TOC --- */
+.toc a {
+    text-decoration:    none;
+}
+
+a .secno {
+    color:  #000;
+}
+
+/* --- TABLE --- */
+table.simple {
+    border-spacing: 0;
+    border-collapse:    collapse;
+    border-bottom:  3px solid #005a9c;
+}
+
+.simple th {
+    background: #005a9c;
+    color:  #fff;
+    padding:    3px 5px;
+    text-align: left;
+}
+
+.simple th[scope="row"] {
+    background: inherit;
+    color:  inherit;
+    border-top: 1px solid #ddd;
+}
+
+.simple td {
+    padding:    3px 10px;
+    border-top: 1px solid #ddd;
+}
+
+.simple tr:nth-child(even) {
+    background: #f0f6ff;
+}
+
+/* --- DL --- */
+.section dd > p:first-child {
+    margin-top: 0;
+}
+
+.section dd > p:last-child {
+    margin-bottom: 0;
+}
+
+.section dd {
+    margin-bottom:  1em;
+}
+
+.section dl.attrs dd, .section dl.eldef dd {
+    margin-bottom:  0;
+}
+
+/* --- EXAMPLES --- */
+pre.example {
+    border-top: 1px solid #ff4500;
+    border-bottom: 1px solid #ff4500;
+    padding:    1em;
+    margin-top: 1em;
+}
+
+pre.example::before {
+    content:    "Example";
+    display:    block;
+    width:      150px;
+    background: #ff4500;
+    color:  #fff;
+    font-family:    initial;
+    padding:    3px;
+    font-weight:    bold;
+    margin: -1em 0 1em -1em;
+}
+
+/* --- EDITORIAL NOTES --- */
+.issue {
+    padding:    1em;
+    margin: 1em 0em 0em;
+    border: 1px solid #f00;
+    background: #ffc;
+}
+
+.issue::before {
+    content:    "Issue";
+    display:    block;
+    width:  150px;
+    margin: -1.5em 0 0.5em 0;
+    font-weight:    bold;
+    border: 1px solid #f00;
+    background: #fff;
+    padding:    3px 1em;
+}
+
+.note {
+    margin: 1em 0em 0em;
+    padding:    1em;
+    border: 2px solid #cff6d9;
+    background: #e2fff0;
+}
+
+.note::before {
+    content:    "Note";
+    display:    block;
+    width:  150px;
+    margin: -1.5em 0 0.5em 0;
+    font-weight:    bold;
+    border: 1px solid #cff6d9;
+    background: #fff;
+    padding:    3px 1em;
+}
+
+/* --- Best Practices --- */
+div.practice {
+    border: solid #bebebe 1px;
+    margin: 2em 1em 1em 2em;
+}
+
+span.practicelab {
+    margin: 1.5em 0.5em 1em 1em;
+    font-weight: bold;
+    font-style: italic;
+}
+
+span.practicelab   { background: #dfffff; }
+
+span.practicelab {
+    position: relative;
+    padding: 0 0.5em;
+    top: -1.5em;
+}
+
+p.practicedesc {
+    margin: 1.5em 0.5em 1em 1em;
+}
+
[email protected] screen {
+    p.practicedesc {
+        position: relative;
+        top: -2em;
+        padding: 0;
+        margin: 1.5em 0.5em -1em 1em;
+    }
+}
+
+/* --- SYNTAX HIGHLIGHTING --- */
+pre.sh_sourceCode {
+  background-color: white;
+  color: black;
+  font-style: normal;
+  font-weight: normal;
+}
+
+pre.sh_sourceCode .sh_keyword { color: #005a9c; font-weight: bold; }           /* language keywords */
+pre.sh_sourceCode .sh_type { color: #666; }                            /* basic types */
+pre.sh_sourceCode .sh_usertype { color: teal; }                             /* user defined types */
+pre.sh_sourceCode .sh_string { color: red; font-family: monospace; }        /* strings and chars */
+pre.sh_sourceCode .sh_regexp { color: orange; font-family: monospace; }     /* regular expressions */
+pre.sh_sourceCode .sh_specialchar { color: 	#ffc0cb; font-family: monospace; }  /* e.g., \n, \t, \\ */
+pre.sh_sourceCode .sh_comment { color: #A52A2A; font-style: italic; }         /* comments */
+pre.sh_sourceCode .sh_number { color: purple; }                             /* literal numbers */
+pre.sh_sourceCode .sh_preproc { color: #00008B; font-weight: bold; }       /* e.g., #include, import */
+pre.sh_sourceCode .sh_symbol { color: blue; }                            /* e.g., *, + */
+pre.sh_sourceCode .sh_function { color: black; font-weight: bold; }         /* function calls and declarations */
+pre.sh_sourceCode .sh_cbracket { color: red; }                              /* block brackets (e.g., {, }) */
+pre.sh_sourceCode .sh_todo { font-weight: bold; background-color: #00FFFF; }   /* TODO and FIXME */
+
+/* Predefined variables and functions (for instance glsl) */
+pre.sh_sourceCode .sh_predef_var { color: #00008B; }
+pre.sh_sourceCode .sh_predef_func { color: #00008B; font-weight: bold; }
+
+/* for OOP */
+pre.sh_sourceCode .sh_classname { color: teal; }
+
+/* line numbers (not yet implemented) */
+pre.sh_sourceCode .sh_linenum { display: none; }
+
+/* Internet related */
+pre.sh_sourceCode .sh_url { color: blue; text-decoration: underline; font-family: monospace; }
+
+/* for ChangeLog and Log files */
+pre.sh_sourceCode .sh_date { color: blue; font-weight: bold; }
+pre.sh_sourceCode .sh_time, pre.sh_sourceCode .sh_file { color: #00008B; font-weight: bold; }
+pre.sh_sourceCode .sh_ip, pre.sh_sourceCode .sh_name { color: #006400; }
+
+/* for Prolog, Perl... */
+pre.sh_sourceCode .sh_variable { color: #006400; }
+
+/* for LaTeX */
+pre.sh_sourceCode .sh_italics { color: #006400; font-style: italic; }
+pre.sh_sourceCode .sh_bold { color: #006400; font-weight: bold; }
+pre.sh_sourceCode .sh_underline { color: #006400; text-decoration: underline; }
+pre.sh_sourceCode .sh_fixed { color: green; font-family: monospace; }
+pre.sh_sourceCode .sh_argument { color: #006400; }
+pre.sh_sourceCode .sh_optionalargument { color: purple; }
+pre.sh_sourceCode .sh_math { color: orange; }
+pre.sh_sourceCode .sh_bibtex { color: blue; }
+
+/* for diffs */
+pre.sh_sourceCode .sh_oldfile { color: orange; }
+pre.sh_sourceCode .sh_newfile { color: #006400; }
+pre.sh_sourceCode .sh_difflines { color: blue; }
+
+/* for css */
+pre.sh_sourceCode .sh_selector { color: purple; }
+pre.sh_sourceCode .sh_property { color: blue; }
+pre.sh_sourceCode .sh_value { color: #006400; font-style: italic; }
+
+/* other */
+pre.sh_sourceCode .sh_section { color: black; font-weight: bold; }
+pre.sh_sourceCode .sh_paren { color: red; }
+pre.sh_sourceCode .sh_attribute { color: #006400; }
+
+</style><link href="./extra.css" rel="stylesheet" type="text/css" charset="utf-8"><link href="http://www.w3.org/StyleSheets/TR/W3C-ED" rel="stylesheet" type="text/css" charset="utf-8"></head> 
+  <body style="display: inherit; "><div class="head"><p><a href="http://www.w3.org/"><img width="72" height="48" src="http://www.w3.org/Icons/w3c_home" alt="W3C"></a></p><h1 class="title" id="title">PROV-DM: The PROV Data Model</h1><h2 id="subtitle"><span class="delete">WD5 for</span><span class="insert">WD5, being updated following</span> internal review</h2><h2 id="w3c-editor-s-draft-17-april-2012"><acronym title="World Wide Web Consortium">W3C</acronym> Editor's Draft <span class="delete">02</span><span class="insert">17</span> April 2012</h2><dl><dt>This version:</dt><dd><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-dm.html">http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-dm.html</a></dd><dt>Latest published version:</dt><dd><a href="http://www.w3.org/TR/prov-dm/">http://www.w3.org/TR/prov-dm/</a></dd><dt>Latest editor's draft:</dt><dd><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-dm.html">http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-dm.html</a></dd><dt>Previous version:</dt><dd><a href="http://www.w3.org/TR/2012/WD-prov-dm-20120202/">http://www.w3.org/TR/2012/WD-prov-dm-20120202/</a></dd><dt>Editors:</dt><dd><a href="http://www.ecs.soton.ac.uk/~lavm/">Luc Moreau</a>, University of Southampton</dd>
+<dd><a href="http://www.cs.ncl.ac.uk/people/Paolo.Missier">Paolo Missier</a>, Newcastle University</dd>
+<dt><span class="delete">Contributors:</span><span class="insert">Authors:</span></dt><dd><a href="http://semanticweb.org/wiki/Khalid_Belhajjame">Khalid Belhajjame</a>, University of Manchester</dd>
+<dd><span><span class="insert">Reza B'Far</span></span><span class="insert">, Oracle Corporation</span></dd>
+<dd><span>Stephen Cresswell</span>, legislation.gov.uk</dd>
+<dd><a href="http://www.isi.edu/~gil/">Yolanda Gil</a>, Invited Expert</dd>
+<dd><span class="delete">Reza B'Far</span><span class="delete">, Oracle Corporation</span>
+<a href="http://www.few.vu.nl/~pgroth/">Paul Groth</a>, VU University of Amsterdam</dd>
+<dd><span>Graham Klyne</span>, University of Oxford</dd>
+<dd><a href="http://tw.rpi.edu/web/person/JamesMcCusker">Jim McCusker</a>, Rensselaer Polytechnic Institute</dd>
+<dd><a href="http://www.inf.kcl.ac.uk/staff/simonm/">Simon Miles</a>, Invited Expert</dd>
+<dd><a href="http://www.rpi.edu/research/ccni/">James Myers</a>, Rensselaer Polytechnic Institute</dd>
+<dd><a href="http://cci.case.edu/cci/index.php/Satya_Sahoo">Satya Sahoo</a>, Case Western Reserve University</dd>
+<dd><span><span class="insert">Curt Tilmes</span></span><span class="insert">, National Aeronautics and Space Administration</span></dd>
+</dl><p class="copyright"><a href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> © 2012 <a href="http://www.w3.org/"><acronym title="World Wide Web Consortium">W3C</acronym></a><sup>®</sup> (<a href="http://www.csail.mit.edu/"><acronym title="Massachusetts Institute of Technology">MIT</acronym></a>, <a href="http://www.ercim.eu/"><acronym title="European Research Consortium for Informatics and Mathematics">ERCIM</acronym></a>, <a href="http://www.keio.ac.jp/">Keio</a>), All Rights Reserved. <acronym title="World Wide Web Consortium">W3C</acronym> <a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>, <a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a> and <a href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a> rules apply.</p><hr></div> 
+
+    <div id="abstract" class="introductory section"><h2>Abstract</h2>
+<p>
+PROV-DM, the PROV data model, is a data model for provenance that describes
+the entities, people and activities involved in
+producing a piece of data or thing. 
+PROV-DM is structured in six components, dealing with: 
+(1) entities and activities, and the time at which they were created, used, or ended;
+(2) agents bearing responsibility for entities that were generated and <span class="delete">actities</span><span class="insert">activities</span> that happened;
+(3) derivations <span class="delete">between</span><span class="insert">of entities from</span> entities;
+(4) properties to link entities that refer to a same thing;
+(5) collections <span class="delete">of entities, whose provenance can itself be tracked;</span><span class="insert">forming a logical structure for its members;</span>
+(6) a simple annotation mechanism.
+</p>
+
+<p>This document introduces the provenance concepts <span class="delete">underpinning
+</span><span class="insert">found in
+PROV and defines </span>PROV-DM <span class="delete">in natural language,</span><span class="insert">types</span> and<span class="delete"> systematically defines PROV-DM types and</span>
+relations. PROV data model is domain-agnostic, but is equipped with
+extensibility points <span class="delete">allow</span><span class="insert">allowing</span> domain-specific information to be included. </p>
+
+<p>Two further documents complete the specification of PROV-DM.
+First, a companion document specifies the set of constraints that
+<span class="delete">well-structured </span>provenance descriptions should <span class="delete">follow; these provide
+an interpretation for provenance descriptions.</span><span class="insert">follow.</span>  Second,<span class="delete"> to
+be able to provide</span><span class="insert"> 
+a separate document describes a provenance notation for expressing 
+instances of provenance for human consumption; this notation is used in</span> examples <span class="delete">of provenance, a notation is used for
+expressing instances of PROV-DM for human consumption; the syntactic
+details of </span><span class="insert">in
+</span>this<span class="delete"> notation are also kept in a separate</span> document. </p>
+
+    </div><div id="sotd" class="introductory section"><h2>Status of This Document</h2><p><em>This section describes the status of this document at the time of its publication. Other documents may supersede this document. A list of current <acronym title="World Wide Web Consortium">W3C</acronym> publications and the latest revision of this technical report can be found in the <a href="http://www.w3.org/TR/"><acronym title="World Wide Web Consortium">W3C</acronym> technical reports index</a> at http://www.w3.org/TR/.</em></p>
+<h4 id="prov-family-of-specifications">PROV Family of Specifications</h4>
+This document is part of the PROV family of specifications, a set of specifications <span class="delete">aiming to define the</span><span class="insert">defining</span> various aspects that are necessary to achieve the vision of inter-operable
+interchange of provenance information in heterogeneous environments such as the Web.  The specifications <span class="delete">are as follows.</span><span class="insert">are:</span>
+<ul>
+<li> PROV-DM, the PROV data model for provenance (this <span class="delete">document),</span><span class="insert">document);</span></li>
+<li> PROV-DM-CONSTRAINTS, a set of constraints applying to the PROV data <span class="delete">model,</span><span class="insert">model;</span></li>
+<li> PROV-N, a notation for provenance aimed at human <span class="delete">consumption,</span><span class="insert">consumption;</span></li>
+<li> PROV-O, the PROV ontology, an OWL-RL ontology allowing the mapping of PROV to RDF;</li>
+<li> PROV-AQ, the mechanisms for accessing and querying provenance; </li>
+<li> PROV-PRIMER, a primer for the PROV data <span class="delete">model,</span><span class="insert">model;</span></li>
+<li> PROV-SEM, a formal semantics<span class="insert"> for the PROV data model;</span></li>
+<li><span class="insert"> PROV-XML, an XML schema</span> for the PROV data model.</li>
+</ul>
+<h4 id="how-to-read-the-prov-family-of-specifications"><span class="insert">How to read the PROV Family of Specifications</span></h4>
+<ul>
+<li><span class="delete"> PROV-XML,</span><span class="insert">The primer is the entry point to PROV offering</span> an <span class="delete">XML schema for the PROV data</span><span class="insert">introduction to the provenance</span> model.</li>
+
+<span class="delete">How to read the PROV Family of Specifications</span>
+
+<li>The <span class="delete">primer is the entry point</span><span class="insert">Linked Data and Semantic Web community should focus on PROV-O defining PROV classes and properties specified in an OWL-RL ontology. For further details, PROV-DM and PROV-DM-CONSTRAINTS specify the constraints applicable</span> to <span class="delete">PROV offering a pedagogical presentation of the provenance model.</span><span class="insert">the data model, and its interpretation. PROV-SEM provides a mathematical semantics.</span></li>
+<li>The <span class="delete">Linked Data and Semantic Web community should focus on PROV-O defining PROV classes and properties specified in an OWL-RL ontology. For further details, PROV-DM and PROV-DM-CONSTRAINTS specify the constraints applicable to the data model, and its interpretation. PROV-SEM provides a mathematical semantics.</span>
+<span class="delete">The </span>XML community should focus on PROV-XML defining an XML schema for PROV-DM. Further details can also be found in PROV-DM, PROV-DM-CONSTRAINTS, and PROV-SEM.</li>
+<li>Developers seeking to retrieve or publish provenance should focus <span class="delete">of</span><span class="insert">on</span> PROV-AQ.</li>
+<li>Readers seeking to implement other PROV serializations
+should focus on PROV-DM and PROV-DM-CONSTRAINTS.  PROV-O, PROV-N, PROV-XML offer examples of mapping to RDF, text, and XML, respectively.</li>
+</ul>
+
+
+<h4 id="fourth-public-working-draft">Fourth Public Working Draft</h4>
+<p>This is the fourth public release of the PROV-DM document. Following feedback, the Working Group has decided to reorganize this document substantially, separating the data <span class="delete">model,</span><span class="insert">model</span> from its <span class="delete">contraints,</span><span class="insert">contraints</span> and the notation used to illustrate it. The PROV-DM release is synchronized with the release of the PROV-O, PROV-PRIMER, PROV-N, <span class="insert">and </span>PROV-DM-CONSTRAINTS documents. We are now <span class="delete">making clear what</span><span class="insert">clarifying</span> the entry path to the PROV family of <span class="delete">specifications is.</span><span class="insert">specifications.</span></p>
+<p>This document was published by the <a href="http://www.w3.org/2011/prov/">Provenance Working Group</a> as an Editor's Draft. If you wish to make comments regarding this document, please send them to <a href="mailto:[email protected]">[email protected]</a> (<a href="mailto:[email protected]?subject=subscribe">subscribe</a>, <a href="http://lists.w3.org/Archives/Public/public-prov-wg/">archives</a>). All feedback is welcome.</p><p>Publication as an Editor's Draft does not imply endorsement by the <acronym title="World Wide Web Consortium">W3C</acronym> Membership. This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress.</p><p>This document was produced by a group operating under the <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/">5 February 2004 <acronym title="World Wide Web Consortium">W3C</acronym> Patent Policy</a>. <acronym title="World Wide Web Consortium">W3C</acronym> maintains a <a href="http://www.w3.org/2004/01/pp-impl/46974/status" rel="disclosure">public list of any patent disclosures</a> made in connection with the deliverables of the group; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/#def-essential">Essential Claim(s)</a> must disclose the information in accordance with <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/#sec-Disclosure">section 6 of the <acronym title="World Wide Web Consortium">W3C</acronym> Patent Policy</a>.</p></div><div id="toc" class="section"><h2 class="introductory">Table of Contents</h2><ul class="toc"><li class="tocline"><a href="#introduction" class="tocxref"><span class="secno">1. </span>Introduction<br>
+</a><ul class="toc"><li class="tocline"><a href="#structure-of-this-document" class="tocxref"><span class="secno">1.1 </span>Structure of this Document</a></li><li class="tocline"><a href="#conventions" class="tocxref"><span class="secno">1.2 </span><span class="delete">PROV Namespace</span><span class="delete">1.3 </span><span class="insert">Notational </span>Conventions</a></li></ul></li><li class="tocline"><a href="#starting-points" class="tocxref"><span class="secno">2. </span><span class="delete">PROV-DM</span><span class="insert">PROV</span> Starting Points</a><ul class="toc"><li class="tocline"><a href="#section-entity-activity" class="tocxref"><span class="secno">2.1 </span>Entity and Activity</a></li><li class="tocline"><a href="#section-generation-usage-derivation" class="tocxref"><span class="secno">2.2 </span>Generation, Usage, Derivation</a></li><li class="tocline"><a href="#section-agents-attribution-association-responsibility" class="tocxref"><span class="secno"><span class="insert">2.3 </span></span><span class="insert">Agents, Attribution, Association, and Responsibility</span></a></li><li class="tocline"><a href="#section-types-entities-agents" class="tocxref"><span class="secno"><span class="delete">2.3 </span><span class="delete">Agents</span><span class="insert">2.4 </span></span><span class="insert">Further Entities: Collections</span> and <span class="delete">Other Types of Entities</span><span class="delete">2.4 </span><span class="delete">Attribution, Association, and Responsibility</span><span class="insert">Accounts</span></a></li><li class="tocline"><a href="#section-UML" class="tocxref"><span class="secno">2.5 </span>Simplified Overview Diagram</a></li><li class="tocline"><a href="#prov-n" class="tocxref"><span class="secno">2.6 </span>PROV-N: The Provenance Notation</a></li></ul></li><li class="tocline"><a href="#prov-dm-example" class="tocxref"><span class="secno">3. </span>Illustration of PROV-DM by an Example</a><ul class="toc"><li class="tocline"><a href="#section-example-one" class="tocxref"><span class="secno">3.1 </span>The <span class="delete">Process</span><span class="insert">Authors</span> View</a></li><li class="tocline"><a href="#section-example-two" class="tocxref"><span class="secno">3.2 </span>The <span class="delete">Authors</span><span class="insert">Process</span> View</a></li><li class="tocline"><a href="#section-example-c" class="tocxref"><span class="secno">3.3 </span>Attribution of Provenance</a></li></ul></li><li class="tocline"><a href="#data-model-components" class="tocxref"><span class="secno">4. </span>PROV-DM Types and Relations</a><ul class="toc"><li class="tocline"><a href="#component1" class="tocxref"><span class="secno">4.1 </span>Component 1: Entities and Activities</a><ul class="toc"><li class="tocline"><a href="#term-Entity" class="tocxref"><span class="secno">4.1.1 </span>Entity</a></li><li class="tocline"><a href="#term-Activity" class="tocxref"><span class="secno">4.1.2 </span>Activity</a></li><li class="tocline"><a href="#term-Generation" class="tocxref"><span class="secno">4.1.3 </span>Generation</a></li><li class="tocline"><a href="#term-Usage" class="tocxref"><span class="secno">4.1.4 </span>Usage</a></li><li class="tocline"><a href="#term-Start" class="tocxref"><span class="secno">4.1.5 </span>Start</a></li><li class="tocline"><a href="#term-End" class="tocxref"><span class="secno">4.1.6 </span>End</a></li><li class="tocline"><a href="#term-wasInformedBy" class="tocxref"><span class="secno">4.1.7 </span>Communication</a></li><li class="tocline"><a href="#term-wasStartedByActivity" class="tocxref"><span class="secno">4.1.8 </span>Start by Activity</a></li></ul></li><li class="tocline"><a href="#component2" class="tocxref"><span class="secno">4.2 </span>Component 2: Agents and Responsibility</a><ul class="toc"><li class="tocline"><a href="#term-Agent" class="tocxref"><span class="secno">4.2.1 </span>Agent</a></li><li class="tocline"><a href="#term-attribution" class="tocxref"><span class="secno">4.2.2 </span>Attribution</a></li><li class="tocline"><a href="#term-ActivityAssociation" class="tocxref"><span class="secno">4.2.3 </span>Association</a></li><li class="tocline"><a href="#term-responsibility" class="tocxref"><span class="secno">4.2.4 </span>Responsibility</a></li></ul></li><li class="tocline"><a href="#component3" class="tocxref"><span class="secno">4.3 </span>Component 3: Derivations</a><ul class="toc"><li class="tocline"><a href="#Derivation-Relation" class="tocxref"><span class="secno">4.3.1 </span>Derivation</a></li><li class="tocline"><a href="#term-Revision" class="tocxref"><span class="secno">4.3.2 </span>Revision</a></li><li class="tocline"><a href="#term-quotation" class="tocxref"><span class="secno">4.3.3 </span>Quotation</a></li><li class="tocline"><a href="#term-original-source" class="tocxref"><span class="secno">4.3.4 </span>Original Source</a></li><li class="tocline"><a href="#term-traceability" class="tocxref"><span class="secno">4.3.5 </span>Traceability</a></li></ul></li><li class="tocline"><a href="#component4" class="tocxref"><span class="secno">4.4 </span>Component 4: Alternate Entities</a><ul class="toc"><li class="tocline"><a href="#term-specialization" class="tocxref"><span class="secno">4.4.1 </span>Specialization</a></li><li class="tocline"><a href="#term-alternate" class="tocxref"><span class="secno">4.4.2 </span>Alternate</a></li></ul></li><li class="tocline"><a href="#component5" class="tocxref"><span class="secno">4.5 </span>Component 5: Collections</a><ul class="toc"><li class="tocline"><a href="#term-collection" class="tocxref"><span class="secno">4.5.1 </span>Collection</a></li><li class="tocline"><a href="#term-collection-insertion" class="tocxref"><span class="secno">4.5.2 </span>Insertion</a></li><li class="tocline"><a href="#term-collection-removal" class="tocxref"><span class="secno">4.5.3 </span>Removal</a></li><li class="tocline"><a href="#term-collection-membership" class="tocxref"><span class="secno">4.5.4 </span>Membership</a></li></ul></li><li class="tocline"><a href="#component6" class="tocxref"><span class="secno">4.6 </span>Component 6: Annotations</a><ul class="toc"><li class="tocline"><a href="#term-note" class="tocxref"><span class="secno">4.6.1 </span>Note</a></li><li class="tocline"><a href="#term-annotation" class="tocxref"><span class="secno">4.6.2 </span>Annotation</a></li></ul></li><li class="tocline"><a href="#second-class-elements" class="tocxref"><span class="secno">4.7 </span>Further Elements of PROV-DM</a><ul class="toc"><li class="tocline"><a href="#term-NamespaceDeclaration" class="tocxref"><span class="secno">4.7.1 </span>Namespace Declaration</a></li><li class="tocline"><a href="#term-qualified-name" class="tocxref"><span class="secno">4.7.2 </span>Qualified Name</a></li><li class="tocline"><a href="#term-identifier" class="tocxref"><span class="secno">4.7.3 </span>Identifier</a></li><li class="tocline"><a href="#term-attribute" class="tocxref"><span class="secno">4.7.4 </span>Attribute</a><ul class="toc"><li class="tocline"><a href="#term-attribute-label" class="tocxref"><span class="secno">4.7.4.1 </span>prov:label</a></li><li class="tocline"><a href="#term-attribute-location" class="tocxref"><span class="secno">4.7.4.2 </span>prov:location</a></li><li class="tocline"><a href="#term-attribute-role" class="tocxref"><span class="secno">4.7.4.3 </span>prov:role</a></li><li class="tocline"><a href="#term-attribute-type" class="tocxref"><span class="secno">4.7.4.4 </span>prov:type</a></li><li class="tocline"><a href="#term-attribute-value" class="tocxref"><span class="secno"><span class="insert">4.7.4.5 </span></span><span class="insert">prov:value</span></a></li></ul></li><li class="tocline"><a href="#term-value" class="tocxref"><span class="secno">4.7.5 </span>Value</a></li></ul></li></ul></li><li class="tocline"><a href="#extensibility-section" class="tocxref"><span class="secno">5. </span>PROV-DM Extensibility Points</a></li><li class="tocline"><a href="#valid-provenance" class="tocxref"><span class="secno">6. </span><span class="delete">Towards a Refinement of the PROV Data Model</span><span class="insert">Creating Valid Provenance</span></a></li><li class="tocline"><a href="#acknowledgements" class="tocxref"><span class="secno">A. </span>Acknowledgements</a></li><li class="tocline"><a href="#references" class="tocxref"><span class="secno">B. </span>References</a><ul class="toc"><li class="tocline"><a href="#normative-references" class="tocxref"><span class="secno">B.1 </span>Normative references</a></li><li class="tocline"><a href="#informative-references" class="tocxref"><span class="secno">B.2 </span>Informative references</a></li></ul></li></ul></div> 
+
+
+
+
+
+
+
+
+
+
+
+
+    <div id="introduction" class="section"> 
+      <h2><span class="secno">1. </span>Introduction<br>
+</h2> 
+
+<p> 
+For the purpose of this specification, <dfn id="dfn-provenance">provenance</dfn> 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.
+In particular, the provenance of information is crucial in deciding
+whether information is to be trusted, how it should be integrated with
+other diverse information sources, and how to give credit to its
+originators when reusing it.  In an open and inclusive environment
+such as the Web, where users find information that is often contradictory or
+questionable, provenance can help those users to make trust judgements.
+</p>
+
+
+<p>
+<span class="delete">The idea that a single way of representing and collecting provenance could be adopted internally by all systems does not seem to be realistic today. Instead, a pragmatic approach is to</span><span class="insert">We</span>
+consider a core data model for provenance that allows  domain and application specific representations of provenance to be translated into such a data model and<span class="delete"> exchanged</span>  <em><span class="insert">interchanged</span></em> between systems.
+<span class="delete">Heterogeneous</span><span class="insert">Thus, heterogeneous</span> systems can <span class="delete">then </span>export their<span class="insert"> native</span> provenance into such a core data model, and applications that need to make sense of provenance in heterogeneous systems can then import it,
+process it, and reason over it.</p>
+
+<p><span class="delete">Thus, the vision is that different provenance-aware systems natively adopt their own model for representing their provenance, but a core provenance data model can be readily adopted as a
+provenance </span><span class="delete">interchange</span><span class="delete"> model across such systems.</span>
+
+A set of specifications, referred to as the PROV family of specifications, define the various aspects
+that are necessary to achieve this vision in an interoperable
+way:</p>
+<ul>
+<li>A data model for provenance, which is presented in three documents:
+<ul>
+<li> PROV-DM (part I): the provenance data <span class="delete">model itself, expressed in natural language</span><span class="insert">model, informally described</span> (this document);
+</li><li> PROV-DM-CONSTRAINTS (part II): constraints underpinning the data model [<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-DM-CONSTRAINTS">PROV-DM-CONSTRAINTS</a></cite>];
+</li><li> PROV-N (part III): a notation to express instances of that data model for human consumption [<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-N">PROV-N</a></cite>];
+</li></ul> 
+</li>
+<li>PROV-O: the PROV ontology, an OWL-RL ontology allowing the mapping of PROV to RDF [<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-O">PROV-O</a></cite>];</li>
+<li>PROV-AQ: the mechanisms for accessing and querying provenance [<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-AQ">PROV-AQ</a></cite>];</li>
+<li>PROV-PRIMER: a primer for the PROV approach [<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-PRIMER">PROV-PRIMER</a></cite>];</li>
+<li>PROV-SEM: semantics of the PROV-DM data model [<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-SEM">PROV-SEM</a></cite>];</li>
+<li>PROV-XML: an XML schema for the PROV data model.</li>
+</ul>
+
+
+<p><span class="delete">
+  PROV-DM</span><span class="insert">
+The  PROV data model</span> is a domain-agnostic model, but with clear extensibility points allowing further domain-specific and
+application-specific extensions to be defined.
+The PROV data model is structured according to six components covering various aspects of provenance:</p>
+<ul>
+<li> component 1: entities and activities, and the time at which they were created, used, or ended;
+</li><li> component 2: agents bearing responsibility for entities that were generated and <span class="delete">actities</span><span class="insert">activities</span> that happened;
+</li><li> component 3: derivations <span class="delete">between entities;</span><span class="insert">of entities from others;</span>
+</li><li> component 4: properties to link entities that refer to a same thing;
+</li><li> component 5: collections of entities, whose provenance can itself be tracked;
+</li><li> component 6: a simple annotation mechanism.
+</li></ul>
+
+
+<p>This specification <span class="delete">intentionally </span>presents the key concepts of the PROV Data Model, <span class="insert">and
+provenance types and relations, </span>without <span class="delete">drilling down into all its subtleties.  Using these key concepts,</span><span class="insert">specific concern for how they are applied.
+With these,</span> it becomes possible to write useful provenance <span class="delete">descriptions very quickly,</span><span class="insert">descriptions,</span> and publish or embed them along side the data they relate to. </p>
+
+<p>However, if <span class="insert">something about which provenance is expressed is subject to change, then it is challenging to express its provenance precisely (e.g. the </span>data <span class="delete">changes, then it</span><span class="insert">from which a daily weather report</span> is <span class="delete">challenging</span><span class="insert">derived  changes from day</span> to <span class="delete">express its provenance precisely, like it would be for any other form of metadata. </span><span class="insert">day).
+ </span>To address this challenge, a <em>refinement</em> is proposed to enrich simple provenance, with <span class="delete">extra-descriptions</span><span class="insert">extra descriptions</span> that  help qualify the specific subject of provenance and provenance itself, with attributes and temporal <span class="delete">interval,</span><span class="insert">information,</span> intended to satisfy a comprehensive set of constraints.  These aspects are covered in the companion specification [<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-DM-CONSTRAINTS">PROV-DM-CONSTRAINTS</a></cite>].
+</p>
+
+
+    
+
+
+<div id="structure-of-this-document" class="section"> 
+<h3><span class="secno">1.1 </span>Structure of this Document</h3>
+
+<p><a href="#starting-points">Section 2</a> provides  starting points for the PROV Data Model, listing a set of types and  relations, which <span class="delete">are </span>allows users to make initial provenance descriptions.</p>
+
+<p><a href="#prov-dm-example">Section 3</a> illustrates how <span class="delete">PROV-DM</span><span class="insert">the PROV data model</span> can be used
+to express the provenance of a report published on the Web.</p>
+
+<p><a href="#data-model-components">Section 4</a> provides the <span class="delete">definition of PROV-DM</span><span class="insert">definitions of PROV</span> concepts, structured according to six components.</p>
+
+<p><a href="#extensibility-section">Section 5</a> summarizes PROV-DM extensibility points.</p>
+
+<p><a href="#valid-provenance">Section 6</a> introduces the idea that constraints can be applied to the PROV data model to refine provenance descriptions; these are covered in the companion specification [<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-DM-CONSTRAINTS">PROV-DM-CONSTRAINTS</a></cite>].</p>
+
+
+    
+
+
+</div> 
+
+
+ <span class="delete">1.2 </span><span class="delete">PROV Namespace</span>
+
+
+<span class="delete">The PROV namespace is </span><span class="delete">http://www.w3.org/ns/prov#</span><span class="delete">.</span>
+
+<span class="delete"> All the concepts, reserved names and attributes introduced in this specification belong to the PROV namespace.</span>
+
+
+
+
+    <div id="conventions" class="section"> 
+<h3><span class="secno"><span class="delete">1.3 </span><span class="insert">1.2 </span></span><span class="insert">Notational </span>Conventions</h3>
+
+
+
+<p>The key words "<em class="rfc2119" title="must">must</em>", "<em class="rfc2119" title="must not">must not</em>", "<em class="rfc2119" title="required">required</em>", "<em class="rfc2119" title="shall">shall</em>", "<em class="rfc2119" title="shall
+      not">shall
+      not</em>", "<em class="rfc2119" title="should">should</em>", "<em class="rfc2119" title="should not">should not</em>", "<em class="rfc2119" title="recommended">recommended</em>",  "<em class="rfc2119" title="may">may</em>", and
+      "<em class="rfc2119" title="optional">optional</em>" in this document are to be interpreted as described in
+      [<cite><a class="bibref" rel="biblioentry" href="#bib-RFC2119">RFC2119</a></cite>].</p>
+    
+
+
+<p><span class="insert">
+The following namespaces prefixes are used throughout this document.
+
+</span></p><div style="text-align: left;">
+<table border="1" style="margin-left: auto; margin-right: auto;">
+<caption id="namespace-table"><span class="insert">Table 1: Prefix and Namespaces used in this specification</span></caption>
+<tbody><tr><td><a><bf><span class="insert">prefix</span></bf></a></td><td><bf><span class="insert">namespace uri</span></bf></td> <td><bf><span class="insert">definition</span></bf></td></tr>
+<tr><td><a><span class="insert">prov</span></a></td><td><span class="insert">http://www.w3.org/ns/prov#</span></td><td><span class="insert">The PROV namespace (see Section </span><a href="#term-NamespaceDeclaration"><span class="insert">4.7.1</span></a><span class="insert">)</span></td></tr>
+<tr><td><a><span class="insert">xsd</span></a></td><td><span class="insert">http://www.w3.org/2000/10/XMLSchema#</span></td><td><span class="insert">XML Schema Namespace [</span><cite><a class="bibref" rel="biblioentry" href="#bib-XMLSCHEMA-2"><span class="insert">XMLSCHEMA-2</span></a></cite><span class="insert">]</span></td></tr>
+<tr><td><a><span class="insert">rdf</span></a></td><td><span class="insert">http://www.w3.org/1999/02/22-rdf-syntax-ns#</span></td><td><span class="insert">The RDF namespace  [</span><cite><a class="bibref" rel="biblioentry" href="#bib-RDF-CONCEPTS"><span class="insert">RDF-CONCEPTS</span></a></cite><span class="insert">]</span></td></tr>
+<tr><td><a><span class="insert">(others)</span></a></td><td><span class="insert">(various)</span></td><td><span class="insert">All other namespace prefixes are used in examples only. </span><br><span class="insert"> In particular, URIs starting with "http://example.com" represent</span><br><span class="insert"> some application-dependent URI [</span><cite><a class="bibref" rel="biblioentry" href="#bib-URI"><span class="insert">URI</span></a></cite><span class="insert">]</span></td></tr>
+</tbody></table>
+</div>
+
+</div> 
+
+</div> 
+
+
+
+<div id="starting-points" class="section"> 
+<h2><span class="secno">2. </span><span class="delete">PROV-DM</span><span class="insert">PROV</span> Starting Points</h2>
+
+<p>
+This section <span class="delete">provides an introduction to the PROV data model by
+overviewing a set of</span><span class="insert">introduces provenance</span> concepts <span class="delete">underpinning provenance</span><span class="insert">with informal</span> descriptions<span class="delete">
+that a novice reader would write in a first instance.  In Sections 2.1
+to 2.4, these concepts are described in natural language</span> and<span class="delete">
+illustrated by small </span><span class="insert"> illustrative
+</span>examples.  Since PROV-DM is a conceptual data
+model, Section 2.5 maps the concepts to various types and relations,
+which are illustrated graphically in
+a <span class="insert">simplified UML diagram in </span><a href="#prov-dm-overview"><span class="delete">simplified UML diagram</span><span class="insert">Figure 1</span></a>.  Section 2.6
+then summarizes the PROV notation allowing instances of PROV-DM to be
+written down.
+</p>
+
+
+  
+    
+
+<form action="#"><p> 
+<input id="hide-examples" onclick="set_display_by_class('div','conceptexample','none'); set_display_by_id('hide-examples','none'); set_display_by_id('show-examples','');" type="button" value="Hide Concept Examples"> 
+<input id="show-examples" onclick="set_display_by_class('div','conceptexample',''); set_display_by_id('hide-examples',''); set_display_by_id('show-examples','none');" style="display: none" type="button" value="Show Concept Examples"> 
+</p> 
+</form> 
+     
+
+
+
+  
+    <div id="section-entity-activity" class="section"> 
+<h3><span class="secno">2.1 </span>Entity and Activity</h3>
+
+
+<p>Things we want to describe  the provenance of are called <em>entities</em> in PROV. The term "things" encompasses a broad diversity of notions, including digital objects such as a file or web page, 
+physical things such as a building or a printed book, or a car as well as abstract concepts and ideas. <span class="delete">One can regard any Web resource as an example of Entity in this context. </span></p>
+
+<p>
+</p><div class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html">
+   An <span class="dfn">entity</span> is a <span class="delete">thing one    wants to provide provenance for.  For the purpose of this    specification, things can</span><span class="insert">physical, digital, conceptual, or other kind of thing; entities may</span> be <span class="delete">physical, digital, conceptual,</span><span class="insert">real</span> or<span class="delete">    otherwise; things may be real or</span> imaginary.    </div>
+
+
+
+<div class="conceptexample" id="entity-example">
+<p>An entity may be the document at URI <span class="delete">http://www.w3.org/TR/prov-dm/</span><a href="http://www.bbc.co.uk/news/science-environment-17526723"><span class="insert">http://www.bbc.co.uk/news/science-environment-17526723</span></a>, a file in a file system, a car, or an idea.</p>
+</div>
+
+
+
+<p>
+<span class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html">   An <span class="dfn">activity</span>  is something that occurs over a period of time and acts upon or with <span class="insert">entities;  it may include consuming, processing, transforming, modifying, relocating, using, generating, or being associated with </span>entities.  <span class="delete">This action can take multiple forms: consuming, processing, transforming, modifying, relocating, using, generating, or being associated with entities.  </span></span> Activities that operate on digital entities may for example move, copy, or duplicate them.
+</p>
+
+
+
+<div class="conceptexample" id="activity-example">
+<p>An activity may be the publishing of a document on the Web, sending a twitter message, extracting metadata embedded in a file, driving a car from Boston to Cambridge, assembling a data set based on a set of measurements, performing a statistical analysis over a data set, sorting news items according to some criteria, running a SPARQL query over a triple store, <span class="delete">and</span><span class="insert">or</span> editing a file.</p>
+</div>
+
+</div>
+
+    <div id="section-generation-usage-derivation" class="section"> 
+<h3><span class="secno">2.2 </span>Generation, Usage, Derivation</h3>
+
+<p>Activities and entities are associated with each other in two different ways: activities <span class="delete">are consumers of</span><span class="insert">utilize</span> entities and activities<span class="delete"> are producers of</span><span class="insert">  produce</span> entities. The act of <span class="insert">utilizing or </span>producing<span class="delete"> or consuming</span> an entity may have a duration.  
+ The term 'generation' refers to the completion of the <span class="delete">the </span>act of producing; likewise, the term 'usage' refers to the beginning of the act of <span class="delete">consuming</span><span class="insert">utilizing</span> entities. Thus, we define the following notions of generation and usage. </p>
+
+<p>
+</p><div class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html">
+   <span class="dfn">Generation</span> is the completion of production of a new entity by an activity.   This entity <span class="insert">did not exist before generation and </span>becomes available for usage after this<span class="delete"> generation. This entity did not exist before</span> generation. </div>
+
+
+<p>
+</p><div class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html">
+   <span class="dfn">Usage</span> is the beginning of <span class="delete">consumption of</span><span class="insert">utilizing</span> an entity by an activity. Before usage, the activity had not begun to <span class="delete">consume or use</span><span class="insert">utilize</span> this entity and could not have been affected by the entity. </div>
+
+
+
+
+<div class="conceptexample" id="generation-example">
+<p>Examples of generation are the completed creation of a file by a
+program, the completed creation of a linked data set, and the completed
+publication of a new version of a document.
+</p></div>
+
+
+
+<div class="conceptexample" id="usage-example">
+<p>Usage examples include a procedure beginning to consume an argument, a service starting to read a value on a port, a program beginning to read a configuration
+file, or the point at which an ingredient, such as eggs, is being added in a baking activity. Usage may entirely consume an entity (e.g. eggs are no longer available after being added to
+the mix); <span class="delete">alternatively, a</span><span class="insert">in contrast, the</span> same entity may be used multiple times, possibly by different activities (e.g. a file on a file system can be read indefinitely).
+</p></div>
+
+
+<p>Activities <span class="delete">are consumers of</span><span class="insert">utilize</span> entities and <span class="delete">producers of</span><span class="insert">producer</span> entities. In some <span class="delete">case, the consumption of</span><span class="insert">cases, utilizing</span> an entity influences the creation of another in some way. This notion is captured by derivations, defined as follows.</p>
+
+<p>
+<span class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html">   A <span class="dfn">derivation</span>  is a transformation of an entity into another, a construction of an entity into another, or an update of an entity, resulting in a new one.</span>
+
+
+
+</p><div class="conceptexample" id="derivation-example">
+<p>Examples of derivation include  the transformation of a relational table into a
+linked data set, the transformation of a canvas into a painting, the transportation of a work of art from London to New York, and a physical transformation such as the melting of ice into water.</p>
+</div>
+
+</div>
+
+<div id="section-agents-attribution-association-responsibility" class="section"> 
+<h3><span class="secno"><span class="insert">2.3 </span></span><span class="insert">Agents, Attribution, Association, and Responsibility</span></h3>
+
+<p><span class="insert">The motivation for introducing  agents in the model is to express the agent's responsibility for activities that happened and entities that were generated. </span></p>
+
+<p>
+<span class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html"><span class="insert">
+   An </span><span class="dfn"><span class="insert">agent</span></span><span class="insert"> is something that bears some form of responsibility for an activity taking place or for the existence of an entity. </span></span><span class="insert"> An agent </span><em class="rfc2119" title="may"><span class="insert">may</span></em><span class="insert"> be a particular type of entity. This means that the model can be
+ used to express provenance of the agents themselves.  
+</span></p>
+
+
+
+
+
+
+<div class="conceptexample" id="agent-example">
+<p><span class="insert">
+Software for checking the use of grammar in a document may be defined as an agent of a document preparation activity, and at the same time one can describe its provenance, including for instance the vendor and the version history. 
+A site selling books on the Web, the services involved in the processing of orders, and the companies hosting them are also agents.
+</span></p>
+</div>
+
+
+<p><span class="insert">Agents may adopt sets of actions or steps to achieve their goals. This is captured by the notion of plan. </span></p>
+
+<p>
+<span class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html"><span class="insert">
+   A </span><span class="dfn"><span class="insert">plan</span></span><span class="insert"> is an entity that represents a set of actions or steps intended by one or more agents to achieve some goals.  </span></span><span class="insert">
+There exist no
+prescriptive requirement on the nature of plans, their representation, the
+actions or steps they consist of, or their intended goals.  Since plans may evolve over time,
+it may become necessary to track their provenance, so plans themselves are
+entities. Representing the plan explicitly in the provenance can be useful for various tasks: for example, to  
+validate the execution as represented in the provenance record, to  
+manage expectation failures, or to provide explanations.</span></p> 
+
+<div class="conceptexample" id="plan-example">
+<p><span class="insert">
+A plan can be a blog post tutorial for how to set up a web server, a list of instructions for a micro-processor execution, a cook's written recipe for a chocolate cake, or a workflow for a scientific experiment.
+</span></p>
+</div>
+
+
+
+
+
+
+<p><span class="insert">Agents can be related to entities, activities, and other agents.</span></p>  
+
+<div class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html">   <span class="dfn"><span class="insert">Attribution</span></span><span class="insert"> is the ascribing of an entity to an agent. </span></div>
+
+<div class="conceptexample" id="attribution-example">
+<p><span class="insert">A blog post can be attributed to an author, a mobile phone to its manufacturer.</span></p>
+</div>
+
+<p><span class="insert">
+Agents are defined as having some kind of responsibility for activities. In some  
+cases, those activities reflect the execution of a plan that was  
+designed in advance to guide the execution.  Thus,
+a plan may also be linked to an activity.  </span></p>
+
+
+
+
+<p>
+<span class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html"><span class="insert">   An activity </span><span class="dfn"><span class="insert">association</span></span><span class="insert"> 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. </span></span>
+</p>
+
+<div class="conceptexample" id="association-example">
+<p><span class="insert">Examples of association between an activity and an agent are:
+</span></p><ul>
+<li><span class="insert">creation of a web page under the guidance of a designer;</span></li>
+<li><span class="insert">various forms of participation in a panel discussion, including audience member, panelist, or panel chair;</span></li>
+<li><span class="insert">a public event, sponsored by a company, and hosted by a museum;</span></li>
+<li><span class="insert">an XSLT transform launched by a user based on an XSL style sheet (a plan).</span></li>
+</ul>
+</div>
+
+<p>
+<span class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html">
+    <span class="dfn"><span class="insert">Responsibility</span></span><span class="insert"> is the fact that an agent is accountable for the actions of a "subordinate" agent, in the context of an activity.  </span></span><span class="insert"> The nature of this relation is intended to be broad,  including delegation or contractual relation. </span></p>
+
+
+  
+
+
+
+
+<div class="conceptexample" id="responsibility-example">
+<p><span class="insert">A student publishing a web page describing an academic
+department could result in both the student and the department being
+agents associated with the activity, and it may not matter which
+student published a web page but it matters a lot that the department
+told the student to put up the web page.  
+</span></p>
+</div>
+</div>
+
+<div id="section-types-entities-agents" class="section"> 
+<h3><span class="secno"><span class="delete">2.3 </span><span class="delete">Agents</span><span class="insert">2.4 </span></span><span class="insert">Further Entities: Collections</span> and <span class="delete">Other Types of Entities</span><span class="insert">Accounts</span></h3>
+
+<p><span class="delete">The motivation for introducing  agents in the model is to denote the agent's responsibility for activities.</span><span class="insert">There are two further types of entities, collections and accounts, which are now introduced.</span> </p>
+
+<p>
+<span class="delete">
+   An </span><span class="delete">agent</span><span class="delete"> is a type of entity that bears some form of responsibility for an activity taking place. </span>
+
+
+
+<span class="delete">
+The definition of agent intentionally stays away from using concepts such as enabling, causing, initiating, triggering, affecting, etc, because many entities also enable, cause, initiate, and affect in some way
+the activities. Concepts such as triggers are themselves defined in relations between entities and activities.   So the notion of having some degree of responsibility is really what makes an agent.</span>
+
+
+<span class="delete">An agent is a particular type of Entity. This means that the model can be
+ used to express provenance of the agents themselves.  </span>
+
+
+<span class="delete">
+Software for checking the use of grammar in a document may be defined as an agent of a document preparation activity, and at the same time one can describe its provenance, including for instance the vendor and the version history.</span>
+
+
+
+
+
+<span class="delete">There are some useful types of entities and agents that are commonly encountered in applications making data and documents available on the Web; we introduce them in the rest of this section. </span>
+
+
+<span class="delete">
+   A </span><span class="delete">plan</span><span class="delete"> is an entity that represents a set of actions or steps intended by one or more agents to achieve some goals.  </span><span class="delete">
+There exist no
+prescriptive requirement on the nature of plans, their representation, the
+actions or steps they consist of, or their intended goals.  Since plans may evolve over time,
+it may become necessary to track their provenance, so plans themselves are
+entities. Representing the plan explicitly in the provenance can be useful for various tasks: for example, to  
+validate the execution as represented in the provenance record, to  
+manage expectation failures, or to provide explanations.</span> 
+
+
+<span class="delete">
+A plan can be a blog post tutorial for how to set up a web server, a list of instructions for a micro-processor execution, a cook's written recipe for a chocolate cake, or a workflow for a scientific experiment.
+</span>
+
+
+
+
+<span class="delete">Three types of agents are recognized because they are commonly encountered in applications making data and documents available on the Web: persons, software agents, and organizations.</span>
+
+
+<span class="delete"> A Web site and service selling books on the Web and the company hosting 
+them are software agents and organizations, respectively.</span>
+
+
+
+<span class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html">   A <span class="dfn">collection</span> is an entity that provides a structure to some constituents, which are themselves entities. These constituents are said to be <span class="dfn">member of</span> the collections.  </span> This concept allows for the provenance of the <span class="delete">collection, but also of its constituents</span><span class="insert">collection itself</span> to be <span class="delete">expressed.</span><span class="insert">expressed in addition to that of the members.</span>  Such a notion of collection corresponds to a wide variety of  concrete data structures, such as a <em>maps</em>, <em>dictionaries</em>, or <em>associative arrays</em><span class="delete">.</span><span class="insert">, all of which involve a membership relationship between the constituents and the collection. </span></p>
+
+<div class="conceptexample" id="collection-example">
+<p>
+An example of collection is an archive of documents. Each document has its own provenance, but the archive itself also has some provenance: who maintained it, which documents it contained at which point in time, how it was assembled, etc. 
+</p></div>
+
+
+
+<p>
+<span class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html">
+   An <span class="dfn">account</span> is an entity that contains a bundle of provenance descriptions.  </span>Making an account an entity allows for provenance of provenance to be expressed.
+
+</p><div class="conceptexample" id="account-example">
+<p>
+For users to decide whether they can place their trust in
+a resource, they may want to analyze the resource's provenance, but also determine
+who its provenance is attributed to, and when it was
+generated. In other words, users need to be able to determine the provenance of provenance.
+Hence, provenance is also
+regarded as an entity (of type Account), by which provenance of provenance can then be
+expressed.
+</p>
+</div>
+
+</div>
+
+
+ 
+<span class="delete">2.4 </span><span class="delete">Attribution, Association, and Responsibility</span>
+
+<span class="delete">Agents can be related to entities, activities, and other agents.</span>  
+
+   <span class="delete">Attribution</span><span class="delete"> is the ascribing of an entity to an agent. </span>
+
+
+<span class="delete">A blog post can be attributed to an author, a mobile phone to its manufacturer.</span>
+
+
+<span class="delete">
+Agents are defined as having some kind of responsibility for activities. However, one may want to be more specific about the nature of an agent's responsibility. 
+For example, a programmer and a researcher could both be
+associated with running a workflow, but it may not matter which
+programmer clicked the button to start the workflow while it would
+matter a lot which researcher told the programmer to do so.  </span>
+
+
+
+
+<span class="delete">Furthermore, provenance reflects activities that have occurred.  In some  
+cases, those activities reflect the execution of a plan that was  
+designed in advance to guide the execution.  
+A plan may be associated to an activity, which represents what was intended to  
+happen.  </span>
+
+
+
+
+
+<span class="delete">   An activity </span><span class="delete">association</span><span class="delete"> 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. </span>
+
+
+
+<span class="delete">Examples of association between an activity and an agent are:
+</span>
+<span class="delete">creation of a web page under the guidance of a designer;</span>
+<span class="delete">various forms of participation in a panel discussion, including audience member, panelist, or panel chair;</span>
+<span class="delete">a public event, sponsored by a company, and hosted by a museum;</span>
+<span class="delete">an XSLT transform launched by a user based on an XSL style sheet (a plan).</span>
+
+
+
+
+
+    <span class="delete">Responsibility</span><span class="delete"> is the fact that an agent is accountable for the actions of a "subordinate" agent, in the context of an activity.  </span><span class="delete"> The nature of this relation is intended to be broad,  including delegation or contractual relation. </span>
+
+
+  
+
+
+
+
+
+<span class="delete">A student publishing a web page describing an academic
+department could result in both the student and the department being
+agents associated with the activity, and it may not matter which
+student published a web page but it matters a lot that the department
+told the student to put up the web page.  
+</span>
+
+
+
+
+
+
+
+
+    
+
+
+
+
+    <div id="section-UML" class="section"> 
+<h3><span class="secno">2.5 </span>Simplified Overview Diagram</h3>
+
+<p>So far, we have introduced a series of concepts underpinning provenance.   PROV-DM  is a conceptual data model consisting of types and relations between these.   <a href="#overview-types-and-relations">Table <span class="delete">(Mapping of Provenance</span><span class="insert">2</span></a><span class="insert"> shows how provenance</span> concepts <span class="insert">can be mapped </span>to    types and relations in<span class="delete">  PROV-DM)</span><span class="delete"> shows how provenance</span><span class="insert"> PROV-DM: the first column lists</span> concepts <span class="delete">can be mapped</span><span class="insert">introduced in this section, the second column indicates whether a concept maps</span> to <span class="delete">types and relations in PROV-DM: the first</span><span class="insert">a type or a relation, whereas the third</span> column <span class="delete">lists concepts introduced in this section, the second column indicates whether a concept maps to a type or a relation, whereas the third column </span>contains the corresponding name.<span class="delete">  We note that names</span><span class="insert">    Names</span> of relations have a verbal form in the past tense to express what happened in the past, as opposed to what may or will happen. 
+</p>
+
+
+<div style="text-align: left;">
+<table border="1" style="margin-left: auto; margin-right: auto;">
+<caption id="overview-types-and-relations"><span class="insert">Table 2: </span>Mapping of Provenance concepts to     types and relations<span class="delete"> in  PROV-DM</span></caption>
+<tbody><tr><td><a><span class="delete">Provenance</span><b><span class="insert">PROV</span> Concepts</b></a></td><td><b><span class="insert">PROV-DM types or relations</span></b></td><td><span class="delete">PROV-DM types or relations</span><b><span class="insert">Name</span></b></td></tr>
+<tr>
+<td><a href="#concept-entity" class="internalDFN">Entity</a></td><td rowspan="3"><span class="insert">PROV-DM </span>Types<span class="delete"> in PROV-DM</span></td><td><a title="dfn-Entity" href="#dfn-entity" class="internalDFN">entity</a></td></tr>
+<tr><td><a href="#concept-activity" class="internalDFN">Activity</a></td><td><a title="dfn-Activity" href="#dfn-activity" class="internalDFN">activity</a></td></tr>
+<tr><td><a href="#concept-agent" class="internalDFN">Agent</a></td><td><a title="dfn-agent" href="#dfn-agent" class="internalDFN">agent</a></td></tr>
+<tr>
+<td><a href="#concept-generation" class="internalDFN">Generation</a></td><td rowspan="6"><span class="insert">PROV-DM </span>Relations<span class="delete"> in PROV-DM</span></td><td><a title="wasGeneratedBy" href="#dfn-wasgeneratedby" class="internalDFN">wasGeneratedBy</a></td></tr>
+<tr><td><a href="#concept-usage" class="internalDFN">Usage</a></td><td><a title="used" href="#dfn-used" class="internalDFN">used</a></td></tr>
+<tr><td><a href="#concept-attribution" class="internalDFN">Attribution</a></td><td><a title="wasAttributedTo" href="#dfn-wasattributedto" class="internalDFN">wasAttributedTo</a></td></tr>
+<tr><td><a href="#concept-activityAssociation" class="internalDFN">Association</a></td><td><a title="wasAssociatedWith" href="#dfn-wasassociatedwith" class="internalDFN">wasAssociatedWith</a></td></tr>
+<tr><td><a href="#concept-responsibility" class="internalDFN">Responsibility</a></td><td><a title="actedOnBehalfOf" href="#dfn-actedonbehalfof" class="internalDFN">actedOnBehalfOf</a></td></tr>
+<tr><td><a href="#concept-derivation" class="internalDFN">Derivation</a></td><td><a title="wasDerivedFrom" href="#dfn-wasderivedfrom" class="internalDFN">wasDerivedFrom</a></td></tr>
+</tbody></table>
+</div>
+
+<p><a href="#prov-dm-overview">Figure <span class="delete">overview-types-and-relations</span><span class="insert">1</span></a> illustrates the three types (entity, activity, and agent) and how they relate to each other.  At this stage, all relations are shown to be binary.  <span class="delete">When examining PROV-DM in details, 
+</span><span class="insert">Definitions of </span><a href="#data-model-components"><span class="insert">Section 4</span></a><span class="insert"> reveal that </span>some relations, while  involving two primary elements, are<span class="delete"> shown to be</span> n-ary. </p>
+
+
+<div style="text-align: center; ">
+  <figure style="max-width: 70%; ">
+  <img src="images/OverviewDiagram.png" alt="Simplified  Overview of PROV-DM" style="max-width: 70%; ">
+<figcaption id="prov-dm-overview"><span class="insert">Figure 1: </span>Simplified  Overview of PROV-DM</figcaption>
+  </figure>
+</div>
+
+<p><a href="#prov-dm-overview">Figure <span class="delete">overview-types-and-relations</span><span class="insert">1</span></a> is not intended to be <span class="delete">complete. It</span><span class="insert">complete: it</span> only illustrates  types and relations <span class="delete">from </span><span class="insert">introduced in this section (</span><a href="#starting-points">Section <span class="delete">starting-points</span><span class="insert">2</span></a><span class="insert">), exploited in the example discussed in </span><a href="#prov-dm-example"><span class="insert">Section 3</span></a><span class="insert">,</span> and <span class="delete">exploited</span><span class="insert">explained</span> in <span class="delete">the example discussed</span><span class="insert">detail</span> in <span class="delete">the next section. They will then be explained</span><a href="#data-model-components"><span class="insert">Section 4</span></a><span class="insert">.
+Names of relations depicted</span> in <span class="delete">detail</span><a href="#prov-dm-overview"><span class="insert">Figure 1</span></a><span class="insert"> 
+are listed</span> in<span class="delete"> Section </span><span class="delete">data-model-components</span><span class="insert">
+the third column of </span><a href="#overview-types-and-relations"><span class="insert">Table 2</span></a>.<span class="delete">
+The third column of Table </span><span class="delete">(Mapping of Provenance concepts</span><span class="insert"> These names are part of a textual notation</span> to<span class="delete">   types and relations in  PROV-DM)</span><span class="delete"> lists names that are part of a textual notation to</span> write instances of the <span class="delete">PROV-DM</span><span class="insert">PROV</span> data <span class="delete">model. This notation, referred to as the PROV-N notation, is outlined</span><span class="insert">model, which we introduce</span> in the next section. </p>
+
+
+</div>
+<div id="prov-n" class="section"> 
+<h3><span class="secno">2.6 </span>PROV-N: The Provenance Notation</h3>
+
+
+
+
+<p><span class="delete">A key goal of PROV-DM is the specification of a machine-processable</span><span class="insert">To illustrate the application of PROV concepts to a concrete example (see </span><a href="#prov-dm-example"><span class="insert">Section 3</span></a><span class="insert">) and to provide examples of concepts (see </span><a href="#data-model-components"><span class="insert">Section 4</span></a><span class="insert">),
+we introduce PROV-N, a notation for writing instances of the PROV</span> data <span class="delete">model for provenance so that applications can retrieve provenance and reason about it. As such, representations of PROV-DM are available in RDF and XML.
+</span>
+
+<span class="delete">However, it is important to provide instances of provenance for human consumption, as in this document or elsewhere.
+To this end, PROV-N is a notation that is designed to  write instances of the PROV-DM data model in a compact textual form, without the syntactic baggage and constraints coming with a markup language such as XML or a description framework such as RDF.  We outline here some of its key design principles.</span><span class="insert">model.</span> For full details, the reader is referred to the companion specification [<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-N">PROV-N</a></cite>].<span class="insert">
+PROV-N is a notation  aimed at human consumption, with the following characteristics:</span></p>
+
+
+<ul>
+<li>PROV-N expressions adopt a <em>functional notation</em> consisting
+of a name and a <span class="delete">series</span><span class="insert">list</span> of arguments in <span class="delete">bracket.</span><span class="insert">parentheses.</span></li>
+
+<li>The interpretation of PROV-N arguments is defined according to their <em>position</em> in the list of arguments. This convention allows for a compact notation. </li>
+
+<li>
+PROV-N <em>optional arguments</em> need not be <span class="insert">specified:
+the general rule for optional arguments is that, if none of them are used in the expression, then they are simply omitted, resulting in a simpler expression. However, it may be the case that only some of the optional arguments need to be </span>specified. <span class="delete">For cases where it</span><span class="insert">Because the position of the arguments in the expression matters, in this case an additional marker must be used to indicate that a particular term</span> is <span class="delete">desirable to indicate which arguments have </span>not <span class="delete">been specified, PROV-N uses</span><span class="insert">available. The syntactic marker</span>  <span class="delete">the </span><span class="delete">syntactic marker</span> <span class="name">-</span> <span class="insert">is used </span>for <span class="delete">unspecified arguments.</span> 
+<span class="insert">this purpose.
+</span></li>
+
+<li>Most expressions 
+<span class="delete">have</span><span class="insert">include</span> an identifier<span class="delete"> which always occur</span><span class="insert"> 
+and a set of attribute-value pairs; both are optional unless otherwise specified. By convention, the identifier occurs</span> in<span class="insert"> the</span> <em>first position</em>,
+ and <span class="delete">an optional</span><span class="insert">the the</span> set of attribute-value <span class="delete">pairs, which occur</span><span class="insert">pairs</span> in<span class="insert"> the</span> <em>last position</em><span class="delete">, and delimited by square brackets. </span><span class="insert">.
+Consistent with the convention on arguments, the marker  </span><span class="name"><span class="insert">-</span></span><span class="insert"> can be used when the identifier is not available, or can be omitted altogether with no ambiguity arising.</span>
+</li>
+</ul>
+
+<div class="anexample">
+<p>
+An activity with identifier <span class="name">a1</span> and an attribute <span class="name">type</span> with value <span class="name">createFile</span>.
+</p><pre class="codeexample">activity(a1, [prov:type="createFile"])
+</pre>
+Two entities with identifiers <span class="name">e1</span> and <span class="name">e2</span>.
+<pre class="codeexample">entity(e1)
+entity(e2)
+</pre>
+The activity  <span class="name">a1</span> used  <span class="name">e1</span>, and <span class="name">e2</span> was generated by <span class="name">a1</span>.
+<pre class="codeexample">used(a1,e1)
+wasGeneratedBy(e2,a1)
+</pre><span class="insert">
+The same description, but with an explicit identifier </span><span class="name"><span class="insert">u1</span></span><span class="insert"> for the usage, and the syntactic marker </span><span class="name"><span class="insert">-</span></span><span class="insert"> to mark the absence of identifier in the generation.
+</span><pre class="codeexample"><span class="insert">used(u1,a1,e1)
+wasGeneratedBy(-,e2,a1)</span>
+</pre>
+</div>
+
+</div>
+
+</div>
+
+
+<div id="prov-dm-example" class="section"> 
+<h2><span class="secno">3. </span>Illustration of PROV-DM by an Example</h2>
+
+<p><a href="#starting-points">Section <span class="delete">starting-points</span><span class="insert">2</span></a> has introduced some provenance concepts, and how they are expressed as types or relations in the PROV data model. The purpose of this section is to put these concepts into practice in order to express the provenance of some document published on the Web.  
+With this realistic example, <span class="delete">PROV-DM constructs</span><span class="insert">PROV concepts</span> are  composed together,  and a graphical illustration shows a provenance description forming a directed graph, rooted at the entity we want to explain the provenance of, and pointing to the entities, activities, and agents it depended on. This example also shows that, sometimes, multiple provenance descriptions about <span class="delete">a</span><span class="insert">the</span> same entity can co-exist, which then justifies the need for provenance of provenance.</p>
+
+
+<p><span class="delete">The</span><span class="insert">In this example, we consider one of the many documents published by the</span> World Wide Web <span class="delete">Consortium publishes many technical reports. In this example, we consider a technical report,</span><span class="insert">Consortium,</span> and describe its provenance. 
+Specifically, we consider the <span class="delete">second version of the PROV-DM </span>document 
+<span class="insert"> identified by
+</span><a href="http://www.w3.org/TR/2011/WD-prov-dm-20111215">http://www.w3.org/TR/2011/WD-prov-dm-20111215</a>. Its provenance can be expressed from several <span class="delete">perspectives, which we present. In the first one,</span><span class="insert">perspectives: first,</span>  provenance <span class="delete">is</span><span class="insert">can take the authors' viewpoint; second, it can be</span> concerned with the <acronym title="World Wide Web Consortium">W3C</acronym> <span class="delete">process, whereas in the second one, it takes the authors' viewpoint; we then provide</span><span class="insert">process. Then,</span> attribution <span class="delete">to</span><span class="insert">of</span> these two provenance <span class="delete">descriptions.</span><span class="insert">descriptions is provided.</span></p>
+
+
+<div id="section-example-one" class="section"> 
+<h3><span class="secno">3.1 </span>The <span class="delete">Process</span><span class="insert">Authors</span> View</h3>
+
+
+<p style="font-style:italic; "><b>Description:</b> <span class="delete">The World Wide Web
+Consortium publishes technical reports according to its publication
+policy.</span><span class="insert">A document
+is edited by some editor, using contributions from various
+contributors.
+</span></p>
+
+
+
+<p><span class="insert">In this perspective, provenance of the document
+</span><a href="http://www.w3.org/TR/2011/WD-prov-dm-20111215"><span class="insert">http://www.w3.org/TR/2011/WD-prov-dm-20111215</span></a><span class="insert"> is concerned with the editing activity as perceived by authors.</span>  <span class="delete">Working drafts are published regularly to reflect the work
+accomplished</span><span class="insert">This kind of information could be used</span> by <span class="delete">working groups. Every publication of a working draft
+must</span><span class="insert">authors in their CV or in a narrative about this document. </span></p>
+
+
+
+
+<p><span class="insert">We paraphrase some PROV-DM descriptions, express them with the PROV-N notation, and then depict them with a graphical illustration (see </span><a href="#prov-a-document1"><span class="insert">Figure 1</span></a><span class="insert">).
+Full details of the provenance record can</span> be <span class="delete">preceded by a "publication request" to the Webmaster.  The
+very first version of a technical report must also preceded by a
+"transition request" to be approved by the </span><span class="delete">W3C</span><span class="delete"> director.  All working
+drafts are made available at a unique URI.  In this scenario, we consider two successive versions of a given report, the policy according to which they were published, and the associated requests.
+</span>
+
+<span class="delete">
+
+Concretely, in this section, we describe the kind of provenance record that the </span><span class="delete">WWW Consortium</span><span class="delete"> could keep for auditors to check that due processes are followed. All entities involved in this example are Web resources, with well defined URIs (some of which locating archived email messages, available to </span><span class="delete">W3C</span><span class="delete"> Members).</span><span class="insert">found </span><a href="examples/w3c-publication3.pn"><span class="insert">here</span></a><span class="insert">.</span></p>
+
+<ul>
+<li><span class="delete"> Two versions of the technical report are involved:</span><span class="insert">There was a document</span> <span class="name"><a href="http://www.w3.org/TR/2011/WD-prov-dm-20111215">tr:WD-prov-dm-20111215</a></span><span class="delete"> (second working draft) and </span><span class="delete">tr:WD-prov-dm-20111018</span><span class="delete"> (first working draft);</span>
+<span class="delete"> Both </span><span class="delete">tr:WD-prov-dm-20111215</span><span class="delete"> and </span><span class="delete">tr:WD-prov-dm-20111018</span><span class="delete"> were published by the WWW Consortium  agent (</span><span class="delete">w3:Consortium</span><span class="delete">); </span>
+<span class="delete"> The publication activity for </span><span class="delete">tr:WD-prov-dm-20111215</span><span class="delete"> is </span><span class="delete">ex:act2</span><span class="delete">;</span>
+<span class="delete"> The publication activity for </span><span class="delete">tr:WD-prov-dm-20111018</span><span class="delete"> is </span><span class="delete">ex:act1</span><span class="delete">;</span><span class="insert">, which from the author's perspective was a document in its second version. 
+</span><pre><span class="insert">entity(tr:WD-prov-dm-20111215, [ prov:type="document", ex:version="2" ])
+</span></pre>
+</li>
+
+<li><span class="delete"> The report </span><span class="delete">tr:WD-prov-dm-20111215</span><span class="delete"> is derived from </span><span class="delete">tr:WD-prov-dm-20111018</span><span class="delete">;</span>
+
+<span class="delete"> The publication activity </span><span class="delete">ex:act1</span><span class="delete"> used a </span><span class="delete">publication request</span><span class="delete"> (</span><span class="delete">ar2:0141</span><span class="delete">) and a </span><span class="delete">transition request</span><span class="delete"> (</span><span class="delete">ar1:0004</span><span class="delete">);</span>
+<span class="delete"> The publication activity </span><span class="delete">ex:act2</span><span class="delete"> used a </span><span class="delete">publication request</span><span class="delete"> (</span><span class="delete">ar3:0111</span><span class="delete">);</span>
+<span class="delete"> Technical reports were published according to the process rules (</span><span class="delete">pr:rec-advance</span><span class="delete">), a plan in PROV-DM terminology.</span>
+
+
+<span class="delete">
+We now paraphrase some PROV-DM descriptions, and illustrate them with the PROV-N notation, a notation for PROV-DM aimed at human consumption.  We then follow them with a graphical illustration. Full details of the provenance record can be found </span><span class="delete">here</span><span class="delete">.
+
+</span>
+There <span class="delete">is a technical report, a working draft on the recommendation track (</span><span class="delete">pr:RecsWD</span><span class="delete">), which is regarded as</span><span class="insert">was</span> an <span class="delete">entity so that we can describe its provenance. Similar descriptions exist for all entities.</span><span class="insert">editing activity.</span>
+<pre><span class="delete">entity(tr:WD-prov-dm-20111215, [ prov:type="pr:RecsWD" %% xsd:QName ])
+</span>
+
+<span class="delete">There is a publication activity.
+</span><span class="delete">activity(ex:act2,[prov:type="publish"])</span><span class="insert">activity(ex:edit1,[prov:type="edit"])</span>
+</pre>
+</li>
+
+<li>The <span class="delete">technical report</span><span class="insert">document</span> was generated by the <span class="delete">publication</span><span class="insert">editing</span> activity: this <span class="delete">is a </span><span class="insert">was a </span><a title="concept-generation">Generation</a>.
+<pre>wasGeneratedBy(tr:WD-prov-dm-20111215, <span class="delete">ex:act2,</span><span class="insert">ex:edit1,</span> -)
+</pre>
+</li>
+
+
+<li><span class="delete">The second draft of the technical report was derived from the first draft of the technical report: this is a </span><span class="delete">Derivation</span><span class="delete">.</span><span class="insert">There were some agents.</span>
+<pre><span class="delete">wasDerivedFrom(tr:WD-prov-dm-20111215, tr:WD-prov-dm-20111018)</span><span class="insert">agent(ex:Paolo, [ prov:type="Person" ])
+agent(ex:Simon, [ prov:type="Person" ])</span>
+</pre>
+</li>
+
+<li><span class="delete">The activity required a publication request: this is a </span><span class="delete">Usage</span><span class="delete">.</span><span class="insert">Agents were assigned various responsibilities in the editing activity: contributor and editor.</span>
+<pre><span class="delete">used(ex:act2, ar3:0111, -)
+</span>
+
+
+<span class="delete">The activity was associated with the Consortium agent, and proceeded according to its publication policy: this is an </span><span class="delete">Activity Association</span><span class="delete">.
+</span><span class="delete">wasAssociatedWith(ex:act2, w3:Consortium, pr:rec-advance)</span><span class="insert">wasAssociatedWith(ex:edit1, ex:Paolo, -, [ prov:role="editor" ])
+wasAssociatedWith(ex:edit1, ex:Simon, -, [ prov:role="contributor" ])</span>
+</pre>
+</li>
+</ul>
+
+<p>
+Provenance descriptions can be <em>illustrated</em> graphically. The illustration is not intended to represent all the details of the model, but it is intended to show the essence of a set of
+provenance descriptions.  Therefore, it should not be seen as an alternate notation for expressing provenance.</p>
+
+<p>The graphical illustration takes the form of a graph. Entities, activities and agents are represented as nodes, with oval, rectangular, and pentagonal shapes, respectively.  Usage,
+Generation, Derivation, and Association are represented as directed edges.</p>
+
+<p>Entities are laid out according to the ordering of their generation.  We endeavor to show time progressing from left to right. This means that edges for Usage, Generation,
+Derivation, Association typically point leftwards</p>
+
+
+
+
+
+
+
+
+
+<div style="text-align: center; ">
+  <figure>
+  
+<img src="images/w3-publication3.png" alt="Provenance of a Document (1)" style="max-width: 98%; ">
+<figcaption id="prov-a-document1"><span class="insert">Figure 2: </span>Provenance of a <span class="delete">Tech Report</span><span class="insert">Document (1)</span></figcaption>
+  </figure>
+</div>
+
+
+<span class="delete"> This simple example has shown a variety of PROV-DM constructs, such as Entity, Agent, Activity, Usage, Generation, Derivation, and Association. In this example, it happens that all entities were already Web resources, with readily available URIs, which we used. We note that some of the resources are public, whereas others have restricted access: provenance statements only make use of their identifiers. If identifiers do not pre-exist, e.g. for activities, then they can be generated, for instance </span><span class="delete">ex:act2</span><span class="delete">, occurring in the namespace identified by prefix </span><span class="delete">ex</span><span class="delete">.  We note that the URI scheme developed by </span><span class="delete">W3C</span><span class="delete"> is particularly suited for expressing provenance of these reports, since each URI denotes a specific version of a report. It then becomes very easy to relate the various versions, with PROV-DM constructs. We note that an Association is a ternary relation (represented by a multi-edge labeled wasAssociatedWith) from an activity to an agent and a plan.</span>
+
+
+
+
+</div>
+
+
+<div id="section-example-two" class="section"> 
+<h3><span class="secno">3.2 </span>The <span class="delete">Authors</span><span class="insert">Process</span> View</h3>
+
+
+<p style="font-style:italic; "><b>Description:</b> <span class="delete">A technical report
+is edited</span><span class="insert">The World Wide Web
+Consortium publishes documents according to its publication
+policy.  Working drafts are published regularly to reflect the work
+accomplished</span> by <span class="delete">some editor, using contributions from various
+contributors.</span><span class="insert">working groups. Every publication of a working draft
+must be preceded by a "publication request" to the Webmaster.  The
+very first version of a document must also be preceded by a
+"transition request" to be approved by the </span><acronym title="World Wide Web Consortium"><span class="insert">W3C</span></acronym><span class="insert"> director.  All working
+drafts are made available at a unique URI.  In this scenario, we consider two successive versions of a given document, the policy according to which they were published, and the associated requests.</span>
+</p>
+
+
+
+
+
+<p><span class="delete">Here, we consider another perspective on technical report
+</span><span class="delete">http://www.w3.org/TR/2011/WD-prov-dm-20111215</span><span class="delete">. Provenance is concerned</span><span class="insert">
+We describe the kind of provenance record that the </span><a href="http://www.w3.org/Consortium"><span class="insert">WWW Consortium</span></a><span class="insert"> could keep for auditors to check that due processes are followed. All entities involved in this example are Web resources,</span> with <span class="delete">the</span><span class="insert">well defined URIs (some of which refer archived email messages, available to </span><acronym title="World Wide Web Consortium"><span class="insert">W3C</span></acronym><span class="insert"> Members).</span></p>
+
+<ul>
+<li><span class="insert"> Two versions of a</span> document <span class="delete">editing activity, as perceived by authors.  This kind of information could be used by authors in their CV or in a narrative about this document. </span>
+
+
+
+
+
+<span class="delete"> The same technical report is</span><span class="insert">were</span> involved: <span class="name"><a href="http://www.w3.org/TR/2011/WD-prov-dm-20111215">tr:WD-prov-dm-20111215</a></span><span class="delete">;</span><span class="insert"> (second working draft) and </span><span class="name"><span class="name"><a href="http://www.w3.org/TR/2011/WD-prov-dm-20111018"><span class="insert">tr:WD-prov-dm-20111018</span></a></span></span><span class="insert"> (first working draft);</span></li>
+<li> <span class="delete">An editing activity for</span><span class="insert">Both</span> <span class="name"><a href="http://www.w3.org/TR/2011/WD-prov-dm-20111215">tr:WD-prov-dm-20111215</a></span> <span class="delete">is</span><span class="insert">and</span> <span class="name"><span class="delete">ex:edit1</span><span class="delete">;</span><span class="name"><a href="http://www.w3.org/TR/2011/WD-prov-dm-20111018"><span class="insert">tr:WD-prov-dm-20111018</span></a></span></span><span class="insert"> were published by the WWW Consortium (</span><span class="name"><a href="http://www.w3.org/Consortium"><span class="insert">w3:Consortium</span></a></span><span class="insert">); </span></li>
+<li> The <span class="delete">report</span><span class="insert">publication activity for</span> <span class="name"><a href="http://www.w3.org/TR/2011/WD-prov-dm-20111215">tr:WD-prov-dm-20111215</a></span> <span class="delete">is generated by activity</span><span class="insert">was</span> <span class="name"><span class="delete">ex:edit1</span><span class="insert">ex:act2</span></span>;</li>
+<li> <span class="delete">Several persons are associated with</span><span class="insert">The publication</span> activity <span class="insert">for </span><span class="name"><span class="delete">ex:edit1</span><span class="delete">, some</span><span class="name"><a href="http://www.w3.org/TR/2011/WD-prov-dm-20111018"><span class="insert">tr:WD-prov-dm-20111018</span></a></span></span><span class="insert"> was </span><span class="name"><span class="insert">ex:act1</span></span><span class="insert">;
+</span></li>
+
+<li><span class="insert"> The document </span><span class="name"><a href="http://www.w3.org/TR/2011/WD-prov-dm-20111215"><span class="insert">tr:WD-prov-dm-20111215</span></a></span><span class="insert"> was derived from </span><span class="name"><span class="name"><a href="http://www.w3.org/TR/2011/WD-prov-dm-20111018"><span class="insert">tr:WD-prov-dm-20111018</span></a></span></span><span class="insert">;</span></li>
+
+<li><span class="insert"> The publication activity </span><span class="name"><span class="insert">ex:act1</span></span><span class="insert"> used a </span><a href="http://www.w3.org/2005/08/01-transitions.html#pubreq"><span class="insert">publication request</span></a><span class="insert"> (</span><span class="name"><a href="https://lists.w3.org/Archives/Member/w3c-archive/2011Oct/0141"><span class="insert">email:2011Oct/0141</span></a></span><span class="insert">) and a </span><a href="http://www.w3.org/2005/08/01-transitions.html#transreq"><span class="insert">transition request</span></a><span class="insert"> (</span><span class="name"><a href="https://lists.w3.org/Archives/Member/chairs/2011OctDec/0004"><span class="insert">chairs:2011OctDec/0004</span></a></span><span class="insert">);</span></li>
+<li><span class="insert"> The publication activity </span><span class="name"><span class="insert">ex:act2</span></span><span class="insert"> used a </span><a href="http://www.w3.org/2005/08/01-transitions.html#pubreq"><span class="insert">publication request</span></a><span class="insert"> (</span><span class="name"><a href="https://lists.w3.org/Archives/Member/w3c-archive/2011Dec/0111"><span class="insert">email:2011Dec/0111</span></a></span><span class="insert">);</span></li>
+<li><span class="insert"> Documents were published according to the process rules (</span><span class="name"><a href="http://www.w3.org/2005/10/Process-20051014/tr.html#rec-advance"><span class="insert">process:rec-advance</span></a></span><span class="insert">), a plan</span> in <span class="delete">an editorial role, some in a contributor's role.</span><span class="insert">PROV-DM terminology.</span></li>
+</ul>
+
+<p><span class="delete">Again, we</span><span class="insert">
+We now</span> paraphrase some <span class="delete">PROV-DM</span><span class="insert">PROV</span> descriptions, and <span class="delete">illustrate</span><span class="insert">express</span> them with the PROV-N <span class="delete">notation.
+</span><span class="insert">notation, and then depict them with a graphical illustration (see </span><a href="#prov-a-document2"><span class="insert">Figure 2</span></a><span class="insert">). </span>Full details of the provenance record can be found <a href="examples/w3c-publication1.pn">here</a>.
+
+</p>
+
+<ul>
+<li>There <span class="insert">was a document, a working draft on the recommendation track (</span><a href="http://www.w3.org/2005/10/Process-20051014/tr.html#RecsWD"><span class="insert">process:RecsWD</span></a><span class="insert">), which </span>is <span class="delete">a technical report, which from the author's perspective is a document in</span><span class="insert">an entity so that we can describe</span> its <span class="delete">second version. 
+</span><span class="insert">provenance. Similar descriptions exist for all entities.
+</span><pre>entity(tr:WD-prov-dm-20111215, [ <span class="delete">prov:type="document", ex:version="2"</span><span class="insert">prov:type="process:RecsWD" %% xsd:QName</span> ])
+</pre>
+<span class="delete">While this description is about the same report </span><span class="delete">tr:WD-prov-dm-20111215</span><span class="delete">, its details differ from the author's perspective: it is a document and it has a version number. </span></li>
+
+
+<li>There <span class="delete">is an editing</span><span class="insert">was a publication</span> activity.
+<pre><span class="delete">activity(ex:edit1,[prov:type="edit"])</span><span class="insert">activity(ex:act2,[prov:type="publish"])</span>
+</pre>
+</li>
+
+<li>The <span class="delete">technical report</span><span class="insert">document</span> was generated by the <span class="delete">editing</span><span class="insert">publication</span> activity: this <span class="delete">is a </span><span class="insert">was a </span><a title="concept-Generation">Generation</a>.
+<pre>wasGeneratedBy(tr:WD-prov-dm-20111215, <span class="delete">ex:edit1,</span><span class="insert">ex:act2,</span> -)
+</pre>
+</li>
+
+
+<li><span class="delete">There are some agents.</span><span class="insert">The second draft of the document was derived from the first draft: this was a </span><a title="concept-Derivation"><span class="insert">Derivation</span></a><span class="insert">.</span>
+<pre><span class="delete">agent(ex:Paolo, [ prov:type="Person" ])
+agent(ex:Simon, [ prov:type="Person" ])</span><span class="insert">wasDerivedFrom(tr:WD-prov-dm-20111215, tr:WD-prov-dm-20111018)</span>
+</pre>
+</li>
+
+<li><span class="delete">Agents were assigned various responsibilities in the editing activity: contributor</span><span class="insert">The activity required a publication request: this was a </span><a title="concept-Usage"><span class="insert">Usage</span></a><span class="insert">.
+</span><pre><span class="insert">used(ex:act2, email:2011Dec/0111, -)
+</span></pre>
+</li>
+
+<li><span class="insert">The activity was associated with the Consortium agent,</span> and <span class="delete">editor.</span><span class="insert">proceeded according to its publication policy: this is an </span><a title="concept-activityAssociation"><span class="insert">Activity Association</span></a><span class="insert">.</span>
+<pre><span class="delete">wasAssociatedWith(ex:edit1, ex:Paolo, -, [prov:role="editor"])
+wasAssociatedWith(ex:edit1, ex:Simon, -, [prov:role="contributor"])</span><span class="insert">wasAssociatedWith(ex:act2, w3:Consortium, process:rec-advance)</span>
+</pre>
+</li>
+</ul>
+
+
+
+
+
+
+
+
+
+
+
+<div style="text-align: center;">
+  <figure>
+  
+<img src="images/w3-publication1.png" alt="Provenance of a Document (2)" style="max-width: 90%; ">
+<figcaption id="prov-a-document2"><span class="insert">Figure 3: </span>Provenance of a <span class="delete">Tech Report (b)</span><span class="insert">Document (2)</span></figcaption>
+  </figure>
+</div>
+
+
+
+
+<p><span class="insert"> This simple example has shown a variety of PROV concepts, such as Entity, Agent, Activity, Usage, Generation, Derivation, and Association. In this example, it happens that all entities were already Web resources, with readily available URIs, which we used. We note that some of the resources are public, whereas others have restricted access: provenance statements only make use of their identifiers. If identifiers do not pre-exist, e.g. for activities, then they can be generated, for instance </span><span class="name"><span class="insert">ex:act2</span></span><span class="insert">, occurring in the namespace identified by prefix </span><span class="name"><span class="insert">ex</span></span><span class="insert">.  We note that the URI scheme developed by </span><acronym title="World Wide Web Consortium"><span class="insert">W3C</span></acronym><span class="insert"> is particularly suited for expressing provenance of these documents, since each URI denotes a specific version of a document. It then becomes easy to relate the various versions with  PROV-DM relations. We note that an Association is a ternary relation (represented by a multi-edge labeled wasAssociatedWith) from an activity to an agent and a plan.</span></p>
+
+
+</div>
+
+
+
+
+<div id="section-example-c" class="section"> 
+<h3><span class="secno">3.3 </span>Attribution of Provenance</h3>
+
+<p>The two previous sections  provide  two different perspectives on the provenance of a <span class="delete">technical report.</span><span class="insert">document</span> By design, the PROV approach allows for the provenance of a subject to be provided by multiple sources. For users to decide whether they can place their trust in the <span class="delete">technical report,</span><span class="insert">document,</span> they may want to analyze its provenance, but also determine
+who the provenance is attributed to, and when it was
+generated, etc. In other words, we need to be able to express the provenance of provenance.</p>
+
+<p>No new mechanism is required to support this requirement.  PROV-DM makes the assumption that provenance statements have been bundled up, and named, by some mechanism outside the scope of PROV-DM. For instance, in this case, provenance statements were put in a file and exposed on the Web, respectively at <a href="examples/w3c-publication1.pn">ex:w3c-publication1.pn</a> and <a href="examples/w3c-publication3.pn">ex:w3c-publication3.pn</a>.   To express their respective provenance, these resources must be seen as entities, and all the constructs of PROV-DM are now available to characterize their provenance. In the example below, <span class="name">ex:w3c-publication1.pn</span> is attributed to the agent <span class="name">w3:Consortium</span>, whereas <span class="name">ex:w3c-publication3.pn</span> to <span class="name">ex:Simon</span>.
+
+</p><pre>entity(ex:w3c-publication1.pn, [prov:type="prov:Account" %% xsd:QName ])
+wasAttributedTo(ex:w3c-publication1.pn, w3:Consortium)
+
+entity(ex:w3c-publication3.pn, [prov:type="prov:Account" %% xsd:QName ])
+wasAttributedTo(ex:w3c-publication3.pn, ex:Simon)
+</pre>
+
+
+
+</div>
+
+</div>
+
+
+<div id="data-model-components" class="section"> 
+
+<h2><span class="secno">4. </span>PROV-DM Types and Relations</h2>
+
+<p><span class="insert">Provenance concepts, expressed as </span>PROV-DM <span class="delete">concepts</span><span class="insert">types and relations,</span> are structured according to six components that are introduced in this section.
+Components and their dependencies are illustrated in <a href="#prov-dm-components">Figure <span class="delete">prov-dm-components</span><span class="insert">4</span></a>. A component that relies on concepts defined in another also sits above it in this figure.
+PROV-DM consists of the following components.</p>
+
+<div id="prov-dm-components-ul">
+<ul>
+<li><b>Component 1: entities and activities.</b> The first component consists of entities, activities, and<span class="delete"> all</span> concepts linking them, such as generation, usage, start, end. The first component is the only one comprising time-related concepts. </li>
+<li><b>Component 2: agents and responsibility.</b> The second component consists of agents and concepts ascribing responsibility to agents.</li>
+<li><b>Component 3: derivations.</b>  The third component is formed with derivations and <span class="delete">its </span>derivation subtypes.</li>
+<li><b>Component 4: alternate.</b> The fourth component consists of relations linking entities <span class="delete">somehow </span>referring to <span class="delete">a</span><span class="insert">the</span> same thing. </li>
+<li><b>Component 5: collections.</b> The fifth component is <span class="delete">comprised of</span><span class="insert">about</span> collections and <span class="delete">operations related to collections.</span><span class="insert">concepts capturing their transformation, such as insertion and removal.</span> </li>
+<li><b>Component 6: annotations.</b> The sixth component is concerned with annotations to PROV-DM<span class="delete">  concepts.</span><span class="insert"> instances.</span></li>
+</ul>
+</div>
+
+
+<div style="text-align: center;">
+<figure style="max-width: 90%; ">
+<img usemap="#componentMap" src="images/components.png" alt="PROV-DM Components" style="max-width: 90%; ">
+<map id="componentMap" name="componentMap">
+<area title="collections" href="#component5" coords="220,0,440,70" alt="collections" shape="rect">
+<area title="alternate" href="#component4" coords="450,0,510,140" alt="alternate" shape="rect">
+<area title="annotations" href="#component6" coords="530,0,590,220" alt="annotations" shape="rect">
+<area title="activities/entities" href="#component1" coords="80,150,510,220" alt="activities/entities" shape="rect">
+<area title="derivations" href="#component3" coords="80,0,210,70" alt="derivations" shape="rect">
+<area title="agents/responsibility" href="#component2" coords="0,0,70,220" alt="agents/responsibility" shape="rect">
+</map>
+<figcaption id="prov-dm-components"><span class="insert">Figure 4: </span>PROV-DM Components</figcaption>
+</figure>
+</div>
+
+<p>
+While  not all PROV-DM relations are binary, they all involve two primary elements. Hence, <a href="#relations-at-a-glance">Table <span class="delete">relations-at-a-glance</span><span class="insert">3</span></a> indexes all relations according to their two primary elements.  The table adopts the same color scheme as <a href="#prov-dm-components">Figure <span class="delete">prov-dm-components</span><span class="insert">4</span></a>, allowing components to be readily identified.
+Note that for simplicity, this table  does not include collection-oriented relations.
+</p>
+
+<div id="relations-at-a-glance-div" style="text-align: center;">
+<table border="1" style="margin-left: auto; margin-right: auto;">
+<caption id="relations-at-a-glance"><span class="insert">Table 3: </span>PROV-DM Relations At a Glance</caption>
+<tbody><tr><td></td><td>Entity</td><td>Activity</td><td>Agent</td><td>Note</td></tr> 
+<tr><td>Entity</td><td><div class="component3-color"><a href="#dfn-wasderivedfrom" class="internalDFN">wasDerivedFrom</a><br><a href="#dfn-wasrevisionof" class="internalDFN">wasRevisionOf</a><br><a href="#dfn-wasquotedfrom" class="internalDFN">wasQuotedFrom</a><br><a href="#dfn-hadoriginalsource" class="internalDFN">hadOriginalSource</a></div><div class="component4-color"><a href="#dfn-alternateof" class="internalDFN">alternateOf</a><br><a href="#dfn-specializationof" class="internalDFN">specializationOf</a></div></td><td class="component1-color"><a title="wasGeneratedBy" href="#dfn-wasgeneratedby" class="internalDFN">wasGeneratedBy</a></td><td class="component2-color"><a href="#dfn-wasattributedto" class="internalDFN">wasAttributedTo</a></td><td class="component6-color"><a href="#dfn-hasannotation" class="internalDFN">hasAnnotation</a></td></tr>
+<tr><td>Activity</td><td><div class="component1-color"><a href="#dfn-used" class="internalDFN">used</a><br><a href="#dfn-wasstartedby" class="internalDFN">wasStartedBy</a><br><a href="#dfn-wasendedby" class="internalDFN">wasEndedBy</a></div></td><td class="component1-color"><a href="#dfn-wasstartedbyactivity" class="internalDFN">wasStartedByActivity</a><br><a href="#dfn-wasinformedby" class="internalDFN">wasInformedBy</a></td><td class="component2-color"><a href="#dfn-wasassociatedwith" class="internalDFN">wasAssociatedWith</a></td><td class="component6-color"><a href="#dfn-hasannotation" class="internalDFN">hasAnnotation</a></td></tr>
+<tr><td>Agent</td><td>—</td><td>—</td><td class="component2-color"><a href="#dfn-actedonbehalfof" class="internalDFN">actedOnBehalfOf</a></td><td class="component6-color"><a href="#dfn-hasannotation" class="internalDFN">hasAnnotation</a></td></tr>
+<tr><td>Note</td><td>—</td><td>—</td><td>—</td><td class="component6-color"><a href="#dfn-hasannotation" class="internalDFN">hasAnnotation</a></td></tr>
+</tbody></table>
+</div>
+
+<p><a href="#prov-dm-types-and-relations">Table <span class="delete">prov-dm-concepts-and-relations</span><span class="insert">4</span></a> is a complete index of all the <span class="delete">concepts</span><span class="insert">types</span> and relations <span class="delete">in prov-dm,</span><span class="insert">of PROV-DM,</span> color-coded according to the component they belong <span class="delete">too.</span><span class="insert">to.</span>  In the first column,<span class="delete"> one finds </span>  concept names<span class="delete"> directly linking</span><span class="insert">  link</span> to their <span class="delete">English definition. In</span><span class="insert">informal definition, whereas, in</span> the second column, <span class="delete">we find their representation in the PROV-N notation, directly linking</span><span class="insert">representations link</span> to the <span class="delete">definition of their various constituents.</span><span class="insert">information used to represent the concept.</span></p>
+
+
+<div id="prov-dm-types-and-relations" style="text-align: left;">
+<table border="1" style="margin-left: auto; margin-right: auto;">
+<caption id="prov-dm-types-and-relations"><span class="insert">Table 4: </span>PROV-DM <span class="delete">Concepts</span><span class="insert">Types</span> and Relations</caption>
+<tbody><tr><td><a><b><span class="insert">Type or Relation Name</span></b></a></td><td><b><span class="insert">Representation in the PROV-N notation</span></b></td></tr>
+<tr class="component1-color"><td><a href="#concept-entity" class="internalDFN">Entity</a></td><td><a title="dfn-Entity" href="#dfn-entity" class="internalDFN">entity(id, [ attr1=val1, ...])</a></td></tr>
+<tr class="component1-color"><td><a href="#concept-activity" class="internalDFN">Activity</a></td><td><a title="dfn-Activity" href="#dfn-activity" class="internalDFN">activity(id, st, et, [ attr1=val1, ...])</a></td></tr>
+<tr class="component1-color"><td><a href="#concept-generation" class="internalDFN">Generation</a></td><td><a title="wasGeneratedBy" href="#dfn-wasgeneratedby" class="internalDFN">wasGeneratedBy(id,e,a,t,attrs)</a></td></tr>
+<tr class="component1-color"><td><a href="#concept-usage" class="internalDFN">Usage</a></td><td><a title="used" href="#dfn-used" class="internalDFN">used(id,a,e,t,attrs)</a></td></tr>
+<tr class="component1-color"><td><a href="#concept-start" class="internalDFN">Start</a></td><td><a title="wasStartedBy" href="#dfn-wasstartedby" class="internalDFN">wasStartedBy(id,a,e,t,attrs)</a></td></tr>
+<tr class="component1-color"><td><a href="#concept-end" class="internalDFN">End</a></td><td><a title="wasEndedBy" href="#dfn-wasendedby" class="internalDFN">wasEndedBy(id,a,e,t,attrs)</a></td></tr>
+<tr class="component1-color"><td><a href="#concept-communication" class="internalDFN">Communication</a></td><td><a title="wasInformedBy" href="#dfn-wasinformedby" class="internalDFN">wasInformedBy(id,a2,a1,attrs)</a></td></tr>
+<tr class="component1-color"><td><a href="#concept-startByActivity" class="internalDFN">Start by Activity</a></td><td><a title="wasStartedByActivity" href="#dfn-wasstartedbyactivity" class="internalDFN">wasStartedByActivity(id, a2, a1, attrs)</a></td></tr>
+<tr class="component2-color"><td><a href="#concept-agent" class="internalDFN">Agent</a></td><td><a title="dfn-agent" href="#dfn-agent" class="internalDFN">agent(id, [ attr1=val1, ...])</a></td></tr>
+<tr class="component2-color"><td><a href="#concept-attribution" class="internalDFN">Attribution</a></td><td><a title="wasAttributedTo" href="#dfn-wasattributedto" class="internalDFN">wasAttributedTo(id,e,ag,attr)</a></td></tr>
+<tr class="component2-color"><td><a href="#concept-activityAssociation" class="internalDFN">Association</a></td><td><a title="wasAssociatedWith" href="#dfn-wasassociatedwith" class="internalDFN">wasAssociatedWith(id,a,ag,pl,attrs)</a></td></tr>
+<tr class="component2-color"><td><a href="#concept-responsibility" class="internalDFN">Responsibility</a></td><td><a title="actedOnBehalfOf" href="#dfn-actedonbehalfof" class="internalDFN">actedOnBehalfOf(id,ag2,ag1,a,attrs)</a></td></tr>
+<tr class="component3-color"><td><a href="#concept-derivation" class="internalDFN">Derivation</a></td><td><a title="wasDerivedFrom" href="#dfn-wasderivedfrom" class="internalDFN">wasDerivedFrom(id, e2, e1, a, g2, u1, attrs)</a></td></tr>
+<tr class="component3-color"><td><a href="#concept-revision" class="internalDFN">Revision</a></td><td><a title="wasRevisionOf" href="#dfn-wasrevisionof" class="internalDFN">wasRevisionOf(id,e2,e1,ag,attrs)</a></td></tr>
+<tr class="component3-color"><td><a href="#concept-quotation" class="internalDFN">Quotation</a></td><td><a title="wasQuotedFrom" href="#dfn-wasquotedfrom" class="internalDFN">wasQuotedFrom(id,e2,e1,ag2,ag1,attrs)</a></td></tr>
+<tr class="component3-color"><td><a href="#concept-original-source" class="internalDFN">Original Source</a></td><td><a title="hadOriginalSource" href="#dfn-hadoriginalsource" class="internalDFN">hadOriginalSource(id,e2,e1,attrs)</a></td></tr>
+<tr class="component3-color"><td><a href="#concept-traceability" class="internalDFN">Traceability</a></td><td><a title="tracedTo" href="#dfn-tracedto" class="internalDFN">tracedTo(id,e2,e1,attrs)</a></td></tr>
+<tr class="component4-color"><td><a href="#concept-alternate" class="internalDFN">Alternate</a></td><td><a title="alternateOf" href="#dfn-alternateof" class="internalDFN">alternateOf(alt1, alt2)</a></td></tr>
+<tr class="component4-color"><td><a href="#concept-specialization" class="internalDFN">Specialization</a></td><td><a title="specializationOf" href="#dfn-specializationof" class="internalDFN">specializationOf(sub, super)</a></td></tr>
+<tr class="component5-color"><td><a href="#concept-collection" class="internalDFN">Collection</a></td><td><a href="#concept-collection" class="internalDFN">Collection</a></td></tr>
+<tr class="component5-color"><td><a href="#concept-insertion" class="internalDFN">Insertion</a></td><td><a title="derivedByInsertionFrom" href="#dfn-derivedbyinsertionfrom" class="internalDFN">derivedByInsertionFrom(id, c2, c1, {(key_1, e_1), ..., (key_n, e_n)}, attrs)</a></td></tr>
+<tr class="component5-color"><td><a href="#concept-removal" class="internalDFN">Removal</a></td><td><a title="derivedByRemovalFrom" href="#dfn-derivedbyremovalfrom" class="internalDFN">derivedByRemovalFrom(id, c2, c1, {key_1, ... key_n}, attrs)</a></td></tr>
+<tr class="component5-color"><td><a href="#concept-membership" class="internalDFN">Membership</a></td><td><a title="memberOf" href="#dfn-memberof" class="internalDFN">memberOf(c, {(key_1, e_1), ..., (key_n, e_n)})</a></td></tr>
+<tr class="component6-color"><td><a href="#concept-note" class="internalDFN">Note</a></td><td><a title="dfn-note" href="#dfn-note" class="internalDFN">note(id, [ attr1=val1, ...])</a></td></tr>
+<tr class="component6-color"><td><a href="#concept-annotation" class="internalDFN">Annotation</a></td><td><a title="hasAnnotation" href="#dfn-hasannotation" class="internalDFN">hasAnnotation(r,n)</a></td></tr>
+</tbody></table>
+</div>
+
+<p>
+In the rest of the section, each <span class="delete">concept</span><span class="insert">type</span> and relation is <span class="delete">defined, in English initially, </span><span class="insert">defined informally,
+ </span>followed by a <span class="delete">more formal definition</span><span class="insert">summary of the information used to represent the concept,</span> and<span class="delete"> some example.</span><span class="insert">
+ illustrated with PROV-N examples.</span></p>  
+
+
+
+
+<div id="component1" class="section"> 
+<h3><span class="secno">4.1 </span>Component 1: Entities and Activities</h3>
+
+<p>The first component of PROV-DM is concerned with <a title="entity" href="#concept-entity" class="internalDFN">entities</a> and <a title="activity" href="#concept-activity" class="internalDFN">activities</a>, and their <span class="delete">inter-relations:</span><span class="insert">interrelations:</span> <a href="#concept-usage" class="internalDFN">Usage</a>, <a href="#concept-generation" class="internalDFN">Generation</a>, <a href="#concept-start" class="internalDFN">Start</a>, <a href="#concept-end" class="internalDFN">End</a>, <a href="#concept-communication" class="internalDFN">Communication</a>, and <a href="#concept-startByActivity" class="internalDFN">Start by Activity</a>. Figure <a href="#figure-component1">figure-component1</a> <span class="delete">overviews</span><span class="insert">uses UML to depict</span> the first component, with two <span class="delete">"UML classes"</span><span class="insert">classes</span> and binary associations between them. Associations are not just <span class="delete">binary;</span><span class="insert">binary:</span> indeed, <a href="#concept-usage" class="internalDFN">Usage</a>, <a href="#concept-generation" class="internalDFN">Generation</a>, <a href="#concept-start" class="internalDFN">Start</a>, <a href="#concept-end" class="internalDFN">End</a> <span class="delete">are remarkable because they have  </span><span class="insert">also include </span><em>time</em> <span class="delete">attributes, which are placeholders for time information related to provenance.</span><span class="insert">attributes.</span>
+</p>
+
+<div style="text-align: center;">
+<figure>
+<img src="images/Entities-Activities.png" alt="entities and activities">
+<figcaption id="figure-component1"><span class="insert">Figure 5: </span>Entities and Activities Component Overview</figcaption>
+</figure>
+</div>
+
+
+
+
+
+   <div id="term-Entity" class="section"> 
+      
+<h4><span class="secno">4.1.1 </span>Entity</h4>
+
+
+<div class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html">   An <dfn id="concept-entity">entity</dfn> is a <span class="delete">thing one    wants to provide provenance for.  For the purpose of this    specification, things can</span><span class="insert">physical, digital, conceptual, or other kind of thing; entities may</span> be <span class="delete">physical, digital, conceptual,</span><span class="insert">real</span> or<span class="delete">    otherwise; things may be real or</span> imaginary.    </div>
+
+
+<p></p><div class="attributes" id="attributes-entity">An <dfn title="dfn-Entity" id="dfn-entity">entity</dfn><span class="withPn">, written <span class="pnExpression" id="pn-entity">entity(id, [attr1=val1, ...])</span> in PROV-N, </span> <span class="delete">contains:</span><span class="insert">has:</span>
+<ul>
+<li><span class="attribute" id="entity.id">id</span>: an identifier for an entity; </li>
+<li><span class="attribute" id="entity.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set of attribute-value  pairs ((<span class="name">attr1</span>, <span class="name">val1</span>), ...) representing <span class="insert">additional information about </span>this <span class="delete">entity's situation in the world.</span><span class="insert">entity.</span></li>
+</ul></div>
+
+<div class="anexample">
+<p>
+The following expression</p>
+<pre class="codeexample">entity(tr:WD-prov-dm-20111215, [ prov:type="document", ex:version="2" ])
+</pre>
+states the existence of an entity, denoted by identifier <span class="name">tr:WD-prov-dm-20111215</span>,  with type <span class="name">document</span> and version number <span class="name">2</span>. The<span class="delete">  attributes</span><span class="insert"> attribute</span> <span class="name">ex:version</span> is application specific, whereas the attribute <span class="name">type</span> <span class="insert">(see </span><a href="#term-attribute-type"><span class="insert">Section 4.7.4.4</span></a><span class="insert">) </span>is reserved in the <span class="delete">PROV-DM namespace.</span><a title="prov-namespace" href="#dfn-prov-namespace" class="internalDFN"><span class="insert">PROV namespace</span></a><span class="insert">.</span>
+
+</div>
+
+
+<span class="delete">The characterization interval of an entity is currently implicit. Making it explicit would allow us to define wasComplementOf more precisely. 
+Beginning and end of characterization interval could be expressed by attributes (similarly to activities). 
+How do we define the end of an entity? This is </span><span class="delete">ISSUE-204</span><span class="delete">.
+</span>
+
+
+
+    
+
+
+
+
+    </div> 
+
+    <div id="term-Activity" class="section"> 
+      
+<h4><span class="secno">4.1.2 </span>Activity</h4>
+
+<div class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html">   An <dfn id="concept-activity">activity</dfn>  is something that occurs over a period of time and acts upon or with <span class="delete">entities.</span><span class="insert">entities;</span>  <span class="delete">This action can take multiple forms:</span><span class="insert">it may include</span> consuming, processing, transforming, modifying, relocating, using, generating, or being associated with entities.  </div>
+
+<p></p><div class="attributes" id="attributes-activity"> An <dfn title="dfn-Activity" id="dfn-activity">activity</dfn><span class="withPn">, written <span class="pnExpression" id="pn-activity">activity(id, st, et, [attr1=val1, ...])</span> in PROV-N,</span> <span class="delete">contains:</span><span class="insert">has:</span>
+<ul>
+<li><span class="attribute" id="activity.id">id</span>: an identifier for an activity;</li>
+<li><span class="attribute" id="activity.startTime">startTime</span>: an <em class="rfc2119" title="optional">optional</em> time (<span class="name">st</span>) for the start of the activity;</li>
+<li><span class="attribute" id="activity.endTime">endTime</span>: an <em class="rfc2119" title="optional">optional</em> time (<span class="name">et</span>) for the end of the activity;</li>
+<li><span class="attribute" id="activity.attributes">attributes</span>:  an <em class="rfc2119" title="optional">optional</em> set of attribute-value pairs ((<span class="name">attr1</span>, <span class="name">val1</span>), ...) <span class="delete">for</span><span class="insert">representing additional information about</span> this activity.</li>
+</ul></div>
+
+<div class="anexample">
+<p>
+The following expression</p>
+<pre class="codeexample">activity(a1,2011-11-16T16:05:00,2011-11-16T16:06:00,
+        [ex:host="server.example.org",prov:type="ex:edit" %% xsd:QName])
+</pre>
+<p>states the existence of an activity with identifier <span class="name">a1</span>, start time <span class="name">2011-11-16T16:05:00</span>, and end time <span class="name">2011-11-16T16:06:00</span>, running on host <span class="name">server.example.org</span>, and of type <span class="name">edit</span>.  The attribute <span class="name">host</span>  is application specific  (declared in some namespace with prefix <span class="name">ex</span>).  The attribute <span class="name">type</span> is a reserved attribute of PROV-DM, allowing for sub-typing to be <span class="delete">expressed.</span><span class="insert">expressed  (see </span><a href="#term-attribute-type"><span class="insert">Section 4.7.4.4</span></a><span class="insert">).</span></p>
+</div>
+
+
+
+<p>Further considerations:</p>
+<ul>
+<li>An activity is not an entity. This distinction is similar to the distinction between 
+'continuant' and 'occurrent' in logic [<cite><a class="bibref" rel="biblioentry" href="#bib-Logic">Logic</a></cite>].
+</li>
+</ul>
+
+
+</div>
+
+<div id="term-Generation" class="section">
+<h4><span class="secno">4.1.3 </span>Generation</h4>
+
+<div class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html">   <dfn id="concept-generation">Generation</dfn> is the completion of production of a new entity by an activity.   This entity <span class="insert">did not exist before generation and </span>becomes available for usage after this<span class="delete"> generation. This entity did not exist before</span> generation. </div>
+
+<p>
+</p><div class="attributes" id="attributes-generation"><dfn title="wasGeneratedBy" id="dfn-wasgeneratedby">Generation</dfn><span class="withPn">, written <span class="pnExpression">wasGeneratedBy(id,e,a,t,attrs)</span> in PROV-N,</span> <span class="delete">has the following components:</span><span class="insert">has:</span>
+<ul>
+<li><span class="attribute" id="generation.id">id</span>:  an <em class="rfc2119" title="optional">optional</em> identifier for a generation;</li> 
+<li><span class="attribute" id="generation.entity">entity</span>:  an identifier (<span class="name">e</span>) for a created entity; </li>
+<li><span class="attribute" id="generation.activity">activity</span>:  an <em class="rfc2119" title="optional">optional</em> identifier (<span class="name">a</span>) for the activity that creates the entity;</li>
+
+<li><span class="attribute" id="generation.time">time</span>: an <em class="rfc2119" title="optional">optional</em> "generation time" (<span class="name">t</span>), the time at which the entity was completely created;</li>
+
+<li><span class="attribute" id="generation.attributes">attributes</span>:  an <em class="rfc2119" title="optional">optional</em> set (<span class="name">attrs</span>) of attribute-value pairs <span class="delete">that describes the modalities of generation of</span><span class="insert">representing additional information about</span> this <span class="delete">entity by this activity.</span><span class="insert">generation.</span></li>
+</ul></div>
+<p>While each of the components <span class="attribute">activity</span>, <span class="attribute">time</span>, and  <span class="attribute">attributes</span> is <em class="rfc2119" title="optional">optional</em>, at least one of them <em class="rfc2119" title="must">must</em> be present.</p>
+
+
+
+
+
+<div class="anexample">
+<p>
+The following expressions</p>
+<pre class="codeexample">  wasGeneratedBy(e1,a1, 2001-10-26T21:32:52, [ex:port="p1"])
+  wasGeneratedBy(e2,a1, 2001-10-26T10:00:00, [ex:port="p2"])
+</pre>
+<p>state the existence of two generations (with respective times <span class="name">2001-10-26T21:32:52</span> and <span class="name">2001-10-26T10:00:00</span>), at which new entities,  identified by <span class="name">e1</span> and <span class="name">e2</span>, are created by an
+activity,  identified by <span class="name">a1</span>.
+The first one is available  on port <span class="delete">p1,</span><span class="name"><span class="insert">p1</span></span><span class="insert">,</span> whereas the other is available on port <span class="delete">p2.</span><span class="name"><span class="insert">p2</span></span><span class="insert">.</span>  The semantics of <span class="name">port</span> are application specific.
+</p>
+</div>
+
+
+<div class="anexample">
+<p>
+In some cases, we may want to record the time at which an entity was generated without having to specify the activity that generated it. To support this requirement, the activity <span class="delete">component</span><span class="insert">element</span> in generation is optional. Hence,  the following expression indicates the time at which an entity is generated, without naming the activity that did it.</p>
+<pre class="codeexample">  wasGeneratedBy(e,-,2001-10-26T21:32:52)
+</pre>
+</div>
+
+<div class="issue"><span class="insert">A construct that marks the "end of life" of an entity may be introduced. 
+ This is </span><a href="http://www.w3.org/2011/prov/track/issues/204"><span class="insert">ISSUE-204</span></a><span class="insert">.</span>
+</div>
+
+
+</div>
+
+
+<div id="term-Usage" class="section">
+<h4><span class="secno">4.1.4 </span>Usage</h4>
+
+<div class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html">   <dfn id="concept-usage">Usage</dfn> is the beginning of <span class="delete">consumption of</span><span class="insert">utilizing</span> an entity by an activity. Before usage, the activity had not begun to <span class="delete">consume or use</span><span class="insert">utilize</span> this entity and could not have been affected by the entity. </div>
+
+
+<p></p><div class="attributes" id="attributes-usage"><dfn title="used" id="dfn-used">Usage</dfn><span class="withPn">, written <span class="pnExpression">used(id,a,e,t,attrs)</span> in PROV-N,</span> <span class="delete">has the following constituents:</span><span class="insert">has:</span>
+<ul>
+<li><span class="attribute" id="usage.id">id</span>:  an <em class="rfc2119" title="optional">optional</em> identifier for a usage;</li> 
+<li><span class="attribute" id="usage.activity">activity</span>: an identifier (<span class="name">a</span>) for the consuming activity;</li>
+<li><span class="attribute" id="usage.entity">entity</span>: an identifier (<span class="name">e</span>) for the consumed entity;</li>
+<li><span class="attribute" id="usage.time">time</span>: an <em class="rfc2119" title="optional">optional</em> "usage time" (<span class="name">t</span>), the time at which the entity started to be used;</li>
+<li><span class="attribute" id="usage.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set (<span class="name">attrs</span>) of attribute-value pairs <span class="delete">that describe the modalities of usage of</span><span class="insert">representing additional information about</span> this <span class="delete">entity by this activity.</span><span class="insert">usage.</span></li>
+</ul></div>
+
+<p>
+A reference to a given entity <em class="rfc2119" title="may">may</em> appear in multiple usages that share
+ a given activity identifier. 
+</p>
+
+
+<div class="anexample">
+<p>The following usages</p>
+<pre class="codeexample">  used(a1,e1,2011-11-16T16:00:00,[ex:parameter="p1"])
+  used(a1,e2,2011-11-16T16:00:01,[ex:parameter="p2"])
+</pre>
+<p>state that the activity identified by <span class="name">a1</span> used two entities identified by <span class="name">e1</span> and <span class="name">e2</span>, at times <span class="name">2011-11-16T16:00:00</span> and  <span class="name">2011-11-16T16:00:01</span>, respectively; the first
+one was found as the value of parameter <span class="name">p1</span>, whereas the second was found as value of parameter <span class="name">p2</span>.  The semantics of <span class="name">parameter</span> is application specific.</p>
+</div>
+
+
+
+
+
+
+</div>
+
+
+<div id="term-Start" class="section">
+<h4><span class="secno">4.1.5 </span>Start</h4>
+
+<div class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html">   <dfn id="concept-start">Start</dfn> is when an activity is deemed to have started.  The activity did not exist before its start. Any usage or generation involving an activity follows <span class="delete">its</span><span class="insert">the activity's</span> start. A start may refer to an entity, known as <dfn id="concept-start-trigger">trigger</dfn>, that initiated the activity. </div>
+
+
+<p></p><div class="attributes" id="attributes-start">An activity <dfn title="wasStartedBy" id="dfn-wasstartedby">start</dfn><span class="withPn">, written <span class="pnExpression">wasStartedBy(id,a,e,t,attrs)</span> in PROV-N,</span> <span class="delete">contains:</span><span class="insert">has:</span>
+<ul>
+<li><span class="attribute" id="start.id">id</span>:  an <em class="rfc2119" title="optional">optional</em> identifier for the activity start;</li> 
+<li><span class="attribute" id="start.activity">activity</span>: an identifier (<span class="name">a</span>) for the started activity;</li> 
+<li><span class="attribute" id="start.trigger">trigger</span>: an <em class="rfc2119" title="optional">optional</em> identifier (<span class="name">e</span>) for the entity triggering the activity;</li> 
+<li><span class="attribute" id="start.time">time</span>: the <em class="rfc2119" title="optional">optional</em> time (<span class="name">t</span>) at which the activity was started; </li> 
+<li><span class="attribute" id="start.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set (<span class="name">attrs</span>) of attribute-value pairs <span class="delete">describing modalities according to which the</span><span class="insert">representing additional information about this</span> activity <span class="delete">was started.</span><span class="insert">start.</span>
+</li></ul>
+</div>
+
+<div class="anexample">
+<p>
+The following example contains the description of an activity <span class="name">a1</span> (a discussion), which was started at a specific time, and was triggered by an email message <span class="name">e1</span>.</p>
+<pre class="codeexample">entity(e1,[prov:type="email message"])
+activity(a1,[prov:type="Discuss"])
+wasStartedBy(a1,e1,2011-11-16T16:05:00)
+</pre>
+Furthermore, if the <span class="delete">activity happens</span><span class="insert">message is also an input</span> to <span class="delete">consume the message content, then the message would also</span><span class="insert">the activity, this can</span> be <span class="delete">regarded as an input to the activity, which we describe</span><span class="insert">described</span> as follows:
+<pre class="codeexample">used(a1,e1,-)
+</pre>
+</div>
+
+<div class="anexample">
+<p>
+In the following example, a race is started by a bang, and responsibility for this trigger is attributed to an agent 
+ <span class="name">ex:DarthVader</span>.
+</p><pre class="codeexample">activity(ex:foot_race)
+wasStartedBy(ex:foot_race,ex:bang,2012-03-09T08:05:08-05:00)
+entity(ex:bang)
+<span class="delete">agent(ex:DarthVader)
+wasAttributedTo(ex:foot_race,ex:DarthVader)</span><span class="insert">agent(ex:Bob)
+wasAttributedTo(ex:bang,ex:Bob)</span>
+</pre>
+</div>
+
+
+<p>The relations wasStartedBy and used are orthogonal, and thus need to be expressed independently, according to the situation being described.</p>
+
+</div>
+
+<div id="term-End" class="section">
+<h4><span class="secno">4.1.6 </span>End</h4>
+
+<div class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html">   <dfn id="concept-end">End</dfn> is when an activity is deemed to have ended.  The activity no longer exists after its end. Any usage, generation, or invalidation involving an activity precedes <span class="delete">its</span><span class="insert">the activity's</span> end. An end may refer to an entity, known as <dfn id="concept-end-trigger">trigger</dfn>, that terminated the activity. </div>
+
+
+<p>An activity <dfn title="wasEndedBy" id="dfn-wasendedby">end</dfn><span class="withAsn">, written <span class="pnExpression">wasEndedBy(id,a,e,t,attrs)</span> in PROV-N,</span> <span class="delete">contains:</span><span class="insert">has:</span></p>
+<ul>
+<li><span class="attribute" id="end.id">id</span>:  an <em class="rfc2119" title="optional">optional</em> identifier for the activity end;</li> 
+<li><span class="attribute" id="end.activity">activity</span>: an identifier (<span class="name">a</span>) for the ended activity;
+</li><li><span class="attribute" id="end.trigger">trigger</span>: an <em class="rfc2119" title="optional">optional</em> identifier (<span class="name">e</span>) for the entity triggering the activity ending;
+</li><li><span class="attribute" id="end.time">time</span>: the <em class="rfc2119" title="optional">optional</em> time (<span class="name">t</span>) at which the activity was ended; </li> 
+<li><span class="attribute" id="end.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set (<span class="name">attrs</span>) of attribute-value pairs <span class="delete">describing modalities according to which the</span><span class="insert">representing additional information about this</span> activity <span class="delete">was ended.</span><span class="insert">end.</span>
+</li></ul>
+
+<div class="anexample">
+<p>
+The following example is a description of an activity <span class="name">a1</span> (editing) that was ended following an approval document <span class="name">e1</span>.</p>
+<pre class="codeexample">entity(e1,[prov:type="approval document"])
+activity(a1,[prov:type="Editing"])
+wasEndedBy(a1,e1)
+</pre>
+</div>
+
+
+</div>
+
+<div id="term-wasInformedBy" class="section">
+<h4><span class="secno">4.1.7 </span>Communication</h4>
+
+<div class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html">   <dfn id="concept-communication">Communication</dfn> is the exchange of an entity by two activities, one activity using the entity generated by the other. </div>
+
+
+<p>A communication implies that activity  <span class="name">a2</span> is dependent on another <span class="name">a1</span>, by way of some unspecified entity that is generated by <span class="name">a1</span> and used by <span class="name">a2</span>.</p>
+
+
+
+
+<p></p><div class="attributes" id="attributes-wasInformedBy">
+A <dfn title="wasInformedBy" id="dfn-wasinformedby">communication</dfn><span class="withPn">, written as 
+<span class="pnExpression">wasInformedBy(id,a2,a1,attrs)</span> in PROV-N,</span> <span class="delete">contains:</span><span class="insert">has:</span> 
+<ul>
+<li><span class="attribute" id="wasInformedBy.id">id</span>:  an <em class="rfc2119" title="optional">optional</em> identifier  identifying the relation;</li> 
+<li><span class="attribute" id="wasInformedBy.informed">informed</span>: the identifier (<span class="name">a2</span>) of the informed activity;
+</li><li><span class="attribute" id="wasInformedBy.informant">informant</span>: the identifier (<span class="name">a1</span>) of the informant activity;
+</li><li><span class="attribute" id="wasInformedBy.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set (<span class="name">attrs</span>) of attribute-value pairs <span class="delete">to further describe properties of the relation.</span><span class="insert">representing additional information about this communication.</span></li>
+</ul>
+</div>
+
+
+
+<div class="anexample">
+<p>
+Consider two <span class="delete">long running services, which we represent by </span>activities  <span class="name"><span class="delete">s1</span><span class="insert">a1</span></span> and <span class="name"><span class="delete">s2</span><span class="delete">.  
+</span><span class="insert">a2</span></span><span class="insert">, the former performed by a government agency, and the latter by a driver caught speeding. 
+</span></p><pre class="codeexample"><span class="delete">activity(s1, [prov:type="service"])
+activity(s2, [prov:type="service"])
+wasInformedBy(s2,s1)</span><span class="insert">activity(a1, [prov:type="traffic regulations enforcing"])
+activity(a2, [prov:type="fine paying; check writing; mailing"])
+wasInformedBy(a2,a1)</span>
+</pre>
+The last line indicates that some<span class="insert"> implicit</span> entity was generated by  <span class="name"><span class="delete">s1</span><span class="insert">a1</span></span> and used by  <span class="name"><span class="delete">s2</span><span class="delete">.</span><span class="insert">a2</span></span><span class="insert">; this entity may be a traffic ticket that had a notice of fine, amount, and payment mailing details.</span>
+</div>
+</div>
+
+<div id="term-wasStartedByActivity" class="section">
+<h4><span class="secno">4.1.8 </span>Start by Activity</h4>
+
+<div class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html">   <dfn id="concept-startByActivity">Start by Activity</dfn> is the start of an activity with an implicit trigger generated by another activity. </div>
+
+
+
+<p></p><div class="attributes" id="attributes-startByActivity">
+A <dfn title="wasStartedByActivity" id="dfn-wasstartedbyactivity">start by activity</dfn><span class="withPn">, written as 
+<span class="pnExpression">wasStartedByActivity(id, a2, a1, attrs)</span> in PROV-N,</span> <span class="delete">contains:</span><span class="insert">has:</span>
+<ul>
+<li><span class="attribute" id="startByActivity.id">id</span>:  an <em class="rfc2119" title="optional">optional</em> identifier of the relation;</li> 
+<li><span class="attribute" id="startByActivity.started">started</span>: the identifier (<span class="name">a2</span>) of  the started activity;
+</li><li><span class="attribute" id="startByActivity.starter">starter</span>: the identifier (<span class="name">a1</span>) of the activity that started the other;</li>
+<li><span class="attribute" id="startByActivity.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set (<span class="name">attrs</span>) of attribute-value pairs <span class="delete">to further describe the properties of the relation.</span><span class="insert">representing additional information about this start by activity.</span></li>
+</ul>
+</div>
+
+
+
+<div class="anexample">
+<p>
+Suppose activities <span class="name">a1</span> and <span class="name">a2</span> are computer processes that are executed on different hosts, and that <span class="name">a1</span> started <span class="name">a2</span>. This can be expressed as in the following fragment:</p>
+<pre class="codeexample">activity(a1,t1,t2,[ex:host="server1.example.org",prov:type="workflow"])
+activity(a2,t3,t4,[ex:host="server2.example.org",prov:type="subworkflow"])
+wasStartedByActivity(a2,a1)
+</pre><span class="insert">
+It is assumed that the activities </span><span class="name"><span class="insert">a1</span></span><span class="insert"> and </span><span class="name"><span class="insert">a2</span></span><span class="insert"> are of type "workflow" and "subworkflow", respectively; the latter was started by the former.</span>
+</div>
+
+</div>
+
+
+</div>
+
+<div id="component2" class="section"> 
+<h3><span class="secno">4.2 </span>Component 2: Agents and Responsibility</h3>
+
+<p>The second component of PROV-DM is concerned with <a title="agent" href="#concept-agent" class="internalDFN">agents</a> and the notions of
+<a href="#concept-attribution" class="internalDFN">Attribution</a>, <a href="#concept-activityAssociation" class="internalDFN">Association</a>, <a href="#concept-responsibility" class="internalDFN">Responsibility</a>, relating agents to entities, activities, and agents, respectively.
+Figure <a href="#figure-component2">figure-component2</a> depicts the second <span class="delete">component,</span><span class="insert">component</span> with four <span class="delete">"UML classes"</span><span class="insert">classes</span> (Entity, Activity,  Agent, and Plan) and associations between them. <span class="delete">So-called "UML</span><span class="insert">UML</span> association <span class="delete">classes"</span><span class="insert">classes</span> are used to express n-ary relations.
+</p>
+
+
+<div style="text-align: center;">
+<figure>
+<img src="images/Agents-Responsibility.png" alt="agents and responsibilities">
+<figcaption id="figure-component2"><span class="insert">Figure 6: </span>Agents and Responsibilities Component Overview</figcaption>
+</figure>
+</div>
+
+<div id="term-Agent" class="section">
+<h4><span class="secno">4.2.1 </span>Agent</h4>
+
+<div class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html">   An <dfn id="concept-agent">agent</dfn> is <span class="delete">a type of entity</span><span class="insert">something</span> that bears some form of responsibility for an activity taking <span class="delete">place.</span><span class="insert">place or for the existence of an entity.</span> </div>
+
+
+<p></p><div class="attributes" id="attributes-agent">An <dfn title="dfn-agent" id="dfn-agent">agent</dfn><span class="withPn">, <span class="delete">noted</span><span class="insert">written</span> <span class="pnExpression" id="pn-agent">agent(id, [attr1=val1, ...])</span> in PROV-N,</span> <span class="delete">contains:</span><span class="insert">has:</span>
+<ul>
+<li><span class="attribute" id="agent.id">id</span>: an identifier for an agent;</li>
+<li><span class="attribute" id="agent.attributes">attributes</span>: a set of attribute-value pairs ((<span class="name">attr1</span>, <span class="name">val1</span>), ...) representing <span class="insert">additional information about </span>this <span class="delete">agent's situation in the world.</span><span class="insert">agent.</span>
+</li>
+</ul></div>
+
+
+<p>
+
+It is useful to define some basic categories of agents from an interoperability perspective.
+There are three types of agents that are common across most anticipated domains of <span class="delete">use:
+</span><span class="insert">use; It is acknowledged that these types do not cover all kinds of agent. </span></p>
+<ul>
+<li><span class="name"><span class="insert">SoftwareAgent</span></span>
+<div class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html"><span class="insert">   A </span><dfn id="concept-software-agent" title="software-agent"><span class="insert">software agent</span></dfn><span class="insert">  is running software. </span></div></li>
+
+<p>
+
+</p><li><span class="name"><span class="insert">Organization</span></span>
+
+<div class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html"><span class="insert">   Agents of type </span><dfn id="concept-organization" title="organization"><span class="insert">Organization</span></dfn><span class="insert">  are social or legal institutions such as companies, societies, etc. </span></div></li>
+
+<p>
+
+</p><li><span class="name">Person</span><span class="delete">: agents</span>
+
+<div class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html"><span class="insert">   Agents</span> of type <dfn id="concept-person" title="person">Person </dfn>  are people. </div></li> 
+<span class="delete">Organization</span><span class="delete">: agents of type Organization are social institutions such as companies, societies etc.</span> 
+<span class="delete">SoftwareAgent</span><span class="delete">: a software agent is running software. </span>
+</ul>
+<span class="delete">It is acknowledged that these types do not cover all kinds of agent. </span>
+
+
+
+
+
+
+
+
+
+<div class="anexample">
+<p>The following expression is about an agent identified by <span class="name">e1</span>, which is a person, named Alice, with employee number 1234.</p>
+<pre class="codeexample">agent(e1, [ex:employee="1234", ex:name="Alice", prov:type="prov:Person" %% xsd:QName])
+</pre>
+<p>It is optional to specify the type of an agent. When present, it is expressed using the <span class="name">prov:type</span> attribute.</p>
+</div>
+
+</div>
+
+<div id="term-attribution" class="section">
+<h4><span class="secno">4.2.2 </span>Attribution</h4> 
+
+<div class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html">   <dfn id="concept-attribution">Attribution</dfn> is the ascribing of an entity to an agent. </div>
+
+<p>When an entity  <span class="name">e</span> is attributed to agent  <span class="name">ag</span>, entity <span class="name">e</span> was generated by some unspecified activity that in turn was associated to agent  <span class="name">ag</span>. Thus, this relation is useful when the activity is not known, or irrelevant.</p>
+
+<p> </p><div class="attributes" id="attributes-attribution">An <dfn title="wasAttributedTo" id="dfn-wasattributedto">attribution</dfn> relation<span class="withPn">, written <span class="pnExpression">wasAttributedTo(id,e,ag,attrs)</span> in PROV-N,</span> <span class="delete">contains the following elements:</span><span class="insert">has:</span><p></p>
+<ul>
+<li><span class="attribute" id="attribution.id">id</span>: an <em class="rfc2119" title="optional">optional</em> identifier for the relation;</li> 
+<li><span class="attribute" id="attribution.entity">entity</span>: an entity identifier (<span class="name">e</span>);</li>
+<li><span class="attribute" id="attribution.agent">agent</span>: the identifier (<span class="name">ag</span>) of the agent whom the entity is ascribed to;</li>
+<li><span class="attribute" id="attribution.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set (<span class="name">attrs</span>) of attribute-value pairs <span class="delete">to further describe the properties of the relation.</span><span class="insert">representing additional information about this attribution.</span></li>
+</ul>
+</div>
+
+<div class="anexample" id="anexample-attribution">
+<p>
+Revisiting the example of <a href="#section-example-one">Section <span class="delete">3.2</span><span class="insert">3.1</span></a>,
+we can ascribe <span class="name">tr:WD-prov-dm-20111215</span> to some agents without an explicit activity.<span class="insert"> The reserved attribute </span><span class="name"><span class="insert">role</span></span><span class="insert"> (see </span><a href="#term-attribute-role"><span class="insert">Section 4.7.4.3</span></a><span class="insert">) allows for role of the agent in the attribution to be specified.</span>
+</p><pre class="codeexample">agent(ex:Paolo, [ prov:type="Person" ])
+agent(ex:Simon, [ prov:type="Person" ])
+entity(tr:WD-prov-dm-20111215, [ <span class="delete">prov:type="pr:RecsWD"</span><span class="insert">prov:type="process:RecsWD"</span> %% xsd:QName ])
+wasAttributedTo(tr:WD-prov-dm-20111215, ex:Paolo, [prov:role="editor"])
+wasAttributedTo(tr:WD-prov-dm-20111215, ex:Simon, [prov:role="contributor"])
+</pre>
+</div>
+
+</div>  
+
+
+<div id="term-ActivityAssociation" class="section">
+<h4><span class="secno">4.2.3 </span>Association</h4>
+
+<div class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html">   An activity <dfn id="concept-activityAssociation">association</dfn> 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. </div>
+
+
+<p></p><div class="attributes" id="attributes-activity-association">An <dfn title="wasAssociatedWith" id="dfn-wasassociatedwith">activity association</dfn><span class="withPn">, written <span class="pnExpression">wasAssociatedWith(id,a,ag,pl,attrs)</span> in PROV-N,</span> <span class="delete">has the following
+constituents:</span><span class="insert">has:</span>
+<ul>
+<li><span class="attribute" id="association.id">id</span>:  an <em class="rfc2119" title="optional">optional</em> identifier for the association between an activity and an agent;</li> 
+<li><span class="attribute" id="association.activity">activity</span>: an identifier (<span class="name">a</span>) for the activity;</li>
+<li><span class="attribute" id="association.agent">agent</span>: an <em class="rfc2119" title="optional">optional</em> identifier (<span class="name">ag</span>) for the agent associated with the activity;</li>
+<li><span class="attribute" id="association.plan">plan</span>: an <em class="rfc2119" title="optional">optional</em> identifier (<span class="name">pl</span>) for the plan adopted by the agent in the context of this activity;
+</li><li><span class="attribute" id="association.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set (<span class="name">attrs</span>) of attribute-value pairs <span class="delete">that describe the modalities of</span><span class="insert">representing additional information about this</span> association of this activity with this agent.</li>
+</ul></div>
+
+<div class="anexample" id="anexample-wasAssociateWith">
+<p>In the following example, a designer and an operator agents are associated with an activity. The designer's goals are achieved by a workflow <span class="name">ex:wf</span><span class="insert">, described as an an entity of type </span><span class="name"><a href="#concept-plan" class="internalDFN"><span class="insert">plan</span></a></span>.   </p>
+<pre class="codeexample">activity(ex:a, [prov:type="workflow execution"])
+agent(ex:ag1, [prov:type="operator"])
+agent(ex:ag2, [prov:type="designer"])
+wasAssociatedWith(ex:a, ex:ag1, -, [prov:role="loggedInUser", ex:how="webapp"])
+wasAssociatedWith(ex:a, ex:ag2, ex:wf,[prov:role="designer", ex:context="project1"])
+entity(ex:wf, [prov:type="prov:Plan" %% xsd:QName, ex:label="Workflow 1", 
+              ex:url="http://example.org/workflow1.bpel" %% xsd:anyURI])
+</pre>
+Since the workflow <span class="name">ex:wf</span> is itself an entity, its provenance can also be expressed in PROV-DM: it can be generated by some activity and derived from other entities,
+for instance.
+</div>
+
+<div class="anexample" id="anexample-wasAssociateWith-2">
+<p>In some cases, one wants to indicate a plan was followed, without having to specify which agent was involved.</p>
+<pre class="codeexample">activity(ex:a,[prov:type="workflow execution"])
+wasAssociatedWith(ex:a,-,ex:wf)
+entity(ex:wf,[prov:type="prov:Plan"%% xsd:QName, ex:label="Workflow 1", 
+              ex:url="http://example.org/workflow1.bpel" %% xsd:anyURI])
+</pre>
+In this case, it is assumed that an agent exists, but it has not been specified.
+</div>
+
+
+
+
+</div>  
+
+<div id="term-responsibility" class="section">
+
+<h4><span class="secno">4.2.4 </span>Responsibility</h4>
+
+<div class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html">    <dfn id="concept-responsibility">Responsibility</dfn> is the fact that an agent is accountable for the actions of a "subordinate" agent, in the context of an activity.  </div>
+
+<p><span class="delete">PROV-DM</span><span class="insert">PROV</span> offers a mild version of responsibility
+in the form of a relation to represent when an agent acted on another
+agent's behalf.  So <span class="delete">in the</span><span class="insert">for</span> example<span class="delete"> of</span> someone running a mail program,
+the program and the person are both
+agents of the activity; furthermore, the mail software
+agent is running on the person's behalf.  In another example, the
+student acted on behalf of his supervisor, who acted on behalf of the
+department chair, who <span class="delete">acts</span><span class="insert">acted</span> on behalf of the university; all those
+agents are responsible in some way for the activity <span class="delete">to take</span><span class="insert">that took</span> place but
+we do not say explicitly who bears responsibility and to what
+degree. </p>
+
+
+<p>
+</p><div class="attributes" id="attributes-responsibility">
+A <dfn title="actedOnBehalfOf" id="dfn-actedonbehalfof">responsibility</dfn> <span class="delete">relation</span><span class="insert">link</span><span class="withPn">, written <span class="pnExpression">actedOnBehalfOf(id,ag2,ag1,a,attrs)</span> in PROV-N,</span> <span class="delete">has the following constituents:</span><span class="insert">has:</span>
+<ul>
+<li><span class="attribute" id="responsibility.id">id</span>:  an <em class="rfc2119" title="optional">optional</em> identifier for the responsibility <span class="delete">chain;</span><span class="insert">link between subordinate and responsible;</span></li> 
+<li><span class="attribute" id="responsibility.subordinate">subordinate</span>: an identifier (<span class="name">ag2</span>) for the agent associated with an activity, acting on behalf of the responsible
+agent;</li>
+<li><span class="attribute" id="responsibility.responsible">responsible</span>: an identifier (<span class="name">ag1</span>) for the agent,  on behalf of which the subordinate agent acted;</li>
+<li><span class="attribute" id="responsibility.activity">activity</span>: an <em class="rfc2119" title="optional">optional</em> identifier (<span class="name">a</span>) of an activity for which the responsibility <span class="delete">chain</span><span class="insert">link</span> holds;</li>
+<li><span class="attribute" id="responsibility.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set (<span class="name">attrs</span>) of attribute-value pairs <span class="delete">that describe the modalities of</span><span class="insert">representing additional information about</span> this <span class="delete">relation.</span><span class="insert">responsibility link.</span></li>
+</ul></div>
+
+
+<div class="anexample">
+<p><span class="delete">In the</span><span class="insert">The</span> following <span class="delete">example,</span><span class="insert">fragment describes three agents:</span> a programmer, a <span class="delete">researcher</span><span class="insert">researcher,</span> and a <span class="delete">funder agents are described.</span><span class="insert">funder.</span>  The programmer and researcher are associated with a workflow activity.  The programmer acts on behalf
+of the researcher (delegation) encoding the commands specified by the researcher; the researcher acts on behalf of the funder, who has <span class="delete">an</span><span class="insert">a</span> contractual agreement with the researcher. The terms
+'delegation' and 'contact' used in this example are domain specific.</p>
+<pre class="codeexample">activity(a,[prov:type="workflow"])
+agent(ag1,[prov:type="programmer"])
+agent(ag2,[prov:type="researcher"])
+agent(ag3,[prov:type="funder"])
+wasAssociatedWith(a,ag1,[prov:role="loggedInUser"])
+wasAssociatedWith(a,ag2)<span class="insert">
+wasAssociatedWith(a,ag3)</span>
+actedOnBehalfOf(ag1,ag2,a,[prov:type="delegation"])
+actedOnBehalfOf(ag2,ag3,a,[prov:type="contract"])
+</pre>
+</div>
+
+
+
+</div>
+
+
+
+</div>
+
+<div id="component3" class="section"> 
+<h3><span class="secno">4.3 </span>Component 3: Derivations</h3>
+
+
+
+<p>The third component of PROV-DM is concerned with <a title="derivation" href="#concept-derivation" class="internalDFN">derivations</a> <span class="delete">between</span><span class="insert">of</span> <a title="entity" href="#concept-entity" class="internalDFN">entities</a><span class="delete">,</span><span class="insert"> from others,</span> and <span class="insert">derivation </span>subtypes<span class="delete"> of derivations</span> <a href="#concept-revision" class="internalDFN">Revision</a>, <a href="#concept-quotation" class="internalDFN">Quotation</a>, <a href="#concept-original-source" class="internalDFN">Original Source</a>, and <a href="#concept-traceability" class="internalDFN">Traceability</a>.
+Figure <a href="#figure-component3">figure-component3</a> <span class="delete">overviews</span><span class="insert">depicts</span> the third <span class="delete">component,</span><span class="insert">component</span> with three<span class="delete"> "UML classes"</span><span class="insert">  classes</span> (Entity, Activity, and Agent) and associations between them. <span class="delete">So-called "UML</span><span class="insert">UML</span> association <span class="delete">classes" are used to</span><span class="insert">classes</span> express n-ary relations.
+</p>
+
+
+<div style="text-align: center;">
+<figure>
+<img src="images/Derivation.png" alt="derivation">
+<figcaption id="figure-component3"><span class="insert">Figure 7: </span>Derivation Component Overview</figcaption>
+</figure>
+</div>
+
+<div id="Derivation-Relation" class="section">
+<h4><span class="secno">4.3.1 </span>Derivation</h4>
+
+
+
+
+
+<div class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html">   A <dfn id="concept-derivation">derivation</dfn>  is a transformation of an entity into another, a construction of an entity into another, or an update of an entity, resulting in a new one.</div>
+
+
+
+
+<p>According to <a href="#starting-points">Section <span class="delete">Starting Points</span><span class="insert">2</span></a>, for an entity to be transformed from, created from, or resulting from an update to another, there must be some
+underpinning activities performing the necessary actions resulting in such a derivation.  
+A derivation can be described at various levels of precision. In its simplest form, derivation relates two entities. Optionally, attributes can be added to <span class="delete">describe modalities of</span><span class="insert">represent further information about the</span> derivation.  If the derivation is the result of a single known activity, then this activity can also be optionally expressed. <span class="delete">And</span><span class="insert">To provide a completely accurate description of the derivation, the generation and usage of the generated and used entities, respectively, can be provided.  Optional information such as activity, generation, and usage can be linked</span> to <span class="delete">provide a completely accurate description of the derivation, the generation and usage of the generated and used entities, respectively, can be provided. The reason for optional information such as activity, generation, and usage to be linked to </span>derivations<span class="delete"> is</span> to aid analysis of provenance and to facilitate provenance-based reproducibility. </p>
+
+
+<p></p><div class="attributes" id="attributes-derivation">A <dfn title="wasDerivedFrom" id="dfn-wasderivedfrom">derivation</dfn><span class="withPn">, written <span class="pnExpression" id="pn-wasDerivedFrom">wasDerivedFrom(id, e2, e1, a, g2, u1, attrs)</span> in PROV-N,</span> <span class="delete">contains:</span><span class="insert">has:</span>
+<ul>
+<li><span class="attribute" id="derivation.id">id</span>:  an <em class="rfc2119" title="optional">optional</em> identifier  for a derivation;</li> 
+<li><span class="attribute" id="derivation.generatedEntity">generatedEntity</span>: the identifier (<span class="name">ee</span>) of the entity generated by the derivation;</li>
+<li><span class="attribute" id="derivation.usedEntity">usedEntity</span>: the identifier (<span class="name">e1</span>) of the entity used by the derivation;</li>
+<li><span class="attribute" id="derivation.activity">activity</span>: an <em class="rfc2119" title="optional">optional</em> identifier (<span class="name">a</span>) for the activity using and generating the above entities;</li>
+<li><span class="attribute" id="derivation.generation">generation</span>: an <em class="rfc2119" title="optional">optional</em> identifier (<span class="name">g2</span>) for the generation involving the generated entity and activity;</li> 
+<li><span class="attribute" id="derivation.usage">usage</span>: an <em class="rfc2119" title="optional">optional</em> identifier (<span class="name">u1</span>) for the usage involving the used entity and activity;</li> 
+<li><span class="attribute" id="derivation.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set (<span class="name">attrs</span>) of attribute-value pairs <span class="delete">that describe the modalities of</span><span class="insert">representing additional information about</span> this derivation.</li>
+</ul>
+</div>
+
+
+
+<div class="anexample">
+<p>The following descriptions<span class="delete"> state the existence of derivations.</span>
+<span class="delete">wasDerivedFrom(e2, e1)
+wasDerivedFrom(e2, e1, [prov:type="physical transform"])
+wasDerivedFrom(e2, e1, a, g2, u1)
+wasGeneratedBy(g2, e2, a, -)
+used(u1, a, e1, -)
+</span>
+<span class="delete">
+The first and second lines</span> are about derivations between  <span class="name">e2</span> and  <span class="name">e1</span>, but no information is provided as to the identity of the activity (and usage and generation) underpinning the derivation. In the second line, a type attribute is also provided.</p>
+<pre class="codeexample"><span class="insert">wasDerivedFrom(e2, e1)
+wasDerivedFrom(e2, e1, [prov:type="physical transform"])
+</span></pre>
+<p>
+The <span class="delete">third</span><span class="insert">following</span> description expresses that activity  <span class="name">a</span>, 
+using the entity <span class="name">e1</span> according to usage <span class="name">u1</span>,
+ derived the
+entity <span class="name">e2</span> and generated it according to generation
+ <span class="name">g2</span>. It is followed by descriptions for generation <span class="name">g2</span> and usage <span class="name">u1</span>. </p>
+<pre class="codeexample"><span class="insert">wasDerivedFrom(e2, e1, a, g2, u1)
+wasGeneratedBy(g2, e2, a, -)
+used(u1, a, e1, -)
+</span></pre>
+<p>With such a comprehensive description of derivation, a program that analyzes provenance can identify the activity underpinning the derivation, it can identify how the original entity <span class="name">e1</span> was used by  the activity (e.g. for instance, which argument it was passed as, if the activity is the result of a function invocation), and which output the derived entity <span class="name">e2</span> was obtained from (say, for a function returning multiple results).</p>
+</div>
+
+
+
+<span class="delete"> Emphasize the notion of 'affected by'   </span><span class="delete">ISSUE-133</span><span class="delete">.</span>
+
+
+
+
+
+
+
+</div>
+
+<div id="term-Revision" class="section">
+<h4><span class="secno">4.3.2 </span>Revision</h4>
+
+<p><span class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html">   A <dfn id="concept-revision">revision</dfn> is a derivation that revises an entity into a revised version. </span></p>
+
+<p> Deciding whether something is made available as a revision of something else usually involves an agent who takes responsibility for approving that the former is a due variant of the latter.
+ The agent who is responsible for the revision may optionally be specified.
+ Revision is a particular case of <a href="#concept-derivation" class="internalDFN">derivation</a> of an entity into its revised version.</p>
+
+<p> A <dfn title="wasRevisionOf" id="dfn-wasrevisionof">revision</dfn> relation<span class="withPn">, written <span class="pnExpression">wasRevisionOf(id,e2,e1,ag,attrs)</span> in PROV-N,</span> <span class="delete">contains:</span><span class="insert">has:</span></p>
+<ul>
+<li><span class="attribute" id="revision.id">id</span>: an <em class="rfc2119" title="optional">optional</em> identifier for the relation;</li> 
+<li><span class="attribute" id="revision.newer">newer</span>: the identifier (<span class="name">e2</span>) of the revised  entity;
+</li><li><span class="attribute" id="revision.older">older</span>: the identifier (<span class="name">e1</span>) of the older entity;
+</li><li><span class="attribute" id="revision.responsibility">responsibility</span>: an <em class="rfc2119" title="optional">optional</em>  identifier (<span class="name">ag</span>) for the agent who approved the newer entity as a variant of the older;
+</li><li><span class="attribute" id="revision.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set (<span class="name">attrs</span>) of attribute-value pairs <span class="delete">to further describe the properties of</span><span class="insert">representing additional information about</span> this relation.</li>
+</ul>
+
+
+
+<div class="anexample" id="anexample-revision">
+<p>
+Revisiting the example of <a href="#section-example-two">Section <span class="delete">3.1</span><span class="insert">3.2</span></a>,
+we can now state that the report 
+ <span class="name">tr:WD-prov-dm-20111215</span> is a revision of 
+ the report <span class="name">tr:WD-prov-dm-20111018</span>, approved by
+agent  <span class="name">w3:Consortium</span>.
+</p><pre class="codeexample">entity(tr:WD-prov-dm-20111215, [ <span class="delete">prov:type="pr:RecsWD"</span><span class="insert">prov:type="process:RecsWD"</span> %% xsd:QName ])
+entity(tr:WD-prov-dm-20111018, [ <span class="delete">prov:type="pr:RecsWD"</span><span class="insert">prov:type="process:RecsWD"</span> %% xsd:QName ])
+wasRevisionOf(tr:WD-prov-dm-20111215, tr:WD-prov-dm-20111018, w3:Consortium)
+</pre>
+</div>
+
+
+
+</div>  
+
+<div id="term-quotation" class="section">
+<h4><span class="secno">4.3.3 </span>Quotation</h4>
+
+<p> 
+<span class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html">   A <dfn id="concept-quotation">quotation</dfn>  is the repeat of (some or all of) an entity, such as text or image, by someone other than its original author.  </span>
+</p>
+
+<p>Quotation
+ is a particular case of  <a href="#Derivation-Relation">derivation</a> in which entity <span class="name">e2</span> is derived from an original entity <span class="name">e1</span> by copying, or "quoting", some or all of it.
+  A <dfn title="wasQuotedFrom" id="dfn-wasquotedfrom">quotation</dfn> relation<span class="withPn">, written <span class="pnExpression">wasQuotedFrom(id,e2,e1,ag2,ag1,attrs)</span> in PROV-N,</span> <span class="delete">contains:</span><span class="insert">has:</span></p>
+<ul>
+<li><span class="attribute" id="quotation.id">id</span>: an <em class="rfc2119" title="optional">optional</em> identifier for the relation;</li> 
+<li><span class="attribute" id="quotation.quote">quote</span>:  an identifier (<span class="name">e2</span>) for the entity that represents the quote (the partial copy);
+</li><li><span class="attribute" id="quotation.original">original</span>: an identifier (<span class="name">e1</span>) for the original entity being quoted;
+</li><li><span class="attribute" id="quotation.quoterAgent">quoterAgent</span>: an <em class="rfc2119" title="optional">optional</em> identifier (<span class="name">ag2</span>) for the agent who performs the quote;
+</li><li><span class="attribute" id="quotation.originalAgent">originalAgent</span>: an <em class="rfc2119" title="optional">optional</em> identifier (<span class="name">ag1</span>) for the agent to whom the original entity is attributed;
+</li><li><span class="attribute" id="quotation.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set (<span class="name">attrs</span>) of attribute-value pairs <span class="delete">to further describe the properties of the</span><span class="insert">representing additional information about this</span> relation.</li>
+
+</ul>
+
+<div class="anexample" id="anexample-quotation">
+<p>
+The following paragraph is a quote from one of  <a href="http://thinklinks.wordpress.com/2012/03/07/thoughts-from-the-dagstuhl-principles-of-provenance-workshop/">the author's blogs</a>.
+</p><blockquote id="bl-dagstuhl"><em>
+"During the workshop, it became clear to me that the consensus based models (which are often graphical in nature) can not only be formalized but also be directly connected to these database focused formalizations. I just needed to get over the differences in syntax.  This could imply that we could have nice way to trace provenance across systems and through databases and be able to understand the mathematical properties of this interconnection."</em>
+</blockquote>
+<p>If <a href="http://thinklinks.wordpress.com/2012/03/07/thoughts-from-the-dagstuhl-principles-of-provenance-workshop/"><span class="name">wp:thoughts-from-the-dagstuhl-principles-of-provenance-workshop/</span></a> denotes the original blog by agent <span class="name">ex:Paul</span>, and 
+ <a href="#bl-dagstuhl"><span class="name">dm:bl-dagstuhl</span></a> denotes the above paragraph, then the following descriptions express that the above paragraph is copied by agent <span class="name">ex:Luc</span> from a part of the blog, attributed to the agent <span class="name">ex:Paul</span>.</p>
+<pre class="codeexample">entity(wp:thoughts-from-the-dagstuhl-principles-of-provenance-workshop/)
+agent(ex:Luc)
+agent(ex:Paul)
+wasQuotedFrom(dm:bl-dagstuhl,wp:thoughts-from-the-dagstuhl-principles-of-provenance-workshop/,ex:Luc,ex:Paul)
+</pre>
+
+</div>
+
+
+</div>  
+
+
+<div id="term-original-source" class="section">
+<h4><span class="secno">4.3.4 </span>Original Source</h4>
+
+<p>
+<span class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html">   An <dfn id="concept-original-source">original source</dfn> refers to the source material that is closest to the person, information, period, or idea being studied. </span>
+</p>
+
+<p>An <dfn id="dfn-original-source">original source</dfn> relation is a particular case of <a href="#concept-derivation" class="internalDFN">derivation</a> 
+that aims to give
+credit to the source that originated some information. It is recognized that it may be
+hard to determine which entity constitutes an original source. This definition is inspired by
+<span class="name">original-source</span> as defined in
+<a href="http://googlenewsblog.blogspot.com/2010/11/credit-where-credit-is-due.html">http://googlenewsblog.blogspot.com/2010/11/credit-where-credit-is-due.html</a>.</p>
+
+
+<p> An <dfn title="hadOriginalSource" id="dfn-hadoriginalsource">original source</dfn> relation<span class="withPn">, written <span class="pnExpression">hadOriginalSource(id,e2,e1,attrs)</span>,</span> <span class="delete">contains:</span><span class="insert">has:</span></p>
+<ul>
+<li><span class="attribute" id="originalSource.id">id</span>:  an <em class="rfc2119" title="optional">optional</em> identifier for the relation;</li> 
+<li><span class="attribute" id="originalSource.derived">derived</span>: an identifier (<span class="name">e2</span>) for the derived entity; </li>
+<li><span class="attribute" id="originalSource.source">source</span>: an identifier (<span class="name">e1</span>) for the original source entity;</li>
+<li><span class="attribute" id="originalSource.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set (<span class="name">attrs</span>) of attribute-value pairs <span class="delete">to further describe the properties of the</span><span class="insert">representing additional information about this</span> relation.</li>
+</ul>
+
+<div class="anexample">
+<p>
+Let us consider the <span class="insert">concept introduced in the </span>current <span class="delete">section </span><span class="insert">section, identified as </span><a href="#concept-original-source"><span class="name"><span class="delete">dm:term-original-source</span><span class="insert">dm:concept-original-source</span></span></a>, and
+the Google page <a href="http://googlenewsblog.blogspot.com/2010/11/credit-where-credit-is-due.html"><span class="name">go:credit-where-credit-is-due.html</span></a>, where the notion <span class="insert">original-source </span>was originally <span class="delete">described.</span><span class="insert">described (to the knowledge of the authors).</span>
+</p><pre class="codeexample"><span class="delete">entity(dm:term-original-source)</span><span class="insert">entity(dm:concept-original-source)</span>
+entity(go:credit-where-credit-is-due.html)
+<span class="delete">hadOriginalSource(dm:term-original-source,go:credit-where-credit-is-due.html)</span><span class="insert">hadOriginalSource(dm:concept-original-source,go:credit-where-credit-is-due.html)</span>
+</pre>
+</div>
+
+
+</div>  
+
+<div id="term-traceability" class="section">
+<h4><span class="secno">4.3.5 </span>Traceability</h4>
+
+<p>
+<span class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html">   <dfn id="concept-traceability">Traceability</dfn> is the ability to link back an entity to another by means of derivation or responsibility relations, possibly repeatedly traversed. </span>
+</p>
+
+
+<p> A traceability relation between two entities  <span class="name">e2</span> and  <span class="name">e1</span> is a generic dependency of <span class="name">e2</span>
+on  <span class="name">e1</span> that indicates either that <span class="name">e1</span> may have been necessary for <span class="name">e2</span> to be created, or that <span class="name">e1</span> bears 
+some responsibility for  <span class="name">e2</span>'s existence.
+
+
+</p><p><span class="insert">A </span><dfn title="tracedTo" id="dfn-tracedto">Traceability</dfn><span class="insert"> relation </span><span class="withPn">, written <span class="pnExpression">tracedTo(id,e2,e1,attrs)</span> in PROV-N,</span> <span class="delete">contains:</span><span class="insert">has:</span></p>
+<ul>
+<li><span class="attribute" id="traceability.id">id</span>:  an <em class="rfc2119" title="optional">optional</em> identifier identifying the relation;</li> 
+<li><span class="attribute" id="traceability.entity">entity</span>:  an identifier (<span class="name">e2</span>) for an entity;
+</li><li><span class="attribute" id="traceability.ancestor">ancestor</span>: an identifier (<span class="name">e1</span>) for an ancestor entity that the former depends on;
+</li><li><span class="attribute" id="traceability.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set (<span class="name">attrs</span>) of attribute-value pairs <span class="delete">to further describe properties of the</span><span class="insert">representing additional information about this</span> relation.</li>
+</ul>
+<p>We note that the ancestor is allowed to be an agent since agents are entities. </p>
+
+<p>
+<a href="#concept-derivation" class="internalDFN">Derivation</a> and <span class="delete">association</span><a href="#concept-attribution" class="internalDFN"><span class="insert">attribution</span></a> are particular cases of  traceability.
+</p>
+
+<div class="anexample">
+<p>We refer to the example of <a href="#section-example-two">Section 3.1</a>, and specifically to <a href="#prov-a-document">Figure <span class="delete">prov-tech-report</span><span class="insert">2</span></a>. We can see that there is a path from 
+<span class="name">tr:WD-prov-dm-20111215</span> to 
+<span class="name">w3:Consortium</span> <span class="delete">or</span><span class="insert">and</span> to
+<span class="name"><span class="delete">pr:rec-advance</span><span class="insert">process:rec-advance</span></span>. This is expressed as follows.
+</p><pre class="codeexample"> tracedTo(tr:WD-prov-dm-20111215,w3:Consortium)
+ <span class="delete">tracedTo(tr:WD-prov-dm-20111215,pr:rec-advance)</span><span class="insert">tracedTo(tr:WD-prov-dm-20111215,process:rec-advance)</span>
+</pre>
+</div>
+
+
+
+
+</div>
+
+</div>
+
+<div id="component4" class="section"> 
+<h3><span class="secno">4.4 </span>Component 4: Alternate Entities</h3>
+
+
+<p>The fourth component of PROV-DM is concerned with
+relations <a href="#concept-specialization" class="internalDFN">specialization</a> and <a href="#concept-alternate" class="internalDFN">alternate</a> between entities.
+Figure <a href="#figure-component4">figure-component4</a> <span class="delete">overviews
+the component, which consists of</span><span class="insert">depicts
+the fourth component with</span> a single <span class="delete">"UML Class"</span><span class="insert">class</span> and two associations.
+</p>
+
+
+<div style="text-align: center;">
+<figure>
+<img src="images/Alternates.png" alt="alternates">
+<figcaption id="figure-component4"><span class="insert">Figure 8: </span>Alternates Component Overview</figcaption>
+</figure>
+</div>
+
+
+
+<p>Wherever two people describe the provenance of a same thing, 
+one cannot expect them to coordinate and agree on the identifiers to use to denote that thing.</p>
+<div class="anexample" id="entity-example1">
+<p>User Alice writes an article. In its provenance, she wishes to refer to the precise version of the article with a date-specific URI, as she might edit the article later. Alternatively, user Bob refers to the article in general, <span class="delete">indepedently</span><span class="insert">independently</span> of its variants over time.</p>
+</div>
+<p>
+To allow for identifiers to be chosen freely and independently by each  user, the PROV data model introduces relations
+that allow entities  to be linked together.
+The following two relations are introduced for expressing  specialized or alternate entities. </p>
+
+
+<div id="term-specialization" class="section">
+
+<h4><span class="secno">4.4.1 </span>Specialization</h4>
+
+
+<span class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html">   An entity is a <dfn id="concept-specialization">specialization</dfn> of another if they refer to some common thing but the former is a more constrained entity than the latter. The common thing <span class="delete">do</span><span class="insert">does</span> not need to be identified. </span> 
+
+
+<p>
+Examples of constraints  include a time period, an abstraction, and a context associated with the entity.</p>
+
+
+
+
+<p>
+</p><div class="attributes" id="attributes-specialization">A <dfn title="specializationOf" id="dfn-specializationof">specialization</dfn>  relation<span class="withPn">, written <span class="pnExpression">specializationOf(sub, super)</span> in PROV-N,</span> <span class="delete">has the following constituents:</span><span class="insert">has:</span>
+
+<ul>
+<li><span class="attribute" id="specialization.specializedEntity">specializedEntity</span>: an identifier (<span class="name">sub</span>) of the specialized entity;</li>
+<li><span class="attribute" id="specialization.generalEntity">generalEntity</span>: an identifier (<span class="name">super</span>) of the entity that is being specialized.</li>
+</ul>
+</div>
+
+<div class="anexample" id="anexample-specialization">
+<p>
+The BBC news home page on 2012-03-23 <span class="name">ex:bbcNews2012-03-23</span>
+is a specialization of the BBC news page in general
+ <a href="http://www.bbc.co.uk/news/">bbc:news/</a>. This can be expressed as follows.
+</p><pre class="codeexample">specializationOf(ex:bbcNews2012-03-23, bbc:news/)
+</pre>
+<span class="delete">Given that the BBC news does not define a URI for this day's news page, we are creating a</span><span class="insert">We have created a new</span> qualified <span class="delete">name</span><span class="insert">name,  </span><span class="name"><span class="insert">ex:bbcNews2012-03-23</span></span><span class="insert">,</span> in the namespace <span class="name">ex</span><span class="delete">. 
+</span><span class="insert">, to identify the specific page carrying this day's news, which would otherwise be the generic  </span><span class="name"><span class="insert">bbc:news/</span></span><span class="insert"> page.
+</span></div>
+
+
+
+
+
+
+
+
+</div>
+
+<div id="term-alternate" class="section">
+
+<h4><span class="secno">4.4.2 </span>Alternate</h4>
+
+
+<span class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html">   An entity is <dfn id="concept-alternate">alternate</dfn> of another if they are both a specialization of some common entity. The common entity does not need to be identified. </span>
+
+
+  
+
+<p></p><div class="attributes" id="attributes-alternate">An <dfn title="alternateOf" id="dfn-alternateof">alternate</dfn> relation<span class="withPn">, written <span class="pnExpression">alternateOf(e1, e2)</span> in PROV-N,</span> <span class="delete">has the following constituents:</span><span class="insert">has:</span>
+<ul>
+<li><span class="attribute" id="alternate.alternate1">alternate1</span>: an identifier (<span class="name">e1</span>) of the first of the two entities;</li>
+<li><span class="attribute" id="alternate.alternate2">alternate2</span>: an identifier (<span class="name">e2</span>) of the second of the two entities.</li>
+</ul>
+</div>
+
+<div class="anexample" id="anexample-alternate">
+<p>
+A given news item on the BBC News site 
+ <a href="http://www.bbc.co.uk/news/science-environment-17526723">bbc:news/science-environment-17526723</a> for desktop
+is an alternate of a 
+ <a href="http://www.bbc.co.uk/news/mobile/science-environment-17526723">bbc:news/mobile/science-environment-17526723</a> for mobile devices.</p>
+<pre class="codeexample">entity(bbc:news/science-environment-17526723, [ prov:type="a news item for desktop"])
+entity(bbc:news/mobile/science-environment-17526723, [ prov:type="a news item for mobile devices"])
+alternateOf(bbc:news/science-environment-17526723, bbc:news/mobile/science-environment-17526723)
+</pre>
+<p>They are both specialization of an (unspecified) entity. </p>
+</div>
+
+
+<div class="anexample" id="anexample-alternate2">
+<p>
+Considering again the two versions of the technical report <span class="name"><a href="http://www.w3.org/TR/2011/WD-prov-dm-20111215">tr:WD-prov-dm-20111215</a></span> (second working draft) and <span class="name"><span class="name"><a href="http://www.w3.org/TR/2011/WD-prov-dm-20111018">tr:WD-prov-dm-20111018</a></span></span> (first working draft). They are alternate of each other.
+</p><pre class="codeexample">entity(tr:WD-prov-dm-20111018)
+entity(tr:WD-prov-dm-20111215)
+alternateOf(tr:WD-prov-dm-20111018,tr:WD-prov-dm-20111215)
+</pre>
+<p>They are both specialization of the page <a href="http://www.w3.org/TR/prov-dm/">http://www.w3.org/TR/prov-dm/</a>.</p>
+</div>
+
+</div>
+
+</div>
+
+
+<div id="component5" class="section"> 
+<h3><span class="secno">4.5 </span>Component 5: Collections</h3>
+
+<p>The fifth component of PROV-DM is concerned with the notion of collections. 
+A collection is an entity that has some members. The members are themselves entities, and therefore their provenance can be expressed. <span class="delete">In many applications, it is also of interest</span><span class="insert">Some applications need</span> to be able to express the provenance of the collection  itself: e.g. who maintains the collection, which <span class="delete">member</span><span class="insert">members</span> it contains <span class="delete">at which point in time,</span><span class="insert">as it evolves,</span> and how it was assembled. The purpose of Component 5 is to define the types and relations that are useful to express the provenance of collections. </p>
+
+<p>Figure <a href="#figure-component5">figure-component5</a> <span class="delete">overviews
+the component, which consists of</span><span class="insert">depicts
+the fifth component with</span> two<span class="delete"> "UML Class"</span><span class="insert">  classes</span> and three associations.
+</p>
+
+
+<div style="text-align: center;">
+<figure>
+<img src="images/Collections.png" alt="collections">
+<figcaption id="figure-component5"><span class="insert">Figure 9: </span>Collections Component Overview</figcaption>
+</figure>
+</div>
+
+
+<p>The intent of these relations and types is to express the <em>history of changes that occurred to a collection</em>. 
+Changes to collections are about the insertion of entities to collections and the removal of members from collections.
+Indirectly, such history provides a way to reconstruct the contents of a collection.</p>
+
+<div id="term-collection" class="section">
+<h4><span class="secno">4.5.1 </span>Collection</h4>
+
+<span class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html">   A <dfn id="concept-collection">collection</dfn> is an entity that provides a structure to some constituents, which are themselves entities. These constituents are said to be <dfn id="dfn-member-of">member of</dfn> the collections.  </span>
+
+
+<p>Conceptually, a collection has a logical structure consisting of key-entity pairs. This structure is often referred to as a <em>map</em>, and is a generic indexing <span class="delete">mechanisms</span><span class="insert">mechanism</span> that can abstract commonly used data structures, including associative lists (also known as "dictionaries" in some programming languages), relational tables, ordered lists, and <span class="delete">more (the</span><span class="insert">more. The</span> specification of such specialized structures in terms of key-value pairs is out of the scope of this <span class="delete">document).</span><span class="insert">document.</span></p>
+
+<p>A given collection forms a given structure for its members.  A different structure (obtained either by insertion or removal of members) constitutes a different collection. Hence,
+ for the purpose of provenance, a collection entity is viewed as a snapshot of a structure. Insertion and removal operations result in new snapshots, each snapshot forming an identifiable collection entity.</p>
+
+
+<p>PROV-DM defines the following types related to collections:</p>
+
+<ul>
+  <li> <span class="name">prov:Collection</span>  denotes an entity of type collection, i.e. an entity that  can participate in  relations amongst collections;
+
+  </li><li><span class="name">prov:EmptyCollection</span> denotes an empty collection.
+</li></ul>
+
+
+
+
+
+
+
+<div class="anexample">
+<pre class="codeexample">entity(c0, <span class="delete">[prov:type="EmptyCollection"</span><span class="insert">[prov:type="prov:EmptyCollection"</span> %% xsd:QName])  // c0 is an empty collection
+entity(c1, <span class="delete">[prov:type="Collection"</span><span class="insert">[prov:type="prov:Collection"</span>  %% xsd:QName])      // c1 is a collection, with unknown content
+</pre>
+</div>
+
+
+
+</div>  
+
+
+<div id="term-collection-insertion" class="section">
+<h4><span class="secno">4.5.2 </span>Insertion</h4>
+
+<span class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html">  <dfn id="concept-insertion">Insertion</dfn> is a derivation that transforms a collection into another, by insertion of one or more key-entity pairs. </span>
+
+
+
+
+
+<p></p><div class="attributes" id="attributes-derivedByInsertionFrom">
+<p><span class="delete">A</span><span class="insert">An</span> <dfn title="derivedByInsertionFrom" id="dfn-derivedbyinsertionfrom"><span class="delete">Derivation-by-Insertion</span><span class="insert">Insertion</span></dfn> relation<span class="withPn">, written <span class="pnExpression">derivedByInsertionFrom(id, c2, c1, {(key_1, e_1), ..., (key_n, e_n)}, attrs)</span>,</span> <span class="delete">contains:</span><span class="insert">has:</span></p>
+<ul>
+<li><span class="attribute" id="derivedByInsertionFrom.id">id</span>:  an <em class="rfc2119" title="optional">optional</em> identifier identifying the relation;</li>
+<li><span class="attribute" id="derivedByInsertionFrom.after">after</span>: an identifier (<span class="name">c2</span>) for the collection <em>after</em> insertion; </li>
+<li><span class="attribute" id="derivedByInsertionFrom.before">before</span>: an identifier (<span class="name">c1</span>) for the collection <em>before</em> insertion;</li>
+<li><span class="attribute" id="derivedByInsertionFrom.key-entity-set">key-entity-set</span>: the inserted key-entity pairs <span class="name">(key_1, e_1)</span>, ..., <span class="name">(key_n, e_n)</span> in which each <span class="name">key_i</span> is a <a href="#dfn-value" class="internalDFN">value</a>, and <span class="name">e_i</span> is an identifier  for the entity that has been inserted with the key;
+ each <span class="name">key_i</span> is expected to be unique for the key-entity-set;
+</li>
+<li><span class="attribute" id="derivedByInsertionFrom.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set (<span class="name">attrs</span>) of attribute-value pairs <span class="delete">to further describe the properties of the</span><span class="insert">representing additional information about this</span> relation.</li>
+</ul>
+</div>
+
+<p>
+<span class="delete">A Derivation-by-Insertion</span><span class="insert">An Insertion</span> relation <span class="name">derivedByInsertionFrom(id, c2, c1,  {(key_1, e_1), ..., (key_n, e_n)})</span> states that  <span class="name">c2</span> is the state of the collection
+following the insertion of pairs <span class="name">(key_1, e_1)</span>, ..., <span class="name">(key_n, e_n)</span> into collection  <span class="name">c1</span>.</p>
+
+
+
+
+
+
+<div class="anexample">
+<pre class="codeexample">entity(c0, <span class="delete">[prov:type="EmptyCollection"</span><span class="insert">[prov:type="prov:EmptyCollection"</span> %% xsd:QName])    // c0 is an empty collection
+entity(e1)
+entity(e2)
+entity(e3)
+entity(c1, <span class="delete">[prov:type="Collection"</span><span class="insert">[prov:type="prov:Collection"</span> %% xsd:QName])
+entity(c2, <span class="delete">[prov:type="Collection"</span><span class="insert">[prov:type="prov:Collection"</span> %% xsd:QName])
+
+derivedByInsertionFrom(c1, c0, {("k1", e1), ("k2", e2)})       
+derivedByInsertionFrom(c2, c1, {("k3", e3)})    
+</pre>
+From this set of descriptions, we conclude:
+<ul>
+<li>   <span class="name">c0<span class="delete"> = </span></span><span class="insert"> is the set </span><span class="name">{  }
+   </span>
+</li><li>   <span class="name">c1<span class="delete"> = </span></span><span class="insert"> is the set </span><span class="name">{ ("k1", e1), ("k2", e2) }
+   </span>
+</li><li>   <span class="name">c2<span class="delete"> = </span></span><span class="insert"> is the set </span><span class="name">{ ("k1", e1), ("k2", e2), ("k3", e3) }
+  </span>
+</li></ul>
+</div>
+
+<p>Insertion provides an "update semantics" for the keys that are already present in <span class="delete">the</span><span class="insert">a</span> collection,<span class="delete"> as</span><span class="insert">
+since a new pair replaces an existing pair with the same key in the new collection. This is</span> illustrated by the following example. </p>
+
+<div class="anexample">
+<pre class="codeexample">entity(c0, <span class="delete">[prov:type="EmptyCollection"</span><span class="insert">[prov:type="prov:EmptyCollection"</span> %% xsd:QName])    // c0 is an empty collection
+entity(e1)
+entity(e2)
+entity(e3)
+entity(c1, <span class="delete">[prov:type="Collection"</span><span class="insert">[prov:type="prov:Collection"</span> %% xsd:QName])
+entity(c2, <span class="delete">[prov:type="Collection"</span><span class="insert">[prov:type="prov:Collection"</span> %% xsd:QName])
+
+derivedByInsertionFrom(c1, c0, {("k1", e1), ("k2", e2)})       
+derivedByInsertionFrom(c2, c1, {("k1", e3)})    
+</pre>
+   This is a case of <em>update</em> of <span class="name">e1</span> to <span class="name">e3</span> for the same key, <span class="name">"k1"</span>. <br>
+  From this set of descriptions, we conclude:
+  
+<ul>
+<li>   <span class="name">c0<span class="delete"> = </span></span><span class="insert"> is the set </span><span class="name">{  }
+   </span>
+</li><li>   <span class="name">c1<span class="delete"> = </span></span><span class="insert"> is the set </span><span class="name">{ ("k1", e1), ("k2", e2) }
+   </span>
+</li><li>   <span class="name">c2<span class="delete"> = </span></span><span class="insert"> is the set </span><span class="name">{ ("k1", e3), ("k2", e2) }
+  </span>
+</li></ul>
+</div>
+
+</div>  
+
+
+<div id="term-collection-removal" class="section">
+<h4><span class="secno">4.5.3 </span>Removal</h4>
+
+<span class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html">  <dfn id="concept-removal">Removal</dfn> is a derivation that transforms a collection into another, by removing one or more key-entity pairs. </span>
+
+
+
+
+<p>
+</p><div class="attributes" id="attributes-derivedByRemovalFrom">
+<p> A <dfn title="derivedByRemovalFrom" id="dfn-derivedbyremovalfrom"><span class="delete">Derivation-by-Removal</span><span class="insert">Removal</span></dfn> relation, written <span class="pnExpression">derivedByRemovalFrom(id, c2, c1, {key_1, ... key_n}, attrs)</span>, <span class="delete">contains:</span><span class="insert">has:</span></p>
+<ul>
+<li><span class="attribute" id="derivedByRemovalFrom.id">id</span>:  an <em class="rfc2119" title="optional">optional</em> identifier identifying the relation;</li>
+<li><span class="attribute" id="derivedByRemovalFrom.after">after</span>: an identifier (<span class="name">c2</span>) for the collection  <em>after</em> the deletion; </li>
+<li><span class="attribute" id="derivedByRemovalFrom.before">before</span>: an identifier (<span class="name">c1</span>)  for the collection <em>before</em> the deletion;</li>
+<li><span class="attribute" id="derivedByRemovalFrom.key-set">key-set</span>: a set of deleted keys  <span class="name">key_1</span>, ..., <span class="name">key_n</span>, for which each <span class="name">key_i</span> is a <a href="#dfn-value" class="internalDFN">value</a>;</li>
+<li><span class="attribute" id="derivedByRemovalFrom.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set (<span class="name">attrs</span>) of attribute-value pairs <span class="delete">to further describe the properties of the</span><span class="insert">representing additional information about this</span> relation.</li>
+</ul>
+</div>
+
+<p><span class="delete">Derivation-by-Removal</span><span class="insert">A Removal</span> relation <span class="name">derivedByRemovalFrom(id, c2,c1, {key_1, ..., key_n})</span> states that  <span class="name">c2</span> is  the  state of the collection following the removal of the set of pairs corresponding to keys  <span class="name">key_1...key_n</span> from  <span class="name">c1</span>.
+
+</p><div class="anexample">
+<pre class="codeexample">entity(c0, <span class="delete">[prov:type="EmptyCollection"])</span><span class="insert">[prov:type="prov:EmptyCollection"])</span>    // c0 is an empty collection
+entity(e1)
+entity(e2)
+entity(e3)
+entity(c1, <span class="delete">[prov:type="Collection"])</span><span class="insert">[prov:type="prov:Collection"])</span>
+entity(c2, <span class="delete">[prov:type="Collection"])</span><span class="insert">[prov:type="prov:Collection"])</span>
+
+derivedByInsertionFrom(c1, c0, {("k1", e1), ("k2",e2)})       
+derivedByInsertionFrom(c2, c1, {("k3", e3)})
+derivedByRemovalFrom(c3, c2, {"k1", "k3"})   
+</pre>
+From this set of descriptions, we conclude:
+     
+<ul>
+<li><span class="name">c0<span class="delete"> = </span></span><span class="insert"> is the set </span><span class="name">{  }
+   </span>
+</li><li><span class="name">c1<span class="delete"> = </span></span><span class="insert"> is the set </span><span class="name">{ ("k1", e1), ("k2", e2)  }
+   </span>
+</li><li><span class="name">c2<span class="delete"> = </span></span><span class="insert"> is the set </span><span class="name">{ ("k1", e1), ("k2", e2), ("k3", e3) }
+   </span>
+</li><li><span class="name">c3<span class="delete"> = </span></span><span class="insert"> is the set </span><span class="name">{ ("k2", e2) }
+  </span>
+</li></ul>
+
+  
+</div>
+
+</div>  
+
+
+<div id="term-collection-membership" class="section">
+<h4><span class="secno">4.5.4 </span>Membership</h4>
+
+
+<span class="glossary-ref" prov:hadoriginalsource="http://dvcs.w3.org/hg/prov/file/31816209cab0/model/glossary.html"> <dfn id="concept-membership">Membership</dfn> is the belonging of a key-entity pair to collection. </span>
+
+<p>
+The insertion and removal  relations make insertions and removals explicit as part of the history of a collection. This, however, requires explicit mention of the state of the collection prior to each operation. The membership relation removes this needs, allowing the state of a collection <span class="name">c</span> to be expressed without having to introduce a prior state.</p>
+
+<p>
+</p><div class="attributes" id="attributes-memberOf">
+ A <dfn title="memberOf" id="dfn-memberof">membership</dfn> relation, written <span class="pnExpression">memberOf(id, c, {(key_1, e_1), ..., (key_n, e_n)}, attrs)</span>, <span class="delete">contains:</span><span class="insert">has:</span>
+<ul>
+<li><span class="attribute" id="memberOf.id">id</span>:  an <em class="rfc2119" title="optional">optional</em> identifier identifying the relation;</li>
+<li><span class="attribute" id="memberOf.after">after</span>: an identifier (<span class="name">c</span>) for the collection whose members are asserted; </li>
+<li><span class="attribute" id="memberOf.key-entity-set">key-entity-set</span>: a set of key-entity pairs <span class="name">(key_1, e_1)</span>, ..., <span class="name">(key_n, e_n)</span> that are members of the collection;</li>
+<li><span class="delete">attributes</span><span class="attribute" id="memberOf.complete"><span class="insert">complete</span></span>: an <em class="rfc2119" title="optional">optional</em> <span class="insert">boolean 
+</span><a title="value" href="#dfn-value" class="internalDFN"><span class="insert">Value</span></a><span class="insert">; if true, it indicates that no other member belongs to the collection; 
+</span></li><li><span class="attribute" id="memberOf.attributes"><span class="insert">attributes</span></span><span class="insert">: an </span><em class="rfc2119" title="optional"><span class="insert">optional</span></em> set (<span class="name">attrs</span>) of attribute-value pairs <span class="delete">to further describe the properties of the</span><span class="insert">representing additional information about this</span> relation.</li>
+</ul>
+</div>
+
+
+
+
+
+
+<p>The description <span class="name">memberOf(c, {(key_1, e_1), ..., (key_n, e_n)})</span> states that  <span class="name">c</span> is known to include <span class="name">(key_1, e_1)</span>, ..., <span class="name">(key_n, e_n)}</span>, without having to introduce a previous state. </p>
+
+<div class="anexample">
+<pre class="codeexample"><span class="delete">entity(c,</span><span class="insert">entity(c1,</span> [prov:type="prov:Collection"  %% xsd:QName])    // <span class="delete">c</span><span class="insert">c1</span> is a collection, with unknown content
+<span class="delete">activity(a)
+wasGeneratedBy(c,a)   // a produced c
+
+entity(e1)
+entity(e2)
+memberOf(c, {("k1", e1), ("k2", e2)} )  
+
+entity(e3)
+entity(c1,</span><span class="insert">entity(c2,</span> [prov:type="prov:Collection"  %% xsd:QName])<span class="insert">    // c2 is a collection, with unknown content</span>
+
+<span class="delete">derivedByInsertionFrom(c1, c,</span><span class="insert">entity(e1)
+entity(e2)
+
+memberOf(c1, {("k1", e1), ("k2", e2)} )  
+memberOf(c2, {("k1", e1), ("k2", e2)}, true)  
+
+entity(e3)
+entity(c3, [prov:type="prov:Collection"  %% xsd:QName])
+
+derivedByInsertionFrom(c3, c1,</span> {("k3", e3)})     
+</pre>
+  
+From <span class="delete">this set of assertions,</span><span class="insert">these descriptions,</span> we conclude:
+  <span class="delete">   c  contains   ("k1", e1), ("k2", e2) 
+   c1 contains   ("k1", e1), ("k2", e2), ("k3", v3) 
+  </span><span class="delete">
+ Note that the state of</span>
+<ul>
+<li> <span class="name">c1</span><span class="delete"> with these relations is</span><span class="insert">  has  the following pairs as members: </span><span class="name"><span class="insert">("k1", e1), ("k2", e2)</span></span><span class="insert">, and may contain others.
+</span></li><li> <span class="name"><span class="insert">c2</span></span><span class="insert">  exactly has  the following pairs as members: </span><span class="name"><span class="insert">("k1", e1), ("k2", e2)</span></span><span class="insert">, and does not contain any other.
+</span></li><li> <span class="name"><span class="insert">c3</span></span><span class="insert"> has  the following pairs as members: </span><span class="name"><span class="insert">("k1", e1), ("k2", e2), ("k3", v3)</span></span><span class="insert">, and may contain others.
+</span></li></ul>
+<p><span class="insert"> Thus, the states of </span><span class="name"><span class="insert">c1</span></span><span class="insert"> and </span><span class="name"><span class="insert">c3</span></span><span class="insert"> are</span> only partially <span class="delete">known, because the state of </span><span class="delete">c</span><span class="delete"> is unknown.</span><span class="insert">known.</span></p>
+</div>
+
+
+
+</div>  
+
+
+
+<p>Further considerations: </p>
+
+<ul>
+
+<li>The state of a collection (i.e., the set of key-entity pairs it contains) at a given point in a sequence of operations is never stated explicitly. Rather, it can be obtained by querying the chain of derivations involving insertions and removals. Entity type <span class="name">