swapped components 4 and 5
authorLuc Moreau <l.moreau@ecs.soton.ac.uk>
Thu, 07 Jun 2012 22:43:03 +0100
changeset 3218 07654b2c1f84
parent 3217 60c8e9faed2b
child 3219 4cf5447f0b91
swapped components 4 and 5
model/extra-dm.css
model/images/components-dependencies.png
model/images/components-dependencies.svg
model/prov-dm.html
--- a/model/extra-dm.css	Thu Jun 07 22:03:08 2012 +0100
+++ b/model/extra-dm.css	Thu Jun 07 22:43:03 2012 +0100
@@ -12,7 +12,7 @@
  background-color: rgba(0,170,0,0.2);
 }
 .component4-color {
- background-color: rgba(204,255,0,0.2);
+ background-color: rgba(244,105,14,0.2);
 }
 
 .component6-color {
@@ -20,7 +20,7 @@
 }
 
 .component5-color {
- background-color: rgba(244,105,14,0.2);
+ background-color: rgba(204,255,0,0.2);
 }
 
 .pending {
Binary file model/images/components-dependencies.png has changed
--- a/model/images/components-dependencies.svg	Thu Jun 07 22:03:08 2012 +0100
+++ b/model/images/components-dependencies.svg	Thu Jun 07 22:43:03 2012 +0100
@@ -93,14 +93,14 @@
      inkscape:pageopacity="0.0"
      inkscape:pageshadow="2"
      inkscape:zoom="1.6927759"
-     inkscape:cx="162.4172"
-     inkscape:cy="837.70652"
+     inkscape:cx="205.98289"
+     inkscape:cy="836.52503"
      inkscape:document-units="px"
      inkscape:current-layer="layer1"
      showgrid="false"
      inkscape:window-width="1280"
-     inkscape:window-height="978"
-     inkscape:window-x="1280"
+     inkscape:window-height="1003"
+     inkscape:window-x="0"
      inkscape:window-y="0"
      inkscape:window-maximized="1" />
   <metadata
@@ -157,14 +157,14 @@
        inkscape:export-xdpi="111.90985"
        inkscape:export-ydpi="111.90985" />
     <path
-       style="fill:#f4690e;fill-opacity:0.2;stroke:#000000;stroke-width:0.50000000000000000;stroke-miterlimit:4;stroke-opacity:1"
+       style="fill:#ccff00;fill-opacity:0.2;stroke:#000000;stroke-width:0.50000000000000000;stroke-miterlimit:4;stroke-opacity:1"
        d="M 261.75 177 L 261.75 230.5625 L 315.3125 230.5625 L 315.3125 284.125 L 315.3125 337.6875 L 368.875 337.6875 L 368.875 284.125 L 368.875 230.5625 L 368.875 177 L 315.3125 177 L 261.75 177 z "
        id="use2963"
        inkscape:export-filename="/home/lavm/papers/papers/prov-wg/hg/model/images/components-dependencies.png"
        inkscape:export-xdpi="111.90985"
        inkscape:export-ydpi="111.90985" />
     <path
-       style="fill:#ccff00;fill-opacity:0.2;stroke:#000000;stroke-width:0.50000000000000000;stroke-miterlimit:4;stroke-opacity:1"
+       style="fill:#f4690e;fill-opacity:0.2;stroke:#000000;stroke-width:0.50000000000000000;stroke-miterlimit:4;stroke-opacity:1"
        d="M 261.75 230.5625 L 261.75 284.125 L 261.75 337.6875 L 315.3125 337.6875 L 315.3125 284.125 L 315.3125 230.5625 L 261.75 230.5625 z "
        id="use2965"
        inkscape:export-filename="/home/lavm/papers/papers/prov-wg/hg/model/images/components-dependencies.png"
@@ -202,25 +202,25 @@
          id="tspan3680-0-7"
          y="-267.83533"
          x="244.55112"
-         sodipodi:role="line"> Alternate</tspan></text>
+         sodipodi:role="line"> Bundles</tspan></text>
     <text
        inkscape:export-ydpi="111.90985"
        inkscape:export-xdpi="111.90985"
        inkscape:export-filename="/home/lavm/papers/papers/prov-wg/hg/model/images/components-dependencies.png"
        sodipodi:linespacing="100%"
        id="text5136-6"
-       y="200.41071"
-       x="283.85522"
+       y="198.63847"
+       x="277.94775"
        style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Utopia;-inkscape-font-specification:Utopia"
        xml:space="preserve"><tspan
-         y="200.41071"
-         x="283.85522"
+         y="198.63847"
+         x="277.94775"
          id="tspan5138-1"
          sodipodi:role="line">C5: </tspan><tspan
          id="tspan5140-0"
-         y="220.41071"
-         x="283.85522"
-         sodipodi:role="line">Bundles</tspan></text>
+         y="218.63847"
+         x="277.94775"
+         sodipodi:role="line">Alternate</tspan></text>
     <text
        inkscape:export-ydpi="111.90985"
        inkscape:export-xdpi="111.90985"
--- a/model/prov-dm.html	Thu Jun 07 22:03:08 2012 +0100
+++ b/model/prov-dm.html	Thu Jun 07 22:43:03 2012 +0100
@@ -1363,7 +1363,7 @@
 
 <p>
 While  not all PROV-DM relations are binary, they all involve two primary elements. Hence, <a href="#relations-at-a-glance">Table 4</a> indexes all relations according to their two primary elements (referred to as subject and object).  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 bundle-oriented and collection-oriented relations.
+Note that for simplicity, this table  does not include collection-oriented relations.
 Relation names appearing in bold correspond to the core structures introduced
 in <a href="#core-structures">Section 2.1</a>.</p>
 
@@ -1373,7 +1373,7 @@
 <caption id="relations-at-a-glance">Table 4: PROV-DM Relations At a Glance</caption>
 <tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td colspan="3">Object</td></tr> 
 <tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td>Entity</td><td>Activity</td><td>Agent</td></tr> 
-<tr><td rowspan="3">Subject</td><td>Entity</td><td><div class="component2-color"><a class="essential">WasDerivedFrom</a><br><a>WasRevisionOf</a><br><a>WasQuotedFrom</a><br><a>HadPrimarySource</a></div><div class="component4-color"><a>AlternateOf</a><br><a>SpecializationOf</a></div></td><td class="component1-color"><a class="essential"
+<tr><td rowspan="3">Subject</td><td>Entity</td><td><div class="component2-color"><a class="essential">WasDerivedFrom</a><br><a>WasRevisionOf</a><br><a>WasQuotedFrom</a><br><a>HadPrimarySource</a></div><div class="component5-color"><a>AlternateOf</a><br><a>SpecializationOf</a><br><a>ContextualizationOf</a></div></td><td class="component1-color"><a class="essential"
 title="wasGeneratedBy">WasGeneratedBy</a><br><a
 title="wasInvalidatedBy">WasInvalidatedBy</a></td><td class="component3-color"><a class="essential">WasAttributedTo</a></td></tr>
 <tr><td>Activity</td><td><div class="component1-color"><a class="essential">Used</a><br><a>WasStartedBy</a><br><a>WasEndedBy</a></div></td><td class="component1-color"><a class="essential">WasInformedBy</a></td><td class="component3-color"><a class="essential">WasAssociatedWith</a></td></tr>
@@ -1419,15 +1419,16 @@
 <tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
 
 
-<tr class="component4-color"><td><a>Alternate</a></td><td><a title="alternateOf">alternateOf(alt1, alt2)</a></td><td  rowspan="2"><a href="#component4">Component 4: Alternate</a></td></tr>
-<tr class="component4-color"><td><a>Specialization</a></td><td><a title="specializationOf">specializationOf(sub, super)</a></td></tr>
-<tr class="component4-color"><td><a>Contextualization</a></td><td><a title="contextualizationOf">contextualizationOf(i2, i1,bundle)</a></td></tr>
+<tr class="component4-color"><td><a title="bundle">Bundle constructor</a></td><td><a title="dfn-bundle">bundle id description_1 ... description_n endBundle</a></td><td  rowspan="3"><a href="#component5">Component 5: Bundles</a></td></tr>
+<tr class="component4-color"><td class="provType"><a title="bundle">Bundle type</a></td><td><a>... prov:type='prov:Bundle' ...</a></td></tr>
+
 <tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
-
-<tr class="component5-color"><td><a title="bundle">Bundle constructor</a></td><td><a title="dfn-bundle">bundle id description_1 ... description_n endBundle</a></td><td  rowspan="3"><a href="#component5">Component 5: Bundles</a></td></tr>
-<tr class="component5-color"><td class="provType"><a title="bundle">Bundle type</a></td><td><a>... prov:type='prov:Bundle' ...</a></td></tr>
+<tr class="component5-color"><td><a>Alternate</a></td><td><a title="alternateOf">alternateOf(alt1, alt2)</a></td><td  rowspan="3"><a href="#component4">Component 4: Alternate</a></td></tr>
+<tr class="component5-color"><td><a>Specialization</a></td><td><a title="specializationOf">specializationOf(sub, super)</a></td></tr>
+<tr class="component5-color"><td><a>Contextualization</a></td><td><a title="contextualizationOf">contextualizationOf(i2, i1,bundle)</a></td></tr>
 <tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
 
+
 <tr class="component6-color"><td class="provType"><a>Collection</a></td><td><a title="collection">... prov:type='prov:Collection' ...</a></td><td  rowspan="6"><a href="#component6">Component 6: Collections</a></td></tr>
 <tr class="component6-color"><td class="provType"><a>Dictionary</a></td><td><a title="dictionary">... prov:type='prov:Dictionary' ...</a></td></tr>
 <tr class="component6-color"><td class="provType"><a title="empty dictionary">EmptyDictionary</a></td><td><a title="empty dictionary">... prov:type='prov:EmptyDictionary' ...</a></td></tr>
@@ -2351,251 +2352,25 @@
 
 </section>
 
+
+
 <section id="component4"> 
-<h3>Component 4: Alternate Entities</h3>
-
-
-<p>The fourth component of PROV-DM is concerned with
-relations <a>specialization</a> and <a>alternate</a> between entities.
- <a href="#figure-component4">Figure 8</a> depicts
-the fourth component with a single class and two binary associations.
-</p>
-
-
-<div style="text-align: center;">
-<figure>
-<!-- <img src="images/Alternates.png" alt="alternates"/> -->
-<img src="uml/component4.png" alt="alternates"/>
-<figcaption id="figure-component4">Figure 8: Alternates Component Overview</figcaption>
-</figure>
-</div>
-
-<div class="note">Swap components 4 and 5. Update figure 8 with new contextualizationOf</div>
-
-
-<p>Two provenance descriptions about the same thing may emphasize differents aspects of that thing.</p>
-<div class="anexample" id="entity-example1">
-<p>User Alice writes an article. In its provenance, she wishes to refer to the precise version of the article with a date-specific IRI, as she might edit the article later. Alternatively, user Bob refers to the article in general, independently of its variants over time.</p>
-</div>
-<p>
-The PROV data model introduces relations, called specialization and alternate,
-that allow entities  to be linked together. They are defined as follows. </p>
-
-
-<section id="term-specialization">
-
-<h4>Specialization</h4>
-
-
-<span class="glossary-ref" data-ref="glossary-specialization"></span> 
-
-
-<p>
-Examples of aspects include a time period, an abstraction, and a context associated with the entity.</p>
-
-
-
-
-<p>
-<div class="attributes" id="attributes-specialization">A <dfn title="specializationOf">specialization</dfn>  relation<span class="withPn">, written <span class="pnExpression">specializationOf(infra, supra)</span> in PROV-N,</span> has:
-
-<ul>
-<li><span class='attribute' id="specialization.specificEntity">specificEntity</span>: an identifier (<span class="name">infra</span>) of the specialized entity;</li>
-<li><span class='attribute' id="specialization.generalEntity">generalEntity</span>: an identifier (<span class="name">supra</span>) of the entity that is being specialized.</li>
-</ul>
-</div>
-
-<div class="anexample" id="anexample-specialization">
-<p>
-The BBC news home page on 2012-03-23 <span class="name">ex:bbcNews2012-03-23</span>
-is a specialization of the BBC news page in general
- <a href="http://www.bbc.co.uk/news/">bbc:news/</a>. This can be expressed as follows.
-<pre class="codeexample">
-specializationOf(ex:bbcNews2012-03-23, bbc:news/)
-</pre>
-We have created a new qualified name,  <span class="name">ex:bbcNews2012-03-23</span>, in the namespace <span class="name">ex</span>, to identify the specific page carrying this day's news, which would otherwise be the generic  <span class="name">bbc:news/</span> page.
-</div>
-
-
-
-
-<!--
-<p>To promote take up of these relations, it is not specified whether they are transitive or symmetric.  We anticipate that applications will specialize these relations according to their needs. </p>
--->
-
-
-
-</section>
-
-<section id="term-alternate">
-
-<h4>Alternate</h4>
-
-
-<span class="glossary-ref" data-ref="glossary-alternate"></span>
-
-
-  
-
-<p><div class="attributes" id="attributes-alternate">An <dfn title="alternateOf">alternate</dfn> relation<span class="withPn">, written <span class="pnExpression">alternateOf(e1, e2)</span> in PROV-N,</span> has:
-<ul>
-<li><span class='attribute' id="alternate.alternate1">alternate1</span>: an identifier (<span class="name">e1</span>) of the first of the two entities;</li>
-<li><span class='attribute' id="alternate.alternate2">alternate2</span>: an identifier (<span class="name">e2</span>) of the second of the two entities.</li>
-</ul>
-</div>
-
-<div class="anexample" id="anexample-alternate">
-<p>
-A given news item on the BBC News site 
- <a href="http://www.bbc.co.uk/news/science-environment-17526723">bbc:news/science-environment-17526723</a> for desktop
-is an alternate of a 
- <a href="http://www.bbc.co.uk/news/mobile/science-environment-17526723">bbc:news/mobile/science-environment-17526723</a> for mobile devices.</p>
-<pre class="codeexample">
-entity(bbc:news/science-environment-17526723, [ prov:type="a news item for desktop"])
-entity(bbc:news/mobile/science-environment-17526723, [ prov:type="a news item for mobile devices"])
-alternateOf(bbc:news/science-environment-17526723, bbc:news/mobile/science-environment-17526723)
-</pre>
-</div>
-
-
-<div class="anexample" id="anexample-alternate2">
-<p>
-Considering again the two versions of the technical report <span class="name"><a href="http://www.w3.org/TR/2011/WD-prov-dm-20111215">tr:WD-prov-dm-20111215</a></span> (second working draft) and <span class="name"><span class="name"><a href="http://www.w3.org/TR/2011/WD-prov-dm-20111018">tr:WD-prov-dm-20111018</a></span></span> (first working draft). They are alternate of each other.
-<pre class="codeexample">
-entity(tr:WD-prov-dm-20111018)
-entity(tr:WD-prov-dm-20111215)
-alternateOf(tr:WD-prov-dm-20111018,tr:WD-prov-dm-20111215)
-</pre>
-<p>They are both specialization of the page <a href="http://www.w3.org/TR/prov-dm/">http://www.w3.org/TR/prov-dm/</a>.</p>
-</div>
-
-</section>
-
-<section id="term-contextualization">
-
-<h4>Contextualization</h4>
-
-<span class="glossary-ref" data-ref="glossary-contextualization"></span>
-
-<div class="note">
-contextualization is the specialization of a "nonlocal" entity by "fixing" the bundle that it is in. Once this is done, one can then use specialization _again_ to link a "local" entity to a "nonlocal" entity. 
-</div>
-
-<p><div class="attributes" id="attributes-contextualization">A <dfn title="contextualizationOf">contextualization</dfn> relation<span class="withPn">, written <span class="pnExpression">contextualizationOf(i2, i1, b)</span> in PROV-N,</span> has:
-<ul>
-<li><span class='attribute' id="contextualization.contextualization2">contextualization2</span>: an identifier (<span class="name">i2</span>) for something presenting the aspects of <span class="name">i1</span> in bundle <span class="name">b</span> ;</li>
-<li><span class='attribute' id="contextualization.contextualization2">contextualization1</span>: an identifier (<span class="name">i1</span>) of something identifiable in some bundle <span class="name">b</span>;</li>
-<li><span class='attribute' id="contextualization.context">bundle</span>: an identifier (<span class="name">b</span>) for a bundle.</li>
-</ul>
-</div>
-
-
-<div class="anexample" id="anexample-contextualization1">
-<p>In the following example, two bundles <span class="name">ex:run1</span> and <span class="name">ex:run2</span> refer to an agent <span class="name">ex:Bob</span> that controlled two activities <span class="name">ex:a1</span> and <span class="name">ex:a2</span>. </p>
-
-<pre class="codeexample">
-bundle ex:run1
-    activity(ex:a1, 2011-11-16T16:00:00,2011-11-16T17:00:00)  //duration: 1hour
-    wasAssociatedWith(ex:a1,ex:Bob,[prov:role="controller"])
-endBundle
-
-bundle ex:run2
-    activity(ex:a2, 2011-11-17T10:00:00,2011-11-17T17:00:00)  //duration: 7hours
-    wasAssociatedWith(ex:a2,ex:Bob,[prov:role="controller"])
-endBundle
-</pre> 
-<p>A performance rating tool reads these bundles, and rates the performance of the agent described in these bundles. The performance rating tool creates a new bundle <span class="name">tool:analysis01</span> containing the following. A new agent <span class="name">tool:Bob-2011-11-16</span> is declared as a contextualization of <span class="name">ex:Bob</span> as described in context <span class="name">ex:run1</span>, and likewise for  <span class="name">tool:Bob-2011-11-17</span> with respect to <span class="name">ex:run2</span>. The tool then defines two specializations of these contextualized agents with an associated rating. The performance of the agent in the first bundle is judged to be good since the duration of <span class="name">ex:a1</span> is one hour, whereas it is judged to be bad in the second bundle since <span class="name">ex:a2</span>'s duration is seven hours.
-
-<pre class="codeexample">
-bundle tool:analysis01
-    agent(tool:Bob-2011-11-16)
-    contextualizationOf(tool:Bob-2011-11-16, ex:Bob, ex:run1)
-    agent(tool:rated-Bob-2011-11-16, [perf:rating="good"])
-    specialization(tool:rated-Bob-2011-11-16, tool:Bob-2011-11-16)
-
-    agent(tool:Bob-2011-11-17)
-    contextualizationOf(tool:Bob-2011-11-17, ex:Bob, ex:run2)
-    agent(tool:rated-Bob-2011-11-17, [perf:rating="bad"])
-    specialization(tool:rated-Bob-2011-11-17, tool:Bob-2011-11-17)
-endBundle
-</pre>
-</div>
-
-
-<div class="anexample" id="aexample-contextualization-viz">
-<p>Consider the following bundle of descriptions, in which derivation and generations have been identified.
-<pre class="codeexample"> 
-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)
-</pre>
-Bundle <span class="name">obs:bundle7</span> 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.
-<pre class="codeexample"> 
-bundle tool:bundle8
-  entity(tool:bundle8, [ prov:type='viz:Configuration', prov:type='prov:Bundle' ])
-  wasAttributedTo(tool:bundle8, viz:Visualizer)
-
-  entity(tool:report1, [viz:color="orange"])         // is it appropriate to add viz attributes to tool:report1 or should we specialize it?
-  contextualizationOf(tool:report1, obs:bundle7, ex:report1)
-
-  entity(tool:report2, [viz:color="blue"])              
-  contextualizationOf(tool:report2, obs:bundle7, ex:report2)
-
-
-  wasDerivedBy(tool:d; tool:report2, tool:report1, [viz:style="dotted"])
-  contextualizationOf(tool:d, obs:bundle7, ex:d)
-endBundle
-</pre>
-
-<p>In bundle <span class="name">tool:bundle8</span>, the prefix <span class="name">viz</span> is used for naming visualisation-specific attributes, types or values.</p>
-
-<p>Bundle <span class="name">tool:bundle8</span> is given type <span class="name">viz:Configuration</span> 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.
-</p>
-
-<p>The visualisation tool
- created  new identifiers <span class="name">tool:report1</span>,
-<span class="name">tool:report2</span>, and
-<span class="name">tool:d</span>.
-They denote entities which are alternates of with <span class="name">ex:report1</span> and <span class="name">ex:report2</span>, described in bundle <span class="name">obs:bundle7</span>, with visualization attribute for the color to be used when rendering these entities.  
-Likewise, the derivation has a style attribute. </p>
-
-<p>According to their definition,
-derivations have an <a href="#derivation.id">optional identifier</a>. 
-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 class="name">ex:d</span>).</p>
-</div>
-
-
-
-</section>
-
-</section>
-
-
-<section id="component5"> 
-<h3>Component 5: Bundles</h3>
-
-
-<p>The fifth component of PROV-DM is concerned with bundles, a mechanism to support provenance of provenance. 
-<a href="#figure-component5">Figure 9</a>  depicts a UML class diagram for the fifth component.  It comprises a <a>Bundle</a> class, a subclass of <a>Entity</a> and a novel n-ary relation, <a>Provenance Locator</a>.
+<h3>Component 4: Bundles</h3>
+
+
+<p>The fourth component of PROV-DM is concerned with bundles, a mechanism to support provenance of provenance. 
+<a href="#figure-component4">Figure 8</a>  depicts a UML class diagram for the fourth component.  It comprises a <a>Bundle</a> class and a subclass of <a>Entity</a>.
 </p>
 
 <div style="text-align: center;">
 <figure>
 
