update to derivation following GK's comments
authorLuc Moreau <l.moreau@ecs.soton.ac.uk>
Wed, 07 Mar 2012 12:03:28 +0000
changeset 1795 b4f3e101503b
parent 1794 f27bef402aca
child 1796 22edc54bf1be
update to derivation following GK's comments
model/working-copy/wd5-prov-dm-derivation.html
--- a/model/working-copy/wd5-prov-dm-derivation.html	Tue Mar 06 21:49:07 2012 -0500
+++ b/model/working-copy/wd5-prov-dm-derivation.html	Wed Mar 07 12:03:28 2012 +0000
@@ -258,10 +258,10 @@
 
 <p>According to <a href="#conceptualization">Section Overview</a>, for an entity to be transformed from, created from, or resulting from an update to another, there must be some
 underpinning activities performing the necessary actions resulting in such a derivation.  
-A derivation can be described at various levels of precision. In its simplest form, derivation relates two entities. Optionally, attributes can be added to describe modalities of derivation. <!-- Again, optionally, time information can be provided, as a convenient way to express the time at which the entity was generated.  --> If the derivation is the result of a single known activity, then this activity can also be optionally expressed. And to provide a completely accurate description of derivation, the generation and usage of the generated and used entities, respectively, can be provided.  </p>
+A derivation can be described at various levels of precision. In its simplest form, derivation relates two entities. Optionally, attributes can be added to describe modalities of derivation.  If the derivation is the result of a single known activity, then this activity can also be optionally expressed. And to provide a completely accurate description of derivation, the generation and usage of the generated and used entities, respectively, can be provided. The reason for optional information such as activity, generation, and usage to be linked to derivations is to aid analysis of provenance and to facilitate provenance-based reproducibility. </p>
 
 
-<p><div class="attributes" id="attributes-derivation">A <dfn>derivation</dfn><span class="withAsn">, written <span class="name">wasDerivedFrom(id, e2, e1, a, g2, u1, t, attrs)</span> in PROV-ASN,</span> contains:</p>
+<p><div class="attributes" id="attributes-derivation">A <dfn>derivation</dfn><span class="withAsn">, written <span class="name">wasDerivedFrom(id, e2, e1, a, g2, u1, attrs)</span> in PROV-ASN,</span> contains:</p>
 <ul>
 <li><em>id</em>:  an OPTIONAL identifier  for a derivation;</li> 
 <li><em>generatedEntity</em>: the identifier of the entity generated by the derivation;</li>
@@ -269,7 +269,6 @@
 <li><em>activity</em>: an OPTIONAL identifier for the activity using and generating the above entities;</li>
 <li><em>generation</em>: an OPTIONAL identifier for the generation involving the generated entity and activity;</li> 
 <li><em>usage</em>: an OPTIONAL identifier for the usage involving the used entity and activity;</li> 
-<!-- <li><em>time</em>: an OPTIONAL "generation time", the time at which the entity was created;</li>-->
 <li><em>attributes</em>: an OPTIONAL set of attribute-value pairs that describe the modalities of this derivation.</li>
 </ul>
 </div>
@@ -284,24 +283,20 @@
 <div class="anexample">
 <p>The following descriptions state the existence of derivations.</p>
 <pre class="codeexample">
+wasDerivedFrom(e2,e1)
+wasDerivedFrom(e2,e1,[prov:type="physical transform"])
 wasDerivedFrom(e2,e1,a,g2,u1)
   wasGeneratedBy(g2,e2,a)
   used(u1,a,e1)
-wasDerivedFrom(e2,e1)
-wasDerivedFrom(e2,e1,[prov:type="physical transform"])
-<!-- wasDerivedFrom(e2,e1,2012-01-18T16:00:00) -->
 </pre>
 <p>
-The first description expresses that activity  <span class="name">a</span>, 
-using the entity <span class="name">e1</span> according to usage <span class="name">u1</span>
+The first and second lines are about derivations between  <span class="name">e2</span> and  <span class="name">e1</span>, but no information is provided as to the identity of the activity (and usage and generation) underpinning the derivation. In the second line, a type attribute is also provided.</p>
+<p>
+The third description expresses that activity  <span class="name">a</span>, 
+using the entity <span class="name">e1</span> according to usage <span class="name">u1</span>,
  derived the
 entity <span class="name">e2</span> and generated it according to generation
- <span class="name">g2</span>. It is followed by descriptions for generation <span class="name">g2</span> and usage <span class="name">u1</span>.</p>
-<p>
-The fourth and fifth lines are about derivations between  <span class="name">e2</span> and  <span class="name">e1</span>, but no information is provided as to the identity of activity (and usage and generation) underpinning the derivation. In the fifth line, a type attribute is provided.</p>
-
-<!--<p> The fourth derivation extends the second with the derivation time of <span class="name">e2</span>.-->
-</p>
+ <span class="name">g2</span>. It is followed by descriptions for generation <span class="name">g2</span> and usage <span class="name">u1</span>. With such a comprehensive description of derivation, a program that analyzes provenance can identify the activity underpinning the derivation, it can identify how the original entity <span class="name">e1</span> was used by  the activity (e.g. for instance, which argument it was passed as, if the activity is the result of a function invocation), and which output the derived entity <span class="name">e2</span> was (say, for a function returning multiple results).</p>
 </div>