added complete attribute to membership
authorLuc Moreau <l.moreau@ecs.soton.ac.uk>
Tue, 17 Apr 2012 13:06:27 +0100
changeset 2341 9bf28bc0e0eb
parent 2340 d9eedc90f537
child 2342 0a619e2e829c
added complete attribute to membership
model/diff.html
model/prov-dm.html
--- a/model/diff.html	Tue Apr 17 12:27:13 2012 +0100
+++ b/model/diff.html	Tue Apr 17 13:06:27 2012 +0100
@@ -1,3 +1,4 @@
+
 <!DOCTYPE html PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN' 'http://www.w3.org/TR/html4/loose.dtd'>
 <html lang="en" dir="ltr">
 <head><style type="text/css"><!--
@@ -2651,15 +2652,22 @@
 <li><span class="attribute" id="memberOf.id">id</span>:  an <em class="rfc2119" title="optional">optional</em> identifier identifying the relation;</li>
 <li><span class="attribute" id="memberOf.after">after</span>: an identifier (<span class="name">c</span>) for the collection whose members are asserted; </li>
 <li><span class="attribute" id="memberOf.key-entity-set">key-entity-set</span>: a set of key-entity pairs <span class="name">(key_1, e_1)</span>, ..., <span class="name">(key_n, e_n)</span> that are members of the collection;</li>
-<li><span class="attribute" id="memberOf.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set (<span class="name">attrs</span>) of attribute-value pairs <span class="delete">to further describe the properties of the</span><span class="insert">representing additional information about this</span> relation.</li>
+<li><span class="delete">attributes</span><span class="attribute" id="memberOf.complete"><span class="insert">complete</span></span>: an <em class="rfc2119" title="optional">optional</em> <span class="insert">boolean 
+</span><a title="value" href="#dfn-value" class="internalDFN"><span class="insert">Value</span></a><span class="insert">; if true, it indicates that no other member belongs to the collection; 
+</span></li><li><span class="attribute" id="memberOf.attributes"><span class="insert">attributes</span></span><span class="insert">: an </span><em class="rfc2119" title="optional"><span class="insert">optional</span></em> set (<span class="name">attrs</span>) of attribute-value pairs <span class="delete">to further describe the properties of the</span><span class="insert">representing additional information about this</span> relation.</li>
 </ul>
 </div>
 
+
+
+
+
+
 <p>The description <span class="name">memberOf(c, {(key_1, e_1), ..., (key_n, e_n)})</span> states that  <span class="name">c</span> is known to include <span class="name">(key_1, e_1)</span>, ..., <span class="name">(key_n, e_n)}</span>, without having to introduce a previous state. </p>
 
 <div class="anexample">
