--- a/model/ProvenanceModel.html Tue Sep 20 13:34:01 2011 +0100
+++ b/model/ProvenanceModel.html Wed Sep 21 08:50:54 2011 +0100
@@ -901,7 +901,7 @@
wasGeneratedBy(e2,pe1,qualifier(port="p1", order=2),t2)
</pre>
state the existence of two events in the world (with respective times <span class="name">t1</span> and <span class="name">t2</span>), at which new characterized things, represented by entity expressions identified by <span class="name">e1</span> and <span class="name">e2</span>, are created by an activity, itself represented by a process execution expression identified by <span class="name">pe1</span>.
-The first one is available as the first value on port p1, whereas the other is the second value on port p1. The semantics of port and order in these expressions are application specific.
+The first one is available as the first value on port p1, whereas the other is the second value on port p1. The semantics of <span class="name">port</span> and <span class="name">order</span> in these expressions are application specific.
</p>
@@ -987,12 +987,11 @@
used(pe1,e1,qualifier(parameter="p1"),t1)
used(pe1,e2,qualifier(parameter="p2"),t2)
</pre>
-state that the activity, represented by the process execution expression identified by <span class="name">pe1</span>, consumed two characterized things, represented by entity expressions identified by <span class="name">e1</span> and <span class="name">e2</span>, at times <span class="name">t1</span> and <span class="name">t2</span>, respectively; the first one being found as the value of parameter p1, whereas the second is being found as value of parameter p2. The semantics of parameter in these expressions is application specific.
-</p>
-
-
-<p>A reference to a given entity expression MAY appear in multiple use expressions that refer
-to a given process execution expression. If one wants to annotate a use edge expression or if one wants express a <span class='nonterminal'>pe-linked-derivationExpression</span> referring to this entity and process execution expressions, the qualifier occuring in this use assertion MUST be unique among the qualifiers qualifiying use expressions for this process execution.
+state that the activity, represented by the process execution expression identified by <span class="name">pe1</span>, consumed two characterized things, represented by entity expressions identified by <span class="name">e1</span> and <span class="name">e2</span>, at times <span class="name">t1</span> and <span class="name">t2</span>, respectively; the first one was found as the value of parameter <span class="name">p1</span>, whereas the second was found as value of parameter <span class="name">p2</span>. The semantics of <span class="name">parameter</span> in these expressions is application specific.</p>
+
+
+<p>A reference to a given entity expression MAY appear in multiple use expressions that share
+ a given process execution expression identifier. If one wants to annotate a use edge expression or if one wants to express a <a href="#pe-linked-derivationExpression"><span class='nonterminal'>pe-linked-derivationExpression</span></a> referring to this entity and process execution expressions, the qualifier occuring in this use assertion MUST be unique among the qualifiers qualifiying use expressions for this process execution expression.
</p>
<!-- Luc, should we write a constraint for this? It's not clear the
@@ -1001,18 +1000,18 @@
<div class='constraint' id='use-attributes'><a name="PIL:0005">
-Given a process execution expression identified by <span class="name">pe</span>, entity expression identified by <span class="name">e</span>, qualifier <span class="name">q</span>, and optional time <span class="name">t</span>, <span class='conditional'>if</span>
+Given a process execution expression identified by <span class="name">pe</span>, an entity expression identified by <span class="name">e</span>, a qualifier <span class="name">q</span>, and optional time <span class="name">t</span>, <span class='conditional'>if</span>
assertion <span class="name">used(pe,e,q)</span> or <span class="name">used(pe,e,q,t)</span> holds,
<span class='conditional'>then</span> the existence of an attribute-value pair in the entity expression identified by <span class="name">e</span> is a
-pre-condition for the activity represented by the process execution identified by <span class="name">pe</span> to terminate.</a>
+pre-condition for the termination of the activity represented by the process execution expression identified by <span class="name">pe</span></a>
[<a href="../ontology/ProvenanceFormalModel.html#PIL:0005">PIL:0005</a>]</div>
-<div class='constraint' id='use-pe-ordering'><a name="PIL:0006">Given a process execution expression identified by <span class="name">pe</span>, entity expression identified by <span class="name">e</span>, qualifier <span class="name">q</span>, and optional time <span class="name">t</span>, <span class='conditional'>if</span>
+<div class='constraint' id='use-pe-ordering'><a name="PIL:0006">Given a process execution expression identified by <span class="name">pe</span>, an entity expression identified by <span class="name">e</span>, a qualifier <span class="name">q</span>, and optional time <span class="name">t</span>, <span class='conditional'>if</span>
assertion <span class="name">used(pe,e,q)</span> or <span class="name">used(pe,e,q,t)</span> holds, <span class='conditional'>then</span>
the use of the thing represented by entity expression identified by <span class="name">e</span> precedes the end
-of the process execution expression identified by <span class="name">pe</span> and follows its beginning. Furthermore, the generation of the thing denoted by entity expression identified by <span class="name">e</span> always precedes
+time contained in the process execution expression identified by <span class="name">pe</span> and follows its beginning. Furthermore, the generation of the thing denoted by entity expression identified by <span class="name">e</span> always precedes
its use.</a>
[<a href="../ontology/ProvenanceFormalModel.html#PIL:0006">PIL:0006</a>] </div>
@@ -1075,7 +1074,7 @@
<p>The three kinds of derivation expressions are successively introduced.</p>
-<section>
+<section id="pe-linked-derivationExpression">
<h4>Process Execution Linked Derivation Assertion</h4>
<p>A process execution linked derivation expression, which, by definition of a derivation expression, is a representation that some characterized thing is transformed from, created from, or affected by another characterized thing, also entails the existence of a process execution expression that represents an activity that transforms, creates or affects this characterized thing.</pe>
@@ -1265,8 +1264,8 @@
An instance of a transitive derivation expression, written <span class="name">dependedOn(e2, e1)</span> in PROV-ASN:
<ul>
-<li> contains an identifier <span class="name">e2</span>, denoting an entity expresson, which represents the characterized thing that is the result of the derivation;
-<li> contains an identifier <span class="name">e1</span>, denoting an entity expresson, which represents the characterized thing that the derivation relies upon.
+<li> contains an identifier <span class="name">e2</span>, denoting an entity expression, which represents the characterized thing that is the result of the derivation;
+<li> contains an identifier <span class="name">e1</span>, denoting an entity expression, which represents the characterized thing that the derivation relies upon.
</ul>
<p>The expression <span class="name">dependedOn</span> can only be inferred; in other word, it cannot be asserted. It is
transitive by definition and relies on the previously defined derivation assertions for its
@@ -1305,7 +1304,7 @@
<section id="expression-Control">
<h3>Control</h3>
-<p> A <dfn id="dfn-Control">control expression</dfn> is a representation of the involvement of characterized thing (represented as an agent expresson or an entity expression) in an activity, which is represented by a process execution expressoin; a control qualifier qualifies this involvement.</p>
+<p> A <dfn id="dfn-Control">control expression</dfn> is a representation of the involvement of characterized thing (represented as an agent expression or an entity expression) in an activity, which is represented by a process execution expression; a control qualifier qualifies this involvement.</p>
<p>In PROV-ASN, a control expression's text matches the <span class="nonterminal">controlExpression</span> production of the grammar defined in this specification document.
</p>
@@ -1325,7 +1324,7 @@
<p>An instance of a control expression, noted <span class="name">wasControlledBy(pe,ag,q)</span> in PROV-ASN :
<ul>
<li> contains an identifier <span class="name">pe</span> denoting a process execution expression, representing the controlled activity;
-<li> refers to an agent expression or an entity expression <span class="name">ag</span>, representing the controlling characterized thing;
+<li> refers to an agent expression or an entity expression identified by <span class="name">ag</span>, representing the controlling characterized thing;
<li> contains a qualifier <span class="name">q</span>, qualifying the involvement of the thing in the activity.
</ul>
</p>
@@ -1335,7 +1334,7 @@
<pre class="example">
wasControlledBy(pe3,a4,[role=author])
</pre>
-states that the activity, represented by the process execution expression denoted by <span class="name">pe3</span> saw the involvement of a characterized thing, represented by entity expression denoted by <span class="name">a4</span> in the capacity of author.
+states that the activity, represented by the process execution expression denoted by <span class="name">pe3</span> saw the involvement of a characterized thing, represented by entity expression denoted by <span class="name">a4</span> in the capacity of author. This specification defines the qualifier name <span class="name">role</span> (see Section <a href="#expression-qualifier">Qualifier</a>) to denote the function of a characterized thing with respect to an activity.
</p>
</section>
@@ -1355,16 +1354,16 @@
<p>This intuition is made more precise by considering the entities that form the representations of characterised things at a certain point in time.
An entity expression represents, by means of attribute-value pairs, a thing and its situation in the world, which remain constant over a characterization interval.
-As soon as the thing's situation changes, this marks the end of the characterization interval for the entity expression representing it. The thing's novel situation is represented by an attribute with a new value, or an entirely different set of attribute-value pairs, embodied in another entity expression, with a new characterization interval. Thus, if we overlap the timelines (or, more generally, the sequences of value-changing events) for the two characterised things, we can hope two establish correspondences amongst the entity expressions that represent them at various points along that events line. The figure below illustrates this intuition.</p>
+As soon as the thing's situation changes, this marks the end of the characterization interval for the entity expression representing it. The thing's novel situation is represented by an attribute with a new value, or an entirely different set of attribute-value pairs, embodied in another entity expression, with a new characterization interval. Thus, if we overlap the timelines (or, more generally, the sequences of value-changing events) for the two characterised things, we can hope to establish correspondences amongst the entity expressions that represent them at various points along that events line. The figure below illustrates this intuition.</p>
<img src="complement-of.png"/>
<p>
-Relation <em>complement-of</em> between two entity expressions is intended to capture these correspondences, as follows. Suppose entity expressions A and B share a set P of properties, and each of them has other properties in addition to P. If the values assigned to each property in P are <em>compatible</em> between A and B, then we say that <em>A is-complement-of B</em>, and <em>B is-complement-of A</em>, in a symmetrical fashion. In the particular case where the set P of properties of B is a struct superset of A's properties, then we say that <em>B is-complement-of A</em>, but in this case the opposite does not hold. In this case, the relation is not symmetric. (as a special case, A and B may not share any attributes at all, and yet the asserters may still stipulate that they are representing the same thing "Royal Society". The symmetric relation may hold trivially in this case).</p>
-
-<p>The term <em>compatible</em> used above means that a mapping can be established amongst the values of attributes in P and found in the two entities. This is generalizes to the case where attribute sets P1 and P2 of A, and B, respectively, are not identical but they can be mapped to one another. The simplest case is the identity mapping, in which A and B share attribute set P, and furthermore the values assigned to attributes in P match exactly.</p>
-
-<p>It is important to note that the relation holds only as long as the entities involved are valid. As soon as one attribute changes value in one of them, new correspondences need to be found amongst the new entities. Thus, the relation has a validity span that can be expressed in terms of the event lines of the thing.</p>
+Relation <em>complement-of</em> between two entity expressions is intended to capture these correspondences, as follows. Suppose entity expressions A and B share a set P of properties, and each of them has other properties in addition to P. If the values assigned to each property in P are <em>compatible</em> between A and B, then we say that <em>A is-complement-of B</em>, and <em>B is-complement-of A</em>, in a symmetrical fashion. In the particular case where the set P of properties of B is a strict superset of A's properties, then we say that <em>B is-complement-of A</em>, but in this case the opposite does not hold. In this case, the relation is not symmetric. (as a special case, A and B may not share any attributes at all, and yet the asserters may still stipulate that they are representing the same thing "Royal Society". The symmetric relation may hold trivially in this case).</p>
+
+<p>The term <em>compatible</em> used above means that a mapping can be established amongst the values of attributes in P and found in the two entity expession. This generalizes to the case where attribute sets P1 and P2 of A, and B, respectively, are not identical but they can be mapped to one another. The simplest case is the identity mapping, in which A and B share attribute set P, and furthermore the values assigned to attributes in P match exactly.</p>
+
+<p>It is important to note that the relation holds only for the characterization intervals of the entity expessions involved As soon as one attribute changes value in one of them, new correspondences need to be found amongst the new entities. Thus, the relation has a validity span that can be expressed in terms of the event lines of the thing.</p>
<!--
The "IVP of" relationship is designed to represent pairs of entities that correspond to each other. By their own nature, an entity remains valid only as long as all of its attributes do not change their value. It follows that the correspondence "B IVP of A" is only valid within the time interval during which such invariance property holds for both A and B. When any of the property values change in either A or B, those entities are replaced by new ones, and a new correspondence may be established. Thus, "IVP of" is defined relative to the intersection of the temporal intervals for which A and B are valid.
@@ -1372,7 +1371,7 @@
-<p>In PROV-ASN, a complementarity expression's text matches the <span class="nonterminal">complementarityExpressoin</span> production of the grammar defined in this specification document.</p>
+<p>In PROV-ASN, a complementarity expression's text matches the <span class="nonterminal">complementarityExpression</span> production of the grammar defined in this specification document.</p>
<div class='grammar'>
<span class="nonterminal">complementarityExpression</span> :=
@@ -1386,24 +1385,27 @@
-<p>An instance of a complementarity expression, written <span class="name">wasComplementOf(e2,e1)</span>, where <span class="name">e1</span> and <span class="name">e2</span> are two identifiers denoting entity expressions.</p>
+<p>An instance of a complementarity expression is written <span class="name">wasComplementOf(e2,e1)</span>, where <span class="name">e1</span> and <span class="name">e2</span> are two identifiers denoting entity expressions.</p>
<p>
<pre class="example">
-entity(rs,[created: "1870"])
-
-entity(rs_l1,[location: "loc2"])
-entity(rs_l2,[location: "The Mall"])
-
-entity(rs_m1,[membership: "250", year: "1900"])
-entity(rs_m2,[membership: "300", year: "1945"])
-entity(rs_m3,[membership: "270", year: "2010"])
+entity(rs,[created="1870"])
+
+entity(rs_l1,[location="loc2"])
+entity(rs_l2,[location="The Mall"])
+
+entity(rs_m1,[membership="250", year="1900"])
+entity(rs_m2,[membership="300", year="1945"])
+entity(rs_m3,[membership="270", year="2010"])
wasComplementOf(rs_m3, rs_l2)
wasComplementOf(rs_m2, rs_l1)
wasComplementOf(rs_m2, rs_l2)
wasComplementOf(rs_m1, rs_l1)
+wasComplementOf(rs_m3, rs)
+wasComplementOf(rs_m2, rs)
+wasComplementOf(rs_m1, rs)
wasComplementOf(rs_l1, rs)
wasComplementOf(rs_l2, rs)
</pre>
@@ -1412,19 +1414,22 @@
<div class='constraint' id='wasComplementOf-necessary-cond'>
<a name="PIL:0013">An assertion "wasComplementOf(B,A)" holds over the temporal intersection of A and B, <span class='conditional'>only if</span>:
<ol>
-<li> if a mapping can be established from an attribute X of entity expression denoted by B to an attribute Y of entity expression denoted by A, then the values of A and B must be consistent with that mapping</em> </li>
- <li>B has some attribute that A does not have.
+<li> if a mapping can be established from an attribute X of entity expression identified by B to an attribute Y of entity expression identified by A, then the values of A and B must be consistent with that mapping</em>;</li>
+ <li>entity expression identified by B has some attribute that entity expression identified by A does not have.
</li></ol></a>
[<a href="../ontology/ProvenanceFormalModel.html#PIL:0013">PIL:0013</a>]
</div>
-<div class='issue'>Mutual ivpOf each other should be agreed. This is <a href="http://www.w3.org/2011/prov/track/issues/29">ISSUE-29</a></div>
-
-<div class='issue'>Do we need a sameAsEntity relation. This is <a href="http://www.w3.org/2011/prov/track/issues/35">ISSUE-35</a></div>
-
-<div class='issue'>Is ivpOf transitive? This is <a href="http://www.w3.org/2011/prov/track/issues/45">ISSUE-45</a></div>
-
-<div class='issue'> Comments on ivpof in <a href="http://www.w3.org/2011/prov/track/issues/57">ISSUE-57</a>.</div>
+<p>The complementariy relation is not transitive. Let us consider identifiers <span class="name">e1</span>, <span class="name">e2</span>, and <span class="name">e3</span> identifying three entity expressions such that
+ <span class="name">wasComplementOf(e3,e2)</span> and <span class="name">wasComplementOf(e2,e1)</span> hold. The expression <span class="name">wasComplementOf(e3,e1)</span> may not hold because the characterization intervals of the denoted entity expressions may not overlap.</p>
+
+<div class='pending'>Mutual ivpOf each other should be agreed. This is <a href="http://www.w3.org/2011/prov/track/issues/29">ISSUE-29</a></div>
+
+<div class='pending'>Do we need a sameAsEntity relation. This is <a href="http://www.w3.org/2011/prov/track/issues/35">ISSUE-35</a></div>
+
+<div class='pending'>Is ivpOf transitive? This is <a href="http://www.w3.org/2011/prov/track/issues/45">ISSUE-45</a></div>
+
+<div class='pending'> Comments on ivpof in <a href="http://www.w3.org/2011/prov/track/issues/57">ISSUE-57</a>.</div>
</section>
@@ -1436,9 +1441,9 @@
<p>PROV-DM allows two forms of temporal relationships between activities to be expressed.
-An <dfn id="InformationFlowOrdering">information flow ordering expression</dfn> is a representation that a characterized thing was generated by an activity, represented by a process execution expresion, before it was used by another activity, also represented by a process execution expression.
+An <dfn id="InformationFlowOrdering">information flow ordering expression</dfn> is a representation that a characterized thing was generated by an activity, before it was used by another activity.
A <dfn id="ControlOrdering">control ordering expression</dfn> is a representation that the end of
-an activity, represented by a process execution, precedes the start of another activity, represented by process execution.
+an activity precedes the start of another activity.
</p>
<p>In PROV-ASN, a process execution ordering expression's text matches the <span class="nonterminal">peOrderingExpression</span> production of the grammar defined in this specification document.
@@ -1477,12 +1482,12 @@
<li> refers to a process execution expression identified by <span class="name">pe2</span>;
<li> refers to a process execution expression identified by <span class="name">pe1</span>
</ul>
-and states information flow ordering between the activities represented by these expression, specified as follows.
-
-<div class='constraint' id='wasInformedBy'>Given two process execution expressions denoted by <span class="name">pe1</span> and <span class="name">pe2</span>,
+and states information flow ordering between the activities represented by these expressions, specified as follows.
+
+<div class='constraint' id='wasInformedBy'>Given two process execution expressions identified by <span class="name">pe1</span> and <span class="name">pe2</span>,
the expression <span class="name">wasInformedBy(pe2,pe1)</span>
holds, <span class='conditional'>if and only if</span>
- there is an entity expression denoted by <span class="name">e</span> and qualifiers <span class="name">q1</span> and <span class="name">q2</span>,
+ there is an entity expression identified by <span class="name">e</span> and qualifiers <span class="name">q1</span> and <span class="name">q2</span>,
such that <span class="name">wasGeneratedBy(e,pe1,q1)</span> and <span class="name">used(pe2,e,q2)</span> hold.
</div>
@@ -1492,21 +1497,21 @@
An instance of a control ordering expression, written as
<span class="name">wasScheduledAfter(pe2,pe1)</span> in PROV-ASN:
<ul>
-<li> refers to a process execution expression denoted by <span class="name">pe2</span>;
-<li> refers to a process execution expression denoted by <span class="name">pe1</span>,
+<li> refers to a process execution expression identified by <span class="name">pe2</span>;
+<li> refers to a process execution expression identified by <span class="name">pe1</span>,
</ul>
and states control ordering between <span class="name">pe2</span> and <span class="name">pe1</span>, specified as follows.
-<div class='constraint' id='wasScheduledAfter'>Given two process execution expressions denoted by <span class="name">pe1</span> and <span class="name">pe2</span>,
+<div class='constraint' id='wasScheduledAfter'>Given two process execution expressions identified by <span class="name">pe1</span> and <span class="name">pe2</span>,
the expression <span class="name">wasScheduledAfter(pe2,pe1)</span>
holds, <span class='conditional'>if and only if</span>
- there are two entity expressions denoted by <span class="name">e1</span> and <span class="name">e2</span>,
+ there are two entity expressions identified by <span class="name">e1</span> and <span class="name">e2</span>,
such that <span class="name">wasControlledBy(pe1,e1,qualifier(role="end"))</span> and <span class="name">wasControlledBy(pe2,e2,qualifier(role="start"))</span> and <span class="name">wasDerivedFrom(e2,e1)</span>.
</div>
-This definition assumes that the activities represented by process execution expressions identified by <span class="name">pe1</span> and <span class="name">pe2</span> are controlled by some agents, represented by expressions identified by <span class="name">e1</span> and <span class="name">e2</span>, where the first agent terminates (control qualifier <span class="name">qualifier(role="end")</span>) the first activity, and the second initiates (control qualifier <span class="name">qualifier(role="start")</span>) the second. The second agent being "derived" from the first enforces temporal ordering.
+This definition assumes that the activities represented by process execution expressions identified by <span class="name">pe1</span> and <span class="name">pe2</span> are controlled by some agents (with identifiers <span class="name">e1</span> and <span class="name">e2</span>), where the first agent terminates (control qualifier <span class="name">qualifier(role="end")</span>) the first activity, and the second agents initiates (control qualifier <span class="name">qualifier(role="start")</span>) the second activity. The second agent being "derived" from the first enforces temporal ordering.
<p>
-In the following assertions, we find two process execution expressions, identified by <span class="name">pe1</span> and <span class="name">pe2</span>, denoting two activities, which took place on two separate hosts.
+In the following assertions, we find two process execution expressions, identified by <span class="name">pe1</span> and <span class="name">pe2</span>, representing two activities, which took place on two separate hosts.
<pre class="example">
processExecution(pe1,long-workflow,t1,t2,[host="server1.example.com"])
processExecution(pe2,long-workflow,t3,t4,[host="server2.example.com"])
@@ -1553,23 +1558,23 @@
<p>An instance of a revision expression, noted <span class="name">wasRevisionOf(e2,e1,ag)</span> in PROV-ASN:
<ul>
-<li> contains an identifier <span class="name">e2</span> denoting an entity that represents a newer version of a thing;
-<li> contains an identifier <span class="name">e1</span> denoting an entity that represents an older version of a thing;
-<li> MAY refer to a responsible agent denoted by identifier <span class="name">ag</span>.
+<li> contains an identifier <span class="name">e2</span> identifying an entity that represents a newer version of a thing;
+<li> contains an identifier <span class="name">e1</span> identifying an entity that represents an older version of a thing;
+<li> MAY refer to a responsible agent with identifier <span class="name">ag</span>.
</ul>
</p>
-<p>A revision expression can only be asserted, since it needs to include a reference to an agent who represents someone in the real world who bears responsibility for declaring a variant of a thing. However, it needs to satisfy the following constraint, linking the two entity expressions by a derivation derivation, and seing them as a complement of a third entity expression.</p>
+<p>A revision expression can only be asserted, since it needs to include a reference to an agent who represents someone in the real world who bears responsibility for declaring a variant of a thing. However, it needs to satisfy the following constraint, linking the two entity expressions by a derivation, and stating them to be a complement of a third entity expression.</p>
<div class='constraint' id='wasRevision'>
-Given two identifers <span class="name">old</span> and <span class="name">new</span> denoting two entities, and an identifier <span class="name">ag</span> denoting an agent,
+Given two identifiers <span class="name">old</span> and <span class="name">new</span> identifying two entities, and an identifier <span class="name">ag</span> identifying an agent,
<span class='conditional'>if</span> an expression <span class="name">wasRevisionOf(new,old,ag)</span> is asserted, <span class='conditional'>then</span>
-there exists an entity <span class="name">e</span> and attribute-values <span class="name">av</span>, such that the following expressions hold:
+there exists an entity expression identifier <span class="name">e</span> and attribute-values <span class="name">av</span>, such that the following expressions hold:
<ul>
<li> <span class="name">wasEventuallyDerivedFrom(new,old)</span>;
<li> <span class="name">entity(e,av)</span>;
-<li> <span class="name">wasComplement(new,e)</span>;
-<li> <span class="name">wasComplement(old,e)</span>.
+<li> <span class="name">wasComplementOf(new,e)</span>;
+<li> <span class="name">wasComplementOf(old,e)</span>.
</ul>
</div>
@@ -1618,8 +1623,8 @@
<p>An instance of a participation expression,
noted <span class="name">hadParticipant(pe,e)</span> in PROV-ASN:
<ul>
-<li> refers to a process execution expression denoted by identifier <span class="name">pe</span> and representing an activity;
-<li> contains an identifier <span class="name">e</span> denoting an entity expression, which is
+<li> contains to identifier <span class="name">pe</span> identifying a process execution expression representing an activity;
+<li> contains an identifier <span class="name">e</span> identifying an entity expression, which is
a representation of a characterized thing involved in this activity.
</ul>
@@ -1627,7 +1632,7 @@
<div class='constraint' id='participation'>
<a name="PIL:0014">
-Given two identifiers <span class="name">pe</span> and <span class="name">e</span>, respectively denoting a process execution expression and an entity expression, the expression <span class="name">hadParticipant(pe,e)</span> holds <span class='conditional'>if and only if</span>:
+Given two identifiers <span class="name">pe</span> and <span class="name">e</span>, respectively identifying a process execution expression and an entity expression, the expression <span class="name">hadParticipant(pe,e)</span> holds <span class='conditional'>if and only if</span>:
<ul>
<li> <span class="name">used(pe,e)</span> holds, or</li>
<li> <span class="name">wasControlledBy(pe,e)</span> holds, or</li>
@@ -1640,8 +1645,6 @@
-<div class='note'>Is there a need for a similar concept that includes generated entities?</div>
-
<div class='pending'>Suggested definition for participation. This is <a href="http://www.w3.org/2011/prov/track/issues/49">ISSUE-49</a>.</div>
</section>
@@ -1673,6 +1676,8 @@
<span class="nonterminal">identifier</span> <span class="nonterminal">identifier</span> <span class="nonterminal">qualifier</span>
</div>
+<p>The interpretation of annotations is application-specific. See Section <a href="#expression-annotation">Annotation</a> for a discussion of the difference between attributes and annotations</a>.
+
<p>
The following expressions
<pre class="example">
@@ -1685,6 +1690,8 @@
assert the existence of two documents in the world (attribute-value pair: <span class="name">type="document"</span>) represented by entity expressions identified by <span class="name">e1</span> and <span class="name">e2</span>, and annotate these expressions with an annotation indicating that the icon (an application specific way of rendering provenance) is <span class="name">doc.png</span>.
</p>
+
+
</section>
</section>
@@ -1723,16 +1730,16 @@
<span class="name">)</span>
</div>
-<p>An instance of an account expression, noted <span class="name">account(id, http://x.com/user1, exprs)</span> in PROV-ASN:
+<p>An instance of an account expression, noted <span class="name">account(id, uri, exprs)</span> in PROV-ASN:
<ul>
<li> contains an identifier <span class="name">id</span> to identify this account;</li>
-<li> contains an asserter identified by URI <span class="name">http://x.com/user1</span>;</li>
-<li> contains a <em>set</em> of provenance expressions <span class="name">exprs</span>.</li>
+<li> contains an asserter identified by URI denoted by <span class="name">uri</span>;</li>
+<li> contains a <em>set</em> of provenance expressions denoted by <span class="name">exprs</span>.</li>
</ul>
</p>
<div class='note'>
-Currently, the non-terminal <span class="nonterminal">asserter</span> is defined as URI. We may want the asserter to be an agent instead, and therefore use PROV-DM to express the provenance of PROV-DM. We seek inputs on how to resolve this issue. </div>
+Currently, the non-terminal <span class="nonterminal">asserter</span> is defined as URI. We may want the asserter to be an agent instead, and therefore use PROV-DM to express the provenance of PROV-DM assertions. The editors seek inputs on how to resolve this issue. </div>
<p>
The following account expression
@@ -1747,19 +1754,19 @@
...
wasGeneratedBy(e0,pe0,outFile)
...
- wasControlledBy(pe4,a5, qualifier(role=communicator)) )
+ wasControlledBy(pe4,a5, qualifier(role="communicator")) )
</pre>
contains the set of provenance expressions of section <a href="#example-prov-asn-encoding">example-prov-asn-encoding</a>, is asserted by agent <span class="name">http://x.com/asserter</span>, and is identified by identifier <span class="name">acc0</span>.
</p>
-<p>Account expressions constitue a scope for identifiers. An identifier within the scope of an account is intended to denote a single expression. However, nothing prevents an asserter from asserting an account containing, for example, multiple entity expressions with a same identifier but different attribute-values. In that case, they should be understood as a single entity expression with this identifier, with the union of all attributes values, as formalized in <a href="#identified-entity-in-account">identified-entity-in-account</a>.</p>
+<p>Account expressions constitue a scope for identifiers. An identifier within the scope of an account is intended to denote a single expression. However, nothing prevents an asserter from asserting an account containing, for example, multiple entity expressions with a same identifier but different attribute-values. In that case, they should be understood as a single entity expression with this identifier and the union of all attributes values, as formalized in <a href="#identified-entity-in-account">identified-entity-in-account</a>.</p>
<div class='constraint' id='identified-entity-in-account'>
-Given an identifier <span class="name">e</span>, two sets of attribute-values <span class="name">av1</span> and <span class="name">av2</span>,
- two entity expressions <span class="name">entity(e,av1)</span> and <span class="name">entity(e,av2)</span> occurring in an account are equivalent to the entity expression <span class="name">entity(e,av)</span> where <span class="name">av</span> is the set formed by the union of <span class="name">av1</span> and <span class="name">av2</span>.
+Given an identifier <span class="name">e</span>, two sets of attribute-values denoted by <span class="name">av1</span> and <span class="name">av2</span>,
+ two entity expressions <span class="name">entity(e,av1)</span> and <span class="name">entity(e,av2)</span> occurring in an account are equivalent to the entity expression <span class="name">entity(e,av)</span> where <span class="name">av</span> is the set of attribute-value pairs formed by the union of <span class="name">av1</span> and <span class="name">av2</span>.
</div>
-<p>Whilst constraint <a href="#identified-entity-in-account">identified-entity-in-account</a> specifies how to understand multiple entity expressions with a same identifier within a given account, it does not guarantee that the entity expression formed with the union of all attributes is consistent. Indeed, a given attribute may be assigned multiple values, resulting in an inconsistent entity expression, as illustrated by the following example.</p>
+<p>Whilst constraint <a href="#identified-entity-in-account">identified-entity-in-account</a> specifies how to understand multiple entity expressions with a same identifier within a given account, it does not guarantee that the entity expression formed with the union of all attribute-value pairs is consistent. Indeed, a given attribute may be assigned multiple values, resulting in an inconsistent entity expression, as illustrated by the following example.</p>
<p>
In the following account expression, we find two entity expressions with a same identifier <span class="name">e</span>.
@@ -1770,7 +1777,7 @@
entity(e,[type="person",age=30])
...)
</pre>
-Application of <a href="#identified-entity-in-account">identified-entity-in-account</a> results in an entity expression containing the attributes <span class="name">age=20</span> and <span class="name">age=30</span>. This results in an inconsistent characterization of a person. We note that deciding whether a set of attribute-values is consistent or not is application specific.
+Application of <a href="#identified-entity-in-account">identified-entity-in-account</a> results in an entity expression containing the attribute-value pairs <span class="name">age=20</span> and <span class="name">age=30</span>. This results in an inconsistent characterization of a person. We note that deciding whether a set of attribute-values is consistent or not is application specific.
</p>
<p>Account expressions can be nested since an account expression can occur among the expressions being wrapped by another account. </p>
@@ -1778,7 +1785,7 @@
<p>
An account is said to be well-formed if
-it satisfied the constraints <a href="#generation-unicity">generation-unicity</a> and <a href="#derivation-use">derivation-use</a>.</p>
+it satisfies the constraints <a href="#generation-unicity">generation-unicity</a> and <a href="#derivation-use">derivation-use</a>.</p>
<p> The union of two accounts is another account,
containing the unions of their respective expressions, where
@@ -1803,7 +1810,7 @@
</pre>
with identifier <span class="name">acc2</span>, containing assertions by asserter by <span class="name">http://x.com/asserter2</span> stating that thing represented by entity expression identified by <span class="name">e0</span> was generated by an activity represented by process execution expression identified by <span class="name">pe1</span> instead of <span class="name">pe0</span> in the previous account <span class="name">acc0</span>. If accounts <span class="name">acc0</span> and <span class="name">acc2</span> are merged together, the resulting set of expressions violates <a href="#generation-unicity">generation-unicity</a>.</p>
-<p>Account expressions constitue a scope for identifiers. Since accounts can be nested, their scope can also be nested; thus, the scope of identifiers should be understood in the context of such nested scopes. When an identifiable expression occurs directly within an account, then its identifier denotes this identifiable expression in the scope of this account, except in sub-accounts where expressions with the same identifier occur. </p>
+<p>Account expressions constitue a scope for identifiers. Since accounts can be nested, their scope can also be nested; thus, the scope of identifiers should be understood in the context of such nested scopes. When an expression with an identifier occurs directly within an account, then its identifier denotes this expression in the scope of this account, except in sub-accounts where expressions with the same identifier occur. </p>
<p>
The following account expression is inspired from section <a href="#example-prov-asn-encoding">example-prov-asn-encoding</a>. This account, identified by <span class="name">acc3</span>, declares entity expression identified by <span class="name">e0</span>, which is being referred to in the nested account <span class="name">acc4</span>. The scope of identifier <span class="name">e0</span> is account <span class="name">acc3</span>, including subaccount <span class="name">acc4</span>.