section 4 udpates
authorLuc Moreau <l.moreau@ecs.soton.ac.uk>
Wed, 28 Mar 2012 10:27:55 +0100
changeset 2032 109b7185ef20
parent 2031 b447d4e1d40d
child 2033 b2b85d3a814a
section 4 udpates
model/glossary.html
model/glossary.js
model/images/Agents-Responsibility.png
model/images/Agents-Responsibility.svg
model/prov-dm.html
--- a/model/glossary.html	Wed Mar 28 09:18:28 2012 +0100
+++ b/model/glossary.html	Wed Mar 28 10:27:55 2012 +0100
@@ -112,17 +112,19 @@
 </span>
 
 <span class="glossary" id="glossary-revision">  
-A <dfn id="concept-revision">revision</dfn> is the result of revising an entity into a revised version.
+A <dfn id="concept-revision">revision</dfn> is a derivation that revises an entity into a revised version.
 </span>
 
 <span class="glossary" id="glossary-start">  
 <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 its start.
+A start may refer to an entity, known as <dfn id="concept-start-trigger">trigger</dfn>, that initiated the activity.
 </span>
 
 <span class="glossary" id="glossary-end">  
 <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 its end.
+An end may refer to an entity, known as <dfn id="concept-end-trigger">trigger</dfn>, that terminated the activity.
 </span>
 
 <span class="glossary" id="glossary-attribution">  
@@ -144,3 +146,24 @@
 </span>
 
 
+<span class="glossary" id="glossary-insertion">
+ <dfn id="concept-insertion">Insertion</dfn> is a derivation that transforms a collection into another, by insertion of one or more key-value pairs.
+</span>
+
+<span class="glossary" id="glossary-removal">
+ <dfn id="concept-removal">Removal</dfn> is a derivation that transforms a collection into another, by removing one or more key-value pairs.
+</span>
+
+<span class="glossary" id="glossary-membership">
+<dfn id="concept-membership">Membership</dfn> is the belonging of a key-value pair to collection.
+</span>
+
+<span class="glossary" id="glossary-alternate">  
+An entity is <dfn id="concept-alternate">alternate</dfn> of another if they are both a specialization of some common entity.
+The common entity does not need to be identified.
+</span>
+
+<span class="glossary" id="glossary-specialization">  
+An entity is a <dfn id="concept-specialization">specialization</dfn> of another if they both refer to some common thing
+but the former is a more constrained entity than the former. The common entity does not need to be identified.
+</span> 
--- a/model/glossary.js	Wed Mar 28 09:18:28 2012 +0100
+++ b/model/glossary.js	Wed Mar 28 10:27:55 2012 +0100
@@ -3,7 +3,7 @@
 //  with <script src="glossary.js" class="remove"></script>
 //Insert glossary definitions with the following 
 // <div class="glossary-ref" ref="glossary-generation"></div>
-glossary_hg='http://dvcs.w3.org/hg/prov/file/b3f7be492a4b/model/glossary.html';
+glossary_hg='http://dvcs.w3.org/hg/prov/file/b447d4e1d40d/model/glossary.html';
 glossary_string= 
 ' ' + 
 '<html> ' + 
@@ -16,7 +16,8 @@
 '</div>   ' + 
 ' ' + 
 '<span class="glossary" id="glossary-activity">   ' + 
-'An <dfn id="concept-activity">activity</dfn> is something that occurs over a period of time and acts upon or with entities.   ' + 
+'An <dfn id="concept-activity">activity</dfn> ' + 
+' is something that occurs over a period of time and acts upon or with entities.  ' + 
 'This action can take multiple forms: consuming, processing, transforming, modifying, relocating, using, generating, or being associated with entities.  ' + 
 '</span> ' + 
 ' ' + 
@@ -98,7 +99,7 @@
 '</span> ' + 
 ' ' + 
 '<span class="glossary" id="glossary-event">   ' + 
-'An <em>instantaneous event</em>, or <dfn id="concept-event">event</dfn> for short, happens in the world and marks a change in the world, in its ' + 
+'oAn <em>instantaneous event</em>, or <dfn id="concept-event">event</dfn> for short, happens in the world and marks a change in the world, in its ' + 
 'activities and in its entities.   ' + 
 '</span> ' + 
 ' ' + 
@@ -118,17 +119,19 @@
 '</span> ' + 
 ' ' + 
 '<span class="glossary" id="glossary-revision">   ' + 
-'A <dfn id="concept-revision">revision</dfn> is the result of revising an entity into a revised version. ' + 
+'A <dfn id="concept-revision">revision</dfn> is a derivation that revises an entity into a revised version. ' + 
 '</span> ' + 
 ' ' + 
 '<span class="glossary" id="glossary-start">   ' + 
 '<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 its start. ' + 
+'A start may refer to an entity, known as <dfn id="concept-start-trigger">trigger</dfn>, that initiated the activity. ' + 
 '</span> ' + 
 ' ' + 
 '<span class="glossary" id="glossary-end">   ' + 
 '<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 its end. ' + 
+'An end may refer to an entity, known as <dfn id="concept-end-trigger">trigger</dfn>, that terminated the activity. ' + 
 '</span> ' + 
 ' ' + 
 '<span class="glossary" id="glossary-attribution">   ' + 
@@ -150,4 +153,25 @@
 '</span> ' + 
 ' ' + 
 ' ' + 