-<pre class="codeexample">entity(c, [prov:type="prov:Collection"  %% xsd:QName])    // c is a collection, with unknown content
-activity(a)
+<pre class="codeexample"><span class="delete">entity(c,</span><span class="insert">entity(c1,</span> [prov:type="prov:Collection"  %% xsd:QName])    // <span class="delete">c</span><span class="insert">c1</span> is a collection, with unknown content
+<span class="delete">activity(a)
 wasGeneratedBy(c,a)   // a produced c
 
 entity(e1)
@@ -2667,21 +2675,31 @@
 memberOf(c, {("k1", e1), ("k2", e2)} )  
 
 entity(e3)
-entity(c1, [prov:type="prov:Collection"  %% xsd:QName])
-
-derivedByInsertionFrom(c1, c, {("k3", e3)})     
+entity(c1,</span><span class="insert">entity(c2,</span> [prov:type="prov:Collection"  %% xsd:QName])<span class="insert">    // c2 is a collection, with unknown content</span>
+
+<span class="delete">derivedByInsertionFrom(c1, c,</span><span class="insert">entity(e1)
+entity(e2)
+
+memberOf(c1, {("k1", e1), ("k2", e2)} )  
+memberOf(c2, {("k1", e1), ("k2", e2)}, true)  
+
+entity(e3)
+entity(c3, [prov:type="prov:Collection"  %% xsd:QName])
+
+derivedByInsertionFrom(c3, c1,</span> {("k3", e3)})     
 </pre>
   
 From <span class="delete">this set of assertions,</span><span class="insert">these descriptions,</span> we conclude:
-     
-<ul>
-<li> <span class="name">c</span>  <span class="delete">contains   </span><span class="insert">has  the following pairs as members: </span><span class="name">("k1", e1), ("k2", e2)<span class="delete"> 
+  <span class="delete">   c  contains   ("k1", e1), ("k2", e2) 
    c1 contains   ("k1", e1), ("k2", e2), ("k3", v3) 
   </span><span class="delete">
- Note that the state of</span></span>
-</li><li> <span class="name">c1</span> <span class="insert">has  the following pairs as members: </span><span class="name"><span class="insert">("k1", e1), ("k2", e2), ("k3", v3)</span></span>
-</li></ul>
-<p><span class="insert"> Note that the state of </span><span class="name"><span class="insert">c1</span></span> with these relations is only partially known, because the state of <span class="name">c</span> is unknown.</p>
+ Note that the state of</span>
+<ul>
+<li> <span class="name">c1</span><span class="delete"> with these relations is</span><span class="insert">  has  the following pairs as members: </span><span class="name"><span class="insert">("k1", e1), ("k2", e2)</span></span><span class="insert">, and may contain others.
+</span></li><li> <span class="name"><span class="insert">c2</span></span><span class="insert">  exactly has  the following pairs as members: </span><span class="name"><span class="insert">("k1", e1), ("k2", e2)</span></span><span class="insert">, and does not contain any other.
+</span></li><li> <span class="name"><span class="insert">c3</span></span><span class="insert"> has  the following pairs as members: </span><span class="name"><span class="insert">("k1", e1), ("k2", e2), ("k3", v3)</span></span><span class="insert">, and may contain others.
+</span></li></ul>
+<p><span class="insert"> Note that the states of </span><span class="name"><span class="insert">c1</span></span><span class="insert"> and </span><span class="name"><span class="insert">c3</span></span><span class="insert"> are</span> only partially <span class="delete">known, because the state of </span><span class="delete">c</span><span class="delete"> is unknown.</span><span class="insert">known.</span></p>
 </div>
 
 
@@ -2872,6 +2890,11 @@
 The interpretation of any attribute declared in another namespace is out of scope.</p>
 
 
+
+
+
+
+
 <div id="term-attribute-label" class="section">
 <h5><span class="secno">4.7.4.1 </span>prov:label</h5>
 
@@ -2962,10 +2985,10 @@
 <div id="term-attribute-value" class="section">
 <h5><span class="secno"><span class="insert">4.7.4.5 </span></span><span class="insert">prov:value</span></h5>
 
-<p><span class="insert">The attribute </span><dfn title="dfn-value" id="dfn-dfn-value"><span class="name"><span class="insert">prov:value</span></span></dfn><span class="insert">  provides the value </span><a title="value" href="#dfn-value" class="internalDFN"><span class="insert">Value</span></a><span class="insert"> associated with an entity.</span></p>
-
-
-<p><span class="insert">The attribute </span><span class="name"><span class="insert">prov:value</span></span><span class="insert"> is an </span><em class="rfc2119" title="optional"><span class="insert">optional</span></em><span class="insert"> attribute of entity.  The value associated with the  attribute </span><span class="name"><span class="insert">prov:value</span></span> <em class="rfc2119" title="must"><span class="insert">must</span></em><span class="insert"> be a PROV-DM </span><a title="value" href="#dfn-value" class="internalDFN"><span class="insert">Value</span></a><span class="insert">. The attribute </span><span class="name"><span class="insert">prov:value</span></span><span class="insert"> can occur at most once in a set of attribute-value pairs.</span></p>
+<p><span class="insert">The attribute </span><dfn title="dfn-value" id="dfn-dfn-value"><span class="name"><span class="insert">prov:value</span></span></dfn><span class="insert">  provides a </span><a title="value" href="#dfn-value" class="internalDFN"><span class="insert">Value</span></a><span class="insert"> associated with an entity.</span></p>
+
+
+<p><span class="insert">The attribute </span><span class="name"><span class="insert">prov:value</span></span><span class="insert"> is an </span><em class="rfc2119" title="optional"><span class="insert">optional</span></em><span class="insert"> attribute of entity.  The value associated with the  attribute </span><span class="name"><span class="insert">prov:value</span></span> <em class="rfc2119" title="must"><span class="insert">must</span></em><span class="insert"> be a PROV-DM </span><a title="value" href="#dfn-value" class="internalDFN"><span class="insert">Value</span></a><span class="insert">. The attribute </span><span class="name"><span class="insert">prov:value</span></span> <em class="rfc2119" title="may"><span class="insert">may</span></em><span class="insert"> occur at most once in a set of attribute-value pairs.</span></p>
 
 <div class="anexample">
 <p><span class="insert">The following example illustrates the provenance of the number </span><span class="name"><span class="insert">4</span></span><span class="insert"> obtained by an activity that computed the length of an input string </span><span class="name"><span class="insert">"abcd"</span></span><span class="insert">.
@@ -2980,6 +3003,7 @@
 </span></pre>
 </div>
 
+<div class="note"><span class="insert">Should we also have prov:encoding?</span></div>
 
 </div>
 
--- a/model/prov-dm.html	Tue Apr 17 12:27:13 2012 +0100
+++ b/model/prov-dm.html	Tue Apr 17 13:06:27 2012 +0100
@@ -2136,33 +2136,40 @@
 <li><span class='attribute' id="memberOf.id">id</span>:  an OPTIONAL identifier identifying the relation;</li>
 <li><span class='attribute' id="memberOf.after">after</span>: an identifier (<span class="name">c</span>) for the collection whose members are asserted; </li>
 <li><span class='attribute' id="memberOf.key-entity-set">key-entity-set</span>: a set of key-entity pairs <span class="name">(key_1, e_1)</span>, ..., <span class="name">(key_n, e_n)</span> that are members of the collection;</li>
+<li><span class='attribute' id="memberOf.complete">complete</span>: an OPTIONAL boolean 
+<a title="value">Value</a>; if true, it indicates that no other member belongs to the collection; 
 <li><span class='attribute' id="memberOf.attributes">attributes</span>: an OPTIONAL set (<span class="name">attrs</span>) of attribute-value pairs representing additional information about this relation.</li>
 </ul>
 </div>
 
+
+
+
 <p>The description <span class="name">memberOf(c, {(key_1, e_1), ..., (key_n, e_n)})</span> states that  <span class="name">c</span> is known to include <span class="name">(key_1, e_1)</span>, ..., <span class="name">(key_n, e_n)}</span>, without having to introduce a previous state. </p>
 
 <div class="anexample">
 <pre class="codeexample">
-entity(c, [prov:type="prov:Collection"  %% xsd:QName])    // c is a collection, with unknown content
-activity(a)
-wasGeneratedBy(c,a)   // a produced c
+entity(c1, [prov:type="prov:Collection"  %% xsd:QName])    // c1 is a collection, with unknown content
+entity(c2, [prov:type="prov:Collection"  %% xsd:QName])    // c2 is a collection, with unknown content
 
 entity(e1)
 entity(e2)
-memberOf(c, {("k1", e1), ("k2", e2)} )  
+
+memberOf(c1, {("k1", e1), ("k2", e2)} )  
+memberOf(c2, {("k1", e1), ("k2", e2)}, true)  
 
 entity(e3)
-entity(c1, [prov:type="prov:Collection"  %% xsd:QName])
-
-derivedByInsertionFrom(c1, c, {("k3", e3)})     
+entity(c3, [prov:type="prov:Collection"  %% xsd:QName])
+
+derivedByInsertionFrom(c3, c1, {("k3", e3)})     
 </pre>
 From these descriptions, we conclude:
 <ul>
-<li> <span class="name">c</span>  has  the following pairs as members: <span class="name">("k1", e1), ("k2", e2)</span>
-<li> <span class="name">c1</span> has  the following pairs as members: <span class="name">("k1", e1), ("k2", e2), ("k3", v3)</span>
+<li> <span class="name">c1</span>  has  the following pairs as members: <span class="name">("k1", e1), ("k2", e2)</span>, and may contain others.
+<li> <span class="name">c2</span>  exactly has  the following pairs as members: <span class="name">("k1", e1), ("k2", e2)</span>, and does not contain any other.
+<li> <span class="name">c3</span> has  the following pairs as members: <span class="name">("k1", e1), ("k2", e2), ("k3", v3)</span>, and may contain others.
 </ul>
-<p> Note that the state of <span class="name">c1</span> with these relations is only partially known, because the state of <span class="name">c</span> is unknown.</p>
+<p> Thus, the states of <span class="name">c1</span> and <span class="name">c3</span> are only partially known.</p>
 </div>
 
 <!-- To go to part 2
@@ -2365,6 +2372,8 @@
 The interpretation of any attribute declared in another namespace is out of scope.</p>
 
 
+
+
 <section id="term-attribute-label">
 <h4>prov:label</h4>