added csp ref
authorLuc Moreau <l.moreau@ecs.soton.ac.uk>
Thu, 24 Nov 2011 22:39:23 +0000
changeset 1038 0ddabe4fa591
parent 1036 419fc7e6a498
child 1039 54138d12caa2
added csp ref
model/ProvenanceModel.html
--- a/model/ProvenanceModel.html	Thu Nov 24 21:56:02 2011 +0000
+++ b/model/ProvenanceModel.html	Thu Nov 24 22:39:23 2011 +0000
@@ -29,6 +29,11 @@
          "Communications of the ACM 21 (7): 558–565. 1978"+
          "URL: <a href=\"http://research.microsoft.com/users/lamport/pubs/time-clocks.pdf\">http://research.microsoft.com/users/lamport/pubs/time-clocks.pdf</a>" +
          "DOI: doi:10.1145/359545.359563.",
+        "CSP":
+         "Hoare, C. A. R. "+
+         "<a href=\"http://www.usingcsp.com/cspbook.pdf\"><cite>Communicating Sequential Processes</cite></a>."+
+         "Prentice-Hall. 1985"+
+         "URL: <a href=\"http://www.usingcsp.com/cspbook.pdf\">http://www.usingcsp.com/cspbook.pdf</a>",
         "Logic":
           "W. E. Johnson"+
           "<a href=\"http://www.ditext.com/johnson/intro-3.html\"><cite>Logic: Part III</cite></a>."+
@@ -354,12 +359,17 @@
 
 
 <p>Hence, in our conceptualization of the world, an instantaneous event, or <dfn id="dfn-event">event</dfn> for short, happens in the world and marks a change in the world, in its activities and in its entities.  
-The term "event" is commonly used in process algebra with a similar meaning. For instance, in CSP, events represent communications or interactions; they are assumed to be indivisible and instantaneous. [Better citation than Wikipedia to appear here].</p>
+The term "event" is commonly used in process algebra with a similar meaning. For instance, in CSP [[CSP]], events represent communications or interactions; they are assumed to be atomic and instantaneous.</p>
+
+
 
 
 <section>
 <h4>Types of Events</h4>
-Four kinds of events underpin the PROV-DM data model. They are defined as follows.
+
+<p>Four kinds of events underpin the PROV-DM data model. Those events are boundaries of intervals: duration interval of activities and characterization interval for entities. 
+ They are defined as follows.
+</p>
 
 <p>An <dfn id="dfn-usage-event">entity generation event</dfn> is the <a>event</a> that marks the  final instant of an entity's creation timespan, after which it becomes available for use.</p>
 
@@ -371,8 +381,6 @@
 
 </section>
 
-<div class="note">Say that events are boundaries of intervals, and these are the intervals of validity for activities and entities. Ref to the CSP book? (Hoare)</div>
-
 <section>
 <h4>Event Ordering</h4>
 
@@ -2519,28 +2527,30 @@
 <span class="name">)</span>
 </div>
 
-<p>A treaceability record can be inferred from existing relations, or can be asserted stating that such a dependency path exists without the asserter knowing its individual steps, as expressed by the following constraints.
+<p>A traceability record can be inferred from existing relations, or can be asserted stating that such a dependency path exists without the asserter knowing its individual steps, as expressed by the following constraints.
 
 <div class='constraint' id='traceability inference'>