+'<span class="glossary" id="glossary-insertion"> ' + 
+' <dfn id="concept-insertion">Insertion</dfn> is a derivation that transforms a collection into another, by insertion of one or more key-value pairs. ' + 
+'</span> ' + 
+' ' + 
+'<span class="glossary" id="glossary-removal"> ' + 
+' <dfn id="concept-removal">Removal</dfn> is a derivation that transforms a collection into another, by removing one or more key-value pairs. ' + 
+'</span> ' + 
+' ' + 
+'<span class="glossary" id="glossary-membership"> ' + 
+'<dfn id="concept-membership">Membership</dfn> is the belonging of a key-value pair to collection. ' + 
+'</span> ' + 
+' ' + 
+'<span class="glossary" id="glossary-alternate">   ' + 
+'An entity is <dfn id="concept-alternate">alternate</dfn> of another if they are both a specialization of some common entity. ' + 
+'The common entity does not need to be identified. ' + 
+'</span> ' + 
+' ' + 
+'<span class="glossary" id="glossary-specialization">   ' + 
+'An entity is a <dfn id="concept-specialization">specialization</dfn> of another if they both refer to some common thing ' + 
+'but the former is a more constrained entity than the former. The common entity does not need to be identified. ' + 
+'</span>  ' + 
 ' ' ;
Binary file model/images/Agents-Responsibility.png has changed
--- a/model/images/Agents-Responsibility.svg	Wed Mar 28 09:18:28 2012 +0100
+++ b/model/images/Agents-Responsibility.svg	Wed Mar 28 10:27:55 2012 +0100
@@ -34,6 +34,20 @@
        inkscape:vp_z="590 : 224 : 1"
        inkscape:persp3d-origin="295 : 149.33333 : 1"
        id="perspective142" />
+    <inkscape:perspective
+       id="perspective2885"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 0.5 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <inkscape:perspective
+       id="perspective2907"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 0.5 : 1"
+       sodipodi:type="inkscape:persp3d" />
   </defs>
   <sodipodi:namedview
      pagecolor="#ffffff"
@@ -45,12 +59,12 @@
      inkscape:pageopacity="0"
      inkscape:pageshadow="2"
      inkscape:window-width="1280"
-     inkscape:window-height="978"
+     inkscape:window-height="1001"
      id="namedview136"
      showgrid="false"
      inkscape:zoom="1.7268409"
-     inkscape:cx="295"
-     inkscape:cy="200.83631"
+     inkscape:cx="295.86864"
+     inkscape:cy="246.0055"
      inkscape:window-x="1280"
      inkscape:window-y="0"
      inkscape:window-maximized="1"
@@ -780,4 +794,22 @@
      inkscape:export-filename="/home/lavm/papers/papers/prov-wg/hg/model/images/Agents-Responsibility.png"
      inkscape:export-xdpi="79.550438"
      inkscape:export-ydpi="79.550438" />
+  <polyline
+     transform="matrix(1.9317967,1.0255176,-0.79648639,2.4872886,-284.10818,-979.69149)"
+     style="fill:none;stroke:#000000;stroke-width:0.42175901"
+     points="368,254 510,254"
+     id="polyline40-7"
+     inkscape:export-filename="/home/lavm/papers/papers/prov-wg/hg/model/images/Agents-Responsibility.png"
+     inkscape:export-xdpi="79.550438"
+     inkscape:export-ydpi="79.550438" />
+  <polygon
+     transform="matrix(0.89072057,0.45455128,-0.45455128,0.89072057,170.92211,-277.19381)"
+     style="fill:none;stroke:#000000;stroke-width:1"
+     points="498,247 510,254 498,261 "
+     id="polygon44-6"
+     inkscape:export-filename="/home/lavm/papers/papers/prov-wg/hg/model/images/Agents-Responsibility.png"
+     inkscape:export-xdpi="79.550438"
+     inkscape:export-ydpi="79.550438"
+     inkscape:transform-center-x="-7.4352529"
+     inkscape:transform-center-y="-3.4745529" />
 </svg>
--- a/model/prov-dm.html	Wed Mar 28 09:18:28 2012 +0100
+++ b/model/prov-dm.html	Wed Mar 28 10:27:55 2012 +0100
@@ -948,15 +948,15 @@
 
 <h2>PROV-DM Types and Relations</h2>
 
-<p>PROV-DM concepts are structured according to six components that are introduced here.
-Components and their dependencies are illustrated in Figure <a href="#prov-dm-components">prov-dm-components</a>. A component that relies on concepts defined in another also sits above it, in this figure.
+<p>PROV-DM concepts are structured according to six components that are introduced in this section.
+Components and their dependencies are illustrated in Figure <a href="#prov-dm-components">prov-dm-components</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>
 
 <ol>
 <li><b>Component 1: entities and activities.</b> The first component consists of entities, activities, and all concepts linking them, such as generation, usage, start, end. The first component is the only one comprising time-related concepts. </li>
 <li><b>Component 2: agents and responsibility.</b> The second component consists of agents and concepts ascribing responsibility to agents.</li>
-<li><b>Component 3: derivations.</b>  The third component is formed with derivations and its subtypes.</li>
-<li><b>Component 4: alternate.</b> The fourth component consists of relations linking entities somehow denoting a same thing. </li>
+<li><b>Component 3: derivations.</b>  The third component is formed with derivations and its derivation subtypes.</li>
+<li><b>Component 4: alternate.</b> The fourth component consists of relations linking entities somehow referring to a same thing. </li>
 <li><b>Component 5: collections.</b> The fifth component is comprised of collections and operations related to collections. </li>
 <li><b>Component 6: annotations.</b> The sixth component is concerned with annotations to PROV-DM  concepts.</li>
 </ol>
