--- a/model/working-copy/wd6-bundle.html Wed May 02 11:58:20 2012 -0600
+++ b/model/working-copy/wd6-bundle.html Thu May 03 08:56:36 2012 +0100
@@ -424,6 +424,87 @@
</section>
+
+
+
+<section id="term-hasProvenanceIn">
+
+<h3>Provenance Locator</h3>
+
+<p><div class="glossary-ref" data-ref="glossary-provenance-locator"></div></p>
+
+
+<div class="attributes" id="attributes-hasProvenanceIn">
+A <dfn title="hasProvenanceIn">provenance locator</dfn>,
+written
+<span class="pnExpression">hasProvenance(id,b,s,p)</span>, has:
+<ul>
+<li><span class='attribute' id="provenance.in.id">id</span>: an identifier denoting an entity;</li>
+<li><span class='attribute' id="provenance.in.bundle">bundle</span>: an OPTIONAL identifier (<span class="name">b</span>) for a bundle;
+<li><span class='attribute' id="provenance.in.service">service</span>: an OPTIONAL URI (<span class="name">s</span>) denoting a <a href="http://www.w3.org/TR/prov-aq/#provenance-service">provenance service</a> at which provenance can be retrieved according to [[PROV-AQ]];
+<li><span class='attribute' id="provenance.in.provenance">provenance</span>: an OPTIONAL URI (<span class="name">p</span>) where provenance descriptions can be found.
+</ul>
+<p>In <span class="pnExpression">hasProvenance(id, b, s, p)</span>, <span class="name">s</span> and <span class="name">p</span> are both optional and mutually exclusive: if specified at all, either <span class="name">s</span> or <span class="name">p</span> is provided.</p>
+</div>
+
+<p>A provenance locator not only provides information about the location of provenance descriptions, it also defines a specialization relation between the entity identified by <span class="name">id</span> and the eponym entity described where indicated by the provenance locator. This is specialization since the entity <span class="name">id</span> is more constrained in the current context than in the located one.</p>
+
+<div class="anexample" id="anexample-provenance-locator">
+<p>According to the following provenance locator, provenance descriptions about <span class="name">ex:e1</span> can be found in bundle <span class="name">uuid:01</span>.</p>
+<pre class="codeexample">
+hasProvenanceIn(ex:e1, uuid:01)
+</pre>
+<p>According to the following provenance locator, provenance descriptions about <span class="name">ex:e1</span> can be found in bundle <span class="name">uuid:01</span>, in a provenance service identified by the provided URI.</p>
+<pre class="codeexample">
+hasProvenanceIn(ex:e1, uuid:01,"http://example.com/service"^xsd:anyURI, -)
+</pre>
+<p>According to the following provenance locator, provenance descriptions about <span class="name">ex:e1</span> can be found in resource identified by the provided URI.</p>
+<pre class="codeexample">
+hasProvenanceIn(ex:e1, -, -, "http://example.com/some-provenance.pn"^xsd:anyURI)
+</pre>
+</div>
+
+
+<div class="anexample" id="anexample-provenance-locator2">
+<p>Let us consider an example consisting of two entities <span class="name">ex:e1</span> and <span class="name">ex:e2</span>.</p>
+<pre class="codeexample">
+entity(ex:e1,[prov:type="report", ex:version=1])
+wasGeneratedBy(ex:e1,-,2012-05-24)
+entity(ex:e2,[prov:type="report", ex:version=2])
+wasGeneratedBy(ex:e2,-,2012-05-25)
+wasDerivedFrom(ex:e2, ex:e1)
+</pre>
+
+<p>Let us assume that Bob observed the creation of <span class="name">ex:e1</span>.
+A first bundle can be expressed.</p>
+<pre class="codeexample">
+bundle uuid:01
+ entity(ex:e1,[prov:type="report", ex:version=1])
+ wasGeneratedBy(ex:e1,-,2012-05-24)
+end
+</pre>
+
+<p>In contrast,
+Alice observed the creation of <span class="name">ex:e2</span> and its derivation from <span class="name">ex:e1</span>.
+A separate bundle can also be expressed.</p>
+<pre class="codeexample">
+bundle uuid:02
+ entity(ex:e1)
+ hasProvenanceIn(ex:e1,uuid:01)
+ entity(ex:e2,[prov:type="report", ex:version=2])
+ wasGeneratedBy(ex:e2,-,2012-05-25)
+ wasDerivedFrom(ex:e2,ex:e1)
+end
+</pre>
+<p>In bundle <span class="name">uuid:02</span>, there is a description for entity <span class="name">ex:e1</span>, and
+a provenance locator pointing to bundle <span class="name">uuid:01</span>.
+This attribute indicates that some provenance description for <span class="name">ex:e1</span> can be found in bundle <span class="name">uuid:01</span>. The purpose of this attribute is twofold. First, it allows for <a href="http://www.w3.org/TR/prov-aq/#incremental-provenance-retrieval">incremental navigation</a> of provenance [[PROV-AQ]]. Second, it makes entity <span class="name">ex:e1</span> described in <span class="name">uuid:02</span> a <a>specialization</a> of <span class="name">ex:e1</span> described in <span class="name">uuid:01</span>.
+</p>
+
+</div>
+</section>
+
+
<section id="term-bundle-entity">
<h3>Bundle Description</h3>
@@ -441,20 +522,13 @@
</ul>
</div>
-</section>
+
+
<div class="anexample" id="anexample-provenance-of-provenance">
-<p>Let us consider an example consisting of two entities <span class="name">ex:e1</span> and <span class="name">ex:e2</span>.</p>
-<pre class="codeexample">
-entity(ex:e1,[prov:type="report", ex:version=1])
-wasGeneratedBy(ex:e1,-,2012-05-24)
-entity(ex:e2,[prov:type="report", ex:version=2])
-wasGeneratedBy(ex:e2,-,2012-05-25)
-wasDerivedFrom(ex:e2,ex:e1)
-</pre>
+<p>We revisit the example <a href="anexample-provenance-locator2">anexample-provenance-locator2</a> and described the provenance fo the two bundles.</p>
-<p>Let us assume that Bob observed the creation of <span class="name">ex:e1</span>.
-A bundle can be expressed, and its provenance described.</p>
+<p>A first bundle can contains the descriptions corresponding to Bob observing the creation of <span class="name">ex:e1</span>. Its provenance can be described.</p>
<pre class="codeexample">
bundle uuid:01
entity(ex:e1,[prov:type="report", ex:version=1])
@@ -465,9 +539,8 @@
wasAttributedTo(uuid:01,ex:Bob)
</pre>
-<p>In contrast,
-Alice observed the creation of <span class="name">ex:e2</span> and its derivation from <span class="name">ex:e1</span>.
-A separate bundle can also be expressed.</p>
+<p>In contrast, the second bundle is attributed to Alice who
+Alice observed the creation of <span class="name">ex:e2</span> and its derivation from <span class="name">ex:e1</span>.</p>
<pre class="codeexample">
bundle uuid:02
entity(ex:e1,[prov:hasProvenanceIn='uuid:01'])
@@ -479,19 +552,8 @@
wasGeneratedBy(uuid:02,-, 2012-05-25)
wasAttributedBTo(uuid:02,ex:Bob)
</pre>
-<p>In bundle <span class="name">uuid:02</span>, there is a description for entity <span class="name">ex:e1</span>, with
- attribute <span class="name">prov:hasProvenanceIn</span> and value <span class="name">'uuid:01'</span>.
-This attribute indicates that some provenance description for <span class="name">ex:e1</span> can be found in bundle <span class="name">uuid:01</span>. The purpose of this attribute is twofold. First, it allows for <a href="http://www.w3.org/TR/prov-aq/#incremental-provenance-retrieval">incremental navigation</a> of provenance [[PROV-AQ]]. Second, it makes entity <span class="name">ex:e1</span> described in <span class="name">uuid:02</span> a <a>specialization</a> of <span class="name">ex:e1</span> described in <span class="name">uuid:01</span>.
-</p>
</div>
-
-
-<div class="note">
-It's not clear that hasProvenanceIn is an attribute. Indeed, looking at James' semantics, I don't see the attribute "hasProvenanceIn" being provided a value in a World. It does not characterize the entity e1.
-I think that it would be better to have another relation in the model:
-<pre>
-hasProvenanceIn(ex:e1,uuid:01)
-</pre>
+</section>
</div>