-Given two identifiers <span class="name">e2</span> and  <span class="name">e1</span>, identifying entity records, the record <span class="name">tracedTo(e2,e1)</span> can be inferred
-<span class='conditional'>if</span> any of the following statements is satisfied:
-<ul> 
-<li> <span class="name">wasDerivedFrom(e2,e1,a,g2,u1)</span> holds, for some <span class="name">a</span>, <span class="name">g2</span>, <span class="name">u1</span>, or</li>
-<li> <span class="name">wasDerivedFrom(e2,e1)</span> holds, or</li>
-<li> <span class="name">wasBasedOn(e2,e1)</span> holds, or</li>
-<li> <span class="name">wasGeneratedBy(e2,a,gAttr) and wasAssociatedWith(a,e1)</span> hold, for some  <span class="name">a</span> and  <span class="name">gAttr</span>, or</li>
-<li> <span class="name">wasGeneratedBy(e2,a,gAttr)</span>, <span class="name">wasAssociatedWith(a,e)</span> and <span class="name">actedOnBehalfOf(e,e1)</span> hold, for some  <span class="name">a</span>, <span class="name">e</span>, and  <span class="name">gAttr</span>, or</li>
-<li> <span class="name">wasGeneratedBy(e2,a,gAttr) and wasStartedBy(a,e1,sAttr)</span> hold, for some  <span class="name">a</span>, <span class="name">e</span>, and  <span class="name">gAttr</span>, and  <span class="name">sAttr</span>, or</li>
-<li> <span class="name">tracedTo(e2,e)</span> and  <span class="name">tracedTo(e,e1)</span> hold for some  <span class="name">e</span>.</li>
-</ul>
+Given two identifiers <span class="name">e2</span> and  <span class="name">e1</span> identifying entity records, 
+the following statements hold:
+<span class='conditional'>then</span>  <span class="name">tracedTo(e2,e1)</span> also holds.
+
+<ol> 
+<li><span class='conditional'>If</span>  <span class="name">wasDerivedFrom(e2,e1,a,g2,u1)</span> holds, for some <span class="name">a</span>, <span class="name">g2</span>, <span class="name">u1</span>, <span class='conditional'>then</span>  <span class="name">tracedTo(e2,e1)</span> also holds.</li>
+<li><span class='conditional'>If</span>  <span class="name">wasDerivedFrom(e2,e1)</span> holds, <span class='conditional'>then</span>  <span class="name">tracedTo(e2,e1)</span> also holds.</li>
+<li><span class='conditional'>If</span>  <span class="name">wasBasedOn(e2,e1)</span> holds, <span class='conditional'>then</span>  <span class="name">tracedTo(e2,e1)</span> also holds.</li>
+<li><span class='conditional'>If</span>  <span class="name">wasGeneratedBy(e2,a,gAttr) and wasAssociatedWith(a,e1)</span> hold, for some  <span class="name">a</span> and  <span class="name">gAttr</span>, <span class='conditional'>then</span>  <span class="name">tracedTo(e2,e1)</span> also holds.</li>
+<li><span class='conditional'>If</span>  <span class="name">wasGeneratedBy(e2,a,gAttr)</span>, <span class="name">wasAssociatedWith(a,e)</span> and <span class="name">actedOnBehalfOf(e,e1)</span> hold, for some  <span class="name">a</span>, <span class="name">e</span>, and  <span class="name">gAttr</span>, <span class='conditional'>then</span>  <span class="name">tracedTo(e2,e1)</span> also holds.</li>
+<li><span class='conditional'>If</span>  <span class="name">wasGeneratedBy(e2,a,gAttr) and wasStartedBy(a,e1,sAttr)</span> hold, for some  <span class="name">a</span>, <span class="name">e</span>, and  <span class="name">gAttr</span>, and  <span class="name">sAttr</span>, <span class='conditional'>then</span>  <span class="name">tracedTo(e2,e1)</span> also holds.</li>
+<li><span class='conditional'>If</span>  <span class="name">tracedTo(e2,e)</span> and  <span class="name">tracedTo(e,e1)</span> hold for some  <span class="name">e</span>, <span class='conditional'>then</span>  <span class="name">tracedTo(e2,e1)</span> also holds.</li>
+</ol>
 </div>
 
 <div class='constraint' id='traceability assertion'>
-<span class='conditional'>If</span> the record <span class="name">tracedTo(e2,e1)</span> holds
-for two identifiers <span class="name">e2</span> and  <span class="name">e1</span> identifying entity records, 
+<span class='conditional'>If</span> the record <span class="name">tracedTo(r2,r1)</span> holds
+for two identifiers <span class="name">r2</span> and  <span class="name">r1</span> identifying entity records, 
  <span class='conditional'>then</span> there exist
-<span class="name">e<sup>0</sup></span>, <span class="name">e<sup>1</sup></span>, ..., <span class="name">e<sup>n</sup></span> for <span class="name">n&ge;1</span>, with <span class="name">e<sup>0</sup></span>=<span class="name">e2</span>  and <span class="name">e<sup>n</sup></span>=<span class="name">e1</span>, and
-for each <span class="name">e<sup>i</sup></span>, <span class="name">e<sup>i+1</sup></span>, with <span class="name">0&le;i&le;n-1</span>, one the following statement holds:
+<span class="name">e<sup>0</sup></span>, <span class="name">e<sup>1</sup></span>, ..., <span class="name">e<sup>n</sup></span> for <span class="name">n&ge;1</span>, with <span class="name">e<sup>0</sup></span>=<span class="name">r2</span>  and <span class="name">e<sup>n</sup></span>=<span class="name">r1</span>, and
+for any i such that <span class="name">0&le;i&le;n-1</span>, at least of the following statements holds:
 <ul> 
 <li> <span class="name">wasDerivedFrom(e<sup>i</sup>,e<sup>i+1</sup>,a,g2,u1)</span> holds, for some <span class="name">a</span>, <span class="name">g2</span>, <span class="name">u1</span>, or</li>
 <li> <span class="name">wasDerivedFrom(e<sup>i</sup>,e<sup>i+1</sup>)</span> holds, or</li>
@@ -3039,6 +3049,7 @@
 <section class="appendix"> 
       <h2>Changes Since Previous Version</h2> 
 <ul>
+<li>11/24/11: Revisited Derivation record, with a single name for derivation. </li>
 <li>11/23/11: Defined attribute, identifier, and namespace declaration. </li>
 <li>11/23/11: Consolidation of event in section 2.1.2 and linking to definitions from the rest of document. </li>
 <li>11/21/11: Added wasStartedBy between activities.</li>