@@ -978,7 +978,7 @@
 </div>
 
 <p>
-While  not all PROV-DM relations are binary, they all involve two primary elements. Hence, Table <a href="#relations-at-a-glance">relations-at-a-glance</a> indexes all relations according to their two primary elements.  The table adopts the same color scheme as in Figure <a href="#prov-dm-components">prov-dm-components</a>, allowing components to be readily identified.
+While  not all PROV-DM relations are binary, they all involve two primary elements. Hence, Table <a href="#relations-at-a-glance">relations-at-a-glance</a> indexes all relations according to their two primary elements.  The table adopts the same color scheme as Figure <a href="#prov-dm-components">prov-dm-components</a>, allowing components to be readily identified.
 Note that for simplicity, this table  does not include collection-oriented relations.
 </p>
 
@@ -1019,12 +1019,10 @@
 <tr class="component3-color"><td><a>Traceability</a></td><td><a title="tracedTo">tracedTo(id,e2,e1,attrs)</a></td></tr>
 <tr class="component4-color"><td><a>Alternate</a></td><td><a title="alternateOf">alternateOf(alt1, alt2)</a></td></tr>
 <tr class="component4-color"><td><a>Specialization</a></td><td><a title="specializationOf">specializationOf(sub, super)</a></td></tr>
-<tr class="component5-color"><td>Derivation by Insertion</td><td>derivedByInsertionFrom(id, collAfter, collBefore, key, value, attrs)</td></tr>
-<tr class="component5-color"><td>Derivation by Removal</td><td>derivedByRemovalFrom(id, collAfter, collBefore, key, attrs)</td></tr>
-<tr class="component5-color"><td>Containment</td><td>contained(id, coll, key, values, attrs)</td></tr>
-<tr class="component5-color"><td>Bulk Insertion</td><td>derivedByBulkInsertionFrom(id, collAfter, collBefore, key-value-set, attrs)</td></tr>
-<tr class="component5-color"><td>Bulk Removal</td><td>derivedByBulkRemovalFrom(id, collAfter, collBefore, key-set, attrs)</td></tr>
-<tr class="component5-color"><td>Bulk Containment</td><td>containedBulk(id, coll, key-value-set, attrs)</td></tr>
+<tr class="component5-color"><td><a>Collection</a></td><td></td></tr>
+<tr class="component5-color"><td><a>Insertion</a></td><td>derivedByInsertionFrom(id, collAfter, collBefore, key, value, attrs)</td></tr>
+<tr class="component5-color"><td><a>Removal</a></td><td>derivedByRemovalFrom(id, collAfter, collBefore, key, attrs)</td></tr>
+<tr class="component5-color"><td><a>Membership</a></td><td>contained(id, coll, key, values, attrs)</td></tr>
 <tr class="component6-color"><td><a>Note</a></td><td><a title="note">note(id, [ attr1=val1, ...])</a></td></tr>
 <tr class="component6-color"><td><a>Annotation</a></td><td><a title="hasAnnotation">hasAnnotation(r,n)</a></td></tr>
 </table>
@@ -1035,7 +1033,7 @@
 <section id="component1"> 
 <h3>Component 1: Entities and Activities</h3>
 
-<p>The first component of PROV-DM is concerned with <a title="entity">entities</a> and <a title="activity">activities</a>, and their inter-relations: <a>Usage</a>, <a>Generation</a>, <a>Start</a>, <a>End</a>, <a>Communication</a>, and <a>Start by Activity</a>. Figure <a href="#figure-component1">figure-component1</a> overviews the first component, with two classes and binary associations between them. Associations are not just binary; indeed, <a>Usage</a>, <a>Generation</a>, <a>Start</a>, <a>End</a> are remarkable because they have  <em>time</em> attributes, which are placeholders for time information related to provenance.
+<p>The first component of PROV-DM is concerned with <a title="entity">entities</a> and <a title="activity">activities</a>, and their inter-relations: <a>Usage</a>, <a>Generation</a>, <a>Start</a>, <a>End</a>, <a>Communication</a>, and <a>Start by Activity</a>. Figure <a href="#figure-component1">figure-component1</a> overviews the first component, with two "UML classes" and binary associations between them. Associations are not just binary; indeed, <a>Usage</a>, <a>Generation</a>, <a>Start</a>, <a>End</a> are remarkable because they have  <em>time</em> attributes, which are placeholders for time information related to provenance.
 </p>
 
 <div style="text-align: center;">
@@ -1057,10 +1055,10 @@
 <div class="glossary-ref" ref="glossary-entity"></div>
 
 
-<p><div class="attributes" id="attributes-entity">An <dfn title="dfn-Entity">entity</dfn><span class="withPn">, written <span class="pnExpression" id="pn-entity">entity(id, [ attr1=val1, ...])</span> in PROV-N, </span> contains:
+<p><div class="attributes" id="attributes-entity">An <dfn title="dfn-Entity">entity</dfn><span class="withPn">, written <span class="pnExpression" id="pn-entity">entity(id, [attr1=val1, ...])</span> in PROV-N, </span> contains:
 <ul>
 <li><span class='attribute' id="entity.id">id</span>: an identifier for an entity; </li>