-<img src="uml/component5.png" alt="bundles"/>
-<figcaption id="figure-component5">Figure 9: Bundle Component Overview</figcaption>
+<img src="uml/component4.png" alt="bundles"/>
+<figcaption id="figure-component4">Figure 8: Bundle Component Overview</figcaption>
 </figure>
 </div>
 
 
-<div class="note">Remove provenance locator from fig 9</div>
-
 
 <section id="term-bundle"> 
 
@@ -2863,6 +2638,228 @@
 </section> 
 
 
+<section id="component5"> 
+<h3>Component 5: Alternate Entities</h3>
+
+
+<p>The fifth component of PROV-DM is concerned with
+relations <a>specialization</a>, <a>alternate</a> and <a>contextualization</a> between entities.
+ <a href="#figure-component5">Figure 9</a> depicts
+the fifth component with a single class,  two binary associations, and a ternary association.
+</p>
+
+
+<div style="text-align: center;">
+<figure>
+<!-- <img src="images/Alternates.png" alt="alternates"/> -->
+<img src="uml/component5.png" alt="alternates"/>
+<figcaption id="figure-component5">Figure 9: Alternates Component Overview</figcaption>
+</figure>
+</div>
+
+
+<p>Two provenance descriptions about the same thing may emphasize differents aspects of that thing.</p>
+<div class="anexample" id="entity-example1">
+<p>User Alice writes an article. In its provenance, she wishes to refer to the precise version of the article with a date-specific IRI, as she might edit the article later. Alternatively, user Bob refers to the article in general, independently of its variants over time.</p>
+</div>
+<p>
+The PROV data model introduces relations, called specialization and alternate,
+that allow entities  to be linked together. They are defined as follows. </p>
+
+
+<section id="term-specialization">
+
+<h4>Specialization</h4>
+
+
+<span class="glossary-ref" data-ref="glossary-specialization"></span> 
+
+
+<p>
+Examples of aspects include a time period, an abstraction, and a context associated with the entity.</p>
+
+
+
+
+<p>
+<div class="attributes" id="attributes-specialization">A <dfn title="specializationOf">specialization</dfn>  relation<span class="withPn">, written <span class="pnExpression">specializationOf(infra, supra)</span> in PROV-N,</span> has:
+
+<ul>
+<li><span class='attribute' id="specialization.specificEntity">specificEntity</span>: an identifier (<span class="name">infra</span>) of the specialized entity;</li>
+<li><span class='attribute' id="specialization.generalEntity">generalEntity</span>: an identifier (<span class="name">supra</span>) of the entity that is being specialized.</li>
+</ul>
+</div>
+
+<div class="anexample" id="anexample-specialization">
+<p>
+The BBC news home page on 2012-03-23 <span class="name">ex:bbcNews2012-03-23</span>
+is a specialization of the BBC news page in general
+ <a href="http://www.bbc.co.uk/news/">bbc:news/</a>. This can be expressed as follows.
+<pre class="codeexample">
+specializationOf(ex:bbcNews2012-03-23, bbc:news/)
+</pre>
+We have created a new qualified name,  <span class="name">ex:bbcNews2012-03-23</span>, in the namespace <span class="name">ex</span>, to identify the specific page carrying this day's news, which would otherwise be the generic  <span class="name">bbc:news/</span> page.
+</div>
+
+
+
+
+<!--
+<p>To promote take up of these relations, it is not specified whether they are transitive or symmetric.  We anticipate that applications will specialize these relations according to their needs. </p>
+-->
+
+
+
+</section>
+
+<section id="term-alternate">
+
+<h4>Alternate</h4>
+
+
+<span class="glossary-ref" data-ref="glossary-alternate"></span>
+
+
+  
+
+<p><div class="attributes" id="attributes-alternate">An <dfn title="alternateOf">alternate</dfn> relation<span class="withPn">, written <span class="pnExpression">alternateOf(e1, e2)</span> in PROV-N,</span> has:
+<ul>
+<li><span class='attribute' id="alternate.alternate1">alternate1</span>: an identifier (<span class="name">e1</span>) of the first of the two entities;</li>
+<li><span class='attribute' id="alternate.alternate2">alternate2</span>: an identifier (<span class="name">e2</span>) of the second of the two entities.</li>
+</ul>
+</div>
+
+<div class="anexample" id="anexample-alternate">
+<p>
+A given news item on the BBC News site 
+ <a href="http://www.bbc.co.uk/news/science-environment-17526723">bbc:news/science-environment-17526723</a> for desktop
+is an alternate of a 
+ <a href="http://www.bbc.co.uk/news/mobile/science-environment-17526723">bbc:news/mobile/science-environment-17526723</a> for mobile devices.</p>
+<pre class="codeexample">
+entity(bbc:news/science-environment-17526723, [ prov:type="a news item for desktop"])
+entity(bbc:news/mobile/science-environment-17526723, [ prov:type="a news item for mobile devices"])
+alternateOf(bbc:news/science-environment-17526723, bbc:news/mobile/science-environment-17526723)
+</pre>
+</div>
+
+
+<div class="anexample" id="anexample-alternate2">
+<p>
+Considering again the two versions of the technical report <span class="name"><a href="http://www.w3.org/TR/2011/WD-prov-dm-20111215">tr:WD-prov-dm-20111215</a></span> (second working draft) and <span class="name"><span class="name"><a href="http://www.w3.org/TR/2011/WD-prov-dm-20111018">tr:WD-prov-dm-20111018</a></span></span> (first working draft). They are alternate of each other.
+<pre class="codeexample">
+entity(tr:WD-prov-dm-20111018)
+entity(tr:WD-prov-dm-20111215)
+alternateOf(tr:WD-prov-dm-20111018,tr:WD-prov-dm-20111215)
+</pre>
+<p>They are both specialization of the page <a href="http://www.w3.org/TR/prov-dm/">http://www.w3.org/TR/prov-dm/</a>.</p>
+</div>
+
+</section>
+
+<section id="term-contextualization">
+
+<h4>Contextualization</h4>
+
+<span class="glossary-ref" data-ref="glossary-contextualization"></span>
+
+<div class="note">
+contextualization is the specialization of a "nonlocal" entity by "fixing" the bundle that it is in. Once this is done, one can then use specialization _again_ to link a "local" entity to a "nonlocal" entity. 
+</div>
+
+<p><div class="attributes" id="attributes-contextualization">A <dfn title="contextualizationOf">contextualization</dfn> relation<span class="withPn">, written <span class="pnExpression">contextualizationOf(i2, i1, b)</span> in PROV-N,</span> has:
+<ul>
+<li><span class='attribute' id="contextualization.contextualization2">contextualization2</span>: an identifier (<span class="name">i2</span>) for something presenting the aspects of <span class="name">i1</span> in bundle <span class="name">b</span> ;</li>
+<li><span class='attribute' id="contextualization.contextualization2">contextualization1</span>: an identifier (<span class="name">i1</span>) of something identifiable in some bundle <span class="name">b</span>;</li>
+<li><span class='attribute' id="contextualization.context">bundle</span>: an identifier (<span class="name">b</span>) for a bundle.</li>
+</ul>
+</div>
+
+
+<div class="anexample" id="anexample-contextualization1">
+<p>In the following example, two bundles <span class="name">ex:run1</span> and <span class="name">ex:run2</span> refer to an agent <span class="name">ex:Bob</span> that controlled two activities <span class="name">ex:a1</span> and <span class="name">ex:a2</span>. </p>
+
+<pre class="codeexample">
+bundle ex:run1
+    activity(ex:a1, 2011-11-16T16:00:00,2011-11-16T17:00:00)  //duration: 1hour
+    wasAssociatedWith(ex:a1,ex:Bob,[prov:role="controller"])
+endBundle
+
+bundle ex:run2
+    activity(ex:a2, 2011-11-17T10:00:00,2011-11-17T17:00:00)  //duration: 7hours
+    wasAssociatedWith(ex:a2,ex:Bob,[prov:role="controller"])
+endBundle
+</pre> 
+<p>A performance rating tool reads these bundles, and rates the performance of the agent described in these bundles. The performance rating tool creates a new bundle <span class="name">tool:analysis01</span> containing the following. A new agent <span class="name">tool:Bob-2011-11-16</span> is declared as a contextualization of <span class="name">ex:Bob</span> as described in context <span class="name">ex:run1</span>, and likewise for  <span class="name">tool:Bob-2011-11-17</span> with respect to <span class="name">ex:run2</span>. The tool then defines two specializations of these contextualized agents with an associated rating. The performance of the agent in the first bundle is judged to be good since the duration of <span class="name">ex:a1</span> is one hour, whereas it is judged to be bad in the second bundle since <span class="name">ex:a2</span>'s duration is seven hours.
+
+<pre class="codeexample">
+bundle tool:analysis01
+    agent(tool:Bob-2011-11-16)
+    contextualizationOf(tool:Bob-2011-11-16, ex:Bob, ex:run1)
+    agent(tool:rated-Bob-2011-11-16, [perf:rating="good"])
+    specialization(tool:rated-Bob-2011-11-16, tool:Bob-2011-11-16)
+
+    agent(tool:Bob-2011-11-17)
+    contextualizationOf(tool:Bob-2011-11-17, ex:Bob, ex:run2)
+    agent(tool:rated-Bob-2011-11-17, [perf:rating="bad"])
+    specialization(tool:rated-Bob-2011-11-17, tool:Bob-2011-11-17)
+endBundle
+</pre>
+</div>
+
+
+<div class="anexample" id="aexample-contextualization-viz">
+<p>Consider the following bundle of descriptions, in which derivation and generations have been identified.
+<pre class="codeexample"> 
+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)
+</pre>
+Bundle <span class="name">obs:bundle7</span> 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.
+<pre class="codeexample"> 
+bundle tool:bundle8
+  entity(tool:bundle8, [ prov:type='viz:Configuration', prov:type='prov:Bundle' ])
+  wasAttributedTo(tool:bundle8, viz:Visualizer)
+
+  entity(tool:report1, [viz:color="orange"])         // is it appropriate to add viz attributes to tool:report1 or should we specialize it?
+  contextualizationOf(tool:report1, obs:bundle7, ex:report1)
+
+  entity(tool:report2, [viz:color="blue"])              
+  contextualizationOf(tool:report2, obs:bundle7, ex:report2)
+
+
+  wasDerivedBy(tool:d; tool:report2, tool:report1, [viz:style="dotted"])
+  contextualizationOf(tool:d, obs:bundle7, ex:d)
+endBundle
+</pre>
+
+<p>In bundle <span class="name">tool:bundle8</span>, the prefix <span class="name">viz</span> is used for naming visualisation-specific attributes, types or values.</p>
+
+<p>Bundle <span class="name">tool:bundle8</span> is given type <span class="name">viz:Configuration</span> 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.
+</p>
+
+<p>The visualisation tool
+ created  new identifiers <span class="name">tool:report1</span>,
+<span class="name">tool:report2</span>, and
+<span class="name">tool:d</span>.
+They denote entities which are alternates of with <span class="name">ex:report1</span> and <span class="name">ex:report2</span>, described in bundle <span class="name">obs:bundle7</span>, with visualization attribute for the color to be used when rendering these entities.  
+Likewise, the derivation has a style attribute. </p>
+
+<p>According to their definition,
+derivations have an <a href="#derivation.id">optional identifier</a>. 
+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 class="name">ex:d</span>).</p>
+</div>
+
+
+
+</section>
+
+</section>
 
 <section id="component6"> 
 <h3>Component 6: Collections</h3>