* Addressing issue-452
authorJames Cheney <jcheney@inf.ed.ac.uk>
Wed, 08 Aug 2012 17:31:09 +0100
changeset 4319 11b80ec412ee
parent 4318 b513cb65930a
child 4320 ae50e5508a48
* Addressing issue-452
model/prov-constraints.html
--- a/model/prov-constraints.html	Wed Aug 08 16:26:05 2012 +0100
+++ b/model/prov-constraints.html	Wed Aug 08 17:31:09 2012 +0100
@@ -1691,8 +1691,9 @@
 activity, generation, and usage admit the  following inference: </p>
 
 <div class='inference' id='derivation-generation-use-inference'>
-<p>
-<p>
+<p> In this inference, none of <span class="name">a</span>, <span class="name">gen2</span> or <span class="name">use1</span> can be
+  placeholders <span class="name">-</span>.
+  <p>
 <span class='conditional'>IF</span> <span
   class="name">wasDerivedFrom(_id; e2,e1,a,gen2,use1,_attrs)</span>,
   <span class='conditional'>THEN</span> there exists  <span
@@ -1709,8 +1710,19 @@
 href="#optional-placeholders"><span>TBD</span></a>, optional generation and usage in a derivation are not expandable. However,  derivations with an explicit activity and
 no specified generation and usage admit the  following inference: </p>
 
+
+<div class="note">
+  derivation-use-inference is problematic because the inferred
+  derivation may violate the key constraint on derivations.  We could
+conditionally allow expansion of gen and use when the activity is
+  specified (non-placeholder).
+</div>
 <div class='inference' id='derivation-use-inference'>
 <p>
+  In this inference, <span class="name">a</span> cannot  be
+  a placeholder <span class="name">-</span>.
+  </p>
+  <p>
 <span class='conditional'>IF</span> <span class="name">wasDerivedFrom(id; e2,e1,a,-,-,attrs)</span> and <span class="name">wasGeneratedBy(gen; e2,a,_t2,_attrs2)</span> hold, <span
 class='conditional'>THEN</span> there exist <span
   class="name">_t1</span> and <span class="name">use</span> such
@@ -1721,7 +1733,6 @@
 (see <a class="rule-text" href="#unique-generation"><span>TBD</span></a>). Hence,  this activity is also the one referred to by the usage of <span class="name">e1</span>. 
 </p>
 
-
 <div class="remark" id="derivation-generation-use-inference-remark">
   <p>
  <a class="rule-text" href="#derivation-use-inference"><span>TBD</span></a> allows "-" to be replaced by existential variables in a <span
@@ -1744,6 +1755,9 @@
  </div>
 
 <hr />
+ <div class="note">
+   Likely to delete specific-derivation-inference
+   </div>
 <p id="specific-derivation-inference_text">A derivation
   specifying activity, generation and use events is a special case of
   a derivation that leaves these unspecified.  The converse is not
@@ -1752,7 +1766,10 @@
 href="#optional-placeholders"><span>TBD</span></a>. </p>
 
 <div class='inference' id='specific-derivation-inference'>
-<p><span class='conditional'>IF</span> <span
+<p>In this inference,  <span class="name">_act</span>, <span class="name">_gen</span>, and <span class="name">_use</span> MUST NOT
+  be placeholders.
+  </p>
+  <p><span class='conditional'>IF</span> <span
   class="name">wasDerivedFrom(id; e2,e1,_act,_gen,_use,attrs)</span>, 
 <span class='conditional'>THEN</span> <span 
   class="name">wasDerivedFrom(id; e2,e1,-,-,-,attrs)</span>.
@@ -1765,6 +1782,7 @@
 linked  by a revision are also alternates.</p>
  
 <div class='inference' id='revision-is-alternate-inference'>
+  <p>In this inference, any of <span class="name">_a</span>, <span class="name">_g</span> or <span class="name">_u</span> MAY be placeholders.</p>
 <p>
   <span class='conditional'>IF</span> <span
   class="name">wasDerivedFrom(_id; e2,e1,_a,_g,_u,[prov:type='prov:Revision'])</span>, <span class='conditional'>THEN</span> <span