-<li><span class='attribute' id="entity.attributes">attributes</span>: an OPTIONAL set of attribute-value pairs representing this entity's situation in the world.</li>
+<li><span class='attribute' id="entity.attributes">attributes</span>: an OPTIONAL set of attribute-value  pairs ((<span class="name">attr1</span>, <span class="name">val1</span>), ...) representing this entity's situation in the world.</li>
 </ul></div>
 
 <div class="anexample">
@@ -1081,11 +1079,6 @@
 class="name">type</span> is reserved in the PROV-DM namespace.-->
 </div>
 
-<p>Further considerations:</p>
-<ul>
-<li>The sets of activities and entities are disjoint, as described below.</li>
-</ul>
-
 
 <div class='issue'>The characterization interval of an entity is currently implicit. Making it explicit would allow us to define wasComplementOf more precisely. 
 Beginning and end of characterization interval could be expressed by attributes (similarly to activities). 
@@ -1102,12 +1095,12 @@
 
 <div class="glossary-ref" ref="glossary-activity"></div>
 
-<p><div class="attributes" id="attributes-activity"> An <dfn title="dfn-Activity">activity</dfn><span class="withPn">, written <span class="pnExpression" id="pn-activity">activity(id, st, et, [ attr1=val1, ...])</span> in PROV-N,</span> contains:
+<p><div class="attributes" id="attributes-activity"> An <dfn title="dfn-Activity">activity</dfn><span class="withPn">, written <span class="pnExpression" id="pn-activity">activity(id, st, et, [attr1=val1, ...])</span> in PROV-N,</span> contains:
 <ul>
 <li><span class='attribute' id="activity.id">id</span>: an identifier for an activity;</li>
 <li><span class='attribute' id="activity.startTime">startTime</span>: an OPTIONAL time (<span class="name">st</span>) for the start of the activity;</li>
 <li><span class='attribute' id="activity.endTime">endTime</span>: an OPTIONAL time (<span class="name">et</span>) for the end of the activity;</li>
-<li><span class='attribute' id="activity.attributes">attributes</span>:  an OPTIONAL set of attribute-value pairs for this activity.</li>
+<li><span class='attribute' id="activity.attributes">attributes</span>:  an OPTIONAL set of attribute-value pairs ((<span class="name">attr1</span>, <span class="name">val1</span>), ...) for this activity.</li>
 </ul></div>
 
 <div class="anexample">
@@ -1210,7 +1203,7 @@
   used(a1,e1,2011-11-16T16:00:00,[ex:parameter="p1"])
   used(a1,e2,2011-11-16T16:00:01,[ex:parameter="p2"])
 </pre>
-<p>state that the activity identified by <span class="name">a1</span> consumed two entities identified by <span
+<p>state that the activity identified by <span class="name">a1</span> used two entities identified by <span
 class="name">e1</span> and <span class="name">e2</span>, at times <span class="name">2011-11-16T16:00:00</span> and  <span class="name">2011-11-16T16:00:01</span>, respectively; the first
 one was found as the value of parameter <span class="name">p1</span>, whereas the second was found as value of parameter <span class="name">p2</span>.  The semantics of <span
 class="name">parameter</span> is application specific.</p>
@@ -1218,15 +1211,6 @@
 
 
 
-<div class='note'>
-
-
-
-<p>
-A usage record's id is OPTIONAL. It MUST be present when annotating usage records (see Section <a href="#term-annotation">Annotation Record</a>) or when defining precise-1 derivations (see
-<a href="#Derivation-Relation">Derivation</a>).</p>
-</div>
-
 
 
 
@@ -1319,13 +1303,13 @@
 <div class="glossary-ref" ref="glossary-communication"></div>
 
 
-<p>A communication implies that activity  <span class="name">a2</span> is dependent on another <span class="name">a1</span>, by way of some entity <span class="name">e</span> that is generated by <span class="name">a1</span> and used by <span class="name">a2</span>.</p>
+<p>A communication implies that activity  <span class="name">a2</span> is dependent on another <span class="name">a1</span>, by way of some unspecified entity that is generated by <span class="name">a1</span> and used by <span class="name">a2</span>.</p>
 
 
 
 
 <div class="attributes" id="attributes-wasInformedBy">
-A <dfn title="wasInformedBy">communication</dfn> <span class="withPn">, written as 
+A <dfn title="wasInformedBy">communication</dfn><span class="withPn">, written as 
 <span class="pnExpression">wasInformedBy(id,a2,a1,attrs)</span> in PROV-N,</span> contains: 
 <ul>
 <li><span class='attribute'>id</span>:  an OPTIONAL identifier  identifying the relation;</li> 
@@ -1335,7 +1319,6 @@
 </ul>
 </div>
 
-<p> Relation <span class="name">wasInformedBy</span> is not transitive.</p>
 
 
 <div class="anexample">
@@ -1390,7 +1373,7 @@
 
 <p>The second component of PROV-DM is concerned with <a title="agent">agents</a> and the notions of
 <a>Attribution</a>, <a>Association</a>, <a>Responsibility</a>, relating agents to entities, activities, and agents, respectively.
-Figure <a href="#figure-component2">figure-component2</a> overviews the second component, with three classes (Entity, Activity, and Agent) and associations between them. So-called "association classes" are used to express ternary relations.
+Figure <a href="#figure-component2">figure-component2</a> depicts the second component, with some "UML classes" (Entity, Activity,  Agent, and Plan) and associations between them. So-called "association classes" are used to express n-ary relations.
 </p>
 
 
