--- a/model/diff.html Wed May 23 13:10:42 2012 +0100
+++ b/model/diff.html Wed May 23 13:15:52 2012 +0100
@@ -918,7 +918,7 @@
font-weight: bold;
}
</span></style><link href="./extra-dm.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="insert">working towards WD6 (</span><a href="diff.html"><span class="insert">Diffs since last release</span></a><span class="insert">)</span></h2><h2 id="w3c-editor-s-draft-15-may-2012"><acronym title="World Wide Web Consortium">W3C</acronym> <span class="delete">Working</span><span class="insert">Editor's</span> Draft <span class="delete">03</span><span class="insert">15</span> May 2012</h2><dl><dt>This version:</dt><dd><span class="delete">http://www.w3.org/TR/2012/WD-prov-dm-20120503/</span><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-dm.html"><span class="insert">http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-dm.html</span></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><span class="delete">http://www.w3.org/TR/2012/WD-prov-dm-20120202/</span><a href="http://www.w3.org/TR/2012/WD-prov-dm-20120503/"><span class="insert">http://www.w3.org/TR/2012/WD-prov-dm-20120503/</span></a></dd><dt>Editors:</dt><dd><a href="http://www.ecs.soton.ac.uk/~lavm/">Luc Moreau</a>, University of Southampton</dd>
+ <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="insert">working towards WD6 (</span><a href="diff.html"><span class="insert">Diffs since last release</span></a><span class="insert">)</span></h2><h2 id="w3c-editor-s-draft-23-may-2012"><acronym title="World Wide Web Consortium">W3C</acronym> <span class="delete">Working</span><span class="insert">Editor's</span> Draft <span class="delete">03</span><span class="insert">23</span> May 2012</h2><dl><dt>This version:</dt><dd><span class="delete">http://www.w3.org/TR/2012/WD-prov-dm-20120503/</span><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-dm.html"><span class="insert">http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-dm.html</span></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><span class="delete">http://www.w3.org/TR/2012/WD-prov-dm-20120202/</span><a href="http://www.w3.org/TR/2012/WD-prov-dm-20120503/"><span class="insert">http://www.w3.org/TR/2012/WD-prov-dm-20120503/</span></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>Reza B'Far</span>, Oracle Corporation</dd>
@@ -938,13 +938,16 @@
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:
+PROV-DM <span class="insert">distinguishes core structures, forming the essence of provenance descriptions, from
+extended structures catering for more advanced uses of provenance.
+PROV-DM </span>is <span class="delete">structured</span><span class="insert">organized</span> in six components,<span class="insert"> respectively</span> 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 activities that happened;
(3) derivations of entities from entities;
(4) properties to link entities that refer to the same thing;
-(5) collections forming a logical structure for its members;
-(6) a simple annotation mechanism.
+(5) <span class="insert">notion of bundle, a mechanism to support provenance of provenance;
+(6) </span>collections forming a logical structure for its <span class="delete">members;
+(6) a simple annotation mechanism.</span><span class="insert">members.</span>
</p>
<p>This document introduces the provenance concepts found in
@@ -987,7 +990,7 @@
<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 model from its contraints and the notation used to illustrate it. The PROV-DM release is synchronized with the release of the PROV-O, PROV-PRIMER, PROV-N, and PROV-CONSTRAINTS documents. We are now clarifying the entry path to the PROV family of specifications.</p>
<p>This document was published by the <a href="http://www.w3.org/2011/prov/">Provenance Working Group</a> as <span class="delete">a Working</span><span class="insert">an Editor's</span> Draft.<span class="delete"> This document is intended to become a </span><span class="delete">W3C</span><span class="delete"> Recommendation.</span> If you wish to make comments regarding this document, please send them to <a href="mailto:public-prov-wg@w3.org">public-prov-wg@w3.org</a> (<a href="mailto:public-prov-wg-request@w3.org?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 <span class="delete">a Working</span><span class="insert">an Editor's</span> 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>Notational Conventions</a></li></ul></li><li class="tocline"><a href="#starting-points" class="tocxref"><span class="secno">2. </span>PROV 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">2.3 </span>Agents, Attribution, Association, and Responsibility</a></li><li class="tocline"><a href="#section-types-entities-agents" class="tocxref"><span class="secno">2.4 </span>Further Entities: Collections and Accounts</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 Authors View</a></li><li class="tocline"><a href="#section-example-two" class="tocxref"><span class="secno">3.2 </span>The Process 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-Invalidation" class="tocxref"><span class="secno">4.1.7 </span>Invalidation</a></li><li class="tocline"><a href="#term-wasInformedBy" class="tocxref"><span class="secno">4.1.8 </span>Communication<span class="delete">4.1.9 </span><span class="delete">Start by Activity</span></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-trace" class="tocxref"><span class="secno">4.3.5 </span>Trace</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-dictinonary" class="tocxref"><span class="secno">4.5.2 </span>Dictionary</a></li><li class="tocline"><a href="#term-dictionary-insertion" class="tocxref"><span class="secno">4.5.3 </span>Insertion</a></li><li class="tocline"><a href="#term-dictionary-removal" class="tocxref"><span class="secno">4.5.4 </span>Removal</a></li><li class="tocline"><a href="#term-dictionary-membership" class="tocxref"><span class="secno">4.5.5 </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">4.7.4.5 </span>prov:value</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>Creating Valid Provenance</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>
+</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>Notational Conventions</a></li></ul></li><li class="tocline"><a href="#section-prov-overview" class="tocxref"><span class="secno">2. </span>PROV <span class="delete">Starting Points</span><span class="insert">Overview</span></a><ul class="toc"><li class="tocline"><a href="#core-structures" class="tocxref"><span class="secno"><span class="insert">2.1 </span></span><span class="insert">PROV Core Structures</span></a><ul class="toc"><li class="tocline"><a href="#section-entity-activity" class="tocxref"><span class="secno"><span class="delete">2.1</span><span class="insert">2.1.1</span> </span>Entity and Activity<span class="delete">2.2 </span><span class="delete">Generation, Usage, Derivation</span></a></li><li class="tocline"><a href="#section-agents-attribution-association-responsibility" class="tocxref"><span class="secno"><span class="delete">2.3 </span><span class="delete">Agents, Attribution, Association,</span><span class="insert">2.1.2 </span></span><span class="insert">Agents</span> and Responsibility</a></li><li class="tocline"><a href="#section-derivation" class="tocxref"><span class="secno"><span class="delete">2.4 </span><span class="delete">Further Entities: Collections and Accounts</span><span class="delete">2.5 </span><span class="delete">Simplified Overview Diagram</span><span class="delete">2.6 </span><span class="delete">PROV-N: The Provenance Notation</span><span class="insert">2.1.3 </span></span><span class="insert">Derivation</span></a></li></ul></li><li class="tocline"><a href="#section-extended-structures" class="tocxref"><span class="secno"><span class="insert">2.2 </span></span><span class="insert">PROV Extended Structures</span></a><ul class="toc"><li class="tocline"><a href="#section-prov-extended-mechanisms" class="tocxref"><span class="secno"><span class="insert">2.2.1 </span></span><span class="insert">Mechanisms to Define Extended Structures</span></a><ul class="toc"><li class="tocline"><a href="#section-prov-extended-approach-subtyping" class="tocxref"><span class="secno"><span class="insert">2.2.1.1 </span></span><span class="insert">Subtyping</span></a></li><li class="tocline"><a href="#section-prov-extended-approach-expanded-relation" class="tocxref"><span class="secno"><span class="insert">2.2.1.2 </span></span><span class="insert">Expanded Relations</span></a></li><li class="tocline"><a href="#section-prov-extended-approach-optional-identification-new-relation" class="tocxref"><span class="secno"><span class="insert">2.2.1.3 </span></span><span class="insert">Optional Identification and New Relations</span></a></li></ul></li><li class="tocline"><a href="#section-provenance-of-provnance" class="tocxref"><span class="secno"><span class="insert">2.2.2 </span></span><span class="insert">Provenance of Provenance</span></a></li><li class="tocline"><a href="#section-collections" class="tocxref"><span class="secno"><span class="insert">2.2.3 </span></span><span class="insert">Collections</span></a></li></ul></li><li class="tocline"><a href="#section-overview-components" class="tocxref"><span class="secno"><span class="insert">2.3 </span></span><span class="insert">Modular Organization</span></a></li></ul></li><li class="tocline"><a href="#prov-notation" class="tocxref"><span class="secno"><span class="insert">3. </span></span><span class="insert">The Provenance Notation</span></a></li><li class="tocline"><a href="#prov-dm-example" class="tocxref"><span class="secno"><span class="delete">3.</span><span class="insert">4.</span> </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"><span class="delete">3.1</span><span class="insert">4.1</span> </span>The Authors View</a></li><li class="tocline"><a href="#section-example-two" class="tocxref"><span class="secno"><span class="delete">3.2</span><span class="insert">4.2</span> </span>The Process View</a></li><li class="tocline"><a href="#section-example-c" class="tocxref"><span class="secno"><span class="delete">3.3</span><span class="insert">4.3</span> </span>Attribution of Provenance</a></li></ul></li><li class="tocline"><a href="#data-model-components" class="tocxref"><span class="secno"><span class="delete">4.</span><span class="insert">5.</span> </span>PROV-DM Types and Relations</a><ul class="toc"><li class="tocline"><a href="#component1" class="tocxref"><span class="secno"><span class="delete">4.1</span><span class="insert">5.1</span> </span>Component 1: Entities and Activities</a><ul class="toc"><li class="tocline"><a href="#term-Entity" class="tocxref"><span class="secno"><span class="delete">4.1.1</span><span class="insert">5.1.1</span> </span>Entity</a></li><li class="tocline"><a href="#term-Activity" class="tocxref"><span class="secno"><span class="delete">4.1.2</span><span class="insert">5.1.2</span> </span>Activity</a></li><li class="tocline"><a href="#term-Generation" class="tocxref"><span class="secno"><span class="delete">4.1.3</span><span class="insert">5.1.3</span> </span>Generation</a></li><li class="tocline"><a href="#term-Usage" class="tocxref"><span class="secno"><span class="delete">4.1.4</span><span class="insert">5.1.4</span> </span>Usage</a></li><li class="tocline"><a href="#term-Start" class="tocxref"><span class="secno"><span class="delete">4.1.5</span><span class="insert">5.1.5</span> </span>Start</a></li><li class="tocline"><a href="#term-End" class="tocxref"><span class="secno"><span class="delete">4.1.6</span><span class="insert">5.1.6</span> </span>End</a></li><li class="tocline"><a href="#term-Invalidation" class="tocxref"><span class="secno"><span class="delete">4.1.7</span><span class="insert">5.1.7</span> </span>Invalidation</a></li><li class="tocline"><a href="#term-wasInformedBy" class="tocxref"><span class="secno"><span class="delete">4.1.8</span><span class="insert">5.1.8</span> </span>Communication<span class="delete">4.1.9 </span><span class="delete">Start by Activity</span></a></li></ul></li><li class="tocline"><a href="#component2" class="tocxref"><span class="secno"><span class="delete">4.2</span><span class="insert">5.2</span> </span>Component 2: Agents and Responsibility</a><ul class="toc"><li class="tocline"><a href="#term-Agent" class="tocxref"><span class="secno"><span class="delete">4.2.1</span><span class="insert">5.2.1</span> </span>Agent</a></li><li class="tocline"><a href="#term-attribution" class="tocxref"><span class="secno"><span class="delete">4.2.2</span><span class="insert">5.2.2</span> </span>Attribution</a></li><li class="tocline"><a href="#term-ActivityAssociation" class="tocxref"><span class="secno"><span class="delete">4.2.3</span><span class="insert">5.2.3</span> </span>Association</a></li><li class="tocline"><a href="#term-responsibility" class="tocxref"><span class="secno"><span class="delete">4.2.4</span><span class="insert">5.2.4</span> </span>Responsibility</a></li></ul></li><li class="tocline"><a href="#component3" class="tocxref"><span class="secno"><span class="delete">4.3</span><span class="insert">5.3</span> </span>Component 3: Derivations</a><ul class="toc"><li class="tocline"><a href="#Derivation-Relation" class="tocxref"><span class="secno"><span class="delete">4.3.1</span><span class="insert">5.3.1</span> </span>Derivation</a></li><li class="tocline"><a href="#term-Revision" class="tocxref"><span class="secno"><span class="delete">4.3.2</span><span class="insert">5.3.2</span> </span>Revision</a></li><li class="tocline"><a href="#term-quotation" class="tocxref"><span class="secno"><span class="delete">4.3.3</span><span class="insert">5.3.3</span> </span>Quotation</a></li><li class="tocline"><a href="#term-original-source" class="tocxref"><span class="secno"><span class="delete">4.3.4</span><span class="insert">5.3.4</span> </span>Original Source</a></li><li class="tocline"><a href="#term-trace" class="tocxref"><span class="secno"><span class="delete">4.3.5</span><span class="insert">5.3.5</span> </span>Trace</a></li></ul></li><li class="tocline"><a href="#component4" class="tocxref"><span class="secno"><span class="delete">4.4</span><span class="insert">5.4</span> </span>Component 4: Alternate Entities</a><ul class="toc"><li class="tocline"><a href="#term-specialization" class="tocxref"><span class="secno"><span class="delete">4.4.1</span><span class="insert">5.4.1</span> </span>Specialization</a></li><li class="tocline"><a href="#term-alternate" class="tocxref"><span class="secno"><span class="delete">4.4.2</span><span class="insert">5.4.2</span> </span>Alternate</a></li></ul></li><li class="tocline"><a href="#component5" class="tocxref"><span class="secno"><span class="delete">4.5</span><span class="insert">5.5</span> </span>Component 5: <span class="delete">Collections</span><span class="insert">Bundles</span></a><ul class="toc"><li class="tocline"><a href="#term-bundle" class="tocxref"><span class="secno"><span class="delete">4.5.1 </span><span class="delete">Collection</span><span class="insert">5.5.1 </span></span><span class="insert">Bundle constructor</span></a></li><li class="tocline"><a href="#term-bundle-entity" class="tocxref"><span class="secno"><span class="delete">4.5.2 </span><span class="delete">Dictionary</span><span class="insert">5.5.2 </span></span><span class="insert">Bundle Description</span></a></li><li class="tocline"><a href="#term-hasProvenanceIn" class="tocxref"><span class="secno"><span class="delete">4.5.3 </span><span class="delete">Insertion</span><span class="delete">4.5.4 </span><span class="delete">Removal</span><span class="delete">4.5.5 </span><span class="delete">Membership</span><span class="insert">5.5.3 </span></span><span class="insert">Provenance Locator</span></a></li></ul></li><li class="tocline"><a href="#component6" class="tocxref"><span class="secno"><span class="delete">4.6</span><span class="insert">5.6</span> </span>Component 6: <span class="delete">Annotations</span><span class="insert">Collections</span></a><ul class="toc"><li class="tocline"><a href="#term-collection" class="tocxref"><span class="secno"><span class="delete">4.6.1 </span><span class="delete">Note</span><span class="insert">5.6.1 </span></span><span class="insert">Collection</span></a></li><li class="tocline"><a href="#term-dictinonary" class="tocxref"><span class="secno"><span class="delete">4.6.2 </span><span class="delete">Annotation</span><span class="insert">5.6.2 </span></span><span class="insert">Dictionary</span></a></li><li class="tocline"><a href="#term-dictionary-insertion" class="tocxref"><span class="secno"><span class="insert">5.6.3 </span></span><span class="insert">Insertion</span></a></li><li class="tocline"><a href="#term-dictionary-removal" class="tocxref"><span class="secno"><span class="insert">5.6.4 </span></span><span class="insert">Removal</span></a></li><li class="tocline"><a href="#term-dictionary-membership" class="tocxref"><span class="secno"><span class="insert">5.6.5 </span></span><span class="insert">Membership</span></a></li></ul></li><li class="tocline"><a href="#second-class-elements" class="tocxref"><span class="secno"><span class="delete">4.7</span><span class="insert">5.7</span> </span>Further Elements of PROV-DM</a><ul class="toc"><li class="tocline"><a href="#term-NamespaceDeclaration" class="tocxref"><span class="secno"><span class="delete">4.7.1</span><span class="insert">5.7.1</span> </span>Namespace Declaration</a></li><li class="tocline"><a href="#term-qualified-name" class="tocxref"><span class="secno"><span class="delete">4.7.2</span><span class="insert">5.7.2</span> </span>Qualified Name</a></li><li class="tocline"><a href="#term-identifier" class="tocxref"><span class="secno"><span class="delete">4.7.3</span><span class="insert">5.7.3</span> </span>Identifier</a></li><li class="tocline"><a href="#term-attribute" class="tocxref"><span class="secno"><span class="delete">4.7.4</span><span class="insert">5.7.4</span> </span>Attribute</a><ul class="toc"><li class="tocline"><a href="#term-attribute-label" class="tocxref"><span class="secno"><span class="delete">4.7.4.1</span><span class="insert">5.7.4.1</span> </span>prov:label</a></li><li class="tocline"><a href="#term-attribute-location" class="tocxref"><span class="secno"><span class="delete">4.7.4.2</span><span class="insert">5.7.4.2</span> </span>prov:location</a></li><li class="tocline"><a href="#term-attribute-role" class="tocxref"><span class="secno"><span class="delete">4.7.4.3</span><span class="insert">5.7.4.3</span> </span>prov:role</a></li><li class="tocline"><a href="#term-attribute-type" class="tocxref"><span class="secno"><span class="delete">4.7.4.4</span><span class="insert">5.7.4.4</span> </span>prov:type</a></li><li class="tocline"><a href="#term-attribute-value" class="tocxref"><span class="secno"><span class="delete">4.7.4.5</span><span class="insert">5.7.4.5</span> </span>prov:value</a></li></ul></li><li class="tocline"><a href="#term-value" class="tocxref"><span class="secno"><span class="delete">4.7.5</span><span class="insert">5.7.5</span> </span>Value</a></li></ul></li></ul></li><li class="tocline"><a href="#extensibility-section" class="tocxref"><span class="secno"><span class="delete">5.</span><span class="insert">6.</span> </span>PROV-DM Extensibility Points</a></li><li class="tocline"><a href="#valid-provenance" class="tocxref"><span class="secno"><span class="delete">6.</span><span class="insert">7.</span> </span>Creating Valid Provenance</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>
@@ -1051,14 +1054,14 @@
</li><li> component 2: agents bearing responsibility for entities that were generated and activities that happened;
</li><li> component 3: derivations of entities from others;
</li><li> component 4: properties to link entities that refer to a same thing;
-</li><li> component 5: collections forming a logical structure for its members;
-</li><li> component 6: a simple annotation mechanism.
+</li><li> component 5: <span class="delete">collections forming a logical structure for its members;</span><span class="insert">bundles, a mechanism to support provenance of provenance;</span>
+</li><li> component 6: <span class="delete">a simple annotation mechanism.</span><span class="insert">collections forming a logical structure for its members.</span>
</li></ul>
<p>This specification presents the key concepts of the PROV Data Model, and
provenance types and relations, without specific concern for how they are applied.
-With these, it becomes possible to write useful provenance descriptions, and publish or embed them along side the data they relate to. </p>
+With these, it becomes possible to write useful provenance descriptions, and publish or embed them <span class="delete">along side</span><span class="insert">alongside</span> the data they relate to. </p>
<p>However, if something about which provenance is expressed is subject to change, then it is challenging to express its provenance precisely (e.g. the data from which a daily weather report is derived changes from day to day).
To address this challenge, a <em>refinement</em> is proposed to enrich simple provenance, with extra descriptions that help qualify the specific subject of provenance and provenance itself, with attributes and temporal information, 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-CONSTRAINTS">PROV-CONSTRAINTS</a></cite>].
@@ -1068,16 +1071,26 @@
<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 allows users to make initial provenance descriptions.</p>
-
-<p><a href="#prov-dm-example">Section 3</a> illustrates how the PROV data model can be used
+<p><a href="#section-prov-overview">Section 2</a> provides<span class="insert"> an overview of the PROV Data Model,</span> <span class="delete">starting points for the PROV Data Model, listing a</span><span class="insert">distinguishing a CORE</span> set of types and relations, <span class="delete">which allows users to make initial</span><span class="insert">commonly found in</span> provenance <span class="delete">descriptions.</span><span class="insert">descriptions, from extended structures catering for advanced uses.</span></p>
+
+<p><a href="#prov-notation"><span class="insert">Section 3</span></a><span class="insert"> overviews the Provenance Notation used to illustrate examples of provenance descriptions.</span></p>
+
+
+<p><a href="#prov-dm-example">Section <span class="delete">3</span><span class="insert">4</span></a> illustrates how the PROV data model 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 definitions of PROV 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-CONSTRAINTS">PROV-CONSTRAINTS</a></cite>].</p>
+
+
+
+<p><a href="#data-model-components">Section <span class="delete">4</span><span class="insert">5</span></a> provides the definitions of PROV concepts, structured according to six components.</p>
+
+
+
+
+
+<p><a href="#extensibility-section">Section <span class="delete">5</span><span class="insert">6</span></a> summarizes PROV-DM extensibility points.</p>
+
+<p><a href="#valid-provenance">Section <span class="delete">6</span><span class="insert">7</span></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-CONSTRAINTS">PROV-CONSTRAINTS</a></cite>].</p>
</div>
@@ -1108,24 +1121,87 @@
</tbody></table>
</div>
+<p><span class="insert">
+ Examples throughout this document use the PROV-N Provenance
+ Notation, briefly introduced in </span><a href="#prov-notation"><span class="insert">Section 3</span></a><span class="insert"> and specified fully in separate document [</span><cite><a class="bibref" rel="biblioentry" href="#bib-PROV-N"><span class="insert">PROV-N</span></a></cite><span class="insert">].</span></p>
+
+
</div>
</div>
-<div id="starting-points" class="section">
-<h2><span class="secno">2. </span>PROV Starting Points</h2>
+<div id="section-prov-overview" class="section">
+<h2><span class="secno">2. </span>PROV <span class="delete">Starting Points</span><span class="insert">Overview</span></h2>
<p>
This section introduces provenance concepts with informal descriptions and illustrative
-examples. Since PROV-DM is a conceptual data
-model, Section 2.5 maps the concepts to various types and relations,
+examples.<span class="insert"> PROV distinguishes</span> <span class="delete">Since </span><em><span class="insert">core structures</span></em><span class="insert">, forming the essence of provenance descriptions, from </span><em><span class="insert">extended structures</span></em><span class="insert"> catering for more advanced uses of provenance. Core and extended structures are respectively presented in </span><a href="#core-structures"><span class="insert">Section 2.1</span></a><span class="insert"> and </span><a href="#section-extended-structures"><span class="insert">Section 2.2</span></a><span class="insert">. Furthermore, the PROV data model is organized according to components, which are thematic groupings of concepts, overviewed in </span><a href="#section-overview-components"><span class="insert">Section 2.3</span></a><span class="insert">.
+</span></p>
+
+
+<div id="core-structures" class="section">
+<h3><span class="secno"><span class="insert">2.1 </span></span><span class="insert">PROV Core Structures</span></h3>
+
+<p><span class="insert">The core of PROV consists of essential provenance structures commonly found in provenance descriptions.
+It is summarized graphically by
+the UML diagram of </span><a href="#prov-core-structures"><span class="insert">Figure 1</span></a><span class="insert">,
+illustrating three types (entity, activity, and agent) and how they relate to each other. In the core of PROV, all relations are binary. </span></p>
+
+
+<div style="text-align: center; ">
+ <figure style="max-width: 70%; ">
+
+<img src="uml/essentials.svg" alt="PROV Core Structures" style="max-width: 70%; ">
+<figcaption id="prov-core-structures"><span class="insert">Figure 1: PROV Core Structures</span></figcaption>
+ </figure>
+</div>
+
+<p><span class="insert">The rest of this section introduces the concepts found in PROV Core structures.
+They are summarized in </span><a href="#overview-types-and-relations"><span class="insert">Table 2</span></a><span class="insert">, where they are grouped according to
+the types and relations the PROV conceptual data model.
+ The first column lists concepts, the second column indicates whether a concept maps to a type or a relation, whereas the third column contains the corresponding name. Names 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.
+</span></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: Mapping of PROV core concepts to types and relations</span></caption>
+<tbody><tr><td><a><b><span class="insert">PROV Concepts</span></b></a></td><td><b>PROV-DM <span class="delete">is a conceptual data
+model, Section 2.5 maps the concepts to various </span>types <span class="delete">and relations,
which are illustrated graphically in
-a simplified UML diagram in <a href="#prov-dm-overview">Figure 1</a>. Section 2.6
-then summarizes the PROV notation allowing instances of PROV-DM to be
+a simplified UML diagram in </span><span class="delete">Figure 1</span><span class="delete">. Section 2.6
+then summarizes the PROV notation allowing instances of </span><span class="insert">or relations</span></b></td><td><b><span class="insert">Name</span></b></td><td><b><span class="insert">Overview</span></b></td></tr>
+<tr>
+<td><a href="#concept-entity" class="internalDFN"><span class="insert">Entity</span></a></td><td rowspan="3" style="text-align: center;">PROV-DM <span class="delete">to be
written down.
-</p>
+</span>
+
+<span class="insert">Types</span></td><td><a title="dfn-Entity" href="#dfn-entity" class="internalDFN"><span class="insert">entity</span></a></td><td style="text-align: center;"><a href="#section-entity-activity"><span class="insert">2.1.1</span></a></td></tr>
+<tr><td><a href="#concept-activity" class="internalDFN"><span class="insert">Activity</span></a></td><td><a title="dfn-Activity" href="#dfn-activity" class="internalDFN"><span class="insert">activity</span></a></td><td style="text-align: center;"><a href="#section-entity-activity"><span class="insert">2.1.1</span></a></td></tr>
+<tr><td><a href="#concept-agent" class="internalDFN"><span class="insert">Agent</span></a></td><td><a title="dfn-agent" href="#dfn-agent" class="internalDFN"><span class="insert">agent</span></a></td><td style="text-align: center;"><a href="#section-agents-attribution-association-responsibility"><span class="insert">2.1.2</span></a></td></tr>
+<tr>
+<td><a href="#concept-generation" class="internalDFN"><span class="insert">Generation</span></a></td><td rowspan="6" style="text-align: center;"><span class="insert">PROV-DM Relations</span></td><td><a title="wasGeneratedBy" href="#dfn-wasgeneratedby" class="internalDFN"><span class="insert">wasGeneratedBy</span></a></td><td style="text-align: center;"><a href="#section-entity-activity"><span class="insert">2.1.1</span></a></td></tr>
+<tr><td><a href="#concept-usage" class="internalDFN"><span class="insert">Usage</span></a></td><td><a title="used" href="#dfn-used" class="internalDFN"><span class="insert">used</span></a></td><td style="text-align: center;"><a href="#section-entity-activity"><span class="insert">2.1.1</span></a></td></tr>
+<tr><td><a href="#concept-attribution" class="internalDFN"><span class="insert">Attribution</span></a></td><td><a title="wasAttributedTo" href="#dfn-wasattributedto" class="internalDFN"><span class="insert">wasAttributedTo</span></a></td><td style="text-align: center;"><a href="#section-agents-attribution-association-responsibility"><span class="insert">2.1.2</span></a></td></tr>
+<tr><td><a href="#concept-association-core" class="internalDFN"><span class="insert">Association</span></a></td><td><a title="wasAssociatedWith" href="#dfn-wasassociatedwith" class="internalDFN"><span class="insert">wasAssociatedWith</span></a></td><td style="text-align: center;"><a href="#section-agents-attribution-association-responsibility"><span class="insert">2.1.2</span></a></td></tr>
+<tr><td><a href="#concept-responsibility" class="internalDFN"><span class="insert">Responsibility</span></a></td><td><a title="actedOnBehalfOf" href="#dfn-actedonbehalfof" class="internalDFN"><span class="insert">actedOnBehalfOf</span></a></td><td style="text-align: center;"><a href="#section-agents-attribution-association-responsibility"><span class="insert">2.1.2</span></a></td></tr>
+<tr><td><a href="#concept-derivation" class="internalDFN"><span class="insert">Derivation</span></a></td><td><a title="wasDerivedFrom" href="#dfn-wasderivedfrom" class="internalDFN"><span class="insert">wasDerivedFrom</span></a></td><td style="text-align: center;"><a href="#section-derivation"><span class="insert">2.1.3</span></a></td></tr>
+</tbody></table>
+</div>
+
+
+
+
+
+
+
+
+
<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">
@@ -1138,7 +1214,7 @@
<div id="section-entity-activity" class="section">
-<h3><span class="secno">2.1 </span>Entity and Activity</h3>
+<h4><span class="secno"><span class="delete">2.1</span><span class="insert">2.1.1</span> </span>Entity and Activity</h4>
<p><span class="delete">Things</span><span class="insert">In PROV, things</span> we want to describe the provenance of are called <em>entities</em> <span class="delete">in PROV.</span><span class="insert">and have some fixed aspect.</span> The term "things" encompasses a broad diversity of notions, including digital objects such as a file or web page,
@@ -1167,10 +1243,10 @@
<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, or 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>
+
+
+
+<span class="delete">2.2 </span><span class="delete">Generation, Usage, Derivation</span>
<p>Activities and entities are associated with each other in two different ways: activities utilize entities and activities produce entities. The act of utilizing or producing an entity may have a duration.
The term 'generation' refers to the completion of the act of producing; likewise, the term 'usage' refers to the beginning of the act of utilizing entities. Thus, we define the following notions of generation and usage. </p>
@@ -1202,27 +1278,33 @@
</p></div>
-<p>Activities utilize entities and producer entities. In some cases, utilizing an entity influences the creation of another in some way. This notion is captured by derivations, defined as follows.</p>
+</div>
+
+
+<div id="section-agents-attribution-association-responsibility" class="section">
+<h4><span class="secno"><span class="insert">2.1.2 </span></span><span class="insert">Agents and Responsibility</span></h4>
+
+<p><span class="delete">Activities utilize</span><span class="insert">The motivation for introducing agents in the model is to express the agent's responsibility for activities that happened and</span> entities <span class="delete">and producer entities. In some cases, utilizing an entity influences the creation of another in some way. This notion is captured by derivations, defined as follows.</span><span class="insert">that were generated. </span></p>
<p>
-<span class="glossary-ref"> 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">2.3 </span>Agents, Attribution, Association, and Responsibility</h3>
-
-<p>The motivation for introducing agents in the model is to express the agent's responsibility for activities that happened and entities that were generated. </p>
-
-<p>
-<span class="glossary-ref">
+<span class="glossary-ref"><span class="delete"> A </span><span class="delete">derivation</span><span class="delete"> 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>
+
+
+
+
+<span class="delete">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.</span>
+
+
+
+
+
+<span class="delete">2.3 </span><span class="delete">Agents, Attribution, Association, and Responsibility</span>
+
+<span class="delete">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>
+
+
+
An <span class="dfn">agent</span> is something that bears some form of responsibility for an activity taking place or for the existence of an entity. </span> An agent <em class="rfc2119" title="may">may</em> be a particular type of <span class="delete">entity.</span><span class="insert">entity or activity.</span> This means that the model can be
used to express provenance of the agents themselves.
</p>
@@ -1240,24 +1322,29 @@
</div>
-<p>Agents may adopt sets of actions or steps to achieve their goals. This is captured by the notion of plan. </p>
-
-<p>
-<span class="glossary-ref">
- A <span class="dfn">plan</span> 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">Agents may adopt sets of actions or steps to achieve their goals. This is captured by the notion of plan. </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.</p>
-
-<div class="conceptexample" id="plan-example">
-<p>
+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.
-</p>
-</div>
+</span>
+
+
+
+
+
+
@@ -1273,16 +1360,16 @@
</div>
<p>
-Agents are defined as having some kind of responsibility for activities. In some
+Agents are defined as having some kind of responsibility for activities. <span class="delete">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. </p>
+a plan may also be linked to an activity. </span></p>
<p>
-<span class="glossary-ref"> An activity <span class="dfn">association</span> 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="glossary-ref"> An activity <span class="dfn">association</span> is an assignment of responsibility to an agent for an activity, indicating that the agent had a role in the activity.<span class="delete"> 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">
@@ -1290,8 +1377,8 @@
</p><ul>
<li>creation of a web page under the guidance of a designer;</li>
<li>various forms of participation in a panel discussion, including audience member, panelist, or panel chair;</li>
-<li>a public event, sponsored by a company, and hosted by a museum;</li>
-<li>an XSLT transform launched by a user based on an XSL style sheet (a plan).</li>
+<li>a public event, sponsored by a company, and hosted by a museum;
+<span class="delete">an XSLT transform launched by a user based on an XSL style sheet (a plan).</span></li>
</ul>
</div>
@@ -1308,20 +1395,169 @@
<div class="conceptexample" id="responsibility-example">
<p>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
+agents associated with the <span class="delete">activity, and</span><span class="insert">activity. It may not matter which actual
+student published a web page, but</span> it may <span class="delete">not </span>matter <span class="delete">which
+student published a web page but it matters a lot</span><span class="insert">significantly</span> that the department
told the student to put up the web page.
</p>
</div>
</div>
-<div id="section-types-entities-agents" class="section">
-<h3><span class="secno">2.4 </span>Further Entities: Collections and Accounts</h3>
-
-<p>There are two further types of entities, collections and accounts, which are now introduced. </p>
+ <div id="section-derivation" class="section">
+<h4><span class="secno"><span class="insert">2.1.3 </span></span><span class="insert">Derivation</span></h4>
+
+
+
+<p><span class="insert">Activities utilize entities and produce entities. In some cases, utilizing an entity influences the creation of another in some way. This notion is captured by derivations, defined as follows.</span></p>
<p>
-<span class="glossary-ref"> 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 collection itself to be expressed in addition to that of the members. Many different types of collections exist, such as a <em>set</em>, <em>dictionaries</em>, or <em>lists</em>, all of which involve a membership relationship between the constituents and the collection. </p>
+<span class="glossary-ref"><span class="insert"> A </span><span class="dfn"><span class="insert">derivation</span></span><span class="insert"> 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></span>
+
+
+
+</p><div class="conceptexample" id="derivation-example">
+<p><span class="insert">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.</span></p>
+</div>
+
+</div>
+
+</div>
+
+<div id="section-extended-structures" class="section">
+<h3><span class="secno"><span class="delete">2.4 </span><span class="delete">Further Entities: Collections and Accounts</span><span class="insert">2.2 </span></span><span class="insert">PROV Extended Structures</span></h3>
+
+<p><span class="delete">There </span><span class="insert">While the core of PROV focuses on essential provenance structures commonly found in provenance descriptions, extended structures
+</span>are <span class="insert">designed to support more advanced uses of provenance.
+The purpose of this section is twofold. First, mechanisms to specify these extended structures are introduced. Second, </span>two further <span class="delete">types of entities, collections</span><span class="insert">categories of provenance structures are overviewed: they cater for provenance of provenance</span> and <span class="delete">accounts, which</span><span class="insert">collections, respectively.</span></p>
+
+
+
+
+<div id="section-prov-extended-mechanisms" class="section">
+<h4><span class="secno"><span class="insert">2.2.1 </span></span><span class="insert">Mechanisms to Define Extended Structures</span></h4>
+
+<p><span class="insert">Extended structures</span> are <span class="delete">now introduced.</span><span class="insert">defined by a variety of mechanisms
+outlined in this section: subtyping, expanded relations, optional
+identification, and new relations.</span></p>
+
+
+<div id="section-prov-extended-approach-subtyping" class="section">
+<h5><span class="secno"><span class="insert">2.2.1.1 </span></span><span class="insert">Subtyping</span></h5>
+
+<p><span class="insert">Subtyping can be applied to core types. For example, a software agent is special kind of agent, defined as follows.</span></p>
+
+<span class="glossary-ref"><span class="insert">
+ A </span><span class="dfn"><span class="insert">software agent</span></span><span class="insert"> is running software. </span></span>
+
+
+<p><span class="insert">Subtyping can also be applied to core relations. For example, a revision is a special kind of derivation, defined as follows.</span></p>
+
+
+<p><span class="glossary-ref"><span class="insert"> A </span><span class="dfn"><span class="insert">revision</span></span><span class="insert"> is a derivation that revises an entity into a revised version. </span></span></p>
+
+</div>
+
+<div id="section-prov-extended-approach-expanded-relation" class="section">
+<h5><span class="secno"><span class="insert">2.2.1.2 </span></span><span class="insert">Expanded Relations</span></h5>
+
+<p><a href="#core-structures"><span class="insert">Section 2.1</span></a><span class="insert"> shows that six concepts are mapped to binary relations in the core of PROV. However, some advanced uses of these concepts cannot be captured by a binary relation, but require relations to be expanded to n-ary relations.</span></p>
+
+
+<p><span class="insert">To illustrate expanded relations, we consider the concept of
+association, described
+in </span><a href="#section-agents-attribution-association-responsibility"><span class="insert">section
+2.1.2</span></a><span class="insert">. Agents may adopt sets of actions or steps to achieve their
+goals in the context of an activity: this is captured by the notion of
+a plan. Thus, an activity may reflect the execution of a plan that was
+designed in advance to guide the execution. Hence, an expanded
+association relation allows a plan be linked to an
+activity. Plan is defined by subtyping and full association by an expanded relation, as follows.</span> </p>
+
+<p>
+<span class="glossary-ref"><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>
+
+
+<p>
+<span class="glossary-ref"><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-example2">
+<p><span class="insert">An example of association between an activity and an agent involving a plan is:
+an XSLT transform launched by a user based on an XSL style sheet (a plan).
+
+</span></p></div>
+</div>
+
+
+<div id="section-prov-extended-approach-optional-identification-new-relation" class="section">
+<h5><span class="secno"><span class="insert">2.2.1.3 </span></span><span class="insert">Optional Identification and New Relations</span></h5>
+
+<p><span class="insert">Some concepts exhibit both a core use, expressed as
+binary relation, and an extended use, expressed as n-ary relation. In
+some cases, mapping the concept to a relation, whether binary or
+n-ary, is not sufficient: instead, it may be required to able to
+identify an instance of such concept.</span></p>
+
+<p><span class="insert">In such circumstances, PROV-DM allows an optional identifier to be
+expressed to identify an instance of an association between two or
+more elements. This optional identifier can then be used to refer to
+an instance as part of other concepts.</span></p>
+
+<div class="conceptexample" id="identifier-example">
+<p><span class="insert">A service may read a same configuration file on two different occasions. Each usage can be identifed by its own identifier, allowing them to be distinguished.
+</span></p></div>
+
+<p><span class="insert">Finally, PROV-DM supports further relations that are not subtypes or expanded versions of existing relations.</span></p>
+
+
+
+
+</div>
+
+
+
+</div>
+
+
+
+<div id="section-provenance-of-provnance" class="section">
+<h4><span class="secno"><span class="insert">2.2.2 </span></span><span class="insert">Provenance of Provenance</span></h4>
+
+
+
+
+<p>
+<span class="glossary-ref"><span class="insert">
+ A </span><span class="dfn"><span class="insert">bundle</span></span><span class="insert"> is a named set of provenance descriptions, and is itself an entity, so allowing provenance of provenance to be expressed. </span></span>
+
+</p><div class="conceptexample" id="bundle-example">
+<p><span class="insert">
+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 Bundle), by which provenance of provenance can then be
+expressed.
+</span></p>
+</div>
+</div>
+
+<div id="section-collections" class="section">
+<h4><span class="secno"><span class="insert">2.2.3 </span></span><span class="insert">Collections</span></h4>
+
+<p>
+<span class="glossary-ref"> 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 collection itself to be expressed in addition to that of the members. Many different types of collections exist, such as a <em><span class="delete">set</span><span class="insert">sets</span></em>, <em>dictionaries</em>, or <em>lists</em>, all of which involve a membership relationship between the constituents and the collection. </p>
<div class="conceptexample" id="collection-example">
<p>
@@ -1330,12 +1566,12 @@
-<p>
-<span class="glossary-ref">
- 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>
+
+<span class="delete">
+ An </span><span class="delete">account</span><span class="delete"> is an entity that contains a bundle of provenance descriptions. </span><span class="delete">Making an account an entity allows for provenance of provenance to be expressed.
+
+</span>
+<span class="delete">
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
@@ -1343,99 +1579,122 @@
Hence, provenance is also
regarded as an entity (of type Account), by which provenance of provenance can then be
expressed.
-</p>
-</div>
-
-</div>
-
-
-
-
- <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 2</a> shows how provenance concepts can be mapped to types and relations in PROV-DM: the first column lists concepts introduced in this section, the second column indicates whether a concept maps to a type or a relation, whereas the third column contains the corresponding name. Names 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">Table 2: Mapping of Provenance concepts to types and relations</caption>
-<tbody><tr><td><a><b>PROV Concepts</b></a></td><td><b>PROV-DM types or relations</b></td><td><b>Name</b></td></tr>
-<tr>
-<td><a href="#concept-entity" class="internalDFN">Entity</a></td><td rowspan="3">PROV-DM Types</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">PROV-DM Relations</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 1</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. Definitions of <a href="#data-model-components">Section 4</a> reveal that some relations, while involving two primary elements, are 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">Figure 1: Simplified Overview of PROV-DM</figcaption>
- </figure>
-</div>
-
-<p><a href="#prov-dm-overview">Figure 1</a> is not intended to be complete: it only illustrates types and relations introduced in this section (<a href="#starting-points">Section 2</a>), exploited in the example discussed in <a href="#prov-dm-example">Section 3</a>, and explained in detail in <a href="#data-model-components">Section 4</a>.
-Names of relations depicted in <a href="#prov-dm-overview">Figure 1</a>
-are listed in
-the third column of <a href="#overview-types-and-relations">Table 2</a>. These names are part of a textual notation to write instances of the PROV data model, which we introduce in the next section. </p>
+</span>
+
</div>
-<div id="prov-n" class="section">
-<h3><span class="secno">2.6 </span>PROV-N: The Provenance Notation</h3>
-
-
-<p>To illustrate the application of PROV concepts to a concrete example (see <a href="#prov-dm-example">Section 3</a>) and to provide examples of concepts (see <a href="#data-model-components">Section 4</a>),
-we introduce PROV-N, a notation for writing instances of the PROV data model. 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>].
-PROV-N is a notation aimed at human consumption, with the following characteristics:</p>
-<ul>
-<li>PROV-N expressions adopt a <em>functional notation</em> consisting
-of a name and a list of arguments in parentheses.</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 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 specified. 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 is not available. The syntactic marker <span class="name">-</span> is used for this purpose.
-</li>
-
-<li>Most expressions
+
+
+
+
+
+</div>
+
+
+
+
+
+
+ <div id="section-overview-components" class="section">
+<h3><span class="secno"><span class="delete">2.5 </span><span class="delete">Simplified Overview Diagram</span><span class="insert">2.3 </span></span><span class="insert">Modular Organization</span></h3>
+
+<p><span class="delete">So far, we</span><span class="insert">Besides the separation between core and extended structures, PROV-DM
+is further organized according to components, grouping concepts in a
+thematic manner. </span></p>
+
+<p> <a href="#components-overview"><span class="insert">Table 3</span></a><span class="insert"> enumerates the six components, five of which</span> have <span class="delete">introduced a series of concepts underpinning provenance. PROV-DM is a conceptual data model consisting of types and relations between these. </span><span class="insert">already been implicitly overviewed in this section. All components offer extended structures, whereas the first three only offer core structures.
+
+</span></p><div id="components-overview-div" style="text-align: center;">
+<table border="1" style="margin-left: auto; margin-right: auto;">
+<caption id="components-overview">Table <span class="delete">2</span><span class="delete"> shows how provenance concepts can be mapped to types and relations in PROV-DM: the first column lists concepts introduced in this section, the second column indicates whether a concept maps to a type or a relation, whereas the third column contains the corresponding name. Names 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.
+</span>
+
+
+
+
+<span class="delete">Table 2: Mapping of Provenance concepts to types and relations</span><span class="insert">3: Components Overview</span></caption>
+<tbody><tr><td><span class="delete">PROV Concepts</span></td><td><span class="delete">PROV-DM types or relations</span><span class="insert">Component</span></td><td><span class="delete">Name</span><span class="insert">Core </span><br><span class="insert">Structures</span></td><td><span class="insert">Overview</span></td><td><span class="insert">Specification</span></td><td><span class="insert">Description</span></td></tr>
+
+<tr>
+<td><span class="delete">Entity</span><span class="insert">1</span></td><span class="delete">PROV-DM Types</span><td style="text-align: left;"><span class="insert">Entities and Activities</span></td><td><span class="delete">entity</span><span class="insert">✔</span></td><td><a href="#section-entity-activity"><span class="insert">2.1.1</span></a></td><td><a href="#component1"><span class="insert">5.1</span></a></td><td style="text-align: left;"><span class="insert">about entities and activities, and their interrelations</span></td></tr>
+
+<tr><td><span class="delete">Activity</span><span class="insert">2</span></td><td style="text-align: left;"><span class="insert">Agent and Responsibility</span></td><td><span class="delete">activity</span><span class="insert">✔</span></td><td><a href="#section-agents-attribution-association-responsibility"><span class="insert">2.1.2</span></a></td><td><a href="#component2"><span class="insert">5.2</span></a></td><td style="text-align: left;"><span class="insert">about agents and concepts ascribing responsibility to them</span></td></tr>
+
+<tr><td><span class="delete">Agent</span><span class="insert">3</span></td><td style="text-align: left;"><span class="insert">Derivation</span></td><td><span class="delete">agent</span><span class="insert">✔</span></td><td><a href="#section-derivation"><span class="insert">2.1.3</span></a></td><td><a href="#component3"><span class="insert">5.3</span></a></td><td style="text-align: left;"><span class="insert">about derivations and its subtypes</span></td></tr>
+
+<tr>
+<td><span class="delete">Generation</span><span class="insert">4</span></td><span class="delete">PROV-DM Relations</span><td style="text-align: left;"><span class="insert">Alternate</span></td><td><span class="delete">wasGeneratedBy</span></td><td><span class="insert">—</span></td><td><a href="#component4"><span class="insert">5.4</span></a></td><td style="text-align: left;"><span class="insert">about relations linking entities referring the same thing</span></td></tr>
+
+<tr><td><span class="delete">Usage</span><span class="insert">5</span></td><td style="text-align: left;"><span class="insert">Bundles</span></td><td><span class="delete">used</span></td><td><a href="#section-provenance-of-provnance"><span class="insert">2.2.2</span></a></td><td><a href="#component5"><span class="insert">5.5</span></a></td><td style="text-align: left;"><span class="insert">about bundles, a mechanism to support provenance of provenance</span></td></tr>
+
+<tr><td><span class="delete">Attribution</span><span class="insert">6</span></td><td style="text-align: left;"><span class="insert">Collections</span></td><td><span class="delete">wasAttributedTo</span></td><td><a href="#section-collections"><span class="insert">2.2.3</span></a></td><td><a href="#component6"><span class="insert">5.6</span></a></td><td style="text-align: left;"><span class="insert">about collections and concepts capturing their transformation, such as insertion and removal</span></td></tr>
+<span class="delete">Association</span><span class="delete">wasAssociatedWith</span>
+<span class="delete">Responsibility</span><span class="delete">actedOnBehalfOf</span>
+<span class="delete">Derivation</span><span class="delete">wasDerivedFrom</span>
+
+</tbody></table>
+
+
+<span class="delete">Figure 1</span><span class="delete"> 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. Definitions of </span><span class="delete">Section 4</span><span class="delete"> reveal that some relations, while involving two primary elements, are n-ary. </span>
+
+
+
+
+
+<span class="delete">Figure 1: Simplified Overview of PROV-DM</span>
+
+
+
+<span class="delete">Figure 1</span><span class="delete"> is not intended to be complete: it only illustrates types and relations introduced in this section (</span><span class="delete">Section 2</span><span class="delete">), exploited in the example discussed in </span><span class="delete">Section 3</span><span class="delete">, and explained in detail in </span><span class="delete">Section 4</span><span class="delete">.
+Names of relations depicted in </span><span class="delete">Figure 1</span><span class="delete">
+are listed in
+the third column of </span><span class="delete">Table 2</span><span class="delete">. These names are part of a textual notation to write instances of the PROV data model, which we introduce in the next section. </span>
+
+
+
+
+<span class="delete">2.6 </span><span class="delete">PROV-N: The Provenance Notation</span>
+
+
+<span class="delete">To illustrate the application of PROV concepts to a concrete example (see </span><span class="delete">Section 3</span><span class="delete">) and to provide examples of concepts (see </span><span class="delete">Section 4</span><span class="delete">),
+we introduce PROV-N, a notation for writing instances of the PROV data model. For full details, the reader is referred to the companion specification [</span><span class="delete">PROV-N</span><span class="delete">].
+PROV-N is a notation aimed at human consumption, with the following characteristics:</span>
+
+<span class="delete">PROV-N expressions adopt a </span><span class="delete">functional notation</span><span class="delete"> consisting
+of a name and a list of arguments in parentheses.</span>
+
+<span class="delete">The interpretation of PROV-N arguments is defined according to their </span><span class="delete">position</span><span class="delete"> in the list of arguments. This convention allows for a compact notation. </span>
+
+<span class="delete">
+PROV-N </span><span class="delete">optional arguments</span><span class="delete"> need not be 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 specified. 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 is not available. The syntactic marker </span><span class="delete">-</span><span class="delete"> is used for this purpose.
+</span>
+
+<span class="delete">Most expressions
include an identifier
-and a set of attribute-value pairs; both are optional unless otherwise specified. By convention, the identifier occurs in the <em>first position</em>, and the the set of attribute-value pairs in the <em>last position</em>.
-Consistent with the convention on arguments, the marker <span class="name">-</span> can be used when the identifier is not available, or can be omitted altogether with no ambiguity arising.
-</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)
+and a set of attribute-value pairs; both are optional unless otherwise specified. By convention, the identifier occurs in the </span><span class="delete">first position</span><span class="delete">, and the the set of attribute-value pairs in the </span><span class="delete">last position</span><span class="delete">.
+Consistent with the convention on arguments, the marker </span><span class="delete">-</span><span class="delete"> can be used when the identifier is not available, or can be omitted altogether with no ambiguity arising.
+</span>
+
+
+
+<span class="delete">
+An activity with identifier </span><span class="delete">a1</span><span class="delete"> and an attribute </span><span class="delete">type</span><span class="delete"> with value </span><span class="delete">createFile</span><span class="delete">.
+</span><span class="delete">activity(a1, [prov:type="createFile"])
+</span><span class="delete">
+Two entities with identifiers </span><span class="delete">e1</span><span class="delete"> and </span><span class="delete">e2</span><span class="delete">.
+</span><span class="delete">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)
+</span><span class="delete">
+The activity </span><span class="delete">a1</span><span class="delete"> used </span><span class="delete">e1</span><span class="delete">, and </span><span class="delete">e2</span><span class="delete"> was generated by </span><span class="delete">a1</span><span class="delete">.
+</span><span class="delete">used(a1,e1)
wasGeneratedBy(e2,a1)
-</pre>
-The same description, but with an explicit identifier <span class="name">u1</span> for the usage, and the syntactic marker <span class="name">-</span> to mark the absence of identifier in the generation.
-<pre class="codeexample"><span class="delete">used(u1,a1,e1)
-wasGeneratedBy(-,e2,a1)</span><span class="insert">used(u1;a1,e1)
-wasGeneratedBy(-;e2,a1)</span>
-</pre>
+</span><span class="delete">
+The same description, but with an explicit identifier </span><span class="delete">u1</span><span class="delete"> for the usage, and the syntactic marker </span><span class="delete">-</span><span class="delete"> to mark the absence of identifier in the generation.
+</span><span class="delete">used(u1,a1,e1)
+wasGeneratedBy(-,e2,a1)
+</span>
</div>
</div>
@@ -1443,10 +1702,59 @@
</div>
+<div id="prov-notation" class="section">
+<h2><span class="secno"><span class="insert">3. </span></span><span class="insert">The Provenance Notation</span></h2>
+
+
+<p><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 4</span></a><span class="insert">) and to provide examples of concepts (see </span><a href="#data-model-components"><span class="insert">Section 5</span></a><span class="insert">),
+we introduce PROV-N, a notation for writing instances of the PROV data model. For full details, the reader is referred to the companion specification [</span><cite><a class="bibref" rel="biblioentry" href="#bib-PROV-N"><span class="insert">PROV-N</span></a></cite><span class="insert">].
+PROV-N is a notation aimed at human consumption, with the following characteristics:</span></p>
+<ul>
+<li><span class="insert">PROV-N expressions adopt a </span><em><span class="insert">functional notation</span></em><span class="insert"> consisting
+of a name and a list of arguments in parentheses.</span></li>
+
+<li><span class="insert">The interpretation of PROV-N arguments is defined according to their </span><em><span class="insert">position</span></em><span class="insert"> in the list of arguments. This convention allows for a compact notation. </span></li>
+
+<li><span class="insert">
+PROV-N </span><em><span class="insert">optional arguments</span></em><span class="insert"> need not be 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 specified. 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 is not available. The syntactic marker '</span><span class="name"><span class="insert">-</span></span><span class="insert">' is used for this purpose.
+</span></li>
+
+<li><span class="insert">Most expressions
+include an identifier
+and a set of attribute-value pairs; both are optional unless otherwise specified. By convention, the identifier occurs in the </span><em><span class="insert">first position</span></em><span class="insert">, and the set of attribute-value pairs in the </span><em><span class="insert">last position</span></em><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><span class="insert">
+An activity with identifier </span><span class="name"><span class="insert">a1</span></span><span class="insert"> and an attribute </span><span class="name"><span class="insert">type</span></span><span class="insert"> with value </span><span class="name"><span class="insert">createFile</span></span><span class="insert">.
+</span></p><pre class="codeexample"><span class="insert">activity(a1, [prov:type="createFile"])
+</span></pre><span class="insert">
+Two entities with identifiers </span><span class="name"><span class="insert">e1</span></span><span class="insert"> and </span><span class="name"><span class="insert">e2</span></span><span class="insert">.
+</span><pre class="codeexample"><span class="insert">entity(e1)
+entity(e2)
+</span></pre><span class="insert">
+The activity </span><span class="name"><span class="insert">a1</span></span><span class="insert"> used </span><span class="name"><span class="insert">e1</span></span><span class="insert">, and </span><span class="name"><span class="insert">e2</span></span><span class="insert"> was generated by </span><span class="name"><span class="insert">a1</span></span><span class="insert">.
+</span><pre class="codeexample"><span class="insert">used(a1,e1)
+wasGeneratedBy(e2,a1)
+</span></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 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 2</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.
+<h2><span class="secno"><span class="delete">3.</span><span class="insert">4.</span> </span>Illustration of PROV-DM by an Example</h2>
+
+<p><a href="#section-prov-overview">Section 2</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, PROV concepts 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 the same entity can co-exist, which then justifies the need for provenance of provenance.</p>
@@ -1456,7 +1764,7 @@
<div id="section-example-one" class="section">
-<h3><span class="secno">3.1 </span>The Authors View</h3>
+<h3><span class="secno"><span class="delete">3.1</span><span class="insert">4.1</span> </span>The Authors View</h3>
<p style="font-style:italic; "><b>Description:</b> A document
@@ -1526,7 +1834,7 @@
</div>
<div id="section-example-two" class="section">
-<h3><span class="secno">3.2 </span>The Process View</h3>
+<h3><span class="secno"><span class="delete">3.2</span><span class="insert">4.2</span> </span>The Process View</h3>
<p style="font-style:italic; "><b>Description:</b> The World Wide Web
@@ -1540,7 +1848,7 @@
</p>
<p>
-We describe the kind of provenance record that the <a href="http://www.w3.org/Consortium">WWW Consortium</a> 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 refer archived email messages, available to <acronym title="World Wide Web Consortium">W3C</acronym> Members).</p>
+We describe the kind of provenance record that the <a href="http://www.w3.org/Consortium">WWW Consortium</a> could keep for auditors to check that due processes are followed. All entities involved in this example are Web resources, with <span class="delete">well defined</span><span class="insert">well-defined</span> URIs (some of which refer archived email messages, available to <acronym title="World Wide Web Consortium">W3C</acronym> Members).</p>
<ul>
<li> Two versions of a document were involved: <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);</li>
@@ -1612,21 +1920,53 @@
<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 document 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 document, they may want to analyze its provenance, but also determine
-who the provenance is attributed to, and when it was
+<h3><span class="secno"><span class="delete">3.3</span><span class="insert">4.3</span> </span>Attribution of Provenance</h3>
+
+<p>The two previous sections <span class="insert">offer two different perspectives on the provenance of a document. PROV allows for multiple sources to </span>provide<span class="delete"> two different perspectives on</span> the provenance of a <span class="delete">document By design, the PROV approach allows for the provenance of a subject</span><span class="insert">subject. For users</span> to <span class="delete">be provided by multiple sources. For users</span><span class="insert">decide whether they can place their trust in the document, they may want</span> to <span class="delete">decide whether they can place their trust in the document, they may want to </span>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, <span class="delete">[prov:type="prov:Account" %% xsd:QName</span><span class="insert">[prov:type='prov:Account'</span> ])
-wasAttributedTo(ex:w3c-publication1.pn, w3:Consortium)
-
-entity(ex:w3c-publication3.pn, <span class="delete">[prov:type="prov:Account" %% xsd:QName </span><span class="insert">[prov:type='prov:Account' </span>])
+<p><span class="delete">No new mechanism</span><span class="insert">PROV-DM offers a construct to name a bundle of provenance descriptions. </span></p>
+
+<pre class="codeexample"><span class="insert">bundle ex:author-view
+
+ agent(ex:Paolo, [ prov:type='prov:Person' ])
+ agent(ex:Simon, [ prov:type='prov:Person' ])
+
+
+...
+
+endBundle
+</span></pre><span class="insert">
+
+Likewise, the process view can be expressed as a separate named bundle.
+</span><pre class="codeexample"><span class="insert">bundle ex:process-view
+
+ agent(w3:Consortium, [ prov:type='prov:Organization' ])
+
+...
+
+endBundle
+</span></pre>
+
+<p><span class="insert">To express their respective provenance, these bundles must be seen as entities, and all PROV constructs are now available to express their provenance. In the example below, </span><span class="name"><span class="insert">ex:author-view</span></span> is <span class="delete">required</span><span class="insert">attributed</span> to <span class="delete">support this requirement.</span><span class="insert">the agent</span> <span class="delete">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 </span><span class="delete">ex:w3c-publication1.pn</span><span class="delete"> and </span><span class="delete">ex:w3c-publication3.pn</span><span class="delete">. To express their respective provenance, these resources must be seen as entities, and all the constructs of PROV-DM are now available</span><span class="name"><span class="insert">ex:Simon</span></span><span class="insert">, whereas </span><span class="name"><span class="insert">ex:process-view</span></span> to<span class="delete"> characterize their provenance. In the example below, </span><span class="delete">ex:w3c-publication1.pn</span><span class="delete"> is attributed to the agent </span> <span class="name">w3:Consortium<span class="delete">, whereas </span><span class="delete">ex:w3c-publication3.pn</span><span class="delete"> to </span><span class="delete">ex:Simon</span></span>.
+
+</p><span class="delete">entity(ex:w3c-publication1.pn, [prov:type="prov:Account" %% xsd:QName</span><pre class="codeexample"><span class="insert">entity(ex:author-view, [prov:type='prov:Bundle'</span> ])
+<span class="delete">wasAttributedTo(ex:w3c-publication1.pn,</span><span class="insert">wasAttributedTo(ex:author-view, ex:Simon)
+
+entity(ex:process-view, [prov:type='prov:Bundle' ])
+wasAttributedTo(ex:process-view,</span> w3:Consortium)
+</pre>
+
+<span class="delete">entity(ex:w3c-publication3.pn, [prov:type="prov:Account" %% xsd:QName ])
wasAttributedTo(ex:w3c-publication3.pn, ex:Simon)
-</pre>
-
+</span>
+
+
+
+<div class="note">
+<p><span class="insert">TODO: full details of bundles can be found at </span><a href="examples/w3c-publication1.pn"><span class="insert">ex:process-view</span></a><span class="insert"> and </span><a href="examples/w3c-publication3.pn"><span class="insert">ex:author-view</span></a><span class="insert">.</span></p>
+</div>
</div>
@@ -1636,10 +1976,10 @@
<div id="data-model-components" class="section">
-<h2><span class="secno">4. </span>PROV-DM Types and Relations</h2>
+<h2><span class="secno"><span class="delete">4.</span><span class="insert">5.</span> </span>PROV-DM Types and Relations</h2>
<p>Provenance concepts, expressed as PROV-DM types and relations, 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 4</a>. A component that relies on concepts defined in another also sits above it in this figure.
+<span class="delete">Components</span><span class="insert">The components</span> and their dependencies are illustrated in <a href="#prov-dm-components">Figure 4</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">
@@ -1648,15 +1988,16 @@
<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 derivation subtypes.</li>
<li><b>Component 4: alternate.</b> The fourth component consists of relations linking entities referring to the same thing. </li>
-<li><b>Component 5: collections.</b> The fifth component is about collections and concepts capturing their transformation, such as insertion and removal. </li>
-<li><b>Component 6: annotations.</b> The sixth component is concerned with annotations to PROV-DM instances.</li>
+<li><b>Component 5: <span class="delete">collections.</span><span class="insert">bundles.</span></b> The fifth component is <span class="delete">about collections and concepts capturing their transformation, such as insertion and removal. </span><span class="insert">concerned with bundles, a mechanism to support provenance of provenance.</span></li>
+<li><b>Component 6: <span class="delete">annotations.</span><span class="insert">collections.</span></b> The sixth component is <span class="delete">concerned with annotations to</span><span class="insert">about collections and concepts capturing their transformation, such as insertion and removal. </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%; ">
+<img usemap="#componentMap" src="images/components-dependencies.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">
@@ -1665,61 +2006,84 @@
<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">Figure 4: PROV-DM Components
+<figcaption id="prov-dm-components"><span class="insert">Figure 4:</span> PROV-DM <span class="delete">instances.</span>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<span class="delete">Figure 4: PROV-DM </span>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 3</a> indexes all relations according to their two primary elements. The table adopts the same color scheme as <a href="#prov-dm-components">Figure 4</a>, allowing components to be readily identified.
-Note that for simplicity, this table does not include collection-oriented relations.
-</p>
+Note that for simplicity, this table does not include <span class="insert">bundle-oriented and </span>collection-oriented relations.
+<span class="insert">Relation names appearing in bold correspond to the core structures introduced
+in </span><a href="#core-structures"><span class="insert">Section 2.1</span></a><span class="insert">.</span></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">Table 3: 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><br><a title="wasInvalidatedBy" href="#dfn-wasinvalidatedby" class="internalDFN">wasInvalidatedBy</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"><span class="delete">wasStartedByActivity</span><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><tr><td></td><td>Entity</td><td>Activity</td><td>Agent</td><span class="delete">Note</span></tr>
+<tr><td>Entity</td><td><div class="component3-color"><a class="essential internalDFN" href="#dfn-wasderivedfrom">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 class="essential internalDFN" title="wasGeneratedBy" href="#dfn-wasgeneratedby">wasGeneratedBy</a><br><a title="wasInvalidatedBy" href="#dfn-wasinvalidatedby" class="internalDFN">wasInvalidatedBy</a></td><td class="component2-color"><a class="essential internalDFN" href="#dfn-wasattributedto">wasAttributedTo<span class="delete">hasAnnotation</span></a></td></tr>
+<tr><td>Activity</td><td><div class="component1-color"><a class="essential internalDFN" href="#dfn-used">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"><span class="delete">wasStartedByActivity</span><a href="#dfn-wasinformedby" class="internalDFN">wasInformedBy</a></td><td class="component2-color"><a class="essential internalDFN" href="#dfn-wasassociatedwith">wasAssociatedWith<span class="delete">hasAnnotation</span></a></td></tr>
+<tr><td>Agent</td><td>—</td><td>—</td><td class="component2-color"><a class="essential internalDFN" href="#dfn-actedonbehalfof">actedOnBehalfOf<span class="delete">hasAnnotation</span>
+<span class="delete">Note</span><span class="delete">—</span><span class="delete">—</span><span class="delete">—</span><span class="delete">hasAnnotation</span></a></td></tr>
</tbody></table>
</div>
-<p><a href="#prov-dm-types-and-relations">Table 4</a> is a complete index of all the types and relations of PROV-DM, color-coded according to the component they belong to. In the first column, concept names link to their informal definition, whereas, in the second column, representations link to the information used to represent the concept.</p>
+<p><a href="#prov-dm-types-and-relations">Table 4</a> is a complete index of all the types and relations of PROV-DM, color-coded according to the component they belong to. In the first column, concept names link to their informal definition, whereas, in the second column, representations link to the information used to represent the concept.<span class="insert"> Concept names appearing in bold are the core structures introduced in </span><a href="#core-structures"><span class="insert">Section 2.1</span></a><span class="insert">.</span></p>
<div id="prov-dm-types-and-relations-fig" style="text-align: left;">
<table border="1" style="margin-left: auto; margin-right: auto;">
<caption id="prov-dm-types-and-relations">Table 4: PROV-DM Types and Relations</caption>
-<tbody><tr><td><a><b>Type or Relation Name</b></a></td><td><b>Representation in the PROV-N notation</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"><span class="delete">wasGeneratedBy(id,e,a,t,attrs)</span><span class="insert">wasGeneratedBy(id;e,a,t,attrs)</span></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"><span class="delete">used(id,a,e,t,attrs)</span><span class="insert">used(id;a,e,t,attrs)</span></a></td></tr>
+<tbody><tr><td><a><b>Type or Relation Name</b></a></td><td><b>Representation in the PROV-N notation</b></td><td><b><span class="insert">Component</span></b></td></tr>
+<tr class="component1-color"><td class="essential"><a href="#concept-entity" class="internalDFN">Entity</a></td><td><a title="dfn-Entity" class="essential internalDFN" href="#dfn-entity">entity(id, [ attr1=val1, ...])</a></td><td rowspan="8"><span class="insert">Component 1: entities/activities</span></td></tr>
+<tr class="component1-color"><td class="essential"><a href="#concept-activity" class="internalDFN">Activity</a></td><td><a title="dfn-Activity" class="essential internalDFN" href="#dfn-activity">activity(id, st, et, [ attr1=val1, ...])</a></td></tr>
+<tr class="component1-color"><td class="essential"><a href="#concept-generation" class="internalDFN">Generation</a></td><td><a title="wasGeneratedBy" href="#dfn-wasgeneratedby" class="internalDFN"><span class="delete">wasGeneratedBy(id,e,a,t,attrs)</span><span class="essential"><span class="insert">wasGeneratedBy(</span></span><span class="insert">id;</span><span class="essential"><span class="insert">e,a</span></span><span class="insert">,t,attrs</span><span class="essential"><span class="insert">)</span></span></a></td></tr>
+<tr class="component1-color"><td class="essential"><a href="#concept-usage" class="internalDFN">Usage</a></td><td><a title="used" href="#dfn-used" class="internalDFN"><span class="delete">used(id,a,e,t,attrs)</span><span class="essential"><span class="insert">used(</span></span><span class="insert">id;</span><span class="essential"><span class="insert">a,e</span></span><span class="insert">,t,attrs</span><span class="essential"><span class="insert">)</span></span></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"><span class="delete">wasStartedBy(id,a,e,t,attrs)</span><span class="insert">wasStartedBy(id;a2,e,a1,t,attrs)</span></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"><span class="delete">wasEndedBy(id,a,e,t,attrs)</span><span class="insert">wasEndedBy(id;a2,e,a1,t,attrs)</span></a></td></tr>
<tr class="component1-color"><td><a href="#concept-invalidation" class="internalDFN">Invalidation</a></td><td><a title="wasInvalidatedBy" href="#dfn-wasinvalidatedby" class="internalDFN"><span class="delete">wasInvalidatedBy(id,e,a,t,attrs)</span><span class="insert">wasInvalidatedBy(id;e,a,t,attrs)</span></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"><span class="delete">wasInformedBy(id,a2,a1,attrs)</span>
-<span class="delete">Start by Activity</span><span class="delete">wasStartedByActivity(id, a2, a1, attrs)</span><span class="insert">wasInformedBy(id;a2,a1,attrs)</span></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"><span class="delete">wasAttributedTo(id,e,ag,attr)</span><span class="insert">wasAttributedTo(id;e,ag,attr)</span></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"><span class="delete">wasAssociatedWith(id,a,ag,pl,attrs)</span><span class="insert">wasAssociatedWith(id;a,ag,pl,attrs)</span></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"><span class="delete">actedOnBehalfOf(id,ag2,ag1,a,attrs)</span><span class="insert">actedOnBehalfOf(id;ag2,ag1,a,attrs)</span></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"><span class="delete">wasDerivedFrom(id,</span><span class="insert">wasDerivedFrom(id;</span> e2, e1, a, g2, u1, 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"><span class="delete">wasInformedBy(id,a2,a1,attrs)</span><span class="insert">wasInformedBy(id;a2,a1,attrs)</span></a></td></tr>
+<span class="delete">Start by Activity</span><tr class="component2-color"><td class="essential"><a href="#concept-agent" class="internalDFN"><span class="insert">Agent</span></a></td><td><span class="delete">wasStartedByActivity(id, a2, a1, attrs)</span><a title="dfn-agent" class="essential internalDFN" href="#dfn-agent"><span class="insert">agent(id, [ attr1=val1, ...])</span></a></td><td rowspan="4"><span class="insert">Component 2: agents/responsibility</span></td></tr>
+<tr class="component2-color"><span class="delete">Agent</span><span class="delete">agent(id, [ attr1=val1, ...])</span>
+<td class="essential"><a href="#concept-attribution" class="internalDFN">Attribution</a></td><td><a title="wasAttributedTo" href="#dfn-wasattributedto" class="internalDFN"><span class="delete">wasAttributedTo(id,e,ag,attr)</span><span class="essential"><span class="insert">wasAttributedTo(</span></span><span class="insert">id;</span><span class="essential"><span class="insert">e,ag</span></span><span class="insert">,attr</span><span class="essential"><span class="insert">)</span></span></a></td></tr>
+<tr class="component2-color"><td class="essential"><a href="#concept-association-core" class="internalDFN">Association</a></td><td><a title="wasAssociatedWith" href="#dfn-wasassociatedwith" class="internalDFN"><span class="delete">wasAssociatedWith(id,a,ag,pl,attrs)</span><span class="essential"><span class="insert">wasAssociatedWith(</span></span><span class="insert">id;</span><span class="essential"><span class="insert">a,ag</span></span><span class="insert">,pl,attrs</span><span class="essential"><span class="insert">)</span></span></a></td></tr>
+<tr class="component2-color"><td class="essential"><a href="#concept-responsibility" class="internalDFN">Responsibility</a></td><td><a title="actedOnBehalfOf" href="#dfn-actedonbehalfof" class="internalDFN"><span class="delete">actedOnBehalfOf(id,ag2,ag1,a,attrs)</span><span class="essential"><span class="insert">actedOnBehalfOf(</span></span><span class="insert">id;</span><span class="essential"><span class="insert">ag2,ag1</span></span><span class="insert">,a,attrs</span><span class="essential"><span class="insert">)</span></span></a></td></tr>
+<tr class="component3-color"><td class="essential"><a href="#concept-derivation" class="internalDFN">Derivation</a></td><td><a title="wasDerivedFrom" href="#dfn-wasderivedfrom" class="internalDFN"><span class="delete">wasDerivedFrom(id, </span><span class="essential"><span class="insert">wasDerivedFrom(</span></span><span class="insert">id; </span><span class="essential">e2, <span class="delete">e1,</span><span class="insert">e1</span></span><span class="insert">,</span> a, g2, u1, <span class="delete">attrs)</span><span class="insert">attrs</span><span class="essential"><span class="insert">)</span></span></a></td><td rowspan="5"><span class="insert">Component 3: derivation</span></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"><span class="delete">wasRevisionOf(id,e2,e1,ag,attrs)</span><span class="insert">wasRevisionOf(id; e2, e1, a, g2, u1, attrs)</span></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"><span class="delete">wasQuotedFrom(id,e2,e1,ag2,ag1,attrs)</span><span class="insert">wasQuotedFrom(id; e2, e1, a, g2, u1, attrs)</span></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"><span class="delete">hadOriginalSource(id,e2,e1,attrs)</span><span class="insert">hadOriginalSource(id; e2, e1, a, g2, u1, attrs)</span></a></td></tr>
<tr class="component3-color"><td><a href="#concept-trace" class="internalDFN">Trace</a></td><td><a title="tracedTo" href="#dfn-tracedto" class="internalDFN"><span class="delete">tracedTo(id,e2,e1,attrs)</span><span class="insert">tracedTo(id;e2,e1,attrs)</span></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-alternate" class="internalDFN">Alternate</a></td><td><a title="alternateOf" href="#dfn-alternateof" class="internalDFN">alternateOf(alt1, alt2)</a></td><td rowspan="2"><span class="insert">Component 4: alternate</span></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="component6-color"><td><a title="bundle" href="#concept-bundle" class="internalDFN"><span class="insert">Bundle constructor</span></a></td><td><a title="dfn-bundle" href="#dfn-bundle-declaration" class="internalDFN"><span class="insert">bundle id description_1 ... description_n endBundle</span></a></td><td rowspan="3"><span class="insert">Component 5: bundles</span></td></tr>
+<tr class="component6-color"><td><a title="bundle" href="#concept-bundle" class="internalDFN"><span class="insert">Bundle description</span></a></td><td><a href="#concept-bundle" class="internalDFN"><span class="insert">Bundle</span></a></td></tr>
+<tr class="component6-color"><td><a href="#concept-provenance-locator" class="internalDFN"><span class="insert">Provenance Locator</span></a></td><td><a title="hasProvenanceIn" href="#dfn-hasprovenancein" class="internalDFN"><span class="insert">hasProvenanceIn(id, subject, bundle, target, service, prov, attrs)</span></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><td rowspan="5"><span class="insert">Component 6: Collections</span></td></tr>
<tr class="component5-color"><td><a href="#concept-dictionary" class="internalDFN">Dictionary</a></td><td><a href="#concept-dictionary" class="internalDFN">Dictionary</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"><span class="delete">derivedByInsertionFrom(id,</span><span class="insert">derivedByInsertionFrom(id;</span> 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"><span class="delete">derivedByRemovalFrom(id,</span><span class="insert">derivedByRemovalFrom(id;</span> 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>
+<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)})
+<span class="delete">Note</span><span class="delete">note(id, [ attr1=val1, ...])</span>
+<span class="delete">Annotation</span><span class="delete">hasAnnotation(r,n)</span></a></td></tr>
</tbody></table>
</div>
@@ -1730,15 +2094,19 @@
<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 interrelations: <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-invalidation" class="internalDFN">Invalidation</a>, <span class="insert">and </span><a href="#concept-communication" class="internalDFN">Communication<span class="delete">, and </span><span class="delete">Start by Activity</span></a>. <a href="#figure-component1">Figure 5</a> uses UML to depict the first component, with two classes and <span class="delete">binary </span>associations between them.<span class="delete"> Associations are not just binary: indeed, </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><span class="delete"> also </span> include <em>time</em> attributes.
-<span class="insert">UML association classes are used to express n-ary relations </span><a href="#concept-start" class="internalDFN"><span class="insert">Start</span></a><span class="insert"> and </span><a href="#concept-end" class="internalDFN"><span class="insert">End</span></a><span class="insert">.
-</span></p>
+<h3><span class="secno"><span class="delete">4.1</span><span class="insert">5.1</span> </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 interrelations: <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-invalidation" class="internalDFN">Invalidation</a>, <span class="insert">and </span><a href="#concept-communication" class="internalDFN">Communication<span class="delete">, and </span><span class="delete">Start by Activity</span></a>. <a href="#figure-component1">Figure 5</a> uses UML to depict the first <span class="delete">component, with</span><span class="insert">component.
+Core structures are displayed in the yellow area, consisting of</span> two classes <span class="insert">(</span><a href="#concept-entity" class="internalDFN"><span class="insert">Entity</span></a><span class="insert">, </span><a href="#concept-activity" class="internalDFN"><span class="insert">Activity</span></a><span class="insert">) </span>and <span class="insert">two </span>binary associations between <span class="delete">them. Associations are not just binary: indeed, </span><span class="insert">them (</span><a href="#concept-usage" class="internalDFN">Usage</a>, <a href="#concept-generation" class="internalDFN">Generation</a><span class="insert">). The rest of the figure displays extended structures, including UML associations classes (represented in gray) to express expanded n-ary relations (for </span><a href="#concept-usage" class="internalDFN"><span class="insert">Usage</span></a><span class="insert">, </span><a href="#concept-generation" class="internalDFN"><span class="insert">Generation</span></a><span class="insert">, </span><a href="#concept-invalidation" class="internalDFN"><span class="insert">Invalidation</span></a>, <a href="#concept-start" class="internalDFN">Start</a>, <a href="#concept-end" class="internalDFN">End</a><span class="insert">, </span><a href="#concept-communication" class="internalDFN"><span class="insert">Communication</span></a><span class="insert">). The figure</span> also <span class="delete">include</span><span class="insert">makes explicit</span> <em>time</em> <span class="delete">attributes.</span><span class="insert">attributes for these concepts (time being represented as a primitive).</span>
+</p>
<div style="text-align: center;">
+
+
<figure>
-<img src="images/Entities-Activities.png" alt="entities and activities">
+
+
+<img src="uml/component1.svg" alt="entities and activities">
<figcaption id="figure-component1">Figure 5: Entities and Activities Component Overview
</figcaption>
</figure>
@@ -1750,7 +2118,7 @@
<div id="term-Entity" class="section">
-<h4><span class="secno">4.1.1 </span>Entity</h4>
+<h4><span class="secno"><span class="delete">4.1.1</span><span class="insert">5.1.1</span> </span>Entity</h4>
<div class="glossary-ref"> An <dfn id="concept-entity">entity</dfn> is a physical, digital, conceptual, or other kind of <span class="delete">thing;</span><span class="insert">thing with some fixed aspects;</span> entities may be real or imaginary. </div>
@@ -1778,7 +2146,7 @@
<div id="term-Activity" class="section">
-<h4><span class="secno">4.1.2 </span>Activity</h4>
+<h4><span class="secno"><span class="delete">4.1.2</span><span class="insert">5.1.2</span> </span>Activity</h4>
<div class="glossary-ref"> An <dfn id="concept-activity">activity</dfn> is something that occurs over a period of time and acts upon or with entities; it may include consuming, processing, transforming, modifying, relocating, using, generating, or being associated with entities. </div>
@@ -1812,7 +2180,7 @@
</div>
<div id="term-Generation" class="section">
-<h4><span class="secno">4.1.3 </span>Generation</h4>
+<h4><span class="secno"><span class="delete">4.1.3</span><span class="insert">5.1.3</span> </span>Generation</h4>
<div class="glossary-ref"> <dfn id="concept-generation">Generation</dfn> is the completion of production of a new entity by an activity. This entity did not exist before generation and becomes available for usage after this generation. </div>
@@ -1858,7 +2226,7 @@
<div id="term-Usage" class="section">
-<h4><span class="secno">4.1.4 </span>Usage</h4>
+<h4><span class="secno"><span class="delete">4.1.4</span><span class="insert">5.1.4</span> </span>Usage</h4>
<div class="glossary-ref"> <dfn id="concept-usage">Usage</dfn> is the beginning of utilizing an entity by an activity. Before usage, the activity had not begun to utilize this entity and could not have been affected by the entity. </div>
@@ -1896,9 +2264,9 @@
<div id="term-Start" class="section">
-<h4><span class="secno">4.1.5 </span>Start</h4>
-
-<div class="glossary-ref"> <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 the activity's start. A start may refer to an entity, known as <dfn id="concept-start-trigger">trigger</dfn>, that initiated the <span class="delete">activity.</span><span class="insert">activity, or to an activity, known as </span><dfn id="concept-start-starter"><span class="insert">starter</span></dfn><span class="insert">, that generated the trigger.</span> </div>
+<h4><span class="secno"><span class="delete">4.1.5</span><span class="insert">5.1.5</span> </span>Start</h4>
+
+<div class="glossary-ref"> <span class="delete">Start</span><span class="delete"> 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 the activity's start. A start may refer to an entity, known as </span><span class="delete">trigger</span><span class="delete">, that initiated the activity. </span></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"><span class="delete">wasStartedBy(id,a,e,t,attrs)</span><span class="insert">wasStartedBy(id; a2, e, a1, t, attrs)</span></span> in PROV-N,</span> has:
@@ -1936,9 +2304,10 @@
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:Bob</span>.
</p><pre class="codeexample">activity(ex:foot_race)
-<span class="delete">wasStartedBy(ex:foot_race,ex:bang,2012-03-09T08:05:08-05:00)</span><span class="insert">wasStartedBy(ex:foot_race, ex:bang, -, 2012-03-09T08:05:08-05:00)</span>
-entity(ex:bang)
-agent(ex:Bob)
+<span class="delete">wasStartedBy(ex:foot_race,ex:bang,2012-03-09T08:05:08-05:00)
+</span>entity(ex:bang)
+<span class="insert">wasStartedBy(ex:foot_race, ex:bang, -, 2012-03-09T08:05:08-05:00)
+</span>agent(ex:Bob)
<span class="delete">wasAttributedTo(ex:bang,ex:Bob)</span><span class="insert">wasAttributedTo(ex:bang, ex:Bob)</span>
</pre>
</div>
@@ -1967,7 +2336,7 @@
</div>
<div id="term-End" class="section">
-<h4><span class="secno">4.1.6 </span>End</h4>
+<h4><span class="secno"><span class="delete">4.1.6</span><span class="insert">5.1.6</span> </span>End</h4>
<div class="glossary-ref"> <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 the activity's end. An end may refer to an entity, known as <dfn id="concept-end-trigger">trigger</dfn>, that terminated the <span class="delete">activity.</span><span class="insert">activity, or to an activity, known as </span><dfn id="concept-end-ender"><span class="insert">ender</span></dfn><span class="insert"> that generated the trigger.</span> </div>
@@ -1996,7 +2365,7 @@
</div>
<div id="term-Invalidation" class="section">
-<h4><span class="secno">4.1.7 </span>Invalidation</h4>
+<h4><span class="secno"><span class="delete">4.1.7</span><span class="insert">5.1.7</span> </span>Invalidation</h4>
<div class="glossary-ref"> <dfn id="concept-invalidation">Invalidation</dfn> is the start of the destruction, cessation, or expiry of an existing entity by an activity. The entity is no longer available for use after invalidation. Any generation or usage of an entity precedes its invalidation.</div>
@@ -2012,7 +2381,7 @@
</li><li> an entity is time limited: e.g. the BBC news site on April 3rd, 2012;
</li><li> an entity attribute is changing: e.g. the traffic light changed from green to red.
</li></ul>
-<p>In the first two cases, the entity has physically disappeared after its termination: there is no more soup, or painting. In the last two cases, there may be an "offer voucher" that still exists, but it is no longer valid; likewise, on April 4th, the BBC news site still exists but it is not the same entity as BBC news Web site on April 3rd; or the traffic light became red and therefore is regarded as a different entity to the green light.
+<p>In the first two cases, the entity has physically disappeared after its termination: there is no more soup, or painting. In the last <span class="delete">two</span><span class="insert">three</span> cases, there may be an "offer voucher" that still exists, but it is no longer valid; likewise, on April 4th, the BBC news site still exists but it is not the same entity as BBC news Web site on April 3rd; or the traffic light became red and therefore is regarded as a different entity to the green light.
</p>
@@ -2089,7 +2458,7 @@
<div id="term-wasInformedBy" class="section">
-<h4><span class="secno">4.1.8 </span>Communication</h4>
+<h4><span class="secno"><span class="delete">4.1.8</span><span class="insert">5.1.8</span> </span>Communication</h4>
<div class="glossary-ref"> <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>
@@ -2159,24 +2528,28 @@
</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 component with four classes (Entity, Activity, Agent, and Plan) and associations between them. UML association classes are used to express n-ary relations.
+<h3><span class="secno"><span class="delete">4.2</span><span class="insert">5.2</span> </span>Component 2: Agents and Responsibility</h3>
+
+<p>The second component of <span class="delete">PROV-DM</span><span class="insert">PROV-DM, depicted in </span><a href="#figure-component2"><span class="insert">Figure 6</span></a><span class="insert">,</span> 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-association-core" class="internalDFN">Association</a>, <a href="#concept-responsibility" class="internalDFN">Responsibility</a>, relating agents to entities, activities, and agents, respectively.<span class="delete">
+Figure </span><span class="delete">figure-component2</span><span class="delete"> depicts the second component with four</span><span class="insert">
+ Core structures are displayed in the yellow area and include three</span> classes <span class="delete">(Entity, Activity, Agent, </span>and <span class="delete">Plan)</span><span class="insert">three binary associations. Outside the yellow area, extended structures comprise the subclass </span><a href="#concept-plan" class="internalDFN"><span class="insert">Plan</span></a> and <span class="delete">associations between them. </span>UML association classes <span class="delete">are used </span>to express<span class="insert"> expanded</span> n-ary relations.
</p>
<div style="text-align: center;">
+
+
<figure>
-<img src="images/Agents-Responsibility.png" alt="agents and responsibilities">
+
+<img src="uml/component2.svg" alt="agents and responsibilities">
<figcaption id="figure-component2">Figure 6: Agents and Responsibilities Component Overview
</figcaption>
</figure>
</div>
<div id="term-Agent" class="section">
-<h4><span class="secno">4.2.1 </span>Agent</h4>
+<h4><span class="secno"><span class="delete">4.2.1</span><span class="insert">5.2.1</span> </span>Agent</h4>
<div class="glossary-ref"> An <dfn id="concept-agent">agent</dfn> is something that bears some form of responsibility for an activity taking place or for the existence of an entity. </div>
@@ -2192,7 +2565,7 @@
<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 use; It is acknowledged that these types do not cover all kinds of agent. </p>
+There are three types of agents that are common across most anticipated domains of use; <span class="delete">It</span><span class="insert">it</span> is acknowledged that these types do not cover all kinds of agent. </p>
<ul>
<li><span class="name">SoftwareAgent</span>
<div class="glossary-ref"> A <dfn id="concept-software-agent" title="software-agent">software agent</dfn> is running software. </div>
@@ -2224,7 +2597,7 @@
</div>
<div id="term-attribution" class="section">
-<h4><span class="secno">4.2.2 </span>Attribution</h4>
+<h4><span class="secno"><span class="delete">4.2.2</span><span class="insert">5.2.2</span> </span>Attribution</h4>
<div class="glossary-ref"> <dfn id="concept-attribution">Attribution</dfn> is the ascribing of an entity to an agent. </div>
@@ -2255,7 +2628,7 @@
<div id="term-ActivityAssociation" class="section">
-<h4><span class="secno">4.2.3 </span>Association</h4>
+<h4><span class="secno"><span class="delete">4.2.3</span><span class="insert">5.2.3</span> </span>Association</h4>
<div class="glossary-ref"> 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>
@@ -2275,7 +2648,7 @@
</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>, described as an an entity of type <span class="name"><a href="#concept-plan" class="internalDFN">plan</a></span>. </p>
+<p>In the following example, a designer <span class="insert">agent </span>and an operator <span class="delete">agents</span><span class="insert">agent</span> are associated with an activity. The designer's goals are achieved by a workflow <span class="name">ex:wf</span>, described as an an entity of type <span class="name"><a href="#concept-plan" class="internalDFN">plan</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"])
@@ -2305,7 +2678,7 @@
<div id="term-responsibility" class="section">
-<h4><span class="secno">4.2.4 </span>Responsibility</h4>
+<h4><span class="secno"><span class="delete">4.2.4</span><span class="insert">5.2.4</span> </span>Responsibility</h4>
<div class="glossary-ref"> <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>
@@ -2360,25 +2733,29 @@
</div>
<div id="component3" class="section">
-<h3><span class="secno">4.3 </span>Component 3: Derivations</h3>
+<h3><span class="secno"><span class="delete">4.3</span><span class="insert">5.3</span> </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> of <a title="entity" href="#concept-entity" class="internalDFN">entities</a> from others, and derivation subtypes <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-trace" class="internalDFN">Trace</a>.
-Figure <a href="#figure-component3">figure-component3</a> depicts the third component with three classes (Entity, Activity, and Agent) and associations between them. UML association classes express n-ary relations.
+
+ <a href="#figure-component3">Figure <span class="delete">figure-component3</span><span class="insert">7</span></a> depicts the third component with three classes (Entity, Activity, and Agent) and associations between them. <span class="insert">As before, the yellow are includes PROV core structures, whereas extended structures are found outside this area. </span>UML association classes express<span class="insert"> expanded</span> n-ary relations.
</p>
<div style="text-align: center;">
+
+
<figure>
-<img src="images/Derivation.png" alt="derivation">
+
+<img src="uml/component3.svg" alt="derivation">
<figcaption id="figure-component3">Figure 7: Derivation Component Overview
</figcaption>
</figure>
</div>
<div id="Derivation-Relation" class="section">
-<h4><span class="secno">4.3.1 </span>Derivation</h4>
+<h4><span class="secno"><span class="delete">4.3.1</span><span class="insert">5.3.1</span> </span>Derivation</h4>
@@ -2389,7 +2766,7 @@
-<p>According to <a href="#starting-points">Section 2</a>, for an entity to be transformed from, created from, or resulting from an update to another, there must be some
+<p>According to <a href="#section-prov-overview">Section 2</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 represent further information about the derivation. If the derivation is the result of a single known activity, then this activity can also be optionally expressed. 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 to derivations to aid analysis of provenance and to facilitate provenance-based reproducibility. </p>
@@ -2397,10 +2774,10 @@
<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"><span class="delete">wasDerivedFrom(id,</span><span class="insert">wasDerivedFrom(id;</span> e2, e1, a, g2, u1, attrs)</span> in PROV-N,</span> has:
<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.generatedEntity">generatedEntity</span>: the identifier (<span class="name"><span class="delete">ee</span><span class="insert">e2</span></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 <span class="insert">(</span><span class="name"><span class="insert">e2</span></span><span class="insert">) </span>and activity;</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<span class="insert"> (</span><span class="name"><span class="insert">e2</span></span><span class="insert">)</span> 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 <span class="insert">(</span><span class="name"><span class="insert">e1</span></span><span class="insert">) </span>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 representing additional information about this derivation.</li>
</ul>
@@ -2431,7 +2808,7 @@
</div>
<div id="term-Revision" class="section">
-<h4><span class="secno">4.3.2 </span>Revision</h4>
+<h4><span class="secno"><span class="delete">4.3.2</span><span class="insert">5.3.2</span> </span>Revision</h4>
<p><span class="glossary-ref"> A <dfn id="concept-revision">revision</dfn> is a derivation that revises an entity into a revised version. </span></p>
@@ -2471,7 +2848,7 @@
</div>
<div id="term-quotation" class="section">
-<h4><span class="secno">4.3.3 </span>Quotation</h4>
+<h4><span class="secno"><span class="delete">4.3.3</span><span class="insert">5.3.3</span> </span>Quotation</h4>
<p>
<span class="glossary-ref"> A <dfn id="concept-quotation">quotation</dfn> is the repeat of (some or all of) an entity, such as text or image, by someone <span class="delete">other than</span><span class="insert">who may or may not be</span> its original author. </span>
@@ -2516,7 +2893,7 @@
<div id="term-original-source" class="section">
-<h4><span class="secno">4.3.4 </span>Original Source</h4>
+<h4><span class="secno"><span class="delete">4.3.4</span><span class="insert">5.3.4</span> </span>Original Source</h4>
<p>
<span class="glossary-ref"> 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>
@@ -2555,7 +2932,7 @@
</div>
<div id="term-trace" class="section">
-<h4><span class="secno">4.3.5 </span>Trace</h4>
+<h4><span class="secno"><span class="delete">4.3.5</span><span class="insert">5.3.5</span> </span>Trace</h4>
<p>
<span class="glossary-ref"> <dfn id="concept-trace">Trace</dfn> is the ability to link back an entity to another by means of derivation or responsibility relations, possibly repeatedly traversed. </span>
@@ -2598,19 +2975,23 @@
</div>
<div id="component4" class="section">
-<h3><span class="secno">4.4 </span>Component 4: Alternate Entities</h3>
+<h3><span class="secno"><span class="delete">4.4</span><span class="insert">5.4</span> </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> depicts
+
+ <a href="#figure-component4">Figure <span class="delete">figure-component4</span><span class="insert">8</span></a> depicts
the fourth component with a single class and two associations.
</p>
<div style="text-align: center;">
+
+
<figure>
-<img src="images/Alternates.png" alt="alternates">
+
+<img src="uml/component4.svg" alt="alternates">
<figcaption id="figure-component4">Figure 8: Alternates Component Overview
</figcaption>
</figure>
@@ -2631,7 +3012,7 @@
<div id="term-specialization" class="section">
-<h4><span class="secno">4.4.1 </span>Specialization</h4>
+<h4><span class="secno"><span class="delete">4.4.1</span><span class="insert">5.4.1</span> </span>Specialization</h4>
<span class="glossary-ref"> An entity <span class="insert">that </span>is a <dfn id="concept-specialization">specialization</dfn> of another <span class="delete">if they refer to some common</span><span class="insert">shares all aspects of the latter, and additionally presents more specific aspects of the same</span> thing <span class="delete">but the former is a more constrained</span><span class="insert">as the latter. In particular, the lifetime of the specialized</span> entity <span class="delete">than the latter. The common thing does not need to be identified. </span><span class="insert">contains that of any specialization. </span></span>
@@ -2644,11 +3025,11 @@
<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> has:
+</p><div class="attributes" id="attributes-specialization">A <dfn title="specializationOf" id="dfn-specializationof">specialization</dfn> relation<span class="withPn">, written <span class="pnExpression"><span class="delete">specializationOf(sub, super)</span><span class="insert">specializationOf(infra, supra)</span></span> in PROV-N,</span> has:
<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>
+<li><span class="delete">specializedEntity</span><span class="attribute" id="specialization.specialization"><span class="insert">specialization</span></span>: an identifier (<span class="name"><span class="delete">sub</span><span class="insert">infra</span></span>) of the specialized entity;</li>
+<li><span class="attribute" id="specialization.generalEntity">generalEntity</span>: an identifier (<span class="name"><span class="delete">super</span><span class="insert">supra</span></span>) of the entity that is being specialized.</li>
</ul>
</div>
@@ -2673,7 +3054,7 @@
<div id="term-alternate" class="section">
-<h4><span class="secno">4.4.2 </span>Alternate</h4>
+<h4><span class="secno"><span class="delete">4.4.2</span><span class="insert">5.4.2</span> </span>Alternate</h4>
<span class="glossary-ref"> <span class="delete">An entity is</span><span class="insert">Two</span> <dfn id="concept-alternate">alternate</dfn> <span class="delete">of another if they are both a specialization of some common entity. The common entity does</span><span class="insert">entities present aspects of the same thing. These aspects may be the same or different, and the alternate entities may or may</span> not <span class="delete">need to be identified. </span><span class="insert">overlap in time. </span></span>
@@ -2714,24 +3095,320 @@
</div>
+
</div>
<div id="component5" class="section">
-<h3><span class="secno">4.5 </span>Component 5: Collections</h3>
+<h3><span class="secno"><span class="delete">4.5</span><span class="insert">5.5</span> </span>Component 5:<span class="insert"> Bundles</span></h3>
+
+
+<p><span class="insert">The fifth component of PROV-DM is concerned with bundles, a mechanism to support provenance of provenance.
+</span><a href="#figure-component5"><span class="insert">Figure 9</span></a><span class="insert"> depict a UML class diagram for the fifth component. It comprises a </span><a href="#concept-bundle" class="internalDFN"><span class="insert">Bundle</span></a><span class="insert"> class, a subclass of </span><a href="#concept-entity" class="internalDFN"><span class="insert">Entity</span></a><span class="insert"> and a novel n-ary relation, </span><a href="#concept-provenance-locator" class="internalDFN"><span class="insert">Provenance Locator</span></a><span class="insert">.
+</span></p>
+
+<div style="text-align: center;">
+<figure>
+
+<img src="uml/component5.svg" alt="bundles">
+<figcaption id="figure-component5"><span class="insert">Figure 9: Bundle Component Overview</span></figcaption>
+</figure>
+</div>
+
+
+
+
+<div id="term-bundle" class="section">
+
+<h4><span class="secno"><span class="insert">5.5.1 </span></span><span class="insert">Bundle constructor</span></h4>
+
+
+<p>
+<span class="glossary-ref"><span class="insert">
+ A </span><dfn id="concept-bundle"><span class="insert">bundle</span></dfn><span class="insert"> is a named set of provenance descriptions, and is itself an entity, so allowing provenance of provenance to be expressed. </span></span>
+ </p>
+
+
+
+
+<p>
+</p><div class="attributes" id="attributes-bundle"><span class="insert">
+ A </span><dfn title="dfn-bundle" id="dfn-bundle-declaration"><span class="insert">bundle constructor</span></dfn><span class="insert"> allows the content and the name of a bundle to be specified; it is written </span><span class="pnExpression"><span class="insert">bundle id description_1 ... description_n endBundle</span></span><span class="insert"> and consists of:
+</span><ul>
+<li><span class="attribute" id="bundle.declaration.id"><span class="insert">id</span></span><span class="insert">: an identifier for the bundle;</span></li>
+<li><span class="attribute" id="bundle.declaration.descriptions"><span class="insert">descriptions</span></span><span class="insert">: a set of provenance descriptions </span><span class="name"><span class="insert">
+description_1</span></span><span class="insert">, ..., </span><span class="name"><span class="insert">description_n</span></span><span class="insert">.</span></li>
+</ul>
+<p><span class="insert">A bundle's identifier </span><span class="name"><span class="insert">id</span></span><span class="insert"> identifies a unique set of descriptions.</span></p>
+</div>
+</div>
+
+
+
+
+
+<div id="term-bundle-entity" class="section">
+
+<h4><span class="secno"><span class="insert">5.5.2 </span></span><span class="insert">Bundle Description</span></h4>
+
+<p><span class="insert">A bundle is a named set of descriptions, but also it is also an entity so that its provenance can be described. </span></p><span class="insert">
+
+PROV defines the following type for bundles:
+</span><ul>
+<li><span class="name"><span class="insert">prov:Bundle</span></span><span class="insert"> is the type that denotes </span><a title="bundle" href="#concept-bundle" class="internalDFN"><span class="insert">bundles</span></a><span class="insert">.
+</span></li></ul>
+
+
+<p><span class="insert">
+A bundle description is of the form </span><span class="pnExpression"><span class="insert">entity(id,[prov:type='prov:Bundle', attr1=val1, ...])</span></span><span class="insert">
+where </span><span class="name"><span class="insert">id</span></span><span class="insert"> is an identifier denoting a bundle,
+ a type </span><span><span class="insert">prov:Bundle</span></span><span class="insert"> and
+an </span><em class="rfc2119" title="optional"><span class="insert">optional</span></em><span class="insert"> set of attribute-value pairs ((</span><span class="name"><span class="insert">attr1</span></span><span class="insert">, </span><span class="name"><span class="insert">val1</span></span><span class="insert">), ...) representing additional information about this bundle.
+</span></p>
+
+
+<p><span class="insert">The provenance of provenance can then be described using PROV constructs, as illustrated by the following example. </span></p>
+
+<div class="anexample" id="anexample-provenance-of-provenance">
+<p><span class="insert">Let us consider an example consisting of two entities </span><span class="name"><span class="insert">ex:report1</span></span><span class="insert"> and </span><span class="name"><span class="insert">ex:report2</span></span><span class="insert">.</span></p>
+<pre class="codeexample"><span class="insert">
+entity(ex:report1, [ prov:type="report", ex:version=1 ])
+wasGeneratedBy(ex:report1, -, 2012-05-24T10:00:01)
+entity(ex:report2, [ prov:type="report", ex:version=2])
+wasGeneratedBy(ex:report2, -, 2012-05-25T11:00:01)
+wasDerivedFrom(ex:report2, ex:report1)
+</span></pre>
+
+<p><span class="insert">Let us assume that Bob observed the creation of </span><span class="name"><span class="insert">ex:report1</span></span><span class="insert">.
+A first bundle can be expressed.</span></p>
+<pre class="codeexample"><span class="insert">
+bundle bob:bundle1
+ entity(ex:report1, [ prov:type="report", ex:version=1 ])
+ wasGeneratedBy(ex:report1, -, 2012-05-24T10:00:01)
+endBundle
+</span></pre>
+
+<p><span class="insert">In contrast,
+Alice observed the creation of </span><span class="name"><span class="insert">ex:report2</span></span><span class="insert"> and its derivation from </span><span class="name"><span class="insert">ex:report1</span></span><span class="insert">.
+A separate bundle can also be expressed.</span></p>
+<pre class="codeexample"><span class="insert">
+bundle alice:bundle2
+ entity(ex:report1)
+ entity(ex:report2, [ prov:type="report", ex:version=2 ])
+ wasGeneratedBy(ex:report2, -, 2012-05-25T11:00:01)
+ wasDerivedFrom(ex:report2, ex:report1)
+endBundle
+</span></pre>
+
+<p><span class="insert">The first bundle contains the descriptions corresponding to Bob observing the creation of </span><span class="name"><span class="insert">ex:report1</span></span><span class="insert">. Its provenance can be described as follows.</span></p>
+<pre class="codeexample"><span class="insert">
+entity(bob:bundle1, [prov:type='prov:Bundle'])
+wasGeneratedBy(bob:bundle1, -, 2012-05-24T10:30:00)
+wasAttributedTo(bob:bundle1, ex:Bob)
+</span></pre>
+
+<p><span class="insert">In contrast, the second bundle is attributed to Alice who
+observed the derivation of </span><span class="name"><span class="insert">ex:report2</span></span><span class="insert"> from </span><span class="name"><span class="insert">ex:report1</span></span><span class="insert">.</span></p>
+<pre class="codeexample"><span class="insert">
+entity(alice:bundle2, [ prov:type='prov:Bundle' ])
+wasGeneratedBy(alice:bundle2, -, 2012-05-25T11:15:00)
+wasAttributedTo(alice:bundle2, ex:Alice)
+</span></pre>
+</div>
+
+<div class="anexample" id="anexample-provenance-aggregation">
+<p><span class="insert">A provenance aggregator could merge two bundles, resulting in a novel bundle, whose provenance is described as follows.</span></p>
+<pre class="codeexample"><span class="insert">
+bundle agg:bundle3
+ entity(ex:report1, [ prov:type="report", ex:version=1 ])
+ wasGeneratedBy(ex:report1, -, 2012-05-24T10:00:01)
+
+ entity(ex:report2, [ prov:type="report", ex:version=2 ])
+ wasGeneratedBy(ex:report2, -, 2012-05-25T11:00:01)
+ wasDerivedFrom(ex:report2, ex:report1)
+endBundle
+
+entity(agg:bundle3, [ prov:type='prov:Bundle' ])
+agent(ex:aggregator01, [ prov:type='ex:Aggregator' ])
+wasAttributedTo(agg:bundle3, ex:aggregator01)
+wasDerivedFrom(agg:bundle3, bob:bundle1)
+wasDerivedFrom(agg:bundle3, alice:bundle2)
+</span></pre>
+<p><span class="insert">The new bundle is given a new identifier </span><span class="name"><span class="insert">agg:bundle3</span></span><span class="insert"> and is attributed to the </span><span class="name"><span class="insert">ex:aggregator01</span></span><span class="insert"> agent.
+</span></p></div>
+
+
+</div>
+
+<div id="term-hasProvenanceIn" class="section">
+
+<h4><span class="secno"><span class="insert">5.5.3 </span></span><span class="insert">Provenance Locator</span></h4><span class="insert">
+
+
+In </span><a href="#anexample-provenance-of-provenance"><span class="insert">Example anexample-provenance-of-provenance</span></a><span class="insert">, we initially presented a scenario involving two entities </span><span class="name"><span class="insert">report1</span></span><span class="insert"> and </span><span class="name"><span class="insert">report2</span></span><span class="insert">, and showed how the descriptions can be organized into two bundles. There is no explicit indication that the second bundle "continues" the description offered by the first bundle. Given that bundles may be retrieved separately [</span><cite><a class="bibref" rel="biblioentry" href="#bib-PROV-AQ"><span class="insert">PROV-AQ</span></a></cite><span class="insert">], it is not obvious for a provenance consumer to navigate descriptions across bundles. To aid consumers,
+ Alice may wish to express that there is further provenance information about </span><span class="name"><span class="insert">report1</span></span><span class="insert"> in bundle </span><span class="name"><span class="insert">bob:bundle1</span></span><span class="insert">. To this end, PROV introduces the notion of provenance locator, inspired by [</span><cite><a class="bibref" rel="biblioentry" href="#bib-PROV-AQ"><span class="insert">PROV-AQ</span></a></cite><span class="insert">].
+
+
+</span><p></p><div class="glossary-ref"><span class="insert"> A </span><dfn id="concept-provenance-locator"><span class="insert">provenance locator</span></dfn><span class="insert"> is information that helps locate provenance descriptions. It may identify a service, or may consist of a URI where provenance descriptions can be found. It can further identify a bundle within which provenance descriptions can be found. </span></div>
+
+
+
+
+<div class="attributes" id="attributes-hasProvenanceIn"><span class="insert">
+A </span><dfn title="hasProvenanceIn" id="dfn-hasprovenancein"><span class="insert">provenance locator</span></dfn><span class="insert">,
+written
+</span><span class="pnExpression"><span class="insert">hasProvenanceIn(id, subject, bundle, target, service, prov, attrs)</span></span><span class="insert">, has:
+</span><ul>
+<li><span class="attribute" id="prov.locator.id"><span class="insert">id</span></span><span class="insert">: an identifier for a provenance locator; </span></li>
+<li><span class="attribute" id="prov.locator.subject"><span class="insert">subject</span></span><span class="insert">: an identifier denoting something (entity, activity, agent, or relation instance);</span></li>
+<li><span class="attribute" id="prov.locator.bundle"><span class="insert">bundle</span></span><span class="insert">: an </span><em class="rfc2119" title="optional"><span class="insert">optional</span></em><span class="insert"> identifier (</span><span class="name"><span class="insert">bundle</span></span><span class="insert">) for a bundle;
+</span></li><li><span class="attribute" id="prov.locator.target"><span class="insert">target</span></span><span class="insert">: an </span><em class="rfc2119" title="optional"><span class="insert">optional</span></em><span class="insert"> identifier (</span><span class="name"><span class="insert">target</span></span><span class="insert">) denoting something described in another set of descriptions (referred to as </span><a href="http://www.w3.org/TR/prov-aq/#dfn-target-uri"><span class="insert">Target-URI</span></a><span class="insert"> in [</span><cite><a class="bibref" rel="biblioentry" href="#bib-PROV-AQ"><span class="insert">PROV-AQ</span></a></cite><span class="insert">]);
+</span></li><li><span class="attribute" id="prov.locator.service"><span class="insert">service-uri</span></span><span class="insert">: an </span><em class="rfc2119" title="optional"><span class="insert">optional</span></em><span class="insert"> URI (</span><span class="name"><span class="insert">service</span></span><span class="insert">) denoting a </span><a href="http://www.w3.org/TR/prov-aq/#dfn-provenance-service"><span class="insert">provenance service</span></a><span class="insert"> from which provenance can be retrieved (referred to as </span><a href="http://www.w3.org/TR/prov-aq/#dfn-service-uri"><span class="insert">Service-URI</span></a><span class="insert"> in [</span><cite><a class="bibref" rel="biblioentry" href="#bib-PROV-AQ"><span class="insert">PROV-AQ</span></a></cite><span class="insert">]);
+</span></li><li><span class="attribute" id="prov.locator.provenance"><span class="insert">provenance-uri</span></span><span class="insert">: an </span><em class="rfc2119" title="optional"><span class="insert">optional</span></em><span class="insert"> URI (</span><span class="name"><span class="insert">prov</span></span><span class="insert">), which when dereferenced, allows access to provenance descriptions (referred to as </span><a href="http://www.w3.org/TR/prov-aq/#dfn-provenance-uri"><span class="insert">Provenance-URI</span></a><span class="insert"> in [</span><cite><a class="bibref" rel="biblioentry" href="#bib-PROV-AQ"><span class="insert">PROV-AQ</span></a></cite><span class="insert">]);
+</span></li><li><span class="attribute" id="prov.locator.attributes"><span class="insert">attributes</span></span><span class="insert">: an </span><em class="rfc2119" title="optional"><span class="insert">optional</span></em><span class="insert"> set (</span><span class="name"><span class="insert">attrs</span></span><span class="insert">) of attribute-value pairs representing additional information about this locator.</span></li>
+</ul>
+<p><span class="insert">In </span><span class="pnExpression"><span class="insert">hasProvenanceIn(id, subject, bundle, target, service, prov, attrs)</span></span><span class="insert">, </span><span class="name"><span class="insert">service</span></span><span class="insert"> and </span><span class="name"><span class="insert">prov</span></span><span class="insert"> are both optional and mutually exclusive: if specified, either </span><span class="name"><span class="insert">service</span></span><span class="insert"> or </span><span class="name"><span class="insert">prov</span></span><span class="insert"> is provided.</span></p>
+</div>
+
+<p><span class="insert">A provenance locator specifies a context, referred to
+as </span><em><span class="insert">located context</span></em><span class="insert"> in which further descriptions can be found
+about something.</span></p>
+
+<div class="note"><span class="insert">
+It is suggested that prov:service-uri and prov:provenance-uri should be made optional reserved attributes.
+In the target is not specified, it is assumed that the target is the same identifier as subject.
+</span></div>
+
+<p><span class="insert">When the subject and optional target denote entities,
+a provenance locator not only provides a located context, but it also expresses an </span><a href="#concept-alternate" class="internalDFN"><span class="insert">alternate</span></a><span class="insert"> relation between the entity denoted by </span><span class="name"><span class="insert">subject</span></span><span class="insert"> and the entity described in the located context. This is a alternate since the entity denoted by </span><span class="name"><span class="insert">subject</span></span><span class="insert"> in the current context presents other aspects than the entity in the located one.</span></p>
+
+<div class="anexample" id="anexample-provenance-locator">
+<p><span class="insert">According to the following provenance locator, provenance descriptions about </span><span class="name"><span class="insert">ex:report1</span></span><span class="insert"> can be found in bundle </span><span class="name"><span class="insert">bob:bundle1</span></span><span class="insert">.</span></p>
+<pre class="codeexample"><span class="insert">
+hasProvenanceIn(ex:report1, bob:bundle1, -, -, -)
+</span></pre>
+<p><span class="insert">According to the following provenance locator, provenance descriptions about </span><span class="name"><span class="insert">ex:report1</span></span><span class="insert"> can be found in bundle </span><span class="name"><span class="insert">bob:bundle1</span></span><span class="insert">, which is available from the provenance service identified by the provided URI.</span></p>
+<pre class="codeexample"><span class="insert">
+hasProvenanceIn(ex:report1, bob:bundle1, -, "http://example.com/service"^xsd:anyURI, -)
+</span></pre>
+<p><span class="insert">According to the following provenance locator, provenance descriptions about </span><span class="name"><span class="insert">ex:report1</span></span><span class="insert"> can be found in resource identified by the provided URI.</span></p>
+<pre class="codeexample"><span class="insert">
+hasProvenanceIn(ex:report1, -, -, -, "http://example.com/some-provenance.pn"^xsd:anyURI)
+</span></pre>
+</div>
+
+
+<div class="anexample" id="anexample-provenance-locator2">
+<p><span class="insert">Let us again consider the same scenario involving two entities </span><span class="name"><span class="insert">ex:report1</span></span><span class="insert"> and </span><span class="name"><span class="insert">ex:report2</span></span><span class="insert">.</span></p>
+<p><span class="insert">The first bundle can be expressed with all Bob's observations about the creation of </span><span class="name"><span class="insert">ex:report1</span></span><span class="insert">.
+</span></p>
+<pre class="codeexample"><span class="insert">
+bundle bob:bundle4
+ entity(ex:report1, [ prov:type="report", ex:version=1 ])
+ wasGeneratedBy(ex:report1, -, 2012-05-24T10:00:01)
+endBundle
+</span></pre>
+
+<p><span class="insert">Likewise, Alice's observation about the derivation of </span><span class="name"><span class="insert">ex:report2</span></span><span class="insert"> from </span><span class="name"><span class="insert">ex:report1</span></span><span class="insert">, is expressed in a separate bundle.</span></p>
+<pre class="codeexample"><span class="insert">
+bundle alice:bundle5
+ entity(ex:report1)
+ hasProvenanceIn(ex:report1, bob:bundle4, -, -, -)
+ entity(ex:report2, [ prov:type="report", ex:version=2 ])
+ wasGeneratedBy(ex:report2, -, 2012-05-25T11:00:01)
+ wasDerivedFrom(ex:report2, ex:report1)
+endBundle
+</span></pre>
+<p><span class="insert">In bundle </span><span class="name"><span class="insert">alice:bundle5</span></span><span class="insert">, there is a description for entity </span><span class="name"><span class="insert">ex:report1</span></span><span class="insert">, and
+a provenance locator pointing to bundle </span><span class="name"><span class="insert">bob:bundle4</span></span><span class="insert">.
+The locator indicates that some provenance description for </span><span class="name"><span class="insert">ex:report1</span></span><span class="insert"> can be found in bundle </span><span class="name"><span class="insert">bob:bundle4</span></span><span class="insert">. The purpose of the locator is twofold. First, it allows for </span><a href="http://www.w3.org/TR/prov-aq/#incremental-provenance-retrieval"><span class="insert">incremental navigation</span></a><span class="insert"> of provenance [</span><cite><a class="bibref" rel="biblioentry" href="#bib-PROV-AQ"><span class="insert">PROV-AQ</span></a></cite><span class="insert">]. Second, it makes entity </span><span class="name"><span class="insert">ex:report1</span></span><span class="insert"> described in </span><span class="name"><span class="insert">alice:bundle5</span></span><span class="insert"> an </span><a href="#concept-alternate" class="internalDFN"><span class="insert">alternate</span></a><span class="insert"> of </span><span class="name"><span class="insert">ex:report1</span></span><span class="insert"> described in </span><span class="name"><span class="insert">bob:bundle4</span></span><span class="insert">.
+</span></p>
+</div>
+
+
+<div class="anexample" id="anexample-provenance-locator3">
+<p><span class="insert">Alternatively, Alice may have decided to use a different identifier for </span><span class="name"><span class="insert">ex:report1</span></span><span class="insert">.</span></p>
+<pre class="codeexample"><span class="insert">
+bundle alice:bundle6
+ entity(alice:report1)
+ hasProvenanceIn(alice:report1, bob:bundle4, ex:report1, -, -)
+ entity(ex:report2, [ prov:type="report", ex:version=2 ])
+ wasGeneratedBy(ex:report2, -, 2012-05-25T11:00:01)
+ wasDerivedFrom(ex:report2, alice:report1)
+endBundle
+</span></pre>
+<p><span class="insert">Alice can specify the </span><a href="#prov.locator.target"><span class="insert">target</span></a><span class="insert"> in the provenance locator to be </span><span class="name"><span class="insert">ex:report1</span></span><span class="insert">.
+With such a statement, Alice states that provenance information about </span><span class="name"><span class="insert">alice:report1</span></span><span class="insert"> can be found in bundle
+</span><span class="name"><span class="insert">bob:bundle4</span></span><span class="insert"> under the name </span><span class="name"><span class="insert">ex:report1</span></span><span class="insert">. In effect, </span><span class="name"><span class="insert">alice:report1</span></span><span class="insert"> and </span><span class="name"><span class="insert">ex:report1</span></span><span class="insert"> are declared to be alternate.</span></p>
+</div>
+
+<div class="anexample" id="aexample-note">
+<p><span class="insert">Consider that the following bundle of descriptions, in which derivation and generations have been identified.
+</span></p><pre class="codeexample"><span class="insert">
+bundle obs:bundle7
+ entity(ex:report1, [prov:type="report", ex:version=1])
+ wasGeneratedBy(ex:g1; ex:report1,-,2012-05-24T10:00:01)
+ entity(ex:report2, [prov:type="report", ex:version=2])
+ wasGeneratedBy(ex:g2; ex:report2,-,2012-05-25T11:00:01)
+ wasDerivedFrom(ex:d; ex:report2, ex:report1)
+endBundle
+entity(obs:bundle7, [ prov:type='prov:Bundle' ])
+wasAttributedTo(obs:bundle7, ex:observer01)
+</span></pre><span class="insert">
+Bundle </span><span class="name"><span class="insert">obs:bundle7</span></span><span class="insert"> is rendered by a visualisation tool. It may useful for the tool configuration for this bundle to be shared along with the provenance descriptions, so that other users can render provenance as it was originally rendered. The original bundle obviously cannot be changed. However, one can create a new bundle, as follows.
+</span><pre class="codeexample"><span class="insert">
+bundle tool:bundle8
+ entity(tool:bundle8, [ prov:type='viz:Configuration', prov:type='prov:Bundle' ])
+ wasAttributedTo(tool:bundle8, viz:Visualizer)
+
+ entity(ex:report1, [viz:color="orange"])
+ hasProvenanceIn(ex:report1, obs:bundle7, -, -, -)
+
+ entity(ex:report2, [viz:color="blue"])
+ hasProvenanceIn(ex:report2, obs:bundle7, -, -, -)
+
+ wasDerivedBy(ex:d; ex:report2, ex:report1, [viz:style="dotted"])
+ hasProvenanceIn(ex:d, obs:bundle7, -, -, -)
+endBundle
+</span></pre>
+
+<p><span class="insert">In bundle </span><span class="name"><span class="insert">tool:bundle8</span></span><span class="insert">, the prefix </span><span class="name"><span class="insert">viz</span></span><span class="insert"> is used for naming visualisation-specific attributes, types or values.</span></p>
+
+<p><span class="insert">Bundle </span><span class="name"><span class="insert">tool:bundle8</span></span><span class="insert"> is given type </span><span class="name"><span class="insert">viz:Configuration</span></span><span class="insert"> to indicate that it consists of descriptions that pertain to the configuration of the visualisation tool. This type attribute can be used for searching bundles containing visualization-related descriptions.
+</span></p>
+
+<p><span class="insert">Alternates of the entities </span><span class="name"><span class="insert">ex:report1</span></span><span class="insert"> and </span><span class="name"><span class="insert">ex:report2</span></span><span class="insert"> have a visualization attribute for the color to be used when rendering these entities.
+Likewise, the derivation has a style attribute. </span></p>
+
+<p><span class="insert">According to their definition,
+derivations have an </span><a href="#derivation.id"><span class="insert">optional identifier</span></a><span class="insert">.
+To express an alternate for a derivation, we need to be able to reference it, by means of an identifier. Hence, it is necessary for it to have an identifier in the first place (</span><span class="name"><span class="insert">ex:d</span></span><span class="insert">).</span></p>
+</div>
+
+</div>
+</div>
+
+
+
+<div id="component6" class="section">
+<h3><span class="secno"><span class="insert">5.6 </span></span><span class="insert">Component 6:</span> 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. Some applications need to be able to express the provenance of the collection itself: e.g. who maintains the collection, which members it contains as it evolves, 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. In PROV, the concept of Collection is implemented by means of dictionaries, which we introduce in this section. </p>
-<p>Figure <a href="#figure-component5">figure-component5</a> depicts
-the fifth component with four new classes and three associations.
+<p><a href="#figure-component6">Figure <span class="delete">figure-component5</span><span class="insert">10</span></a> depicts
+the <span class="delete">fifth</span><span class="insert">sixth</span> component with <span class="delete">four</span><span class="insert">three</span> new classes <span class="insert">(Collection, Dictionary, </span>and <span class="insert">Pair) and </span>three <span class="delete">associations.</span><span class="insert">associations (insertion, removal, and memberOf).</span>
</p>
<div style="text-align: center;">
+
+
<figure>
-<img src="images/Dictionaries.png" alt="dictionaries">
-<figcaption id="figure-component5">Figure 9: Collections Component Overview
+
+<img src="uml/component6.svg" alt="dictionaries">
+
+<figcaption id="figure-component6">Figure <span class="delete">9:</span><span class="insert">10:</span> Collections Component Overview
</figcaption>
</figure>
</div>
@@ -2742,7 +3419,7 @@
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>
+<h4><span class="secno"><span class="delete">4.5.1</span><span class="insert">5.6.1</span> </span>Collection</h4>
<span class="glossary-ref"> 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>
@@ -2751,7 +3428,7 @@
</div>
<div id="term-dictinonary" class="section">
-<h4><span class="secno">4.5.2 </span>Dictionary</h4>
+<h4><span class="secno"><span class="delete">4.5.2</span><span class="insert">5.6.2</span> </span>Dictionary</h4>
<p>PROV-DM defines a specific type of collection: a dictionary, specified as follows.</p>
@@ -2791,7 +3468,7 @@
<div id="term-dictionary-insertion" class="section">
-<h4><span class="secno">4.5.3 </span>Insertion</h4>
+<h4><span class="secno"><span class="delete">4.5.3</span><span class="insert">5.6.3</span> </span>Insertion</h4>
<span class="glossary-ref"> <dfn id="concept-insertion">Insertion</dfn> is a derivation that transforms a dictionary into another, by insertion of one or more key-entity pairs. </span>
@@ -2867,7 +3544,7 @@
<div id="term-dictionary-removal" class="section">
-<h4><span class="secno">4.5.4 </span>Removal</h4>
+<h4><span class="secno"><span class="delete">4.5.4</span><span class="insert">5.6.4</span> </span>Removal</h4>
<span class="glossary-ref"> <dfn id="concept-removal">Removal</dfn> is a derivation that transforms a dictionary into another, by removing one or more key-entity pairs. </span>
@@ -2915,13 +3592,13 @@
<div id="term-dictionary-membership" class="section">
-<h4><span class="secno">4.5.5 </span>Membership</h4>
+<h4><span class="secno"><span class="delete">4.5.5</span><span class="insert">5.6.5</span> </span>Membership</h4>
<span class="glossary-ref"> <dfn id="concept-membership">Membership</dfn> is the belonging of a key-entity pair to dictionary. </span>
<p>
-The insertion and removal relations make insertions and removals explicit as part of the history of a dictionary. This, however, requires explicit mention of the state of the dictionary prior to each operation. The membership relation removes this needs, allowing the state of a dictionary <span class="name">c</span> to be expressed without having to introduce a prior state.</p>
+The insertion and removal relations make insertions and removals explicit as part of the history of a dictionary. This, however, requires explicit mention of the state of the dictionary prior to each operation. The membership relation removes this <span class="delete">needs,</span><span class="insert">need,</span> allowing the state of a dictionary <span class="name">c</span> to be expressed without having to introduce a prior state.</p>
<p>
</p><div class="attributes" id="attributes-memberOf">
@@ -2985,86 +3662,93 @@
</div>
-<div id="component6" class="section">
-<h3><span class="secno">4.6 </span>Component 6: Annotations</h3>
-
-<p>The sixth component of PROV-DM is concerned with <a title="note" href="#concept-note" class="internalDFN">notes</a> and <a title="annotation" href="#concept-annotation" class="internalDFN">annotations</a>.
-</p>
-
-<p>As provenance descriptions are exchanged between systems, it may be useful for a third party to add extra information to what they are describing. For instance, a "trust service" may add value-judgements about the
+
+
+
+
+
+
+
+<div id="second-class-elements" class="section">
+<h3><span class="secno"><span class="delete">4.6 </span><span class="delete">Component 6: Annotations</span>
+
+<span class="delete">The sixth component of PROV-DM is concerned with </span><span class="delete">notes</span><span class="delete"> and </span><span class="delete">annotations</span><span class="delete">.
+</span>
+
+<span class="delete">As provenance descriptions are exchanged between systems, it may be useful for a third party to add extra information to what they are describing. For instance, a "trust service" may add value-judgements about the
trustworthiness of some of the entities or agents occurring in provenance records it is given access to. Likewise, an interactive visualization component may want to enrich an existing set of provenance descriptions with information helping reproduce their
visual representation. To help with interoperability, PROV-DM introduces a simple annotation mechanism allowing anything that is identifiable to be associated with notes.
-For this, a type and and a relation are introduced.</p>
-
-
-<p>The annotation mechanism (with note and annotation) forms a key aspect of the extensibility mechanism of PROV-DM (see <a href="#extensibility-section">extensibility section</a>).</p>
- <div id="term-note" class="section">
+For this, a type and and a relation are introduced.</span>
+
+
+<span class="delete">The annotation mechanism (with note and annotation) forms a key aspect of the extensibility mechanism of PROV-DM (see </span><span class="delete">extensibility section</span><span class="delete">).</span>
+
-<h4><span class="secno">4.6.1 </span>Note</h4>
-
-<span class="glossary-ref"> A <dfn id="concept-note">note</dfn> is an identified set of application-specific attribute-value pairs.</span>
-
-
-<p></p><div class="attributes" id="attributes-note">A <dfn title="dfn-note" id="dfn-note">note</dfn><span class="withPn">, written <span class="pnExpression">note(id, [attr1=val1, ...])</span> in PROV-N,</span> has:
-<ul>
-<li><span class="attribute" id="note.id">id</span>: an identifier for a note;</li>
-<li><span class="attribute" id="note.attributes">attributes</span>: a set of attribute-value pairs ((<span class="name">attr1</span>, <span class="name">val1</span>), ...) representing application-specific information.</li>
-</ul>
-</div>
-
-
-
-
-<div class="anexample" id="anexample-note1">
-<p>
+<span class="delete">4.6.1 </span><span class="delete">Note</span>
+
+<span class="delete"> A </span><span class="delete">note</span><span class="delete"> is an identified set of application-specific attribute-value pairs.</span>
+
+
+<span class="delete">A </span><span class="delete">note</span><span class="delete">, written </span><span class="delete">note(id, [attr1=val1, ...])</span><span class="delete"> in PROV-N,</span><span class="delete"> has:
+</span>
+<span class="delete">id</span><span class="delete">: an identifier for a note;</span>
+<span class="delete">attributes</span><span class="delete">: a set of attribute-value pairs ((</span><span class="delete">attr1</span><span class="delete">, </span><span class="delete">val1</span><span class="delete">), ...) representing application-specific information.</span>
+
+
+
+
+
+
+
+<span class="delete">
The following note consists of a set of application-specific attribute-value pairs, intended
to help the rendering of the pre-existing entity it is associated with, by
-specifying its color and its position on the screen.</p>
-<pre class="codeexample">note(ex:n1,[draw:color="blue", draw:screenX=20, draw:screenY=30])
+specifying its color and its position on the screen.</span>
+<span class="delete">note(ex:n1,[draw:color="blue", draw:screenX=20, draw:screenY=30])
hasAnnotation(tr:WD-prov-dm-20111215,ex:n1)
-</pre>
-<p>The note is linked to the entity <span class="name">tr:WD-prov-dm-20111215</span>, with
-relation <a title="annotation" href="#concept-annotation" class="internalDFN">hasAnnotation</a>
-discussed in <a href="#term-annotation">Section 4.6.2</a>.
-The note's identifier is declared in the namespace denoted by prefix <span class="name">ex</span> to illustrate that the rendering application may differ from the application involving entity <span class="name">tr:WD-prov-dm-20111215</span>. The prefix <span class="name">draw</span> also denotes an <span class="delete">application-specific</span><span class="insert">application specific</span> namespace.
-</p>
-</div>
-
-<div class="anexample" id="anexample-note2">
-<p>In contrast, a reputation service may enrich an existing provenance record with notes providing reputation ratings about agents. In the following fragment, both agents <span class="name">ex2:Simon</span> and <span class="name">ex2:Paolo</span> are rated "excellent".</p>
-<pre class="codeexample">note(ex3:n2,[trust:reputation="excellent"])
+</span>
+<span class="delete">The note is linked to the entity </span><span class="delete">tr:WD-prov-dm-20111215</span><span class="delete">, with
+relation </span><span class="delete">hasAnnotation</span><span class="delete">
+discussed in </span><span class="delete">Section 4.6.2</span><span class="delete">.
+The note's identifier is declared in the namespace denoted by prefix </span><span class="delete">ex</span><span class="delete"> to illustrate that the rendering application may differ from the application involving entity </span><span class="delete">tr:WD-prov-dm-20111215</span><span class="delete">. The prefix </span><span class="delete">draw</span><span class="delete"> also denotes an application-specific namespace.
+</span>
+
+
+
+<span class="delete">In contrast, a reputation service may enrich an existing provenance record with notes providing reputation ratings about agents. In the following fragment, both agents </span><span class="delete">ex2:Simon</span><span class="delete"> and </span><span class="delete">ex2:Paolo</span><span class="delete"> are rated "excellent".</span>
+<span class="delete">note(ex3:n2,[trust:reputation="excellent"])
hasAnnotation(ex2:Simon,ex3:n2)
hasAnnotation(ex2:Paolo,ex3:n2)
-</pre>
-<p>The note's identifier is declared in a separate namespace denoted by prefix <span class="name">ex3</span>. The prefix <span class="name">trust</span> also denotes an application specific namespace.</p>
-
-</div>
-
-
- </div>
-
-<div id="term-annotation" class="section">
-<h4><span class="secno">4.6.2 </span>Annotation</h4>
-
-
-
-<span class="glossary-ref"> An <dfn id="concept-annotation">annotation</dfn> is a link between something that is identifiable and a note referred to by its identifier.</span>
-
-<p>Multiple notes can
+</span>
+<span class="delete">The note's identifier is declared in a separate namespace denoted by prefix </span><span class="delete">ex3</span><span class="delete">. The prefix </span><span class="delete">trust</span><span class="delete"> also denotes an application specific namespace.</span>
+
+
+
+
+
+
+
+<span class="delete">4.6.2 </span><span class="delete">Annotation</span>
+
+
+
+<span class="delete"> An </span><span class="delete">annotation</span><span class="delete"> is a link between something that is identifiable and a note referred to by its identifier.</span>
+
+<span class="delete">Multiple notes can
be associated with a given identified object; symmetrically, multiple objects can be associated with a given note. Since notes have identifiers, they can also be
-annotated. </p>
-
-<p></p><div class="attributes" id="attributes-annotation">An <dfn title="hasAnnotation" id="dfn-hasannotation">annotation relation</dfn><span class="withPn">, written <span class="pnExpression">hasAnnotation(r,n)</span> in PROV-N,</span> has:
-<ul>
-<li><span class="attribute" id="annotation.id">something</span>: the identifier (<span class="name">r</span>) of something being annotated;</li>
-<li><span class="attribute" id="annotation.note">note</span>: an identifier (<span class="name">n</span>) of a note.</li>
-</ul>
-</div>
-
-<div class="anexample">
-<p>
-The following expressions</p>
-<pre class="codexample">entity(e1,[prov:type="document"])
+annotated. </span>
+
+<span class="delete">An </span><span class="delete">annotation relation</span><span class="delete">, written </span><span class="delete">hasAnnotation(r,n)</span><span class="delete"> in PROV-N,</span><span class="delete"> has:
+</span>
+<span class="delete">something</span><span class="delete">: the identifier (</span><span class="delete">r</span><span class="delete">) of something being annotated;</span>
+<span class="delete">note</span><span class="delete">: an identifier (</span><span class="delete">n</span><span class="delete">) of a note.</span>
+
+
+
+
+<span class="delete">
+The following expressions</span>
+<span class="delete">entity(e1,[prov:type="document"])
entity(e2,[prov:type="document"])
activity(a,t1,t2)
used(u1,a,e1,[ex:file="stdin"])
@@ -3076,44 +3760,46 @@
note(n2,[ex:style="dotted"])
hasAnnotation(u1,n2)
-</pre>
-<p>describe two documents (attribute-value pair: <span class="name">prov:type="document"</span>) identified by <span class="name">e1</span> and <span class="name">e2</span>, and their annotation with a note indicating that the icon (an application specific way of rendering provenance) is <span class="name">doc.png</span>. The example also
-includes an activity, its usage of the first entity, and its generation of the second entity. The <a title="dfn-usage">usage</a> is annotated with a style (an application specific way
-of rendering this edge graphically). To be able to express this annotation, the usage was provided with an identifier <span class="name">u1</span>, which was then referred to in <span class="name">hasAnnotation(u1,n2)</span>.
-</p>
-</div>
-
-
-</div>
-
-
-</div>
-
-
-
-
-<div id="second-class-elements" class="section">
-<h3><span class="secno">4.7 </span>Further Elements of PROV-DM</h3>
+</span>
+<span class="delete">describe two documents (attribute-value pair: </span><span class="delete">prov:type="document"</span><span class="delete">) identified by </span><span class="delete">e1</span><span class="delete"> and </span><span class="delete">e2</span><span class="delete">, and their annotation with a note indicating that the icon (an application specific way of rendering provenance) is </span><span class="delete">doc.png</span><span class="delete">. The example also
+includes an activity, its usage of the first entity, and its generation of the second entity. The </span><span class="delete">usage</span><span class="delete"> is annotated with a style (an application specific way
+of rendering this edge graphically). To be able to express this annotation, the usage was provided with an identifier </span><span class="delete">u1</span><span class="delete">, which was then referred to in </span><span class="delete">hasAnnotation(u1,n2)</span><span class="delete">.
+</span>
+
+
+
+
+
+
+
+
+
+
+
+
+<span class="delete">4.7</span><span class="insert">5.7</span> </span>Further Elements of PROV-DM</h3>
This section introduces further elements of PROV-DM.
<div id="term-NamespaceDeclaration" class="section">
-<h4><span class="secno">4.7.1 </span>Namespace Declaration</h4>
+<h4><span class="secno"><span class="delete">4.7.1</span><span class="insert">5.7.1</span> </span>Namespace Declaration</h4>
<p>A PROV-DM <dfn id="dfn-namespace">namespace</dfn> is identified by an IRI [<cite><a class="bibref" rel="biblioentry" href="#bib-IRI">IRI</a></cite>]. In PROV-DM, attributes, identifiers, and values with <a title="qualified name" href="#concept-qualifiedName" class="internalDFN">qualified names</a> as data type can be placed in a namespace using the mechanisms described in this specification. </p>
<p>A <dfn id="dfn-namespaceDeclaration">namespace declaration</dfn> consists of a binding between a prefix and a namespace. Every qualified name with this prefix in the scope of this
declaration refers to this namespace.
-A <dfn id="dfn-defaultNamespaceDeclaration">default namespace declaration</dfn> consists of a namespace. Every un-prefixed qualified name in the scope of this default namespace declaration
+ </p>
+
+<p>A <dfn id="dfn-defaultNamespaceDeclaration">default namespace declaration</dfn> consists of a namespace. Every un-prefixed qualified name in the scope of this default namespace declaration
refers to this namespace.</p>
-<p>The <dfn title="prov-namespace" id="dfn-prov-namespace">PROV namespace</dfn> is identified by the URI <span class="name">http://www.w3.org/ns/prov#</span>.</p>
+<p>The <dfn title="prov-namespace" id="dfn-prov-namespace">PROV namespace</dfn> is identified by the URI <a href="http://www.w3.org/ns/prov#">http://www.w3.org/ns/prov#</a>.</p>
</div>
<div id="term-qualified-name" class="section">
-<h4><span class="secno">4.7.2 </span>Qualified Name</h4>
+<h4><span class="secno"><span class="delete">4.7.2</span><span class="insert">5.7.2</span> </span>Qualified Name</h4>
<span class="glossary-ref"> A <dfn id="concept-qualifiedName">qualified name</dfn> is a name subject to <a href="#dfn-namespace" class="internalDFN">namespace</a> interpretation. It consists of a <a href="#dfn-namespace" class="internalDFN">namespace</a>, denoted by an optional prefix, and a local name.<p></p> </span>
@@ -3130,7 +3816,7 @@
<div id="term-identifier" class="section">
-<h4><span class="secno">4.7.3 </span>Identifier</h4>
+<h4><span class="secno"><span class="delete">4.7.3</span><span class="insert">5.7.3</span> </span>Identifier</h4>
<p>
An <dfn id="dfn-identifier">identifier</dfn> is a <a href="#concept-qualifiedName" class="internalDFN">qualified
@@ -3140,7 +3826,7 @@
</div>
<div id="term-attribute" class="section">
-<h4><span class="secno">4.7.4 </span>Attribute</h4>
+<h4><span class="secno"><span class="delete">4.7.4</span><span class="insert">5.7.4</span> </span>Attribute</h4>
<p>An <dfn title="dfn-attribute" id="dfn-attribute">attribute</dfn> is a <a href="#concept-qualifiedName" class="internalDFN">qualified name</a>.
@@ -3168,7 +3854,7 @@
<div id="term-attribute-label" class="section">
-<h5><span class="secno">4.7.4.1 </span>prov:label</h5>
+<h5><span class="secno"><span class="delete">4.7.4.1</span><span class="insert">5.7.4.1</span> </span>prov:label</h5>
<p> The attribute <dfn title="dfn-label" id="dfn-dfn-label"><span class="name">prov:label</span></dfn> provides a human-readable representation of a PROV-DM element or relation. The value associated with the attribute <span class="name">prov:label</span> <em class="rfc2119" title="must">must</em> be a string.</p>
@@ -3183,7 +3869,7 @@
<div id="term-attribute-location" class="section">
-<h5><span class="secno">4.7.4.2 </span>prov:location</h5>
+<h5><span class="secno"><span class="delete">4.7.4.2</span><span class="insert">5.7.4.2</span> </span>prov:location</h5>
<p>A <dfn title="dfn-Location" id="dfn-dfn-location">location</dfn> can be an identifiable geographic place (ISO 19112), but it can also be a non-geographic place such as a directory, row, or column. As such, there are numerous ways in which location can be expressed, such as by a coordinate,
address, landmark, and so forth. This document does not specify how to concretely express locations, but instead provide a mechanism to introduce locations, by means of a reserved attribute. </p>
@@ -3202,10 +3888,10 @@
<div id="term-attribute-role" class="section">
-<h5><span class="secno">4.7.4.3 </span>prov:role</h5>
+<h5><span class="secno"><span class="delete">4.7.4.3</span><span class="insert">5.7.4.3</span> </span>prov:role</h5>
<p>The attribute <dfn title="dfn-role" id="dfn-dfn-role"><span class="name">prov:role</span></dfn> denotes the function of an entity with respect to an activity, in the context of a <span class="delete">usage, generation,</span><a href="#concept-usage" class="internalDFN"><span class="insert">usage</span></a><span class="insert">, </span><a href="#concept-generation" class="internalDFN"><span class="insert">generation</span></a><span class="insert">,</span>
- <span class="delete">association,</span><a href="#concept-activityAssociation" class="internalDFN"><span class="insert">association</span></a><span class="insert">,</span> <span class="delete">start,</span><a href="#concept-start" class="internalDFN"><span class="insert">start</span></a><span class="insert">,</span> and <span class="delete">end.</span><a href="#concept-end" class="internalDFN"><span class="insert">end</span></a><span class="insert">.</span> The attribute <span class="name">prov:role</span> is allowed to occur multiple times in a list of attribute-value pairs. The value associated with a <span class="name">prov:role</span> attribute <em class="rfc2119" title="must">must</em> be a PROV-DM <a title="value" href="#dfn-value" class="internalDFN">Value</a>.</p>
+ <span class="delete">association,</span><a href="#concept-association-core" class="internalDFN"><span class="insert">association</span></a><span class="insert">,</span> <span class="delete">start,</span><a href="#concept-start" class="internalDFN"><span class="insert">start</span></a><span class="insert">,</span> and <span class="delete">end.</span><a href="#concept-end" class="internalDFN"><span class="insert">end</span></a><span class="insert">.</span> The attribute <span class="name">prov:role</span> is allowed to occur multiple times in a list of attribute-value pairs. The value associated with a <span class="name">prov:role</span> attribute <em class="rfc2119" title="must">must</em> be a PROV-DM <a title="value" href="#dfn-value" class="internalDFN">Value</a>.</p>
<div class="anexample">
<p>The following activity is associated with an agent acting as the operator. </p>
@@ -3215,7 +3901,7 @@
</div>
<div id="term-attribute-type" class="section">
-<h5><span class="secno">4.7.4.4 </span>prov:type</h5>
+<h5><span class="secno"><span class="delete">4.7.4.4</span><span class="insert">5.7.4.4</span> </span>prov:type</h5>
<p>The attribute <dfn title="dfn-type" id="dfn-dfn-type"><span class="name">prov:type</span></dfn> provides further typing information for an element or relation. PROV-DM liberally
defines a type as a category of things having common characteristics. PROV-DM is agnostic about the representation of types, and only states that
@@ -3252,7 +3938,7 @@
<div id="term-attribute-value" class="section">
-<h5><span class="secno">4.7.4.5 </span>prov:value</h5>
+<h5><span class="secno"><span class="delete">4.7.4.5</span><span class="insert">5.7.4.5</span> </span>prov:value</h5>
<p>The attribute <dfn title="dfn-value" id="dfn-dfn-value"><span class="name">prov:value</span></dfn> provides a <a title="value" href="#dfn-value" class="internalDFN">Value</a> associated with an entity.</p>
@@ -3286,7 +3972,7 @@
</div>
<div id="term-value" class="section">
-<h4><span class="secno">4.7.5 </span>Value</h4>
+<h4><span class="secno"><span class="delete">4.7.5</span><span class="insert">5.7.5</span> </span>Value</h4>
<p>
By means of attribute-value pairs, the PROV data model can refer to <dfn title="value" id="dfn-value">values</dfn> such as strings, numbers, time, qualified names, and IRIs.
@@ -3365,10 +4051,10 @@
<div id="extensibility-section" class="section">
-<h2><span class="secno">5. </span>PROV-DM Extensibility Points</h2>
-
-
-<p>The PROV data model provides extensibility points that allow designers to specialize it to specific applications or domains. We summarize these extensibility points here:
+<h2><span class="secno"><span class="delete">5.</span><span class="insert">6.</span> </span>PROV-DM Extensibility Points</h2>
+
+
+<p>The PROV data model provides extensibility points that allow designers to specialize it <span class="delete">to</span><span class="insert">for</span> specific applications or domains. We summarize these extensibility points here:
</p><ul>
<li> Attribute-value lists occur in all types and relations of the data model. Applications designers are free to introduce further application-specific attributes. Attributes for a given application can be distinguished by qualifying them with a prefix denoting a namespace
@@ -3422,7 +4108,7 @@
<div id="valid-provenance" class="section">
-<h2><span class="secno">6. </span>Creating Valid Provenance</h2>
+<h2><span class="secno"><span class="delete">6.</span><span class="insert">7.</span> </span>Creating Valid Provenance</h2>
<ul>
@@ -3451,7 +4137,8 @@
<li>
-<p>The idea of bundling provenance descriptions is crucial to the PROV approach. Indeed, it allows multiple provenance perspectives to be provided for a given entity. It is also the mechanism by which provenance of provenance can be expressed. Such a named bundle is referred to as an <dfn id="dfn-account">account</dfn> and is regarded as an <a title="concept-account">Account</a> so that its provenance can be expressed. The notion of account is specified in the companion specification [<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-CONSTRAINTS">PROV-CONSTRAINTS</a></cite>], as well as the constraints that <dfn id="dfn-structurally-well-formed">structurally well-formed</dfn> descriptions <em class="rfc2119" title="should">should</em> satisfy.</p>
+<p>The idea of bundling provenance descriptions is crucial to the PROV approach. Indeed, it allows multiple provenance perspectives to be provided for a given entity. It is also the mechanism by which provenance of provenance can be expressed.<span class="delete"> Such a named bundle is referred</span><span class="insert">
+Descriptions in bundles are expected</span> to <span class="delete">as an </span><span class="delete">account</span><span class="delete"> and is regarded as an </span><span class="delete">Account</span><span class="delete"> so that its provenance can be expressed. The notion of account is</span><span class="insert">satisfy constraints</span> specified in the companion specification [<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-CONSTRAINTS">PROV-CONSTRAINTS</a></cite><span class="delete">], as well as the constraints that </span><span class="delete">structurally well-formed</span><span class="delete"> descriptions </span><span class="delete">should</span><span class="delete"> satisfy.</span><span class="insert">].</span></p>
</li>