--- a/model/diff-n.html Tue Apr 23 12:09:13 2013 +0100
+++ b/model/diff-n.html Tue Apr 23 12:40:56 2013 +0100
@@ -701,30 +701,59 @@
}
-/* --- --- */
-ol.algorithm { counter-reset:numsection; list-style-type: none; }
-ol.algorithm li { margin: 0.5em 0; }
-ol.algorithm li:before { font-weight: bold; counter-increment: numsection; content: counters(numsection, ".") ") "; }
-
-/* --- TOC --- */
-.toc a, .tof a {
- text-decoration: none;
-}
-
-a .secno, a .figno {
+
+
+/* --- <span class="insert">TOC </span>--- */
+<span class="delete">ol.algorithm</span><span class="insert">.toc a, .tof a</span> {<span class="delete"> counter-reset:numsection; list-style-type: </span><span class="insert">
+ text-decoration: </span>none;
+}<span class="delete">
+ol.algorithm li</span><span class="insert">
+
+a .secno, a .figno</span> {<span class="delete"> margin: 0.5em 0; </span><span class="insert">
color: #000;
-}
-
-ul.tof, ol.tof {
+</span>}<span class="delete">
+ol.algorithm li:before</span><span class="insert">
+
+ul.tof, ol.tof</span> {<span class="delete"> font-weight: bold; counter-increment: numsection; content: counters(numsection, ".") ") "; </span><span class="insert">
list-style: none outside none;
}
.caption {
margin-top: 0.5em;
font-style: italic;
+</span>}
+
+/* --- <span class="delete">TOC</span><span class="insert">TABLE</span> --- */
+<span class="delete">.toc a, .tof a</span><span class="insert">table.simple</span> {
+ <span class="delete">text-decoration:</span><span class="insert">border-spacing: 0;
+ border-collapse:</span> <span class="delete">none;</span><span class="insert">collapse;
+ border-bottom: 3px solid #005a9c;</span>
}
-/* --- TABLE --- */
+<span class="delete">a .secno, a .figno</span><span class="insert">.simple th</span> {<span class="insert">
+ background: #005a9c;</span>
+ color: <span class="delete">#000;</span><span class="insert">#fff;
+ padding: 3px 5px;
+ text-align: left;</span>
+}
+
+<span class="delete">ul.tof, ol.tof</span><span class="insert">.simple th[scope="row"]</span> {
+ <span class="delete">list-style: none outside none;</span><span class="insert">background: inherit;
+ color: inherit;
+ border-top: 1px solid #ddd;</span>
+}
+
+<span class="delete">.caption</span><span class="insert">.simple td</span> {
+ <span class="delete">margin-top: 0.5em;
+ font-style: italic;</span><span class="insert">padding: 3px 10px;
+ border-top: 1px solid #ddd;
+}
+
+.simple tr:nth-child(even) {
+ background: #f0f6ff;</span>
+}
+
+/* --- <span class="delete">TABLE --- */
table.simple {
border-spacing: 0;
border-collapse: collapse;
@@ -753,7 +782,7 @@
background: #f0f6ff;
}
-/* --- DL --- */
+/* --- </span>DL --- */
.section dd > p:first-child {
margin-top: 0;
}
@@ -818,7 +847,7 @@
<p><span class="insert">
- Please refer to the </span><a href="http://www.w3.org/2011/prov/errata.html"><span class="insert">errata</span></a><span class="insert"> for this document, which may include some normative corrections.
+ Please refer to the </span><a href="http://www.w3.org/2011/prov/errata.html"><strong><span class="insert">errata</span></strong></a><span class="insert"> for this document, which may include some normative corrections.
</span></p>
@@ -1010,7 +1039,7 @@
<ul>
<li>Technology independence. PROV-N provides a simple syntax that can be mapped to several technologies.
-</li><li>Human readability. PROV-N follows a functional syntax style that is meant to be easily human-readable so it can be used in illustrative examples, such as those presented in the PROV documents suite
+</li><li>Human readability. PROV-N follows a functional syntax style that is meant to be easily human-readable so it can be used in illustrative examples, such as those presented in the PROV documents <span class="delete">suite</span><span class="insert">suite.</span>
</li><li>Formality. PROV-N is defined through a formal grammar amenable to be used with parser generators.
@@ -1287,7 +1316,7 @@
<h3><span class="secno">2.5 </span>Identifiers and attributes</h3>
<p>Almost all expressions defined in the grammar include an identifier (see <a href="#expression-identifier">Section 3.7.1</a> for the full syntax of identifiers). Most expressions
-can also include a set of attribute-value pairs, delimited by square brackets. Identifiers are optional except for Entities, Activites, and Agents. Identifiers are always the first term in any expression. <em>Optional</em> identifiers <em class="rfc2119" title="MUST">MUST</em> be separated using a semi-colon ';', but where the identifiers are required, a regular comma ',' <em class="rfc2119" title="MUST">MUST</em> be used. This makes it possible to completely omit an optional identifier with no ambiguity arising. Also, if the set of attribute-value pairs is present, it is always the last term in any expression.</p>
+can also include a set of attribute-value pairs, delimited by square brackets. Identifiers are optional except for Entities, <span class="delete">Activites,</span><span class="insert">Activities,</span> and Agents. Identifiers are always the first term in any expression. <em>Optional</em> identifiers <em class="rfc2119" title="MUST">MUST</em> be separated using a semi-colon ';', but where the identifiers are required, a regular comma ',' <em class="rfc2119" title="MUST">MUST</em> be used. This makes it possible to completely omit an optional identifier with no ambiguity arising. Also, if the set of attribute-value pairs is present, it is always the last term in any expression.</p>
<div class="anexample" id="example_9"><div class="anexampleTitle"><a class="internalDFN" href="#example_9">Example 9</a></div>
<p>Derivation has an optional identifier. In the first expression, the identifier is not available, while it is explicit in the second. The third example shows that one can optionally indicate the missing identifier using the <span class="name">-</span> marker. This is equivalent to the first expression. </p>
@@ -1408,7 +1437,7 @@
<div class="anexample" id="example_12"><div class="anexampleTitle"><a class="internalDFN" href="#example_12">Example 12</a></div>
<pre class="codeexample">activity(ex:a10, 2011-11-16T16:00:00, 2011-11-16T16:00:01, [prov:type="createFile"])
</pre>
-<p>Here <span class="name">ex:a10</span> is the activity identifier, <span class="name">2011-11-16T16:00:00</span> and <span class="name">2011-11-16T16:00:01</span> are the optional start and end times for the activity, and <span class="name">[prov:type="createFile"]</span> are optional attributes. </p>
+<p>Here <span class="name">ex:a10</span> is the activity identifier, <span class="name">2011-11-16T16:00:00</span> and <span class="name">2011-11-16T16:00:01</span> are the optional start and end times for the activity, and <span class="name">[prov:type="createFile"]</span> <span class="delete">are</span><span class="insert">is a list of</span> optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
<pre class="codeexample">activity(ex:a10)
activity(ex:a10, -, -)
@@ -1459,7 +1488,7 @@
<pre class="codeexample">wasGeneratedBy(ex:g1; tr:WD-prov-dm-20111215, ex:edit1, 2011-11-16T16:00:00, [ex:fct="save"])
</pre>
<p> Here <span class="name">ex:g1</span> is the optional generation identifier, <span class="name">tr:WD-prov-dm-20111215</span> is the identifier of the entity being generated,
- <span class="name">ex:edit1</span> is the optional identifier of the generating activity, <span class="name">2011-11-16T16:00:00</span> is the optional generation time, and <span class="name"> [ex:fct="save"]</span> are optional attributes. </p>
+ <span class="name">ex:edit1</span> is the optional identifier of the generating activity, <span class="name">2011-11-16T16:00:00</span> is the optional generation time, and <span class="name"> [ex:fct="save"]</span> <span class="delete">are</span><span class="insert">is a list of</span> optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
<pre class="codeexample">wasGeneratedBy(e2, a1, -)
@@ -1509,7 +1538,7 @@
</pre>
<p> Here <span class="name">ex:u1</span> is the optional usage identifier, <span class="name">ex:act2</span> is the identifier of the using activity,
<span class="name">ar3:0111</span> is the identifier of the entity being used,
- <span class="name">2011-11-16T16:00:00</span> is the optional usage time, and <span class="name"> [ex:fct="load"]</span> are optional attributes.</p>
+ <span class="name">2011-11-16T16:00:00</span> is the optional usage time, and <span class="name"> [ex:fct="load"]</span> <span class="delete">are</span><span class="insert">is a list of</span> optional attributes.</p>
The remaining examples show cases where some of the optionals are omitted.
<pre class="codeexample">used(ex:act2)
@@ -1554,13 +1583,13 @@
</pre>
<p> Here <span class="name">ex:inf1</span> is the optional communication identifier, <span class="name">ex:a1</span> is the identifier of the informed activity,
<span class="name">ex:a2</span> is the identifier of the informant activity,
-and <span class="name">[ex:param1="a", ex:param2="b"]</span> are optional attributes. </p>
+and <span class="name">[ex:param1="a", ex:param2="b"]</span> <span class="delete">are</span><span class="insert">is a list of</span> optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
<pre class="codeexample">wasInformedBy(ex:a1, ex:a2)
wasInformedBy(ex:a1, ex:a2, [ex:param1="a", ex:param2="b"])
-wasInformedBy(i; ex:a1, ex:a2)
-wasInformedBy(i; ex:a1, ex:a2, [ex:param1="a", ex:param2="b"])
+<span class="delete">wasInformedBy(i;</span><span class="insert">wasInformedBy(ex:i;</span> ex:a1, ex:a2)
+<span class="delete">wasInformedBy(i;</span><span class="insert">wasInformedBy(ex:i;</span> ex:a1, ex:a2, [ex:param1="a", ex:param2="b"])
</pre>
</div>
</section>
@@ -1596,19 +1625,19 @@
<div class="anexample" id="example_16"><div class="anexampleTitle"><a class="internalDFN" href="#example_16">Example 16</a></div>
- <pre class="codeexample">wasStartedBy(start; ex:act2, ex:trigger, ex:act1, 2011-11-16T16:00:00, [ex:param="a"])
+ <pre class="codeexample"><span class="delete">wasStartedBy(start;</span><span class="insert">wasStartedBy(ex:start;</span> ex:act2, ex:trigger, ex:act1, 2011-11-16T16:00:00, [ex:param="a"])
</pre>
<p>Here <span class="name">start</span> is the optional start identifier, <span class="name">ex:act2</span> is the identifier of the started activity,
<span class="name">ex:trigger</span> is the optional identifier for the entity that triggered the activity start,
<span class="name">ex:act1</span> is the optional identifier for the activity that generated the (possibly unspecified) entity <span class="name">ex:trigger</span>,
- <span class="name">2011-11-16T16:00:00</span> is the optional start time, and <span class="name"> [ex:param="a"]</span> are optional attributes.</p>
+ <span class="name">2011-11-16T16:00:00</span> is the optional start time, and <span class="name"> [ex:param="a"]</span> <span class="delete">are</span><span class="insert">is a list of</span> optional attributes.</p>
The remaining examples show cases where some of the optionals are omitted.
<pre class="codeexample">wasStartedBy(ex:act2, -, ex:act1, -)
wasStartedBy(ex:act2, -, ex:act1, 2011-11-16T16:00:00)
wasStartedBy(ex:act2, -, -, 2011-11-16T16:00:00)
wasStartedBy(ex:act2, [ex:param="a"])
-wasStartedBy(start; ex:act2, e, ex:act1, 2011-11-16T16:00:00)
+<span class="delete">wasStartedBy(start;</span><span class="insert">wasStartedBy(ex:start;</span> ex:act2, e, ex:act1, 2011-11-16T16:00:00)
</pre>
</div>
@@ -1646,13 +1675,13 @@
<div class="anexample" id="example_17"><div class="anexampleTitle"><a class="internalDFN" href="#example_17">Example 17</a></div>
- <pre class="codeexample">wasEndedBy(end; ex:act2, ex:trigger, ex:act3, 2011-11-16T16:00:00, [ex:param="a"])
+ <pre class="codeexample"><span class="delete">wasEndedBy(end;</span><span class="insert">wasEndedBy(ex:end;</span> ex:act2, ex:trigger, ex:act3, 2011-11-16T16:00:00, [ex:param="a"])
</pre>
<p> Here <span class="name">end</span> is the optional end identifier,
<span class="name">ex:act2</span> is the identifier of the ending activity,
<span class="name">ex:trigger</span> is the identifier of the entity that triggered the activity end,
<span class="name">ex:act3</span> is the optional identifier for the activity that generated the (possibly unspecified) entity <span class="name">ex:trigger</span>,
- <span class="name">2011-11-16T16:00:00</span> is the optional usage time, and <span class="name"> [ex:param="a"]</span> are optional attributes. </p>
+ <span class="name">2011-11-16T16:00:00</span> is the optional usage time, and <span class="name"> [ex:param="a"]</span> <span class="delete">are</span><span class="insert">is a list of</span> optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
@@ -1660,8 +1689,8 @@
wasEndedBy(ex:act2, ex:trigger, -, 2011-11-16T16:00:00)
wasEndedBy(ex:act2, -, -, 2011-11-16T16:00:00)
wasEndedBy(ex:act2, -, -, 2011-11-16T16:00:00, [ex:param="a"])
-wasEndedBy(end; ex:act2)
-wasEndedBy(end; ex:act2, ex:trigger, -, 2011-11-16T16:00:00)
+<span class="delete">wasEndedBy(end;</span><span class="insert">wasEndedBy(ex:end;</span> ex:act2)
+<span class="delete">wasEndedBy(end;</span><span class="insert">wasEndedBy(ex:end;</span> ex:act2, ex:trigger, -, 2011-11-16T16:00:00)
</pre>
</div>
@@ -1704,7 +1733,7 @@
<pre class="codeexample">wasInvalidatedBy(ex:inv; tr:WD-prov-dm-20111215, ex:edit1, 2011-11-16T16:00:00, [ex:fct="save"])
</pre>
<p> Here <span class="name">ex:inv</span> is the optional invalidation identifier, <span class="name">tr:WD-prov-dm-20111215</span> is the identifier of the entity being invalidated,
- <span class="name">ex:edit1</span> is the optional identifier of the invalidating activity, <span class="name">2011-11-16T16:00:00</span> is the optional invalidation time, and <span class="name"> [ex:fct="save"]</span> are optional attributes. </p>
+ <span class="name">ex:edit1</span> is the optional identifier of the invalidating activity, <span class="name">2011-11-16T16:00:00</span> is the optional invalidation time, and <span class="name"> [ex:fct="save"]</span> <span class="delete">are</span><span class="insert">is a list of</span> optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
<pre class="codeexample">wasInvalidatedBy(tr:WD-prov-dm-20111215, ex:edit1, -)
@@ -1766,7 +1795,7 @@
<div class="anexample" id="anexample-derivation"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-derivation">Example 19</a></div>
- <pre class="codeexample">wasDerivedFrom(d; e2, e1, a, g2, u1, [ex:comment="a righteous derivation"])
+ <pre class="codeexample"><span class="delete">wasDerivedFrom(d;</span><span class="insert">wasDerivedFrom(ex:d;</span> e2, e1, a, g2, u1, [ex:comment="a righteous derivation"])
</pre>
<p> Here
<span class="name">d</span> is the optional derivation identifier,
@@ -1775,7 +1804,7 @@
<span class="name">a</span> is the optional identifier of the activity which used/generated the entities,
<span class="name">g2</span> is the optional identifier of the generation,
<span class="name">u1</span> is the optional identifier of the usage,
- and <span class="name">[ex:comment="a righteous derivation"]</span> are optional attributes. </p>
+ and <span class="name">[ex:comment="a righteous derivation"]</span> <span class="delete">are</span><span class="insert">is a list of</span> optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
@@ -1787,7 +1816,7 @@
wasDerivedFrom(e2, e1, a, -, -)
wasDerivedFrom(e2, e1, -, -, u1)
wasDerivedFrom(e2, e1, -, -, -)
-wasDerivedFrom(d; e2, e1, a, g2, u1)
+<span class="delete">wasDerivedFrom(d;</span><span class="insert">wasDerivedFrom(ex:d;</span> e2, e1, a, g2, u1)
wasDerivedFrom(-; e2, e1, a, g2, u1)
</pre>
</div>
@@ -1803,7 +1832,7 @@
<div class="anexample" id="example_20"><div class="anexampleTitle"><a class="internalDFN" href="#example_20">Example 20</a></div>
- <pre class="codeexample">wasDerivedFrom(d; e2, e1, a, g2, u1,
+ <pre class="codeexample"><span class="delete">wasDerivedFrom(d;</span><span class="insert">wasDerivedFrom(ex:d;</span> e2, e1, a, g2, u1,
[prov:type='prov:Revision',
ex:comment="a righteous derivation"])
</pre>
@@ -1826,7 +1855,7 @@
<div class="anexample" id="example_21"><div class="anexampleTitle"><a class="internalDFN" href="#example_21">Example 21</a></div>
- <pre class="codeexample">wasDerivedFrom(quoteId1; ex:blockQuote,ex:blog, ex:act1, ex:g, ex:u,
+ <pre class="codeexample"><span class="delete">wasDerivedFrom(quoteId1;</span><span class="insert">wasDerivedFrom(ex:quoteId1;</span> ex:blockQuote,ex:blog, ex:act1, ex:g, ex:u,
[ prov:type='prov:Quotation' ])
</pre>
@@ -1847,7 +1876,7 @@
<div class="anexample" id="example_22"><div class="anexampleTitle"><a class="internalDFN" href="#example_22">Example 22</a></div>
- <pre class="codeexample">wasDerivedFrom(sourceId1; ex:e1, ex:e2, ex:act, ex:g, ex:u,
+ <pre class="codeexample"><span class="delete">wasDerivedFrom(sourceId1;</span><span class="insert">wasDerivedFrom(ex:sourceId1;</span> ex:e1, ex:e2, ex:act, ex:g, ex:u,
[ prov:type='prov:PrimarySource' ])
</pre>
<p>Here, the derivation is provided with a <span class="name">prov:type</span> attribute and value <span class="name">prov:PrimarySource</span>.
@@ -1892,13 +1921,13 @@
<div class="anexample" id="example_23"><div class="anexampleTitle"><a class="internalDFN" href="#example_23">Example 23</a></div>
-<pre class="codeexample">agent(ag4, [ prov:type='prov:Person', ex:name="David" ])
+<pre class="codeexample"><span class="delete">agent(ag4,</span><span class="insert">agent(ex:ag4,</span> [ prov:type='prov:Person', ex:name="David" ])
</pre>
<p>Here <span class="name">ag</span> is the agent identifier, and
- <span class="name">[ prov:type='prov:Person', ex:name="David" ]</span> are optional attributes. </p>
+ <span class="name">[ prov:type='prov:Person', ex:name="David" ]</span> <span class="delete">are</span><span class="insert">is a list of</span> optional attributes. </p>
In the next example, the optional attributes are omitted.
-<pre class="codeexample">agent(ag4)
+<pre class="codeexample"><span class="delete">agent(ag4)</span><span class="insert">agent(ex:ag4)</span>
</pre>
</div>
@@ -1933,11 +1962,11 @@
<div class="anexample" id="example_24"><div class="anexampleTitle"><a class="internalDFN" href="#example_24">Example 24</a></div>
-<pre class="codeexample">wasAttributedTo(attr; e, ag, [ex:license='cc:attributionURL' ])
+<pre class="codeexample"><span class="delete">wasAttributedTo(attr;</span><span class="insert">wasAttributedTo(ex:attr;</span> e, ag, [ex:license='cc:attributionURL' ])
</pre>
<p> Here <span class="name">attr</span> is the optional attribution identifier, <span class="name">e</span> is an entity identifier,
- <span class="name">ag</span> is the identifier of the agent to whom the entity is abscribed,
-and <span class="name">[ex:license='cc:attributionURL' ]</span> are optional attributes. </p>
+ <span class="name">ag</span> is the identifier of the agent to whom the entity is <span class="delete">abscribed,</span><span class="insert">ascribed,</span>
+and <span class="name">[ex:license='cc:attributionURL' ]</span> <span class="delete">are</span><span class="insert">is a list of</span> optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
<pre class="codeexample">wasAttributedTo(e, ag)
@@ -1992,7 +2021,7 @@
<span class="name">ex:a1</span> is an activity identifier,
<span class="name">ex:ag1</span> is the optional identifier of the agent associated to the activity,
<span class="name">ex:e1</span> is the optional identifier of the plan used by the agent in the context of the activity,
- and <span class="name"> [ex:param1="a", ex:param2="b"]</span> are optional attributes. </p>
+ and <span class="name"> [ex:param1="a", ex:param2="b"]</span> <span class="delete">are</span><span class="insert">is a list of</span> optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
@@ -2001,7 +2030,7 @@
wasAssociatedWith(ex:a1, ex:ag1)
wasAssociatedWith(ex:a1, ex:ag1, ex:e1)
wasAssociatedWith(ex:a1, ex:ag1, ex:e1, [ex:param1="a", ex:param2="b"])
-wasAssociatedWith(a; ex:a1, -, ex:e1)
+<span class="delete">wasAssociatedWith(a;</span><span class="insert">wasAssociatedWith(ex:assoc;</span> ex:a1, -, ex:e1)
</pre>
</div>
@@ -2010,7 +2039,7 @@
<div class="anexample" id="example_26"><div class="anexampleTitle"><a class="internalDFN" href="#example_26">Example 26</a></div>
-<p>The following expression illustrates a plan.
+<p>The following expression illustrates a plan.
</p><pre class="codeexample"> entity(ex:pl1, [ prov:type='prov:Plan' ])
</pre>
</div>
@@ -2053,21 +2082,23 @@
<div class="anexample" id="example_27"><div class="anexampleTitle"><a class="internalDFN" href="#example_27">Example 27</a></div>
- <pre class="codeexample">actedOnBehalfOf(del1; ag2, ag1, a, [prov:type="contract"])
+ <pre class="codeexample"><span class="delete">actedOnBehalfOf(del1; ag2, ag1, a,</span><span class="insert">actedOnBehalfOf(ex:del1; ex:ag2, ex:ag1, ex:a,</span> [prov:type="contract"])
</pre>
-<p> Here <span class="name">del1</span> is the optional delegation identifier,
- <span class="name">ag2</span> is the identifier for the delegate agent,
- <span class="name">ag1</span> is the identifier of the responsible agent,
- <span class="name">a</span> is the optional identifier of the activity for which the delegation link holds,
- and <span class="name">[prov:type="contract"]</span> are optional attributes. </p>
+<p> Here <span class="name"><span class="delete">del1</span><span class="insert">ex:del1</span></span> is the optional delegation identifier,
+ <span class="name"><span class="delete">ag2</span><span class="insert">ex:ag2</span></span> is the identifier for the delegate agent,
+ <span class="name"><span class="delete">ag1</span><span class="insert">ex:ag1</span></span> is the identifier of the responsible agent,
+ <span class="name"><span class="delete">a</span><span class="insert">ex:a</span></span> is the optional identifier of the activity for which the delegation link holds,
+ and <span class="name">[prov:type="contract"]</span> <span class="delete">are</span><span class="insert">is a list of</span> optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
-<pre class="codeexample">actedOnBehalfOf(ag1, ag2)
+<pre class="codeexample"><span class="delete">actedOnBehalfOf(ag1, ag2)
actedOnBehalfOf(ag1, ag2, a)
-actedOnBehalfOf(ag1, ag2, -, [prov:type="delegation"])
-actedOnBehalfOf(ag2, ag3, a, [prov:type="contract"])
-actedOnBehalfOf(del1; ag2, ag3, a, [prov:type="contract"])
+actedOnBehalfOf(ag1, ag2,</span><span class="insert">actedOnBehalfOf(ex:ag1, ex:ag2)
+actedOnBehalfOf(ex:ag1, ex:ag2, ex:a)
+actedOnBehalfOf(ex:ag1, ex:ag2,</span> -, [prov:type="delegation"])
+<span class="delete">actedOnBehalfOf(ag2, ag3, a,</span><span class="insert">actedOnBehalfOf(ex:ag2, ex:ag3, ex:a,</span> [prov:type="contract"])
+<span class="delete">actedOnBehalfOf(del1; ag2, ag3, a,</span><span class="insert">actedOnBehalfOf(ex:del1; ex:ag2, ex:ag3, ex:a,</span> [prov:type="contract"])
</pre>
</div>
@@ -2101,19 +2132,21 @@
<div class="anexample" id="example_28"><div class="anexampleTitle"><a class="internalDFN" href="#example_28">Example 28</a></div>
- <pre class="codeexample">wasInfluencedBy(infl1;e2,e1,[ex:param="a"])
+ <pre class="codeexample"><span class="delete">wasInfluencedBy(infl1;e2,e1,[ex:param="a"])</span><span class="insert">wasInfluencedBy(ex:infl1;e2,e1,[ex:param="a"])</span>
</pre>
<p> Here,
- <span class="name">infl1</span> is the optional influence identifier,
- <span class="name">e2</span> is an entity identifier,
- <span class="name">e1</span> is the identifier for an ancestor entity that <span class="name">e2</span> is influenced by,
+ <span class="name"><span class="delete">infl1</span><span class="insert">ex:infl1</span></span> is the optional influence identifier,
+ <span class="name"><span class="delete">e2</span><span class="insert">ex:e2</span></span> is an entity identifier,
+ <span class="name"><span class="delete">e1</span><span class="insert">ex:e1</span></span> is the identifier for an ancestor entity that <span class="name"><span class="delete">e2</span><span class="insert">ex:e2</span></span> is influenced by,
and <span class="name">[ex:param="a"]</span> is the optional set of attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
- <pre class="codeexample">wasInfluencedBy(e2,e1)
+ <pre class="codeexample"><span class="delete">wasInfluencedBy(e2,e1)
wasInfluencedBy(e2,e1,[ex:param="a"])
-wasInfluencedBy(infl1; e2,e1)
+wasInfluencedBy(infl1; e2,e1)</span><span class="insert">wasInfluencedBy(ex:e2,ex:e1)
+wasInfluencedBy(ex:e2,ex:e1,[ex:param="a"])
+wasInfluencedBy(ex:infl1; ex:e2,ex:e1)</span>
</pre>
</div>
@@ -2142,7 +2175,7 @@
<tbody><tr><td><b><a href="http://www.w3.org/TR/2013/REC-prov-dm-20130430/#dfn-bundle-constructor">Bundle</a></b></td><td><b>Non-Terminal</b></td></tr>
<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
-<tr><td><a href="http://www.w3.org/TR/2013/REC-prov-dm-20130430/#bundle.constructor.id"><span class="attribute" id="bundle.id">id</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/2013/REC-prov-dm-20130430/#bundle.constructor.id"><span class="attribute" id="bundle.id">id</span></a></td><td><code class="content"><span class="delete">optionalIdentifier</span><a class="grammarRef" href="#prod-identifier"><span class="insert">identifier</span></a></code></td></tr>
<tr><td><a href="http://www.w3.org/TR/2013/REC-prov-dm-20130430/#bundle.constructor.descriptions"><span class="attribute" id="bundle.descriptions">descriptions</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-expression">expression</a></code></td></tr>
@@ -2179,7 +2212,7 @@
<div class="anexample" id="example_30"><div class="anexampleTitle"><a class="internalDFN" href="#example_30">Example 30</a></div>
<p>The bundle of
-<a href="#anexample-bundle1" class="anexample-ref"><span>Example 29</span></a> can be referred to as an an entity, and its provenance described.</p>
+<a href="#anexample-bundle1" class="anexample-ref"><span>Example 29</span></a> can be referred to as an <span class="delete">an </span>entity, and its provenance described.</p>
<pre class="codeexample"> entity(ex:author-view, [ prov:type='prov:Bundle' ])
</pre>
</div>
@@ -2319,12 +2352,12 @@
<div class="anexample" id="example_34"><div class="anexampleTitle"><a class="internalDFN" href="#example_34">Example 34</a></div>
- <pre class="codeexample"> hadMember(c, e1) // c contained e1
- hadMember(c, e2) // c contained e2
+ <pre class="codeexample"> <span class="delete">hadMember(c, e1)</span><span class="insert">hadMember(ex:c, ex:e1)</span> // <span class="delete">c</span><span class="insert">ex:c</span> contained <span class="delete">e1</span><span class="insert">ex:e1</span>
+ <span class="delete">hadMember(c, e2)</span><span class="insert">hadMember(ex:c, ex:e2)</span> // <span class="delete">c</span><span class="insert">ex:c</span> contained <span class="delete">e2</span><span class="insert">ex:e2</span>
</pre>
<p> Here
- <span class="name">c</span> is the identifier for the collection whose membership is stated, and
- <span class="name">e1</span> and <span class="name">e2</span> are the entities that are members of collection c
+ <span class="name"><span class="delete">c</span><span class="insert">ex:c</span></span> is the identifier for the collection whose membership is stated, and
+ <span class="name"><span class="delete">e1</span><span class="insert">ex:e1</span></span> and <span class="name"><span class="delete">e2</span><span class="insert">ex:e2</span></span> are the entities that are members of collection <span class="delete">c</span><span class="name"><span class="insert">ex:c</span></span><span class="insert">.</span>
</p></div>
@@ -2377,7 +2410,7 @@
-<p>A PROV-N qualified name (production <code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME">QUALIFIED_NAME</a></code>) has a more permissive syntax then XML's <code class="content"><a href="http://www.w3.org/TR/2009/REC-xml-names-20091208/#NT-QName">QName</a></code> [<cite><a class="bibref" href="#bib-XML-NAMES">XML-NAMES</a></cite>]
+<p>A PROV-N qualified name (production <code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME">QUALIFIED_NAME</a></code>) has a more permissive syntax <span class="delete">then</span><span class="insert">than</span> XML's <code class="content"><a href="http://www.w3.org/TR/2009/REC-xml-names-20091208/#NT-QName">QName</a></code> [<cite><a class="bibref" href="#bib-XML-NAMES">XML-NAMES</a></cite>]
and SPARQL <code class="content"><a href="http://www.w3.org/TR/2008/REC-rdf-sparql-query-20080115/#rPrefixedName">PrefixedName</a></code> [<cite><a class="bibref" href="#bib-RDF-SPARQL-QUERY">RDF-SPARQL-QUERY</a></cite>].
A <code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME">QUALIFIED_NAME</a></code> consists of a prefix and a local part. Prefixes follow the production <code class="content"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_PREFIX">PN_PREFIX</a></code> defined by SPARQL [<cite><a class="bibref" href="#bib-RDF-SPARQL-QUERY">RDF-SPARQL-QUERY</a></cite>]. Local parts have to be conformant with <code class="content"><a class="grammarRef" href="#prod-PN_LOCAL">PN_LOCAL</a></code>, which extends the original SPARQL <code class="content"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_LOCAL">PN_LOCAL</a></code> definition
by allowing further characters (see <code class="content"><a class="grammarRef" href="#prod-PN_CHARS_OTHERS">PN_CHARS_OTHERS</a></code>):</p>
@@ -2803,7 +2836,7 @@
<p>A <dfn id="dfn-document">document</dfn> is a house-keeping construct of PROV-N capable of packaging up PROV-N expressions and namespace declarations. A document forms a self-contained package of provenance descriptions for the purpose of <em>exchanging</em> them. A document may be used
to package up PROV-N expressions in response to a request for the provenance of something ([<cite><a class="bibref" href="#bib-PROV-AQ">PROV-AQ</a></cite>]).</p>
-<p> Given its status of house keeping construct for the purpose of exchanging provenance expressions, a document is not defined as a PROV-N expression (production <code class="content"><a class="grammarRef" href="#prod-expression">expression</a></code>).</p>
+<p> Given its status of <span class="delete">house keeping</span><span class="insert">house-keeping</span> construct for the purpose of exchanging provenance expressions, a document is not defined as a PROV-N expression (production <code class="content"><a class="grammarRef" href="#prod-expression">expression</a></code>).</p>
@@ -2847,7 +2880,7 @@
endDocument
</pre>
-<p>This container could for instance be returned as the result of a query to a provenance store for the provenance of entity <span class="name">e2</span> [<cite><a class="bibref" href="#bib-PROV-AQ">PROV-AQ</a></cite>].
+<p>This container <span class="delete">could</span><span class="insert">could,</span> for <span class="delete">instance</span><span class="insert">instance,</span> be returned as the result of a query to a provenance store for the provenance of entity <span class="name">e2</span> [<cite><a class="bibref" href="#bib-PROV-AQ">PROV-AQ</a></cite>].
</p>
</div>
@@ -3005,6 +3038,9 @@
<li><span class="insert"> Changed the status of this document section.
</span></li><li><span class="insert"> Changed all URLs to PROV documents.
</span></li><li><span class="insert"> Updated URL to IANA registered text/provenance-notation mime type.
+</span></li><li><span class="insert"> Added ex: prefix to some identifiers in examples.
+</span></li><li><span class="insert"> The mapping table </span><a href="#expression-bundle-constructor"><span class="insert">for the bundle production</span></a><span class="insert"> incorrectly referred to optionalIdentifier, which was not present in the production. It was replaced by identifier.
+</span></li><li><span class="insert"> Replaced "are optional attributes" by the grammatically more correct "is a list of optional attributes".
</span></li></ul>
</section>
@@ -3070,7 +3106,7 @@
Reza B'Far (Oracle Corporation),
Khalid Belhajjame (University of Manchester),
James Cheney (University of Edinburgh, School of Informatics),
-Tom De Nies (iMinds - Ghent University),
+<span class="delete">Tom De Nies</span><span class="insert">Sam Coppens</span> (iMinds - Ghent University),
David Corsar (University of Aberdeen, Computing Science),
Stephen Cresswell (The National Archives),
Tom De Nies (iMinds - Ghent University),
--- a/model/prov-n.html Tue Apr 23 12:09:13 2013 +0100
+++ b/model/prov-n.html Tue Apr 23 12:40:56 2013 +0100
@@ -870,7 +870,7 @@
<ul>
<li>Technology independence. PROV-N provides a simple syntax that can be mapped to several technologies.
-<li>Human readability. PROV-N follows a functional syntax style that is meant to be easily human-readable so it can be used in illustrative examples, such as those presented in the PROV documents suite
+<li>Human readability. PROV-N follows a functional syntax style that is meant to be easily human-readable so it can be used in illustrative examples, such as those presented in the PROV documents suite.
<li>Formality. PROV-N is defined through a formal grammar amenable to be used with parser generators.
@@ -1155,7 +1155,7 @@
<h3>Identifiers and attributes</h3>
<p>Almost all expressions defined in the grammar include an identifier (see <a href="#expression-identifier">Section 3.7.1</a> for the full syntax of identifiers). Most expressions
-can also include a set of attribute-value pairs, delimited by square brackets. Identifiers are optional except for Entities, Activites, and Agents. Identifiers are always the first term in any expression. <em>Optional</em> identifiers MUST be separated using a semi-colon ';', but where the identifiers are required, a regular comma ',' MUST be used. This makes it possible to completely omit an optional identifier with no ambiguity arising. Also, if the set of attribute-value pairs is present, it is always the last term in any expression.</p>
+can also include a set of attribute-value pairs, delimited by square brackets. Identifiers are optional except for Entities, Activities, and Agents. Identifiers are always the first term in any expression. <em>Optional</em> identifiers MUST be separated using a semi-colon ';', but where the identifiers are required, a regular comma ',' MUST be used. This makes it possible to completely omit an optional identifier with no ambiguity arising. Also, if the set of attribute-value pairs is present, it is always the last term in any expression.</p>
<div class="anexample">
<p>Derivation has an optional identifier. In the first expression, the identifier is not available, while it is explicit in the second. The third example shows that one can optionally indicate the missing identifier using the <span class="name">-</span> marker. This is equivalent to the first expression. </p>
@@ -1281,7 +1281,7 @@
<pre class="codeexample">
activity(ex:a10, 2011-11-16T16:00:00, 2011-11-16T16:00:01, [prov:type="createFile"])
</pre>
-<p>Here <span class="name">ex:a10</span> is the activity identifier, <span class="name">2011-11-16T16:00:00</span> and <span class="name">2011-11-16T16:00:01</span> are the optional start and end times for the activity, and <span class="name">[prov:type="createFile"]</span> are optional attributes. </p>
+<p>Here <span class="name">ex:a10</span> is the activity identifier, <span class="name">2011-11-16T16:00:00</span> and <span class="name">2011-11-16T16:00:01</span> are the optional start and end times for the activity, and <span class="name">[prov:type="createFile"]</span> is a list of optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
<pre class="codeexample">
activity(ex:a10)
@@ -1334,7 +1334,7 @@
wasGeneratedBy(ex:g1; tr:WD-prov-dm-20111215, ex:edit1, 2011-11-16T16:00:00, [ex:fct="save"])
</pre>
<p> Here <span class="name">ex:g1</span> is the optional generation identifier, <span class="name">tr:WD-prov-dm-20111215</span> is the identifier of the entity being generated,
- <span class="name">ex:edit1</span> is the optional identifier of the generating activity, <span class="name">2011-11-16T16:00:00</span> is the optional generation time, and <span class="name"> [ex:fct="save"]</span> are optional attributes. </p>
+ <span class="name">ex:edit1</span> is the optional identifier of the generating activity, <span class="name">2011-11-16T16:00:00</span> is the optional generation time, and <span class="name"> [ex:fct="save"]</span> is a list of optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
<pre class="codeexample">
@@ -1388,7 +1388,7 @@
</pre>
<p> Here <span class="name">ex:u1</span> is the optional usage identifier, <span class="name">ex:act2</span> is the identifier of the using activity,
<span class="name">ar3:0111</span> is the identifier of the entity being used,
- <span class="name">2011-11-16T16:00:00</span> is the optional usage time, and <span class="name"> [ex:fct="load"]</span> are optional attributes.</p>
+ <span class="name">2011-11-16T16:00:00</span> is the optional usage time, and <span class="name"> [ex:fct="load"]</span> is a list of optional attributes.</p>
The remaining examples show cases where some of the optionals are omitted.
<pre class="codeexample">
@@ -1435,14 +1435,14 @@
</pre>
<p> Here <span class="name">ex:inf1</span> is the optional communication identifier, <span class="name">ex:a1</span> is the identifier of the informed activity,
<span class="name">ex:a2</span> is the identifier of the informant activity,
-and <span class="name">[ex:param1="a", ex:param2="b"]</span> are optional attributes. </p>
+and <span class="name">[ex:param1="a", ex:param2="b"]</span> is a list of optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
<pre class="codeexample">
wasInformedBy(ex:a1, ex:a2)
wasInformedBy(ex:a1, ex:a2, [ex:param1="a", ex:param2="b"])
-wasInformedBy(i; ex:a1, ex:a2)
-wasInformedBy(i; ex:a1, ex:a2, [ex:param1="a", ex:param2="b"])
+wasInformedBy(ex:i; ex:a1, ex:a2)
+wasInformedBy(ex:i; ex:a1, ex:a2, [ex:param1="a", ex:param2="b"])
</pre>
</div>
</section>
@@ -1479,12 +1479,12 @@
<div class="anexample">
<pre class="codeexample">
-wasStartedBy(start; ex:act2, ex:trigger, ex:act1, 2011-11-16T16:00:00, [ex:param="a"])
+wasStartedBy(ex:start; ex:act2, ex:trigger, ex:act1, 2011-11-16T16:00:00, [ex:param="a"])
</pre>
<p>Here <span class="name">start</span> is the optional start identifier, <span class="name">ex:act2</span> is the identifier of the started activity,
<span class="name">ex:trigger</span> is the optional identifier for the entity that triggered the activity start,
<span class="name">ex:act1</span> is the optional identifier for the activity that generated the (possibly unspecified) entity <span class="name">ex:trigger</span>,
- <span class="name">2011-11-16T16:00:00</span> is the optional start time, and <span class="name"> [ex:param="a"]</span> are optional attributes.</p>
+ <span class="name">2011-11-16T16:00:00</span> is the optional start time, and <span class="name"> [ex:param="a"]</span> is a list of optional attributes.</p>
The remaining examples show cases where some of the optionals are omitted.
<pre class="codeexample">
@@ -1492,7 +1492,7 @@
wasStartedBy(ex:act2, -, ex:act1, 2011-11-16T16:00:00)
wasStartedBy(ex:act2, -, -, 2011-11-16T16:00:00)
wasStartedBy(ex:act2, [ex:param="a"])
-wasStartedBy(start; ex:act2, e, ex:act1, 2011-11-16T16:00:00)
+wasStartedBy(ex:start; ex:act2, e, ex:act1, 2011-11-16T16:00:00)
</pre>
</div>
@@ -1531,13 +1531,13 @@
<div class="anexample">
<pre class="codeexample">
-wasEndedBy(end; ex:act2, ex:trigger, ex:act3, 2011-11-16T16:00:00, [ex:param="a"])
+wasEndedBy(ex:end; ex:act2, ex:trigger, ex:act3, 2011-11-16T16:00:00, [ex:param="a"])
</pre>
<p> Here <span class="name">end</span> is the optional end identifier,
<span class="name">ex:act2</span> is the identifier of the ending activity,
<span class="name">ex:trigger</span> is the identifier of the entity that triggered the activity end,
<span class="name">ex:act3</span> is the optional identifier for the activity that generated the (possibly unspecified) entity <span class="name">ex:trigger</span>,
- <span class="name">2011-11-16T16:00:00</span> is the optional usage time, and <span class="name"> [ex:param="a"]</span> are optional attributes. </p>
+ <span class="name">2011-11-16T16:00:00</span> is the optional usage time, and <span class="name"> [ex:param="a"]</span> is a list of optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
@@ -1546,8 +1546,8 @@
wasEndedBy(ex:act2, ex:trigger, -, 2011-11-16T16:00:00)
wasEndedBy(ex:act2, -, -, 2011-11-16T16:00:00)
wasEndedBy(ex:act2, -, -, 2011-11-16T16:00:00, [ex:param="a"])
-wasEndedBy(end; ex:act2)
-wasEndedBy(end; ex:act2, ex:trigger, -, 2011-11-16T16:00:00)
+wasEndedBy(ex:end; ex:act2)
+wasEndedBy(ex:end; ex:act2, ex:trigger, -, 2011-11-16T16:00:00)
</pre>
</div>
@@ -1591,7 +1591,7 @@
wasInvalidatedBy(ex:inv; tr:WD-prov-dm-20111215, ex:edit1, 2011-11-16T16:00:00, [ex:fct="save"])
</pre>
<p> Here <span class="name">ex:inv</span> is the optional invalidation identifier, <span class="name">tr:WD-prov-dm-20111215</span> is the identifier of the entity being invalidated,
- <span class="name">ex:edit1</span> is the optional identifier of the invalidating activity, <span class="name">2011-11-16T16:00:00</span> is the optional invalidation time, and <span class="name"> [ex:fct="save"]</span> are optional attributes. </p>
+ <span class="name">ex:edit1</span> is the optional identifier of the invalidating activity, <span class="name">2011-11-16T16:00:00</span> is the optional invalidation time, and <span class="name"> [ex:fct="save"]</span> is a list of optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
<pre class="codeexample">
@@ -1655,7 +1655,7 @@
<div class="anexample" id="anexample-derivation">
<pre class="codeexample">
-wasDerivedFrom(d; e2, e1, a, g2, u1, [ex:comment="a righteous derivation"])
+wasDerivedFrom(ex:d; e2, e1, a, g2, u1, [ex:comment="a righteous derivation"])
</pre>
<p> Here
<span class="name">d</span> is the optional derivation identifier,
@@ -1664,7 +1664,7 @@
<span class="name">a</span> is the optional identifier of the activity which used/generated the entities,
<span class="name">g2</span> is the optional identifier of the generation,
<span class="name">u1</span> is the optional identifier of the usage,
- and <span class="name">[ex:comment="a righteous derivation"]</span> are optional attributes. </p>
+ and <span class="name">[ex:comment="a righteous derivation"]</span> is a list of optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
@@ -1677,7 +1677,7 @@
wasDerivedFrom(e2, e1, a, -, -)
wasDerivedFrom(e2, e1, -, -, u1)
wasDerivedFrom(e2, e1, -, -, -)
-wasDerivedFrom(d; e2, e1, a, g2, u1)
+wasDerivedFrom(ex:d; e2, e1, a, g2, u1)
wasDerivedFrom(-; e2, e1, a, g2, u1)
</pre>
</div>
@@ -1694,7 +1694,7 @@
<div class="anexample">
<pre class="codeexample">
-wasDerivedFrom(d; e2, e1, a, g2, u1,
+wasDerivedFrom(ex:d; e2, e1, a, g2, u1,
[prov:type='prov:Revision',
ex:comment="a righteous derivation"])
</pre>
@@ -1718,7 +1718,7 @@
<div class="anexample">
<pre class="codeexample">
-wasDerivedFrom(quoteId1; ex:blockQuote,ex:blog, ex:act1, ex:g, ex:u,
+wasDerivedFrom(ex:quoteId1; ex:blockQuote,ex:blog, ex:act1, ex:g, ex:u,
[ prov:type='prov:Quotation' ])
</pre>
@@ -1740,7 +1740,7 @@
<div class="anexample">
<pre class="codeexample">
-wasDerivedFrom(sourceId1; ex:e1, ex:e2, ex:act, ex:g, ex:u,
+wasDerivedFrom(ex:sourceId1; ex:e1, ex:e2, ex:act, ex:g, ex:u,
[ prov:type='prov:PrimarySource' ])
</pre>
<p>Here, the derivation is provided with a <span class="name">prov:type</span> attribute and value <span class="name">prov:PrimarySource</span>.
@@ -1796,14 +1796,14 @@
<div class="anexample">
<pre class="codeexample">
-agent(ag4, [ prov:type='prov:Person', ex:name="David" ])
+agent(ex:ag4, [ prov:type='prov:Person', ex:name="David" ])
</pre>
<p>Here <span class="name">ag</span> is the agent identifier, and
- <span class="name">[ prov:type='prov:Person', ex:name="David" ]</span> are optional attributes. </p>
+ <span class="name">[ prov:type='prov:Person', ex:name="David" ]</span> is a list of optional attributes. </p>
In the next example, the optional attributes are omitted.
<pre class="codeexample">
-agent(ag4)
+agent(ex:ag4)
</pre>
</div>
@@ -1839,11 +1839,11 @@
<div class="anexample">
<pre class="codeexample">
-wasAttributedTo(attr; e, ag, [ex:license='cc:attributionURL' ])
+wasAttributedTo(ex:attr; e, ag, [ex:license='cc:attributionURL' ])
</pre>
<p> Here <span class="name">attr</span> is the optional attribution identifier, <span class="name">e</span> is an entity identifier,
- <span class="name">ag</span> is the identifier of the agent to whom the entity is abscribed,
-and <span class="name">[ex:license='cc:attributionURL' ]</span> are optional attributes. </p>
+ <span class="name">ag</span> is the identifier of the agent to whom the entity is ascribed,
+and <span class="name">[ex:license='cc:attributionURL' ]</span> is a list of optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
<pre class="codeexample">
@@ -1900,7 +1900,7 @@
<span class="name">ex:a1</span> is an activity identifier,
<span class="name">ex:ag1</span> is the optional identifier of the agent associated to the activity,
<span class="name">ex:e1</span> is the optional identifier of the plan used by the agent in the context of the activity,
- and <span class="name"> [ex:param1="a", ex:param2="b"]</span> are optional attributes. </p>
+ and <span class="name"> [ex:param1="a", ex:param2="b"]</span> is a list of optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
@@ -1910,7 +1910,7 @@
wasAssociatedWith(ex:a1, ex:ag1)
wasAssociatedWith(ex:a1, ex:ag1, ex:e1)
wasAssociatedWith(ex:a1, ex:ag1, ex:e1, [ex:param1="a", ex:param2="b"])
-wasAssociatedWith(a; ex:a1, -, ex:e1)
+wasAssociatedWith(ex:assoc; ex:a1, -, ex:e1)
</pre>
</div>
@@ -1919,7 +1919,7 @@
<div class="anexample">
-<p>The following expression illustrates a plan.
+<p>The following expression illustrates a plan.
<pre class="codeexample">
entity(ex:pl1, [ prov:type='prov:Plan' ])
</pre>
@@ -1968,22 +1968,22 @@
<div class="anexample">
<pre class="codeexample">
-actedOnBehalfOf(del1; ag2, ag1, a, [prov:type="contract"])
+actedOnBehalfOf(ex:del1; ex:ag2, ex:ag1, ex:a, [prov:type="contract"])
</pre>
-<p> Here <span class="name">del1</span> is the optional delegation identifier,
- <span class="name">ag2</span> is the identifier for the delegate agent,
- <span class="name">ag1</span> is the identifier of the responsible agent,
- <span class="name">a</span> is the optional identifier of the activity for which the delegation link holds,
- and <span class="name">[prov:type="contract"]</span> are optional attributes. </p>
+<p> Here <span class="name">ex:del1</span> is the optional delegation identifier,
+ <span class="name">ex:ag2</span> is the identifier for the delegate agent,
+ <span class="name">ex:ag1</span> is the identifier of the responsible agent,
+ <span class="name">ex:a</span> is the optional identifier of the activity for which the delegation link holds,
+ and <span class="name">[prov:type="contract"]</span> is a list of optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
<pre class="codeexample">
-actedOnBehalfOf(ag1, ag2)
-actedOnBehalfOf(ag1, ag2, a)
-actedOnBehalfOf(ag1, ag2, -, [prov:type="delegation"])
-actedOnBehalfOf(ag2, ag3, a, [prov:type="contract"])
-actedOnBehalfOf(del1; ag2, ag3, a, [prov:type="contract"])
+actedOnBehalfOf(ex:ag1, ex:ag2)
+actedOnBehalfOf(ex:ag1, ex:ag2, ex:a)
+actedOnBehalfOf(ex:ag1, ex:ag2, -, [prov:type="delegation"])
+actedOnBehalfOf(ex:ag2, ex:ag3, ex:a, [prov:type="contract"])
+actedOnBehalfOf(ex:del1; ex:ag2, ex:ag3, ex:a, [prov:type="contract"])
</pre>
</div>
@@ -2018,20 +2018,20 @@
<div class="anexample">
<pre class="codeexample">
-wasInfluencedBy(infl1;e2,e1,[ex:param="a"])
+wasInfluencedBy(ex:infl1;e2,e1,[ex:param="a"])
</pre>
<p> Here,
- <span class="name">infl1</span> is the optional influence identifier,
- <span class="name">e2</span> is an entity identifier,
- <span class="name">e1</span> is the identifier for an ancestor entity that <span class="name">e2</span> is influenced by,
+ <span class="name">ex:infl1</span> is the optional influence identifier,
+ <span class="name">ex:e2</span> is an entity identifier,
+ <span class="name">ex:e1</span> is the identifier for an ancestor entity that <span class="name">ex:e2</span> is influenced by,
and <span class="name">[ex:param="a"]</span> is the optional set of attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
<pre class="codeexample">
-wasInfluencedBy(e2,e1)
-wasInfluencedBy(e2,e1,[ex:param="a"])
-wasInfluencedBy(infl1; e2,e1)
+wasInfluencedBy(ex:e2,ex:e1)
+wasInfluencedBy(ex:e2,ex:e1,[ex:param="a"])
+wasInfluencedBy(ex:infl1; ex:e2,ex:e1)
</pre>
</div>
@@ -2060,7 +2060,7 @@
<tr><td><b><a href="http://www.w3.org/TR/2013/REC-prov-dm-20130430/#dfn-bundle-constructor">Bundle</a></b></td><td><b>Non-Terminal</b></td></tr>
<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
-<tr><td><a href="http://www.w3.org/TR/2013/REC-prov-dm-20130430/#bundle.constructor.id"><span class='attribute' id="bundle.id">id</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/2013/REC-prov-dm-20130430/#bundle.constructor.id"><span class='attribute' id="bundle.id">id</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-identifier">identifier</a></code></td></tr>
<tr><td><a href="http://www.w3.org/TR/2013/REC-prov-dm-20130430/#bundle.constructor.descriptions"><span class='attribute' id="bundle.descriptions">descriptions</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-expression">expression</a></code></td></tr>
@@ -2098,7 +2098,7 @@
<div class="anexample">
<p>The bundle of
-<a href="#anexample-bundle1" class="anexample-ref"><span>Example REF</span></a> can be referred to as an an entity, and its provenance described.</p>
+<a href="#anexample-bundle1" class="anexample-ref"><span>Example REF</span></a> can be referred to as an entity, and its provenance described.</p>
<pre class="codeexample">
entity(ex:author-view, [ prov:type='prov:Bundle' ])
</pre>
@@ -2253,12 +2253,12 @@
<div class="anexample">
<pre class="codeexample">
- hadMember(c, e1) // c contained e1
- hadMember(c, e2) // c contained e2
+ hadMember(ex:c, ex:e1) // ex:c contained ex:e1
+ hadMember(ex:c, ex:e2) // ex:c contained ex:e2
</pre>
<p> Here
- <span class="name">c</span> is the identifier for the collection whose membership is stated, and
- <span class="name">e1</span> and <span class="name">e2</span> are the entities that are members of collection c
+ <span class="name">ex:c</span> is the identifier for the collection whose membership is stated, and
+ <span class="name">ex:e1</span> and <span class="name">ex:e2</span> are the entities that are members of collection <span class="name">ex:c</span>.
<!--
<span class="name">true</span> is the complete flag indicating that the collection member is believed to be closed,
and <span class="name">[prov:label="A beautiful collection"]</span> is the optional set of attributes. </p>
@@ -2330,7 +2330,7 @@
-->
-<p>A PROV-N qualified name (production <code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME">QUALIFIED_NAME</a></code>) has a more permissive syntax then XML's <code class="content"><a href="http://www.w3.org/TR/2009/REC-xml-names-20091208/#NT-QName">QName</a></code> [[!XML-NAMES]]
+<p>A PROV-N qualified name (production <code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME">QUALIFIED_NAME</a></code>) has a more permissive syntax than XML's <code class="content"><a href="http://www.w3.org/TR/2009/REC-xml-names-20091208/#NT-QName">QName</a></code> [[!XML-NAMES]]
and SPARQL <code class="content"><a href="http://www.w3.org/TR/2008/REC-rdf-sparql-query-20080115/#rPrefixedName">PrefixedName</a></code> [[!RDF-SPARQL-QUERY]].
A <code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME">QUALIFIED_NAME</a></code> consists of a prefix and a local part. Prefixes follow the production <code class="content"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_PREFIX">PN_PREFIX</a></code> defined by SPARQL [[!RDF-SPARQL-QUERY]]. Local parts have to be conformant with <code class="content"><a class="grammarRef" href="#prod-PN_LOCAL">PN_LOCAL</a></code>, which extends the original SPARQL <code class="content"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_LOCAL">PN_LOCAL</a></code> definition
by allowing further characters (see <code class="content"><a class="grammarRef" href="#prod-PN_CHARS_OTHERS">PN_CHARS_OTHERS</a></code>):</p>
@@ -2784,7 +2784,7 @@
<p>A <dfn>document</dfn> is a house-keeping construct of PROV-N capable of packaging up PROV-N expressions and namespace declarations. A document forms a self-contained package of provenance descriptions for the purpose of <em>exchanging</em> them. A document may be used
to package up PROV-N expressions in response to a request for the provenance of something ([[PROV-AQ]]).</p>
-<p> Given its status of house keeping construct for the purpose of exchanging provenance expressions, a document is not defined as a PROV-N expression (production <code class="content"><a class="grammarRef" href="#prod-expression">expression</a></code>).</p>
+<p> Given its status of house-keeping construct for the purpose of exchanging provenance expressions, a document is not defined as a PROV-N expression (production <code class="content"><a class="grammarRef" href="#prod-expression">expression</a></code>).</p>
@@ -2830,7 +2830,7 @@
endDocument
</pre>
-<p>This container could for instance be returned as the result of a query to a provenance store for the provenance of entity <span class="name">e2</span> [[PROV-AQ]].
+<p>This container could, for instance, be returned as the result of a query to a provenance store for the provenance of entity <span class="name">e2</span> [[PROV-AQ]].
</p>
</div>
@@ -3001,6 +3001,9 @@
<li> Changed the status of this document section.
<li> Changed all URLs to PROV documents.
<li> Updated URL to IANA registered text/provenance-notation mime type.
+<li> Added ex: prefix to some identifiers in examples.
+<li> The mapping table <a href="#expression-bundle-constructor">for the bundle production</a> incorrectly referred to optionalIdentifier, which was not present in the production. It was replaced by identifier.
+<li> Replaced "are optional attributes" by the grammatically more correct "is a list of optional attributes".
</ul>
</section>
@@ -3066,7 +3069,7 @@
Reza B'Far (Oracle Corporation),
Khalid Belhajjame (University of Manchester),
James Cheney (University of Edinburgh, School of Informatics),
-Tom De Nies (iMinds - Ghent University),
+Sam Coppens (iMinds - Ghent University),
David Corsar (University of Aberdeen, Computing Science),
Stephen Cresswell (The National Archives),
Tom De Nies (iMinds - Ghent University),
--- a/model/releases/REC-prov-n-20130430/Overview.html Tue Apr 23 12:09:13 2013 +0100
+++ b/model/releases/REC-prov-n-20130430/Overview.html Tue Apr 23 12:40:56 2013 +0100
@@ -693,12 +693,6 @@
color: #ff4500;
}
-
-/* --- --- */
-ol.algorithm { counter-reset:numsection; list-style-type: none; }
-ol.algorithm li { margin: 0.5em 0; }
-ol.algorithm li:before { font-weight: bold; counter-increment: numsection; content: counters(numsection, ".") ") "; }
-
/* --- TOC --- */
.toc a, .tof a {
text-decoration: none;
@@ -805,7 +799,7 @@
</dl>
<p>
- Please refer to the <a href="http://www.w3.org/2011/prov/errata.html">errata</a> for this document, which may include some normative corrections.
+ Please refer to the <a href="http://www.w3.org/2011/prov/errata.html"><strong>errata</strong></a> for this document, which may include some normative corrections.
</p>
@@ -1358,7 +1352,7 @@
<div class="anexample" id="example_12"><div class="anexampleTitle"><a class="internalDFN" href="#example_12">Example 12</a></div>
<pre class="codeexample">activity(ex:a10, 2011-11-16T16:00:00, 2011-11-16T16:00:01, [prov:type="createFile"])
</pre>
-<p>Here <span class="name">ex:a10</span> is the activity identifier, <span class="name">2011-11-16T16:00:00</span> and <span class="name">2011-11-16T16:00:01</span> are the optional start and end times for the activity, and <span class="name">[prov:type="createFile"]</span> are optional attributes. </p>
+<p>Here <span class="name">ex:a10</span> is the activity identifier, <span class="name">2011-11-16T16:00:00</span> and <span class="name">2011-11-16T16:00:01</span> are the optional start and end times for the activity, and <span class="name">[prov:type="createFile"]</span> is a list of optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
<pre class="codeexample">activity(ex:a10)
activity(ex:a10, -, -)
@@ -1409,7 +1403,7 @@
<pre class="codeexample">wasGeneratedBy(ex:g1; tr:WD-prov-dm-20111215, ex:edit1, 2011-11-16T16:00:00, [ex:fct="save"])
</pre>
<p> Here <span class="name">ex:g1</span> is the optional generation identifier, <span class="name">tr:WD-prov-dm-20111215</span> is the identifier of the entity being generated,
- <span class="name">ex:edit1</span> is the optional identifier of the generating activity, <span class="name">2011-11-16T16:00:00</span> is the optional generation time, and <span class="name"> [ex:fct="save"]</span> are optional attributes. </p>
+ <span class="name">ex:edit1</span> is the optional identifier of the generating activity, <span class="name">2011-11-16T16:00:00</span> is the optional generation time, and <span class="name"> [ex:fct="save"]</span> is a list of optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
<pre class="codeexample">wasGeneratedBy(e2, a1, -)
@@ -1461,7 +1455,7 @@
</pre>
<p> Here <span class="name">ex:u1</span> is the optional usage identifier, <span class="name">ex:act2</span> is the identifier of the using activity,
<span class="name">ar3:0111</span> is the identifier of the entity being used,
- <span class="name">2011-11-16T16:00:00</span> is the optional usage time, and <span class="name"> [ex:fct="load"]</span> are optional attributes.</p>
+ <span class="name">2011-11-16T16:00:00</span> is the optional usage time, and <span class="name"> [ex:fct="load"]</span> is a list of optional attributes.</p>
The remaining examples show cases where some of the optionals are omitted.
<pre class="codeexample">used(ex:act2)
@@ -1506,7 +1500,7 @@
</pre>
<p> Here <span class="name">ex:inf1</span> is the optional communication identifier, <span class="name">ex:a1</span> is the identifier of the informed activity,
<span class="name">ex:a2</span> is the identifier of the informant activity,
-and <span class="name">[ex:param1="a", ex:param2="b"]</span> are optional attributes. </p>
+and <span class="name">[ex:param1="a", ex:param2="b"]</span> is a list of optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
<pre class="codeexample">wasInformedBy(ex:a1, ex:a2)
@@ -1548,7 +1542,7 @@
<div class="anexample" id="example_16"><div class="anexampleTitle"><a class="internalDFN" href="#example_16">Example 16</a></div>
- <pre class="codeexample">wasStartedBy(start; ex:act2, ex:trigger, ex:act1, 2011-11-16T16:00:00, [ex:param="a"])
+ <pre class="codeexample">wasStartedBy(ex:start; ex:act2, ex:trigger, ex:act1, 2011-11-16T16:00:00, [ex:param="a"])
</pre>
<p>Here <span class="name">start</span> is the optional start identifier, <span class="name">ex:act2</span> is the identifier of the started activity,
<span class="name">ex:trigger</span> is the optional identifier for the entity that triggered the activity start,
@@ -1560,7 +1554,7 @@
wasStartedBy(ex:act2, -, ex:act1, 2011-11-16T16:00:00)
wasStartedBy(ex:act2, -, -, 2011-11-16T16:00:00)
wasStartedBy(ex:act2, [ex:param="a"])
-wasStartedBy(start; ex:act2, e, ex:act1, 2011-11-16T16:00:00)
+wasStartedBy(ex:start; ex:act2, e, ex:act1, 2011-11-16T16:00:00)
</pre>
</div>
@@ -1598,7 +1592,7 @@
<div class="anexample" id="example_17"><div class="anexampleTitle"><a class="internalDFN" href="#example_17">Example 17</a></div>
- <pre class="codeexample">wasEndedBy(end; ex:act2, ex:trigger, ex:act3, 2011-11-16T16:00:00, [ex:param="a"])
+ <pre class="codeexample">wasEndedBy(ex:end; ex:act2, ex:trigger, ex:act3, 2011-11-16T16:00:00, [ex:param="a"])
</pre>
<p> Here <span class="name">end</span> is the optional end identifier,
<span class="name">ex:act2</span> is the identifier of the ending activity,
@@ -1612,8 +1606,8 @@
wasEndedBy(ex:act2, ex:trigger, -, 2011-11-16T16:00:00)
wasEndedBy(ex:act2, -, -, 2011-11-16T16:00:00)
wasEndedBy(ex:act2, -, -, 2011-11-16T16:00:00, [ex:param="a"])
-wasEndedBy(end; ex:act2)
-wasEndedBy(end; ex:act2, ex:trigger, -, 2011-11-16T16:00:00)
+wasEndedBy(ex:end; ex:act2)
+wasEndedBy(ex:end; ex:act2, ex:trigger, -, 2011-11-16T16:00:00)
</pre>
</div>
@@ -1718,7 +1712,7 @@
<div class="anexample" id="anexample-derivation"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-derivation">Example 19</a></div>
- <pre class="codeexample">wasDerivedFrom(d; e2, e1, a, g2, u1, [ex:comment="a righteous derivation"])
+ <pre class="codeexample">wasDerivedFrom(ex:d; e2, e1, a, g2, u1, [ex:comment="a righteous derivation"])
</pre>
<p> Here
<span class="name">d</span> is the optional derivation identifier,
@@ -1739,7 +1733,7 @@
wasDerivedFrom(e2, e1, a, -, -)
wasDerivedFrom(e2, e1, -, -, u1)
wasDerivedFrom(e2, e1, -, -, -)
-wasDerivedFrom(d; e2, e1, a, g2, u1)
+wasDerivedFrom(ex:d; e2, e1, a, g2, u1)
wasDerivedFrom(-; e2, e1, a, g2, u1)
</pre>
</div>
@@ -1755,7 +1749,7 @@
<div class="anexample" id="example_20"><div class="anexampleTitle"><a class="internalDFN" href="#example_20">Example 20</a></div>
- <pre class="codeexample">wasDerivedFrom(d; e2, e1, a, g2, u1,
+ <pre class="codeexample">wasDerivedFrom(ex:d; e2, e1, a, g2, u1,
[prov:type='prov:Revision',
ex:comment="a righteous derivation"])
</pre>
@@ -1778,7 +1772,7 @@
<div class="anexample" id="example_21"><div class="anexampleTitle"><a class="internalDFN" href="#example_21">Example 21</a></div>
- <pre class="codeexample">wasDerivedFrom(quoteId1; ex:blockQuote,ex:blog, ex:act1, ex:g, ex:u,
+ <pre class="codeexample">wasDerivedFrom(ex:quoteId1; ex:blockQuote,ex:blog, ex:act1, ex:g, ex:u,
[ prov:type='prov:Quotation' ])
</pre>
@@ -1799,7 +1793,7 @@
<div class="anexample" id="example_22"><div class="anexampleTitle"><a class="internalDFN" href="#example_22">Example 22</a></div>
- <pre class="codeexample">wasDerivedFrom(sourceId1; ex:e1, ex:e2, ex:act, ex:g, ex:u,
+ <pre class="codeexample">wasDerivedFrom(ex:sourceId1; ex:e1, ex:e2, ex:act, ex:g, ex:u,
[ prov:type='prov:PrimarySource' ])
</pre>
<p>Here, the derivation is provided with a <span class="name">prov:type</span> attribute and value <span class="name">prov:PrimarySource</span>.
@@ -1854,13 +1848,13 @@
<div class="anexample" id="example_23"><div class="anexampleTitle"><a class="internalDFN" href="#example_23">Example 23</a></div>
-<pre class="codeexample">agent(ag4, [ prov:type='prov:Person', ex:name="David" ])
+<pre class="codeexample">agent(ex:ag4, [ prov:type='prov:Person', ex:name="David" ])
</pre>
<p>Here <span class="name">ag</span> is the agent identifier, and
<span class="name">[ prov:type='prov:Person', ex:name="David" ]</span> is a list of optional attributes. </p>
In the next example, the optional attributes are omitted.
-<pre class="codeexample">agent(ag4)
+<pre class="codeexample">agent(ex:ag4)
</pre>
</div>
@@ -1895,7 +1889,7 @@
<div class="anexample" id="example_24"><div class="anexampleTitle"><a class="internalDFN" href="#example_24">Example 24</a></div>
-<pre class="codeexample">wasAttributedTo(attr; e, ag, [ex:license='cc:attributionURL' ])
+<pre class="codeexample">wasAttributedTo(ex:attr; e, ag, [ex:license='cc:attributionURL' ])
</pre>
<p> Here <span class="name">attr</span> is the optional attribution identifier, <span class="name">e</span> is an entity identifier,
<span class="name">ag</span> is the identifier of the agent to whom the entity is ascribed,
@@ -1947,30 +1941,23 @@
<div class="anexample" id="example_25"><div class="anexampleTitle"><a class="internalDFN" href="#example_25">Example 25</a></div>
-<p>The following expression illustrates a plan.
-</p><pre class="codeexample"> entity(ex:pl1, [ prov:type='prov:Plan' ])
-</pre>
-</div>
-
-
-<div class="anexample" id="example_26"><div class="anexampleTitle"><a class="internalDFN" href="#example_26">Example 26</a></div>
-<pre class="codeexample">wasAssociatedWith(ex:assoc; ex:a1, ex:ag1, ex:pl1, [ex:param1="a", ex:param2="b"])
+<pre class="codeexample">wasAssociatedWith(ex:assoc; ex:a1, ex:ag1, ex:e1, [ex:param1="a", ex:param2="b"])
</pre>
<p> Here <span class="name">ex:assoc</span> is the optional attribution identifier,
<span class="name">ex:a1</span> is an activity identifier,
<span class="name">ex:ag1</span> is the optional identifier of the agent associated to the activity,
- <span class="name">ex:pl1</span> is the optional identifier of the plan used by the agent in the context of the activity,
+ <span class="name">ex:e1</span> is the optional identifier of the plan used by the agent in the context of the activity,
and <span class="name"> [ex:param1="a", ex:param2="b"]</span> is a list of optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
-<pre class="codeexample">wasAssociatedWith(ex:a1, -, ex:pl1)
+<pre class="codeexample">wasAssociatedWith(ex:a1, -, ex:e1)
wasAssociatedWith(ex:a1, ex:ag1)
-wasAssociatedWith(ex:a1, ex:ag1, ex:pl1)
-wasAssociatedWith(ex:a1, ex:ag1, ex:pl1, [ex:param1="a", ex:param2="b"])
-wasAssociatedWith(a; ex:a1, -, ex:pl1)
+wasAssociatedWith(ex:a1, ex:ag1, ex:e1)
+wasAssociatedWith(ex:a1, ex:ag1, ex:e1, [ex:param1="a", ex:param2="b"])
+wasAssociatedWith(ex:assoc; ex:a1, -, ex:e1)
</pre>
</div>
@@ -1978,6 +1965,12 @@
<p>Additional semantic rules (<a href="#semantic-rules-summary">Section 3.7.5</a>) apply to <code class="content"><a class="grammarRef" href="#prod-associationExpression">associationExpression</a></code>.</p>
+<div class="anexample" id="example_26"><div class="anexampleTitle"><a class="internalDFN" href="#example_26">Example 26</a></div>
+<p>The following expression illustrates a plan.
+</p><pre class="codeexample"> entity(ex:pl1, [ prov:type='prov:Plan' ])
+</pre>
+</div>
+
<!--
<p><strong>Note:</strong>The production <code class="content"><a class="grammarRef" href="#prod-associationExpression">associationExpression</a></code> allows for expressions <span class="name">wasAssociatedWith(a, -, -)</span> and <span class="name">wasAssociatedWith(-; a, -, -)</span>. However, these expressions are not valid in PROV-N,
@@ -2020,21 +2013,21 @@
<div class="anexample" id="example_27"><div class="anexampleTitle"><a class="internalDFN" href="#example_27">Example 27</a></div>
- <pre class="codeexample">actedOnBehalfOf(del1; ag2, ag1, a, [prov:type="contract"])
+ <pre class="codeexample">actedOnBehalfOf(ex:del1; ex:ag2, ex:ag1, ex:a, [prov:type="contract"])
</pre>
-<p> Here <span class="name">del1</span> is the optional delegation identifier,
- <span class="name">ag2</span> is the identifier for the delegate agent,
- <span class="name">ag1</span> is the identifier of the responsible agent,
- <span class="name">a</span> is the optional identifier of the activity for which the delegation link holds,
+<p> Here <span class="name">ex:del1</span> is the optional delegation identifier,
+ <span class="name">ex:ag2</span> is the identifier for the delegate agent,
+ <span class="name">ex:ag1</span> is the identifier of the responsible agent,
+ <span class="name">ex:a</span> is the optional identifier of the activity for which the delegation link holds,
and <span class="name">[prov:type="contract"]</span> is a list of optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
-<pre class="codeexample">actedOnBehalfOf(ag1, ag2)
-actedOnBehalfOf(ag1, ag2, a)
-actedOnBehalfOf(ag1, ag2, -, [prov:type="delegation"])
-actedOnBehalfOf(ag2, ag3, a, [prov:type="contract"])
-actedOnBehalfOf(del1; ag2, ag3, a, [prov:type="contract"])
+<pre class="codeexample">actedOnBehalfOf(ex:ag1, ex:ag2)
+actedOnBehalfOf(ex:ag1, ex:ag2, ex:a)
+actedOnBehalfOf(ex:ag1, ex:ag2, -, [prov:type="delegation"])
+actedOnBehalfOf(ex:ag2, ex:ag3, ex:a, [prov:type="contract"])
+actedOnBehalfOf(ex:del1; ex:ag2, ex:ag3, ex:a, [prov:type="contract"])
</pre>
</div>
@@ -2068,19 +2061,19 @@
<div class="anexample" id="example_28"><div class="anexampleTitle"><a class="internalDFN" href="#example_28">Example 28</a></div>
- <pre class="codeexample">wasInfluencedBy(infl1;e2,e1,[ex:param="a"])
+ <pre class="codeexample">wasInfluencedBy(ex:infl1;e2,e1,[ex:param="a"])
</pre>
<p> Here,
- <span class="name">infl1</span> is the optional influence identifier,
- <span class="name">e2</span> is an entity identifier,
- <span class="name">e1</span> is the identifier for an ancestor entity that <span class="name">e2</span> is influenced by,
+ <span class="name">ex:infl1</span> is the optional influence identifier,
+ <span class="name">ex:e2</span> is an entity identifier,
+ <span class="name">ex:e1</span> is the identifier for an ancestor entity that <span class="name">ex:e2</span> is influenced by,
and <span class="name">[ex:param="a"]</span> is the optional set of attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
- <pre class="codeexample">wasInfluencedBy(e2,e1)
-wasInfluencedBy(e2,e1,[ex:param="a"])
-wasInfluencedBy(infl1; e2,e1)
+ <pre class="codeexample">wasInfluencedBy(ex:e2,ex:e1)
+wasInfluencedBy(ex:e2,ex:e1,[ex:param="a"])
+wasInfluencedBy(ex:infl1; ex:e2,ex:e1)
</pre>
</div>
@@ -2296,12 +2289,12 @@
<div class="anexample" id="example_34"><div class="anexampleTitle"><a class="internalDFN" href="#example_34">Example 34</a></div>
- <pre class="codeexample"> hadMember(c, e1) // c contained e1
- hadMember(c, e2) // c contained e2
+ <pre class="codeexample"> hadMember(ex:c, ex:e1) // ex:c contained ex:e1
+ hadMember(ex:c, ex:e2) // ex:c contained ex:e2
</pre>
<p> Here
- <span class="name">c</span> is the identifier for the collection whose membership is stated, and
- <span class="name">e1</span> and <span class="name">e2</span> are the entities that are members of collection c
+ <span class="name">ex:c</span> is the identifier for the collection whose membership is stated, and
+ <span class="name">ex:e1</span> and <span class="name">ex:e2</span> are the entities that are members of collection <span class="name">ex:c</span>.
<!--
<span class="name">true</span> is the complete flag indicating that the collection member is believed to be closed,
and <span class="name">[prov:label="A beautiful collection"]</span> is the optional set of attributes. </p>
@@ -3016,6 +3009,9 @@
<li> Changed the status of this document section.
</li><li> Changed all URLs to PROV documents.
</li><li> Updated URL to IANA registered text/provenance-notation mime type.
+</li><li> Added ex: prefix to some identifiers in examples.
+</li><li> The mapping table <a href="#expression-bundle-constructor">for the bundle production</a> incorrectly referred to optionalIdentifier, which was not present in the production. It was replaced by identifier.
+</li><li> Replaced "are optional attributes" by the grammatically more correct "is a list of optional attributes".
</li></ul>
</section>
--- a/model/releases/REC-prov-n-20130430/diff-n.html Tue Apr 23 12:09:13 2013 +0100
+++ b/model/releases/REC-prov-n-20130430/diff-n.html Tue Apr 23 12:40:56 2013 +0100
@@ -701,30 +701,59 @@
}
-/* --- --- */
-ol.algorithm { counter-reset:numsection; list-style-type: none; }
-ol.algorithm li { margin: 0.5em 0; }
-ol.algorithm li:before { font-weight: bold; counter-increment: numsection; content: counters(numsection, ".") ") "; }
-
-/* --- TOC --- */
-.toc a, .tof a {
- text-decoration: none;
-}
-
-a .secno, a .figno {
+
+
+/* --- <span class="insert">TOC </span>--- */
+<span class="delete">ol.algorithm</span><span class="insert">.toc a, .tof a</span> {<span class="delete"> counter-reset:numsection; list-style-type: </span><span class="insert">
+ text-decoration: </span>none;
+}<span class="delete">
+ol.algorithm li</span><span class="insert">
+
+a .secno, a .figno</span> {<span class="delete"> margin: 0.5em 0; </span><span class="insert">
color: #000;
-}
-
-ul.tof, ol.tof {
+</span>}<span class="delete">
+ol.algorithm li:before</span><span class="insert">
+
+ul.tof, ol.tof</span> {<span class="delete"> font-weight: bold; counter-increment: numsection; content: counters(numsection, ".") ") "; </span><span class="insert">
list-style: none outside none;
}
.caption {
margin-top: 0.5em;
font-style: italic;
+</span>}
+
+/* --- <span class="delete">TOC</span><span class="insert">TABLE</span> --- */
+<span class="delete">.toc a, .tof a</span><span class="insert">table.simple</span> {
+ <span class="delete">text-decoration:</span><span class="insert">border-spacing: 0;
+ border-collapse:</span> <span class="delete">none;</span><span class="insert">collapse;
+ border-bottom: 3px solid #005a9c;</span>
}
-/* --- TABLE --- */
+<span class="delete">a .secno, a .figno</span><span class="insert">.simple th</span> {<span class="insert">
+ background: #005a9c;</span>
+ color: <span class="delete">#000;</span><span class="insert">#fff;
+ padding: 3px 5px;
+ text-align: left;</span>
+}
+
+<span class="delete">ul.tof, ol.tof</span><span class="insert">.simple th[scope="row"]</span> {
+ <span class="delete">list-style: none outside none;</span><span class="insert">background: inherit;
+ color: inherit;
+ border-top: 1px solid #ddd;</span>
+}
+
+<span class="delete">.caption</span><span class="insert">.simple td</span> {
+ <span class="delete">margin-top: 0.5em;
+ font-style: italic;</span><span class="insert">padding: 3px 10px;
+ border-top: 1px solid #ddd;
+}
+
+.simple tr:nth-child(even) {
+ background: #f0f6ff;</span>
+}
+
+/* --- <span class="delete">TABLE --- */
table.simple {
border-spacing: 0;
border-collapse: collapse;
@@ -753,7 +782,7 @@
background: #f0f6ff;
}
-/* --- DL --- */
+/* --- </span>DL --- */
.section dd > p:first-child {
margin-top: 0;
}
@@ -818,7 +847,7 @@
<p><span class="insert">
- Please refer to the </span><a href="http://www.w3.org/2011/prov/errata.html"><span class="insert">errata</span></a><span class="insert"> for this document, which may include some normative corrections.
+ Please refer to the </span><a href="http://www.w3.org/2011/prov/errata.html"><strong><span class="insert">errata</span></strong></a><span class="insert"> for this document, which may include some normative corrections.
</span></p>
@@ -1010,7 +1039,7 @@
<ul>
<li>Technology independence. PROV-N provides a simple syntax that can be mapped to several technologies.
-</li><li>Human readability. PROV-N follows a functional syntax style that is meant to be easily human-readable so it can be used in illustrative examples, such as those presented in the PROV documents suite
+</li><li>Human readability. PROV-N follows a functional syntax style that is meant to be easily human-readable so it can be used in illustrative examples, such as those presented in the PROV documents <span class="delete">suite</span><span class="insert">suite.</span>
</li><li>Formality. PROV-N is defined through a formal grammar amenable to be used with parser generators.
@@ -1287,7 +1316,7 @@
<h3><span class="secno">2.5 </span>Identifiers and attributes</h3>
<p>Almost all expressions defined in the grammar include an identifier (see <a href="#expression-identifier">Section 3.7.1</a> for the full syntax of identifiers). Most expressions
-can also include a set of attribute-value pairs, delimited by square brackets. Identifiers are optional except for Entities, Activites, and Agents. Identifiers are always the first term in any expression. <em>Optional</em> identifiers <em class="rfc2119" title="MUST">MUST</em> be separated using a semi-colon ';', but where the identifiers are required, a regular comma ',' <em class="rfc2119" title="MUST">MUST</em> be used. This makes it possible to completely omit an optional identifier with no ambiguity arising. Also, if the set of attribute-value pairs is present, it is always the last term in any expression.</p>
+can also include a set of attribute-value pairs, delimited by square brackets. Identifiers are optional except for Entities, <span class="delete">Activites,</span><span class="insert">Activities,</span> and Agents. Identifiers are always the first term in any expression. <em>Optional</em> identifiers <em class="rfc2119" title="MUST">MUST</em> be separated using a semi-colon ';', but where the identifiers are required, a regular comma ',' <em class="rfc2119" title="MUST">MUST</em> be used. This makes it possible to completely omit an optional identifier with no ambiguity arising. Also, if the set of attribute-value pairs is present, it is always the last term in any expression.</p>
<div class="anexample" id="example_9"><div class="anexampleTitle"><a class="internalDFN" href="#example_9">Example 9</a></div>
<p>Derivation has an optional identifier. In the first expression, the identifier is not available, while it is explicit in the second. The third example shows that one can optionally indicate the missing identifier using the <span class="name">-</span> marker. This is equivalent to the first expression. </p>
@@ -1408,7 +1437,7 @@
<div class="anexample" id="example_12"><div class="anexampleTitle"><a class="internalDFN" href="#example_12">Example 12</a></div>
<pre class="codeexample">activity(ex:a10, 2011-11-16T16:00:00, 2011-11-16T16:00:01, [prov:type="createFile"])
</pre>
-<p>Here <span class="name">ex:a10</span> is the activity identifier, <span class="name">2011-11-16T16:00:00</span> and <span class="name">2011-11-16T16:00:01</span> are the optional start and end times for the activity, and <span class="name">[prov:type="createFile"]</span> are optional attributes. </p>
+<p>Here <span class="name">ex:a10</span> is the activity identifier, <span class="name">2011-11-16T16:00:00</span> and <span class="name">2011-11-16T16:00:01</span> are the optional start and end times for the activity, and <span class="name">[prov:type="createFile"]</span> <span class="delete">are</span><span class="insert">is a list of</span> optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
<pre class="codeexample">activity(ex:a10)
activity(ex:a10, -, -)
@@ -1459,7 +1488,7 @@
<pre class="codeexample">wasGeneratedBy(ex:g1; tr:WD-prov-dm-20111215, ex:edit1, 2011-11-16T16:00:00, [ex:fct="save"])
</pre>
<p> Here <span class="name">ex:g1</span> is the optional generation identifier, <span class="name">tr:WD-prov-dm-20111215</span> is the identifier of the entity being generated,
- <span class="name">ex:edit1</span> is the optional identifier of the generating activity, <span class="name">2011-11-16T16:00:00</span> is the optional generation time, and <span class="name"> [ex:fct="save"]</span> are optional attributes. </p>
+ <span class="name">ex:edit1</span> is the optional identifier of the generating activity, <span class="name">2011-11-16T16:00:00</span> is the optional generation time, and <span class="name"> [ex:fct="save"]</span> <span class="delete">are</span><span class="insert">is a list of</span> optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
<pre class="codeexample">wasGeneratedBy(e2, a1, -)
@@ -1509,7 +1538,7 @@
</pre>
<p> Here <span class="name">ex:u1</span> is the optional usage identifier, <span class="name">ex:act2</span> is the identifier of the using activity,
<span class="name">ar3:0111</span> is the identifier of the entity being used,
- <span class="name">2011-11-16T16:00:00</span> is the optional usage time, and <span class="name"> [ex:fct="load"]</span> are optional attributes.</p>
+ <span class="name">2011-11-16T16:00:00</span> is the optional usage time, and <span class="name"> [ex:fct="load"]</span> <span class="delete">are</span><span class="insert">is a list of</span> optional attributes.</p>
The remaining examples show cases where some of the optionals are omitted.
<pre class="codeexample">used(ex:act2)
@@ -1554,13 +1583,13 @@
</pre>
<p> Here <span class="name">ex:inf1</span> is the optional communication identifier, <span class="name">ex:a1</span> is the identifier of the informed activity,
<span class="name">ex:a2</span> is the identifier of the informant activity,
-and <span class="name">[ex:param1="a", ex:param2="b"]</span> are optional attributes. </p>
+and <span class="name">[ex:param1="a", ex:param2="b"]</span> <span class="delete">are</span><span class="insert">is a list of</span> optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
<pre class="codeexample">wasInformedBy(ex:a1, ex:a2)
wasInformedBy(ex:a1, ex:a2, [ex:param1="a", ex:param2="b"])
-wasInformedBy(i; ex:a1, ex:a2)
-wasInformedBy(i; ex:a1, ex:a2, [ex:param1="a", ex:param2="b"])
+<span class="delete">wasInformedBy(i;</span><span class="insert">wasInformedBy(ex:i;</span> ex:a1, ex:a2)
+<span class="delete">wasInformedBy(i;</span><span class="insert">wasInformedBy(ex:i;</span> ex:a1, ex:a2, [ex:param1="a", ex:param2="b"])
</pre>
</div>
</section>
@@ -1596,19 +1625,19 @@
<div class="anexample" id="example_16"><div class="anexampleTitle"><a class="internalDFN" href="#example_16">Example 16</a></div>
- <pre class="codeexample">wasStartedBy(start; ex:act2, ex:trigger, ex:act1, 2011-11-16T16:00:00, [ex:param="a"])
+ <pre class="codeexample"><span class="delete">wasStartedBy(start;</span><span class="insert">wasStartedBy(ex:start;</span> ex:act2, ex:trigger, ex:act1, 2011-11-16T16:00:00, [ex:param="a"])
</pre>
<p>Here <span class="name">start</span> is the optional start identifier, <span class="name">ex:act2</span> is the identifier of the started activity,
<span class="name">ex:trigger</span> is the optional identifier for the entity that triggered the activity start,
<span class="name">ex:act1</span> is the optional identifier for the activity that generated the (possibly unspecified) entity <span class="name">ex:trigger</span>,
- <span class="name">2011-11-16T16:00:00</span> is the optional start time, and <span class="name"> [ex:param="a"]</span> are optional attributes.</p>
+ <span class="name">2011-11-16T16:00:00</span> is the optional start time, and <span class="name"> [ex:param="a"]</span> <span class="delete">are</span><span class="insert">is a list of</span> optional attributes.</p>
The remaining examples show cases where some of the optionals are omitted.
<pre class="codeexample">wasStartedBy(ex:act2, -, ex:act1, -)
wasStartedBy(ex:act2, -, ex:act1, 2011-11-16T16:00:00)
wasStartedBy(ex:act2, -, -, 2011-11-16T16:00:00)
wasStartedBy(ex:act2, [ex:param="a"])
-wasStartedBy(start; ex:act2, e, ex:act1, 2011-11-16T16:00:00)
+<span class="delete">wasStartedBy(start;</span><span class="insert">wasStartedBy(ex:start;</span> ex:act2, e, ex:act1, 2011-11-16T16:00:00)
</pre>
</div>
@@ -1646,13 +1675,13 @@
<div class="anexample" id="example_17"><div class="anexampleTitle"><a class="internalDFN" href="#example_17">Example 17</a></div>
- <pre class="codeexample">wasEndedBy(end; ex:act2, ex:trigger, ex:act3, 2011-11-16T16:00:00, [ex:param="a"])
+ <pre class="codeexample"><span class="delete">wasEndedBy(end;</span><span class="insert">wasEndedBy(ex:end;</span> ex:act2, ex:trigger, ex:act3, 2011-11-16T16:00:00, [ex:param="a"])
</pre>
<p> Here <span class="name">end</span> is the optional end identifier,
<span class="name">ex:act2</span> is the identifier of the ending activity,
<span class="name">ex:trigger</span> is the identifier of the entity that triggered the activity end,
<span class="name">ex:act3</span> is the optional identifier for the activity that generated the (possibly unspecified) entity <span class="name">ex:trigger</span>,
- <span class="name">2011-11-16T16:00:00</span> is the optional usage time, and <span class="name"> [ex:param="a"]</span> are optional attributes. </p>
+ <span class="name">2011-11-16T16:00:00</span> is the optional usage time, and <span class="name"> [ex:param="a"]</span> <span class="delete">are</span><span class="insert">is a list of</span> optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
@@ -1660,8 +1689,8 @@
wasEndedBy(ex:act2, ex:trigger, -, 2011-11-16T16:00:00)
wasEndedBy(ex:act2, -, -, 2011-11-16T16:00:00)
wasEndedBy(ex:act2, -, -, 2011-11-16T16:00:00, [ex:param="a"])
-wasEndedBy(end; ex:act2)
-wasEndedBy(end; ex:act2, ex:trigger, -, 2011-11-16T16:00:00)
+<span class="delete">wasEndedBy(end;</span><span class="insert">wasEndedBy(ex:end;</span> ex:act2)
+<span class="delete">wasEndedBy(end;</span><span class="insert">wasEndedBy(ex:end;</span> ex:act2, ex:trigger, -, 2011-11-16T16:00:00)
</pre>
</div>
@@ -1704,7 +1733,7 @@
<pre class="codeexample">wasInvalidatedBy(ex:inv; tr:WD-prov-dm-20111215, ex:edit1, 2011-11-16T16:00:00, [ex:fct="save"])
</pre>
<p> Here <span class="name">ex:inv</span> is the optional invalidation identifier, <span class="name">tr:WD-prov-dm-20111215</span> is the identifier of the entity being invalidated,
- <span class="name">ex:edit1</span> is the optional identifier of the invalidating activity, <span class="name">2011-11-16T16:00:00</span> is the optional invalidation time, and <span class="name"> [ex:fct="save"]</span> are optional attributes. </p>
+ <span class="name">ex:edit1</span> is the optional identifier of the invalidating activity, <span class="name">2011-11-16T16:00:00</span> is the optional invalidation time, and <span class="name"> [ex:fct="save"]</span> <span class="delete">are</span><span class="insert">is a list of</span> optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
<pre class="codeexample">wasInvalidatedBy(tr:WD-prov-dm-20111215, ex:edit1, -)
@@ -1766,7 +1795,7 @@
<div class="anexample" id="anexample-derivation"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-derivation">Example 19</a></div>
- <pre class="codeexample">wasDerivedFrom(d; e2, e1, a, g2, u1, [ex:comment="a righteous derivation"])
+ <pre class="codeexample"><span class="delete">wasDerivedFrom(d;</span><span class="insert">wasDerivedFrom(ex:d;</span> e2, e1, a, g2, u1, [ex:comment="a righteous derivation"])
</pre>
<p> Here
<span class="name">d</span> is the optional derivation identifier,
@@ -1775,7 +1804,7 @@
<span class="name">a</span> is the optional identifier of the activity which used/generated the entities,
<span class="name">g2</span> is the optional identifier of the generation,
<span class="name">u1</span> is the optional identifier of the usage,
- and <span class="name">[ex:comment="a righteous derivation"]</span> are optional attributes. </p>
+ and <span class="name">[ex:comment="a righteous derivation"]</span> <span class="delete">are</span><span class="insert">is a list of</span> optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
@@ -1787,7 +1816,7 @@
wasDerivedFrom(e2, e1, a, -, -)
wasDerivedFrom(e2, e1, -, -, u1)
wasDerivedFrom(e2, e1, -, -, -)
-wasDerivedFrom(d; e2, e1, a, g2, u1)
+<span class="delete">wasDerivedFrom(d;</span><span class="insert">wasDerivedFrom(ex:d;</span> e2, e1, a, g2, u1)
wasDerivedFrom(-; e2, e1, a, g2, u1)
</pre>
</div>
@@ -1803,7 +1832,7 @@
<div class="anexample" id="example_20"><div class="anexampleTitle"><a class="internalDFN" href="#example_20">Example 20</a></div>
- <pre class="codeexample">wasDerivedFrom(d; e2, e1, a, g2, u1,
+ <pre class="codeexample"><span class="delete">wasDerivedFrom(d;</span><span class="insert">wasDerivedFrom(ex:d;</span> e2, e1, a, g2, u1,
[prov:type='prov:Revision',
ex:comment="a righteous derivation"])
</pre>
@@ -1826,7 +1855,7 @@
<div class="anexample" id="example_21"><div class="anexampleTitle"><a class="internalDFN" href="#example_21">Example 21</a></div>
- <pre class="codeexample">wasDerivedFrom(quoteId1; ex:blockQuote,ex:blog, ex:act1, ex:g, ex:u,
+ <pre class="codeexample"><span class="delete">wasDerivedFrom(quoteId1;</span><span class="insert">wasDerivedFrom(ex:quoteId1;</span> ex:blockQuote,ex:blog, ex:act1, ex:g, ex:u,
[ prov:type='prov:Quotation' ])
</pre>
@@ -1847,7 +1876,7 @@
<div class="anexample" id="example_22"><div class="anexampleTitle"><a class="internalDFN" href="#example_22">Example 22</a></div>
- <pre class="codeexample">wasDerivedFrom(sourceId1; ex:e1, ex:e2, ex:act, ex:g, ex:u,
+ <pre class="codeexample"><span class="delete">wasDerivedFrom(sourceId1;</span><span class="insert">wasDerivedFrom(ex:sourceId1;</span> ex:e1, ex:e2, ex:act, ex:g, ex:u,
[ prov:type='prov:PrimarySource' ])
</pre>
<p>Here, the derivation is provided with a <span class="name">prov:type</span> attribute and value <span class="name">prov:PrimarySource</span>.
@@ -1892,13 +1921,13 @@
<div class="anexample" id="example_23"><div class="anexampleTitle"><a class="internalDFN" href="#example_23">Example 23</a></div>
-<pre class="codeexample">agent(ag4, [ prov:type='prov:Person', ex:name="David" ])
+<pre class="codeexample"><span class="delete">agent(ag4,</span><span class="insert">agent(ex:ag4,</span> [ prov:type='prov:Person', ex:name="David" ])
</pre>
<p>Here <span class="name">ag</span> is the agent identifier, and
- <span class="name">[ prov:type='prov:Person', ex:name="David" ]</span> are optional attributes. </p>
+ <span class="name">[ prov:type='prov:Person', ex:name="David" ]</span> <span class="delete">are</span><span class="insert">is a list of</span> optional attributes. </p>
In the next example, the optional attributes are omitted.
-<pre class="codeexample">agent(ag4)
+<pre class="codeexample"><span class="delete">agent(ag4)</span><span class="insert">agent(ex:ag4)</span>
</pre>
</div>
@@ -1933,11 +1962,11 @@
<div class="anexample" id="example_24"><div class="anexampleTitle"><a class="internalDFN" href="#example_24">Example 24</a></div>
-<pre class="codeexample">wasAttributedTo(attr; e, ag, [ex:license='cc:attributionURL' ])
+<pre class="codeexample"><span class="delete">wasAttributedTo(attr;</span><span class="insert">wasAttributedTo(ex:attr;</span> e, ag, [ex:license='cc:attributionURL' ])
</pre>
<p> Here <span class="name">attr</span> is the optional attribution identifier, <span class="name">e</span> is an entity identifier,
- <span class="name">ag</span> is the identifier of the agent to whom the entity is abscribed,
-and <span class="name">[ex:license='cc:attributionURL' ]</span> are optional attributes. </p>
+ <span class="name">ag</span> is the identifier of the agent to whom the entity is <span class="delete">abscribed,</span><span class="insert">ascribed,</span>
+and <span class="name">[ex:license='cc:attributionURL' ]</span> <span class="delete">are</span><span class="insert">is a list of</span> optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
<pre class="codeexample">wasAttributedTo(e, ag)
@@ -1992,7 +2021,7 @@
<span class="name">ex:a1</span> is an activity identifier,
<span class="name">ex:ag1</span> is the optional identifier of the agent associated to the activity,
<span class="name">ex:e1</span> is the optional identifier of the plan used by the agent in the context of the activity,
- and <span class="name"> [ex:param1="a", ex:param2="b"]</span> are optional attributes. </p>
+ and <span class="name"> [ex:param1="a", ex:param2="b"]</span> <span class="delete">are</span><span class="insert">is a list of</span> optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
@@ -2001,7 +2030,7 @@
wasAssociatedWith(ex:a1, ex:ag1)
wasAssociatedWith(ex:a1, ex:ag1, ex:e1)
wasAssociatedWith(ex:a1, ex:ag1, ex:e1, [ex:param1="a", ex:param2="b"])
-wasAssociatedWith(a; ex:a1, -, ex:e1)
+<span class="delete">wasAssociatedWith(a;</span><span class="insert">wasAssociatedWith(ex:assoc;</span> ex:a1, -, ex:e1)
</pre>
</div>
@@ -2010,7 +2039,7 @@
<div class="anexample" id="example_26"><div class="anexampleTitle"><a class="internalDFN" href="#example_26">Example 26</a></div>
-<p>The following expression illustrates a plan.
+<p>The following expression illustrates a plan.
</p><pre class="codeexample"> entity(ex:pl1, [ prov:type='prov:Plan' ])
</pre>
</div>
@@ -2053,21 +2082,23 @@
<div class="anexample" id="example_27"><div class="anexampleTitle"><a class="internalDFN" href="#example_27">Example 27</a></div>
- <pre class="codeexample">actedOnBehalfOf(del1; ag2, ag1, a, [prov:type="contract"])
+ <pre class="codeexample"><span class="delete">actedOnBehalfOf(del1; ag2, ag1, a,</span><span class="insert">actedOnBehalfOf(ex:del1; ex:ag2, ex:ag1, ex:a,</span> [prov:type="contract"])
</pre>
-<p> Here <span class="name">del1</span> is the optional delegation identifier,
- <span class="name">ag2</span> is the identifier for the delegate agent,
- <span class="name">ag1</span> is the identifier of the responsible agent,
- <span class="name">a</span> is the optional identifier of the activity for which the delegation link holds,
- and <span class="name">[prov:type="contract"]</span> are optional attributes. </p>
+<p> Here <span class="name"><span class="delete">del1</span><span class="insert">ex:del1</span></span> is the optional delegation identifier,
+ <span class="name"><span class="delete">ag2</span><span class="insert">ex:ag2</span></span> is the identifier for the delegate agent,
+ <span class="name"><span class="delete">ag1</span><span class="insert">ex:ag1</span></span> is the identifier of the responsible agent,
+ <span class="name"><span class="delete">a</span><span class="insert">ex:a</span></span> is the optional identifier of the activity for which the delegation link holds,
+ and <span class="name">[prov:type="contract"]</span> <span class="delete">are</span><span class="insert">is a list of</span> optional attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
-<pre class="codeexample">actedOnBehalfOf(ag1, ag2)
+<pre class="codeexample"><span class="delete">actedOnBehalfOf(ag1, ag2)
actedOnBehalfOf(ag1, ag2, a)
-actedOnBehalfOf(ag1, ag2, -, [prov:type="delegation"])
-actedOnBehalfOf(ag2, ag3, a, [prov:type="contract"])
-actedOnBehalfOf(del1; ag2, ag3, a, [prov:type="contract"])
+actedOnBehalfOf(ag1, ag2,</span><span class="insert">actedOnBehalfOf(ex:ag1, ex:ag2)
+actedOnBehalfOf(ex:ag1, ex:ag2, ex:a)
+actedOnBehalfOf(ex:ag1, ex:ag2,</span> -, [prov:type="delegation"])
+<span class="delete">actedOnBehalfOf(ag2, ag3, a,</span><span class="insert">actedOnBehalfOf(ex:ag2, ex:ag3, ex:a,</span> [prov:type="contract"])
+<span class="delete">actedOnBehalfOf(del1; ag2, ag3, a,</span><span class="insert">actedOnBehalfOf(ex:del1; ex:ag2, ex:ag3, ex:a,</span> [prov:type="contract"])
</pre>
</div>
@@ -2101,19 +2132,21 @@
<div class="anexample" id="example_28"><div class="anexampleTitle"><a class="internalDFN" href="#example_28">Example 28</a></div>
- <pre class="codeexample">wasInfluencedBy(infl1;e2,e1,[ex:param="a"])
+ <pre class="codeexample"><span class="delete">wasInfluencedBy(infl1;e2,e1,[ex:param="a"])</span><span class="insert">wasInfluencedBy(ex:infl1;e2,e1,[ex:param="a"])</span>
</pre>
<p> Here,
- <span class="name">infl1</span> is the optional influence identifier,
- <span class="name">e2</span> is an entity identifier,
- <span class="name">e1</span> is the identifier for an ancestor entity that <span class="name">e2</span> is influenced by,
+ <span class="name"><span class="delete">infl1</span><span class="insert">ex:infl1</span></span> is the optional influence identifier,
+ <span class="name"><span class="delete">e2</span><span class="insert">ex:e2</span></span> is an entity identifier,
+ <span class="name"><span class="delete">e1</span><span class="insert">ex:e1</span></span> is the identifier for an ancestor entity that <span class="name"><span class="delete">e2</span><span class="insert">ex:e2</span></span> is influenced by,
and <span class="name">[ex:param="a"]</span> is the optional set of attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
- <pre class="codeexample">wasInfluencedBy(e2,e1)
+ <pre class="codeexample"><span class="delete">wasInfluencedBy(e2,e1)
wasInfluencedBy(e2,e1,[ex:param="a"])
-wasInfluencedBy(infl1; e2,e1)
+wasInfluencedBy(infl1; e2,e1)</span><span class="insert">wasInfluencedBy(ex:e2,ex:e1)
+wasInfluencedBy(ex:e2,ex:e1,[ex:param="a"])
+wasInfluencedBy(ex:infl1; ex:e2,ex:e1)</span>
</pre>
</div>
@@ -2142,7 +2175,7 @@
<tbody><tr><td><b><a href="http://www.w3.org/TR/2013/REC-prov-dm-20130430/#dfn-bundle-constructor">Bundle</a></b></td><td><b>Non-Terminal</b></td></tr>
<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
-<tr><td><a href="http://www.w3.org/TR/2013/REC-prov-dm-20130430/#bundle.constructor.id"><span class="attribute" id="bundle.id">id</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/2013/REC-prov-dm-20130430/#bundle.constructor.id"><span class="attribute" id="bundle.id">id</span></a></td><td><code class="content"><span class="delete">optionalIdentifier</span><a class="grammarRef" href="#prod-identifier"><span class="insert">identifier</span></a></code></td></tr>
<tr><td><a href="http://www.w3.org/TR/2013/REC-prov-dm-20130430/#bundle.constructor.descriptions"><span class="attribute" id="bundle.descriptions">descriptions</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-expression">expression</a></code></td></tr>
@@ -2179,7 +2212,7 @@
<div class="anexample" id="example_30"><div class="anexampleTitle"><a class="internalDFN" href="#example_30">Example 30</a></div>
<p>The bundle of
-<a href="#anexample-bundle1" class="anexample-ref"><span>Example 29</span></a> can be referred to as an an entity, and its provenance described.</p>
+<a href="#anexample-bundle1" class="anexample-ref"><span>Example 29</span></a> can be referred to as an <span class="delete">an </span>entity, and its provenance described.</p>
<pre class="codeexample"> entity(ex:author-view, [ prov:type='prov:Bundle' ])
</pre>
</div>
@@ -2319,12 +2352,12 @@
<div class="anexample" id="example_34"><div class="anexampleTitle"><a class="internalDFN" href="#example_34">Example 34</a></div>
- <pre class="codeexample"> hadMember(c, e1) // c contained e1
- hadMember(c, e2) // c contained e2
+ <pre class="codeexample"> <span class="delete">hadMember(c, e1)</span><span class="insert">hadMember(ex:c, ex:e1)</span> // <span class="delete">c</span><span class="insert">ex:c</span> contained <span class="delete">e1</span><span class="insert">ex:e1</span>
+ <span class="delete">hadMember(c, e2)</span><span class="insert">hadMember(ex:c, ex:e2)</span> // <span class="delete">c</span><span class="insert">ex:c</span> contained <span class="delete">e2</span><span class="insert">ex:e2</span>
</pre>
<p> Here
- <span class="name">c</span> is the identifier for the collection whose membership is stated, and
- <span class="name">e1</span> and <span class="name">e2</span> are the entities that are members of collection c
+ <span class="name"><span class="delete">c</span><span class="insert">ex:c</span></span> is the identifier for the collection whose membership is stated, and
+ <span class="name"><span class="delete">e1</span><span class="insert">ex:e1</span></span> and <span class="name"><span class="delete">e2</span><span class="insert">ex:e2</span></span> are the entities that are members of collection <span class="delete">c</span><span class="name"><span class="insert">ex:c</span></span><span class="insert">.</span>
</p></div>
@@ -2377,7 +2410,7 @@
-<p>A PROV-N qualified name (production <code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME">QUALIFIED_NAME</a></code>) has a more permissive syntax then XML's <code class="content"><a href="http://www.w3.org/TR/2009/REC-xml-names-20091208/#NT-QName">QName</a></code> [<cite><a class="bibref" href="#bib-XML-NAMES">XML-NAMES</a></cite>]
+<p>A PROV-N qualified name (production <code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME">QUALIFIED_NAME</a></code>) has a more permissive syntax <span class="delete">then</span><span class="insert">than</span> XML's <code class="content"><a href="http://www.w3.org/TR/2009/REC-xml-names-20091208/#NT-QName">QName</a></code> [<cite><a class="bibref" href="#bib-XML-NAMES">XML-NAMES</a></cite>]
and SPARQL <code class="content"><a href="http://www.w3.org/TR/2008/REC-rdf-sparql-query-20080115/#rPrefixedName">PrefixedName</a></code> [<cite><a class="bibref" href="#bib-RDF-SPARQL-QUERY">RDF-SPARQL-QUERY</a></cite>].
A <code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME">QUALIFIED_NAME</a></code> consists of a prefix and a local part. Prefixes follow the production <code class="content"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_PREFIX">PN_PREFIX</a></code> defined by SPARQL [<cite><a class="bibref" href="#bib-RDF-SPARQL-QUERY">RDF-SPARQL-QUERY</a></cite>]. Local parts have to be conformant with <code class="content"><a class="grammarRef" href="#prod-PN_LOCAL">PN_LOCAL</a></code>, which extends the original SPARQL <code class="content"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_LOCAL">PN_LOCAL</a></code> definition
by allowing further characters (see <code class="content"><a class="grammarRef" href="#prod-PN_CHARS_OTHERS">PN_CHARS_OTHERS</a></code>):</p>
@@ -2803,7 +2836,7 @@
<p>A <dfn id="dfn-document">document</dfn> is a house-keeping construct of PROV-N capable of packaging up PROV-N expressions and namespace declarations. A document forms a self-contained package of provenance descriptions for the purpose of <em>exchanging</em> them. A document may be used
to package up PROV-N expressions in response to a request for the provenance of something ([<cite><a class="bibref" href="#bib-PROV-AQ">PROV-AQ</a></cite>]).</p>
-<p> Given its status of house keeping construct for the purpose of exchanging provenance expressions, a document is not defined as a PROV-N expression (production <code class="content"><a class="grammarRef" href="#prod-expression">expression</a></code>).</p>
+<p> Given its status of <span class="delete">house keeping</span><span class="insert">house-keeping</span> construct for the purpose of exchanging provenance expressions, a document is not defined as a PROV-N expression (production <code class="content"><a class="grammarRef" href="#prod-expression">expression</a></code>).</p>
@@ -2847,7 +2880,7 @@
endDocument
</pre>
-<p>This container could for instance be returned as the result of a query to a provenance store for the provenance of entity <span class="name">e2</span> [<cite><a class="bibref" href="#bib-PROV-AQ">PROV-AQ</a></cite>].
+<p>This container <span class="delete">could</span><span class="insert">could,</span> for <span class="delete">instance</span><span class="insert">instance,</span> be returned as the result of a query to a provenance store for the provenance of entity <span class="name">e2</span> [<cite><a class="bibref" href="#bib-PROV-AQ">PROV-AQ</a></cite>].
</p>
</div>
@@ -3005,6 +3038,9 @@
<li><span class="insert"> Changed the status of this document section.
</span></li><li><span class="insert"> Changed all URLs to PROV documents.
</span></li><li><span class="insert"> Updated URL to IANA registered text/provenance-notation mime type.
+</span></li><li><span class="insert"> Added ex: prefix to some identifiers in examples.
+</span></li><li><span class="insert"> The mapping table </span><a href="#expression-bundle-constructor"><span class="insert">for the bundle production</span></a><span class="insert"> incorrectly referred to optionalIdentifier, which was not present in the production. It was replaced by identifier.
+</span></li><li><span class="insert"> Replaced "are optional attributes" by the grammatically more correct "is a list of optional attributes".
</span></li></ul>
</section>
@@ -3070,7 +3106,7 @@
Reza B'Far (Oracle Corporation),
Khalid Belhajjame (University of Manchester),
James Cheney (University of Edinburgh, School of Informatics),
-Tom De Nies (iMinds - Ghent University),
+<span class="delete">Tom De Nies</span><span class="insert">Sam Coppens</span> (iMinds - Ghent University),
David Corsar (University of Aberdeen, Computing Science),
Stephen Cresswell (The National Archives),
Tom De Nies (iMinds - Ghent University),