@@ -1407,25 +1390,24 @@
 <div class="glossary-ref" ref="glossary-agent"></div>
 
 
-<p><div class="attributes" id="attributes-agent">An <dfn title="dfn-agent">agent</dfn><span class="withPn">, noted <span class="pnExpression" id="pn-agent">agent(id, [ attr1=val1, ...])</span> in PROV-N,</span> contains:
+<p><div class="attributes" id="attributes-agent">An <dfn title="dfn-agent">agent</dfn><span class="withPn">, noted <span class="pnExpression" id="pn-agent">agent(id, [attr1=val1, ...])</span> in PROV-N,</span> contains:
 <ul>
 <li><span class='attribute' id="agent.id">id</span>: an identifier for an agent;</li>
-<li><span class='attribute' id="agent.attributes">attributes</span>: a set of attribute-value pairs representing this agent's situation in the world.
+<li><span class='attribute' id="agent.attributes">attributes</span>: a set of attribute-value pairs ((<span class="name">attr1</span>, <span class="name">val1</span>), ...) representing this agent's situation in the world.
 </li>
 </ul></div>
 
 
 <p>
-From an interoperability perspective, it is useful to define some basic categories of agents since
-it will improve the use of provenance by applications.  
-There should be very few of these basic categories to keep the model simple and accessible. 
-There are three types of agents in the model since they are common across most anticipated domains of use:
+
+It is useful to define some basic categories of agents from an interoperability perspective.
+There are three types of agents since they are common across most anticipated domains of use:
 <ul>
 <li><span class="name">Person</span>: agents of type Person are people.</li> 
 <li><span class="name">Organization</span>: agents of type Organization are social institutions such as companies, societies etc.</li> 
 <li><span class="name">SoftwareAgent</span>: a software agent is a piece of software. </li>
 </ul>
-<p>These types do not cover all kinds of agent. </p>
+<p>It is acknowledged that these types do not cover all kinds of agent. </p>
 
 
 
@@ -1444,9 +1426,9 @@
 
 <div class="glossary-ref" ref="glossary-attribution"></div>
 
-<p>When an entity  <span class="name">e</span> is attributed to agent  <span class="name">ag</span>, entity <span class="name">e</span> was generated by some activity <span class="name">a</span>, which in turn was associated to agent  <span class="name">ag</span>. Thus, this relation is useful when the activity is not known, or irrelevant.</p>
-
-<p> An <dfn title="wasAttributedTo">attribution relation</dfn><span class="withPn">, written <span class="pnExpression">wasAttributedTo(id,e,ag,attrs)</span> in PROV-N,</span> contains the following elements:</p>
+<p>When an entity  <span class="name">e</span> is attributed to agent  <span class="name">ag</span>, entity <span class="name">e</span> was generated by some unspecified activity that in turn was associated to agent  <span class="name">ag</span>. Thus, this relation is useful when the activity is not known, or irrelevant.</p>
+
+<p> An <dfn title="wasAttributedTo">attribution</dfn> relation<span class="withPn">, written <span class="pnExpression">wasAttributedTo(id,e,ag,attrs)</span> in PROV-N,</span> contains the following elements:</p>
 <ul>
 <li><span class='attribute' id="attribution.id">id</span>: an OPTIONAL identifier for the relation;</li> 
 <li><span class='attribute' id="attribution.entity">entity</span>: an entity identifier (<span class="name">e</span>);</li>
@@ -1457,7 +1439,7 @@
 <div class="anexample">
 <p>
 Revisiting the example of <a href="#section-example-b">Section 3.2</a>,
-we can ascribe <span class="name">tr:WD-prov-dm-20111215</span> to some agents without having to make an activity explicit.
+we can ascribe <span class="name">tr:WD-prov-dm-20111215</span> to some agents without an explicit activity.
 <pre class="codeexample">
 agent(ex:Paolo, [ prov:type="Person" ])
 agent(ex:Simon, [ prov:type="Person" ])
@@ -1487,14 +1469,14 @@
 </ul></div>
 
 <div class="anexample" id="anexample-wasAssociateWith">
-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>.   
+<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>.   </p>
 <pre class="codeexample">