@@ -1843,7 +1861,7 @@
   <span class="name">_pl</span>,
 such that 
 <span class="name">wasGeneratedBy(_gen; e,a,_t,[])</span> and 
-<span class="name">wasAssociatedWith(_assoc; a,ag,_pl,[])</span>  hold.
+<span class="name">wasAssociatedWith(_assoc; a,ag,_pl,[])</span>.
 </p>
 </div>
 <hr />
@@ -1862,7 +1880,8 @@
   class="name">_id1</span>, <span class="name">_pl1</span>, <span
   class="name">_id2</span>, and  <span class="name">_pl2</span> such that <span
   class="name">wasAssociatedWith(_id1; a, ag1, _pl1, [])</span>
-  and <span class="name">wasAssociatedWith(_id2; a, ag2, _pl2, [])</span>.
+  and <span class="name">wasAssociatedWith(_id2; a, ag2, _pl2,
+  [])</span>.
 </p>
 </div>
 
@@ -1915,7 +1934,11 @@
     <span class="conditional">IF</span> <span class="name">wasAttributedTo(id; e,ag,attrs)</span> <span class="conditional">THEN</span> <span class="name">wasInfluencedBy(id; e, ag, attrs)</span>.
   </li>
   <li>
-    <span class="conditional">IF</span> <span class="name">wasAssociatedWith(id; a,ag,_pl,attrs)</span> <span class="conditional">THEN</span> <span class="name">wasInfluencedBy(id;  a, ag, attrs)</span>.
+    <span class="conditional">IF</span> <span
+  class="name">wasAssociatedWith(id; a,ag,_pl,attrs)</span> <span
+  class="conditional">THEN</span> <span
+  class="name">wasInfluencedBy(id;  a, ag, attrs)</span>.  Here,
+  <span class="name">_pl</span> MAY be a placeholder <span class="name">-</span>.
   </li>
   <li>
     <span class="conditional">IF</span> <span class="name">actedOnBehalfOf(id; ag2,ag1,_a,attrs)</span> <span class="conditional">THEN</span> <span class="name">wasInfluencedBy(id;  ag2, ag1, attrs)</span>.
@@ -2268,8 +2291,8 @@
   the <span class="name">wasAttributedTo(id; e,ag,attr)</span> statement.
   </li>
   <li>The identifier field <span class="name">id</span> is a <span class="conditional">KEY</span> for
-  the <span class="name">wasAssociatedWith(id; a,ag,pl,attrs)</span> statement.
-  </li>
+  the <span class="name">wasAssociatedWith(id; a,ag,pl,attrs)</span>
+ </li>
   <li>The identifier field <span class="name">id</span> is a <span class="conditional">KEY</span> for
   the <span class="name">wasAssociatedWith(id; a,ag,-,attrs)</span> statement.
   </li>
@@ -2802,6 +2825,8 @@
 
 
 <div class='constraint' id='derivation-usage-generation-ordering'>
+  <p>
+  In this constraint, <span class="name">_a</span>, <span class="name">gen2</span>, <span class="name">use1</span> MUST NOT be placeholders.</p>
 <p>
       <span class="conditional">IF</span>
 <span class="name">wasDerivedFrom(_d; _e2,_e1,_a,gen2,use1,_attrs)</span> 
@@ -2993,7 +3018,7 @@
 <div class='constraint' id='wasAssociatedWith-ordering'>
   <p>
 In the following inferences, <span class="name">_pl</span> MAY be
-  <span class="name">-</span>.
+ a placeholder <span class="name">-</span>.
   <ol>    <li>
     <span class="conditional">IF</span>
 <span class="name">wasAssociatedWith(_assoc; a,ag,_pl,_attrs)</span> 
@@ -3371,6 +3396,7 @@
 <span class="name">'entity' &isin; typeOf(e2)</span> AND
 <span class="name">'entity' &isin; typeOf(e1)</span> AND
 <span class="name">'activity' &isin; typeOf(a)</span>.
+   In this constraint, <span class="name">a</span>, <span class="name">g2</span>, and <span class="name">u1</span> MUST NOT be placeholders.
 
 <li>
 <span class='conditional'>IF</span>