-activity(ex:a,[prov:type="workflow execution"])
-agent(ex:ag1,[prov:type="operator"])
-agent(ex:ag2,[prov:type="designer"])
-wasAssociatedWith(ex:a,ex:ag1,[prov:role="loggedInUser", ex:how="webapp"])
-wasAssociatedWith(ex:a,ex:ag2,ex:wf,[prov:role="designer", ex:context="project1"])
-entity(ex:wf,[prov:type="prov:Plan"%% xsd:QName, ex:label="Workflow 1", 
+activity(ex:a, [prov:type="workflow execution"])
+agent(ex:ag1, [prov:type="operator"])
+agent(ex:ag2, [prov:type="designer"])
+wasAssociatedWith(ex:a, ex:ag1, -, [prov:role="loggedInUser", ex:how="webapp"])
+wasAssociatedWith(ex:a, ex:ag2, ex:wf,[prov:role="designer", ex:context="project1"])
+entity(ex:wf, [prov:type="prov:Plan" %% xsd:QName, ex:label="Workflow 1", 
               ex:url="http://example.org/workflow1.bpel" %% xsd:anyURI])
 </pre>
 Since the workflow <span class="name">ex:wf</span> is itself an entity, its provenance can also be expressed in PROV-DM: it can be generated by some activity and derived from other entities,
@@ -1502,26 +1484,19 @@
 </div>
 
 <div class="anexample" id="anexample-wasAssociateWith-2">
-In some cases, one wants to indicate a plan was followed, without having to specify which agent was involved.
+<p>In some cases, one wants to indicate a plan was followed, without having to specify which agent was involved.</p>
 <pre class="codeexample">
 activity(ex:a,[prov:type="workflow execution"])
 wasAssociatedWith(ex:a,-,ex:wf)
 entity(ex:wf,[prov:type="prov:Plan"%% xsd:QName, ex:label="Workflow 1", 
               ex:url="http://example.org/workflow1.bpel" %% xsd:anyURI])
 </pre>
-In this case, it is assumed that an agent exists, but simply it has not been specified.
+In this case, it is assumed that an agent exists, but it has not been specified.
 </div>
 
 
 
 
-<div class='issue'> The activity association record does not allow for a plan to be asserted without an agent.
-This seems over-restrictive. Discussed in the context of <a href="http://www.w3.org/2011/prov/track/issues/203">ISSUE-203</a>.</div>
-
-
-<div class='issue'> Agents should not be inferred. WasAssociatedWith should also work with entities.
-This is <a href="http://www.w3.org/2011/prov/track/issues/206">ISSUE-206</a>.</div>
-
 </section>  <!-- end wasAssociatedWith -->
 
 <section id="term-responsibility">
@@ -1533,27 +1508,19 @@
 <p>PROV-DM offers a mild version of responsibility
 in the form of a relation to represent when an agent acted on another
 agent's behalf.  So in the example of someone running a mail program,
-the program is an agent of that activity and the person is also an
-agent of the activity, but we would also add that the mail software
-agent is running on the person's behalf.  In the other example, the
+the program and the person are both
+agents of the activity; furthermore, the mail software
+agent is running on the person's behalf.  In another example, the
 student acted on behalf of his supervisor, who acted on behalf of the
-department chair, who acts on behalf of the university, and all those
+department chair, who acts on behalf of the university; all those
 agents are responsible in some way for the activity to take place but
 we do not say explicitly who bears responsibility and to what
 degree. </p>
 
-<p>We could also say that an agent can act on behalf of several other
-agents (a group of agents).  This would also make possible to
-indirectly reflect chains of responsibility.  This also indirectly
-reflects control without requiring that control is explicitly
-indicated.  In some contexts there will be a need to represent
-responsibility explicitly, for example to indicate legal
-responsibility, and that could be added as an extension to this core
-model.  Similarly with control, since in particular contexts there
-might be a need to define specific aspects of control that various
-agents exert over a given activity.</p>
-
-<p><div class="attributes" id="attributes-responsibility-chain">A <dfn title="actedOnBehalfOf">responsibility</dfn> relation<span class="withPn">, written <span class="pnExpression">actedOnBehalfOf(id,ag2,ag1,a,attrs)</span> in PROV-N,</span> has the following constituents:
+
+<p>
+<div class="attributes" id="attributes-responsibility-chain">
+A <dfn title="actedOnBehalfOf">responsibility</dfn> relation<span class="withPn">, written <span class="pnExpression">actedOnBehalfOf(id,ag2,ag1,a,attrs)</span> in PROV-N,</span> has the following constituents:
 <ul>
 <li><span class='attribute' id="responsibility.id">id</span>:  an OPTIONAL identifier for the responsibility chain;</li> 
 <li><span class='attribute' id="responsibility.subordinate">subordinate</span>: an identifier (<span class="name">ag2</span>) for the agent associated with an activity, acting on behalf of the responsible
@@ -1565,9 +1532,9 @@
 
 
 <div class="anexample">
-In the following example, a programmer, a researcher and a funder agents are described.  The programmer and researcher are associated with a workflow activity.  The programmer acts on behalf
+<p>In the following example, a programmer, a researcher and a funder agents are described.  The programmer and researcher are associated with a workflow activity.  The programmer acts on behalf
 of the researcher (delegation) encoding the commands specified by the researcher; the researcher acts on behalf of the funder, who has an contractual agreement with the researcher. The terms
-'delegation' and 'contact' used in this example are domain specific.
+'delegation' and 'contact' used in this example are domain specific.</p>
 <pre class="codeexample">
 activity(a,[prov:type="workflow"])
 agent(ag1,[prov:type="programmer"])
@@ -1598,7 +1565,7 @@
 
 
 <p>The third component of PROV-DM is concerned with <a title="derivation">derivations</a> between <a title="entity">entities</a>, and subtypes of derivations <a>Revision</a>, <a>Quotation</a>, <a>Original Source</a>, and <a>Traceability</a>.
-Figure <a href="#figure-component3">figure-component3</a> overviews the third component, with three classes (Entity, Activity, and Agent) and associations between them. So-called "association classes" are used to express n-ary relations.
+Figure <a href="#figure-component3">figure-component3</a> overviews the third component, with three "UML classes" (Entity, Activity, and Agent) and associations between them. So-called "association classes" are used to express n-ary relations.
 </p>
 
 
@@ -1623,7 +1590,7 @@
 
 <p>According to <a href="#starting-points">Section Starting Points</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 describe modalities of derivation.  If the derivation is the result of a single known activity, then this activity can also be optionally expressed. And to provide a completely accurate description of derivation, the generation and usage of the generated and used entities, respectively, can be provided. The reason for optional information such as activity, generation, and usage to be linked to derivations is to aid analysis of provenance and to facilitate provenance-based reproducibility. </p>
+A derivation can be described at various levels of precision. In its simplest form, derivation relates two entities. Optionally, attributes can be added to describe modalities of derivation.  If the derivation is the result of a single known activity, then this activity can also be optionally expressed. And to provide a completely accurate description of the derivation, the generation and usage of the generated and used entities, respectively, can be provided. The reason for optional information such as activity, generation, and usage to be linked to derivations is to aid analysis of provenance and to facilitate provenance-based reproducibility. </p>
 
 
 <p><div class="attributes" id="attributes-derivation">A <dfn title="wasDerivedFrom">derivation</dfn><span class="withPn">, written <span class="pnExpression" id="pn-wasDerivedFrom">wasDerivedFrom(id, e2, e1, a, g2, u1, attrs)</span> in PROV-N,</span> contains:
@@ -1648,11 +1615,11 @@
 <div class="anexample">
 <p>The following descriptions state the existence of derivations.</p>
 <pre class="codeexample">
-wasDerivedFrom(e2,e1)
-wasDerivedFrom(e2,e1,[prov:type="physical transform"])
-wasDerivedFrom(e2,e1,a,g2,u1)
-  wasGeneratedBy(g2,e2,a)
-  used(u1,a,e1)
+wasDerivedFrom(e2, e1)
+wasDerivedFrom(e2, e1, [prov:type="physical transform"])
+wasDerivedFrom(e2, e1, a, g2, u1)
+wasGeneratedBy(g2, e2, a, -)
+used(u1, a, e1, -)
 </pre>
 <p>
 The first and second lines are about derivations between  <span class="name">e2</span> and  <span class="name">e1</span>, but no information is provided as to the identity of the activity (and usage and generation) underpinning the derivation. In the second line, a type attribute is also provided.</p>
@@ -1678,7 +1645,7 @@
 
 <p> Deciding whether something is made available as a revision of something else usually involves an agent who takes responsibility for approving that the former is a due variant of the latter.
  The agent who is responsible for the revision may optionally be specified.
- Revision is a particular case of  <a href="#Derivation-Relation">derivation</a> of an entity into its revised version.</p>
+ Revision is a particular case of <a>derivation</a> of an entity into its revised version.</p>
 
 <p> A <dfn title="wasRevisionOf">revision</dfn> relation<span class="withPn">, written <span class="pnExpression">wasRevisionOf(id,e2,e1,ag,attrs)</span> in PROV-N,</span> contains:</p>
 <ul>
@@ -1732,16 +1699,16 @@
 <div class="anexample" id="anexample-quotation">
 <p>
 The following paragraph is a quote from one of  <a href="http://thinklinks.wordpress.com/2012/03/07/thoughts-from-the-dagstuhl-principles-of-provenance-workshop/">the author's blogs</a>.
-<blockquote id="paul-quote"><em>
+<blockquote id="bl-dagstuhl"><em>
 "During the workshop, it became clear to me that the consensus based models (which are often graphical in nature) can not only be formalized but also be directly connected to these database focused formalizations. I just needed to get over the differences in syntax.  This could imply that we could have nice way to trace provenance across systems and through databases and be able to understand the mathematical properties of this interconnection."</em>
 </blockquote>
-<p>If <a href="http://thinklinks.wordpress.com/2012/03/07/thoughts-from-the-dagstuhl-principles-of-provenance-workshop/"><span class="name">ex:blog</span></a> denotes the original blog by agent <span class="name">ex:Paul</span>, and 
- <a href="#paul-quote"><span class="name">ex:blockquote</span></a> denotes the above paragraph, then the following descriptions express that the above paragraph is copied by agent <span class="name">ex:Luc</a> from a part of the blog, attributed to the agent <span class="name">ex:Paul</a>.</p>
+<p>If <a href="http://thinklinks.wordpress.com/2012/03/07/thoughts-from-the-dagstuhl-principles-of-provenance-workshop/"><span class="name">wp:thoughts-from-the-dagstuhl-principles-of-provenance-workshop/</span></a> denotes the original blog by agent <span class="name">ex:Paul</span>, and 
+ <a href="#bl-dagstuhl"><span class="name">dm:bl-dagstuhl</span></a> denotes the above paragraph, then the following descriptions express that the above paragraph is copied by agent <span class="name">ex:Luc</span> from a part of the blog, attributed to the agent <span class="name">ex:Paul</a>.</p>
 <pre class="codeexample">
-entity(ex:blog)
+entity(wp:thoughts-from-the-dagstuhl-principles-of-provenance-workshop/)
 agent(ex:Luc)
 agent(ex:Paul)
-wasQuotedFrom(ex:blockQuote,ex:blog,ex:Luc,ex:Paul)
+wasQuotedFrom(dm:bl-dagstuhl,wp:thoughts-from-the-dagstuhl-principles-of-provenance-workshop/,ex:Luc,ex:Paul)
 </pre>
 
 </pre>
@@ -1758,11 +1725,11 @@
 <span class="glossary-ref" ref="glossary-original-source"></span>
 </p>
 
-<p>An <dfn>original source relation</dfn> is a particular case of <a href="#Derivation-Relation">derivation</a> 
-which aims to give
+<p>An <dfn>original source</dfn> relation is a particular case of <a>derivation</a> 
+that aims to give
 credit to the source that originated some information. It is recognized that it may be
 hard to determine which entity constitutes an original source. This definition is inspired by
-<tt>orginal-source</tt> as defined in
+<tt>original-source</tt> as defined in
 <a href="http://googlenewsblog.blogspot.com/2010/11/credit-where-credit-is-due.html">http://googlenewsblog.blogspot.com/2010/11/credit-where-credit-is-due.html<a/>.
 
 
@@ -1810,6 +1777,10 @@
 </ul>
 <p>We note that the ancestor is allowed to be an agent since agents are entities. </p>
 
+<p>
+<a>Derivation</a> and <a>association</a> are particular cases of  traceability.
+</p>
+
 <div class="anexample">
 <p>We refer to the example of <a href="#section-example-a">Section 3.1</a>, and specifically to <a href="#prov-tech-report">Figure prov-tech-report</a>. We can see that there is a path from 
 <span class="name">tr:WD-prov-dm-20111215</span> to 
@@ -1822,9 +1793,6 @@
 </div>
 
 
-<p>
-<a>Derivation</a> and <a>association</a> are particular cases of  traceability.
-</p>
 
 
 </section>
@@ -1867,10 +1835,7 @@
 <h4>Specialization</h4>
 
 
-<span class="glossary" id="glossary-specialization">  
-An entity is a <dfn id="concept-alternate">specialization</dfn> of another if they both refer to some common thing
-but the former is a more constrained entity than the former. The common entity does not need to be identified.
-</span> 
+<span class="glossary-ref" ref="glossary-specialization"></span> 
 Examples of constraints  include a time period, an abstraction, and a context associated with the entity.
 
 
@@ -1912,10 +1877,7 @@
 <h4>Alternate</h4>
 
 
-<span class="glossary" id="glossary-alternate">  
-An entity is <dfn id="concept-alternate">alternate</dfn> of another if they are both a specialization of some common entity.
-The common entity does not need to be identified.
-</span>
+<span class="glossary-ref" ref="glossary-alternate"></span>
 
 
   
@@ -2000,9 +1962,8 @@
 <section id="term-collection-insertion">
 <h3>Insertion</h3>
 
-<span class="glossary" id="glossary-collection-insertion">
- <dfn id="concept-insertion">Insertion</dfn> is a derivation that transforms a collection into another, by insertion of one or more key-value pairs.
-</span>
+<span class="glossary-ref" ref="glossary-insertion"></span>
+
 
 <p>
 <strong>Derivation-by-Insertion</strong> relation <span class="name">derivedByInsertionFrom(c2, c1,  {(key_1, value_1), ..., (key_n, value_n)})</span> states that  <span class="name">c2</span> is the state of the collection
@@ -2043,9 +2004,7 @@
 <section id="term-collection-removal">
 <h3>Removal</h3>
 
-<span class="glossary" id="glossary-collection-removal">
- <dfn id="concept-removal">Removal</dfn> is a derivation that transforms a collection into another, by removing one or more key-value pairs.
-</span>
+<span class="glossary-ref" ref="glossary-removal"></span>
 
 
 <p><strong>Derivation-by-Removal</strong> relation <span class="name">derivedByRemovalFrom(c2,c1, {key_1, ... key_n})</span> states that  <span class="name">c2</span> is  the  state of the collection following the removal of the set of pairs corresponding to keys  <span class="name">key_1...key_n</span> from  <span class="name">c1</span>.
@@ -2090,9 +2049,7 @@
 <h3>Membership</h3>
 
 
-<span class="glossary" id="glossary-collection-membership">
-  <dfn id="concept-membership">Membership</dfn> denotes that a key-value pair is a member of a collection.
-</span>
+<span class="glossary-ref" ref="glossary-membership"></span>
 
 <p>
 The insertion and removal relations make insertions and removals explicit as part of the history of a collection. This, however, requires explicit mention of the state of the collection prior to each insertion. The membership relation removes this needs, allowing the state of a collection <span class="name">c</span> to be asserted without having to introduce a prior state. This allows for the natural expression of a collection state, for instance in cases where a program or workflow block produces a new collection <span class="name">c</span>  with known content. In such cases, 
@@ -2162,19 +2119,23 @@
 <p>The sixth component of PROV-DM is concerned with <a title="note">notes</a> and <a title="annotation">annotations</a>.
 </p>
 
-
+<p>As provenance descriptions are exchanged between systems, it may be useful 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 involved. Likewise, an interactive visualization component may want to enrich a 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>
    <section id="term-note"> 
       
 <h4>Note</h4>
 
-<p>As provenance descriptions are exchanged between systems, it may be useful 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 involved. Likewise, an interactive visualization component may want to enrich a 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.</p>
-
-<p><div class="attributes" id="attributes-note">A <dfn>note</dfn><span class="withPn">, noted <span class="pnExpression">note(id, [ attr1=val1, ...])</span> in PROV-N,</span> contains:
+
+<p><div class="attributes" id="attributes-note">A <dfn>note</dfn><span class="withPn">, noted <span class="pnExpression">note(id, [attr1=val1, ...])</span> in PROV-N,</span> contains:
 <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, whose meaning is application specific.</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>), ...), whose meaning is application specific.</li>
 </ul></div>
 
 
@@ -2222,8 +2183,7 @@
 
 <p>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. 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>
+annotated. </p>
 
 <p></p><div class="attributes" id="attributes-annotation">An <dfn title="hasAnnotation">annotation relation</dfn><span class="withPn">, written <span class="pnExpression">hasAnnotation(r,n)</span> in PROV-N,</span> has the following constituents:
 <ul>