--- a/model/diff-c.html Tue Feb 19 15:39:53 2013 +0000
+++ b/model/diff-c.html Tue Feb 19 15:45:56 2013 +0000
@@ -547,6 +547,21 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
<style>/*****************************************************************
* ReSpec 3 CSS
* Robin Berjon - http://berjon.com/
@@ -691,7 +706,7 @@
<dt><span class="insert">Previous</span> version:</dt>
- <dd><a href="http://www.w3.org/TR/2012/CR-prov-constraints-20121211/">http://www.w3.org/TR/2012/CR-prov-constraints-20121211/</a>
+ <dd><a href="http://www.w3.org/TR/2012/CR-prov-constraints-20121211/">http://www.w3.org/TR/2012/CR-prov-constraints-20121211/
<span class="delete">Latest published version:</span>
<span class="delete">http://www.w3.org/TR/prov-constraints/</span>
@@ -707,7 +722,7 @@
<span class="delete">Previous version:</span>
- <span class="delete">http://www.w3.org/TR/2012/WD-prov-constraints-20120911/</span> <a href="diff-c.html"><span class="delete">(color-coded</span><span class="insert">(colored-coded</span> diff)</a></dd>
+ <span class="delete">http://www.w3.org/TR/2012/WD-prov-constraints-20120911/</span></a> <a href="diff-c.html">(color-coded diff)</a></dd>
<dt>Editors:</dt>
@@ -757,20 +772,20 @@
<p> This document defines a subset of PROV instances called
<i><a href="#dfn-valid" class="internalDFN">valid</a></i> PROV instances, by analogy with notions of
validity for other Web standards.
-The intent of validation is<span class="insert"> to</span> ensure that a PROV instance represents a
+The intent of validation is <span class="insert">to </span>ensure that a PROV instance represents a
consistent history of objects and their interactions that is safe to
use for the purpose of logical reasoning and other kinds of analysis.
Valid PROV instances satisfy
-certain <a>definitions</a>, <a>inferences</a>, and
-<a>constraints</a>. These definitions, inferences, and constraints
+certain <a title="definition" href="#dfn-definition" class="internalDFN">definitions</a>, <a title="inference" href="#inference" class="internalDFN">inferences</a>, and
+<a title="constraint">constraints</a>. These definitions, inferences, and constraints
provide a measure of consistency checking for provenance and reasoning
over provenance. They can also be used to <a title="normal
form" href="#dfn-normal-form" class="internalDFN">normalize</a> PROV instances to forms that can easily be
compared in order to determine whether two PROV instances are
-<a href="#dfn-equivalent" class="internalDFN">equivalent</a>. Validity and equivalence are also defined for PROV
+<a title="equivalence">equivalent</a>. Validity and equivalence are also defined for PROV
bundles (that is, named instances) and documents (that is, a toplevel
instance together with zero or more bundles).</p>
-<p>The <a href="http://www.w3.org/TR/2012/WD-prov-overview-20121211/">PROV Document Overview</a> describes the overall state of PROV, and should be read before other PROV documents.</p>
+<p>The <a href="http://www.w3.org/TR/2012/WD-prov-overview-20130312/">PROV Document Overview</a> describes the overall state of PROV, and should be read before other PROV documents.</p>
</section><section id="sotd" class="introductory"><h2>Status of This Document</h2>
@@ -950,9 +965,9 @@
<p>The PROV Data Model, PROV-DM, is a conceptual data model for provenance, which is
realizable using different representations such as PROV-N and PROV-O.
-A PROV <a>instance</a> is a set of PROV statements.
-A PROV <a>document</a> is an instance
-together with zero or more <a>bundles</a>, or named instances. For
+A <dfn id="dfn-prov-instance">PROV instance</dfn> is a set of PROV statements.
+A <dfn id="dfn-prov-document">PROV document</dfn> is an instance
+together with zero or more <a title="bundle" href="#dfn-bundle" class="internalDFN">bundles</a>, or named instances. For
example, a PROV document could be a .provn document, the result
of a query, a triple store containing PROV statements in RDF, etc.
The
@@ -1039,9 +1054,9 @@
<p><a href="#constraints">Section 6</a> presents four kinds of constraints,
<em>uniqueness</em> constraints that prescribe that certain statements
-must be unique within PROV <a>instances</a>,
+must be unique within <a title="PROV instance" href="#instance" class="internalDFN">PROV instances</a>,
<em>event ordering</em> constraints that require that the records in a
-PROV <a>instance</a> are consistent with a sensible ordering of events
+<a href="#instance" class="internalDFN">PROV instance</a> are consistent with a sensible ordering of events
relating the activities, entities and agents involved,
<em>impossibility</em> constraints that forbid certain patterns of
statements in valid PROV instances, and <em>type</em> constraints that
@@ -1049,7 +1064,7 @@
</p>
<p><a href="#normalization-validity-equivalence">Section 7</a> defines the notions
-of <a>validity</a>, <a>equivalence</a> and <a>normalization</a>.
+of <a title="valid" href="#dfn-valid" class="internalDFN">validity</a>, <a title="equivalent" href="#dfn-equivalent" class="internalDFN">equivalence</a> and <a title="normal form" href="#dfn-normal-form" class="internalDFN">normalization</a>.
</p>
@@ -1095,7 +1110,7 @@
<p>
An entity is a thing one wants to provide provenance for
and whose situation in the world is described by some fixed
-attributes. An entity has a <dfn id="lifetime">lifetime</dfn>,
+attributes. An entity has a <dfn id="dfn-lifetime">lifetime</dfn>,
defined as the period
between its <a title="entity generation event" href="#dfn-generation-event" class="internalDFN">generation event</a>
and its <a title="entity invalidation event" href="#dfn-invalidation-event" class="internalDFN">invalidation event</a>.
@@ -1129,7 +1144,7 @@
In order to describe the provenance of something during an interval
over which relevant attributes of the thing are not fixed, a PROV
instance would describe multiple entities, each with its own
- identifier, <a href="#lifetime" class="internalDFN">lifetime</a>, and fixed attributes, and express dependencies between
+ identifier, <a href="#dfn-lifetime" class="internalDFN">lifetime</a>, and fixed attributes, and express dependencies between
the various entities using <i><a title="instantaneous event" href="#dfn-event" class="internalDFN">events</a></i>. For example, in order to
describe the provenance of several versions of a document, involving
attributes such as authorship that change over time, one can use
@@ -1146,7 +1161,7 @@
attributes; this leads to potential ambiguity, which is mitigated through the
use of identifiers.</p>
-<p>An <a>activity</a>'s lifetime is delimited by its <a title="activity start
+<p>An <span class="delete">activity</span><span class="delete">'s</span><span class="insert">activity's</span> lifetime is delimited by its <a title="activity start
event" href="#dfn-start-event" class="internalDFN">start</a> and its <a title="activity end event" href="#dfn-end-event" class="internalDFN">end</a>
events. It occurs over
an interval delimited by two <a title="instantaneous event" href="#dfn-event" class="internalDFN">instantaneous
@@ -1195,7 +1210,7 @@
end of activities, respectively. The
<strong>entity generation</strong>, <strong>entity usage</strong>, and <strong>entity
invalidation</strong> events apply to entities, and the generation and
-invalidation events delimit the <a href="#lifetime" class="internalDFN">lifetime</a> of an entity. More
+invalidation events delimit the <a href="#dfn-lifetime" class="internalDFN">lifetime</a> of an entity. More
precisely:
</p>
@@ -1447,7 +1462,7 @@
<h3 id="constants-variables-and-placeholders">Constants, Variables and Placeholders</h3>
<p>
PROV statements involve identifiers, literals,
- placeholders, and attribute lists. Identifiers are, according to PROV-N, expressed as <a href="http://www.w3.org/TR/2012/CR-prov-n-20121211/#prod-QUALIFIED_NAME">qualified names</a> which can be mapped to URIs [<cite><a class="bibref" href="#bib-RFC3987">RFC3987</a></cite>].
+ placeholders, and attribute lists. Identifiers are, according to PROV-N, expressed as <a href="http://www.w3.org/TR/2012/PR-prov-n-20130312/#prod-QUALIFIED_NAME">qualified names</a> which can be mapped to URIs [<cite><a class="bibref" href="#bib-RFC3987">RFC3987</a></cite>].
However, in order to specify
constraints over PROV instances, we also need <em>variables</em>
that represent unknown identifiers, literals, or placeholders.
@@ -1461,7 +1476,7 @@
<p>Several definitions and inferences conclude by saying that some
objects exist such that some other formulas hold. Such an inference
- introduces fresh <a>existential variable</a>s into the instance. An
+ introduces fresh <a href="#dfn-existential-variable" class="internalDFN">existential variable</a>s into the instance. An
existential variable denotes a fixed object that exists, but its
exact identity is unknown. Existential variables can stand for
unknown identifiers or literal values only; we do not allow
@@ -1507,7 +1522,7 @@
<p>
For the purpose of constraint checking, we view PROV statements
(possibly involving existential variables) as
- <dfn id="dfn-formulas">formulas</dfn>. An instance is analogous to a "theory" in
+ <dfn id="formula">formulas</dfn>. An instance is analogous to a "theory" in
logic, that is, a set of formulas all thought to describe the same
situation. The set can also be thought of a single, large formula:
the conjunction of all of the atomic formulas.
@@ -1871,9 +1886,9 @@
<h4 id="from-instances-to-bundles-and-documents">From Instances to Bundles and Documents</h4>
-<p>PROV documents can contain multiple instances: a <a>toplevel
+<p>PROV documents can contain multiple instances: a <a href="#dfn-toplevel-instance" class="internalDFN">toplevel
instance</a>, and
-zero or more additional, named instances called <a>bundle</a>s. For the purpose
+zero or more additional, named instances called <span class="delete">bundle</span><span class="delete">s.</span><a title="bundle" href="#dfn-bundle" class="internalDFN"><span class="insert">bundles</span></a><span class="insert">.</span> For the purpose
of inference and constraint checking, these instances are treated independently. That is,
a PROV document is valid provided that each instance in it is valid
and the names of its bundles are distinct. In other words, there are
@@ -1910,23 +1925,23 @@
<div id="prov-constraints-fig" style="text-align: left;">
<table class="thinborder" style="margin-left: auto; margin-right: auto; border-color: black;">
<caption id="prov-constraints">Table 2: Summary of inferences and constraints for PROV Types and Relations</caption>
-<tbody><tr><td><a><b>Type or Relation Name</b></a></td><td><b>
+<tbody><tr><td><b>Type or Relation Name</b></td><td><b>
Inferences and Constraints</b></td><td><b>Component</b></td></tr>
<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
<tr class="component1-color">
- <td class="essential"><a>Entity</a></td>
+ <td class="essential">Entity</td>
<td><a class="rule-text" href="#entity-generation-invalidation-inference_text"><span>Inference 7 (entity-generation-invalidation-inference)</span></a><br>
<a class="rule-text" href="#specialization-attributes-inference_text"><span>Inference 21 (specialization-attributes-inference)</span></a><br>
<a class="rule-text" href="#key-object_text"><span>Constraint 22 (key-object)</span></a><br>
<a class="rule-text" href="#impossible-object-property-overlap_text"><span>Constraint 54 (impossible-object-property-overlap)</span></a><br>
<a class="rule-text" href="#entity-activity-disjoint_text"><span>Constraint 55 (entity-activity-disjoint)</span></a><br>
</td>
- <td rowspan="8" style="text-align: center; "><a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#component1" title="Component 1: Entities/Activities">1</a></td>
+ <td rowspan="8" style="text-align: center; "><a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#component1" title="Component 1: Entities/Activities">1</a></td>
</tr>
<tr class="component1-color">
- <td class="essential"><a>Activity</a></td>
+ <td class="essential">Activity</td>
<td><a class="rule-text" href="#activity-start-end-inference_text"><span>Inference 8 (activity-start-end-inference)</span></a><br>
<a class="rule-text" href="#key-object_text"><span>Constraint 22 (key-object)</span></a><br>
<a class="rule-text" href="#unique-startTime_text"><span>Constraint 28 (unique-startTime)</span></a><br>
@@ -1936,7 +1951,7 @@
</td>
</tr>
<tr class="component1-color">
- <td class="essential"><a>Generation</a></td>
+ <td class="essential">Generation</td>
<td><a class="rule-text" href="#generation-use-communication-inference_text"><span>Inference 6 (generation-use-communication-inference)</span></a><br>
<a class="rule-text" href="#influence-inference_text"><span>Inference 15 (influence-inference)</span></a><br>
@@ -1959,7 +1974,7 @@
</td>
</tr>
<tr class="component1-color">
- <td class="essential"><a>Usage</a></td>
+ <td class="essential">Usage</td>
<td><a class="rule-text" href="#generation-use-communication-inference_text"><span>Inference 6 (generation-use-communication-inference)</span></a><br>
<a class="rule-text" href="#influence-inference_text"><span>Inference 15 (influence-inference)</span></a><br>
<a class="rule-text" href="#key-properties_text"><span>Constraint 23 (key-properties)</span></a><br>
@@ -1972,7 +1987,7 @@
</td>
</tr>
<tr class="component1-color">
- <td class="essential"><a>Communication</a></td>
+ <td class="essential">Communication</td>
<td><a class="rule-text" href="#communication-generation-use-inference_text"><span>Inference 5 (communication-generation-use-inference)</span></a><br>
<a class="rule-text" href="#influence-inference_text"><span>Inference 15 (influence-inference)</span></a><br>
<a class="rule-text" href="#key-properties_text"><span>Constraint 23 (key-properties)</span></a><br>
@@ -1982,7 +1997,7 @@
</td>
</tr>
<tr class="component1-color">
- <td class="essential"><a>Start</a></td>
+ <td class="essential">Start</td>
<td><a class="rule-text" href="#wasStartedBy-inference_text"><span>Inference 9 (wasStartedBy-inference)</span></a><br>
<a class="rule-text" href="#influence-inference_text"><span>Inference 15 (influence-inference)</span></a><br>
<a class="rule-text" href="#key-properties_text"><span>Constraint 23 (key-properties)</span></a><br>
@@ -2000,7 +2015,7 @@
</td>
</tr>
<tr class="component1-color">
- <td class="essential"><a>End</a></td>
+ <td class="essential">End</td>
<td><a class="rule-text" href="#wasEndedBy-inference_text"><span>Inference 10 (wasEndedBy-inference)</span></a><br>
<a class="rule-text" href="#influence-inference_text"><span>Inference 15 (influence-inference)</span></a><br>
<a class="rule-text" href="#key-properties_text"><span>Constraint 23 (key-properties)</span></a><br>
@@ -2018,7 +2033,7 @@
</td>
</tr>
<tr class="component1-color">
- <td class="essential"><a>Invalidation</a></td>
+ <td class="essential">Invalidation</td>
<td><a class="rule-text" href="#influence-inference_text"><span>Inference 15 (influence-inference)</span></a><br>
<a class="rule-text" href="#key-properties_text"><span>Constraint 23 (key-properties)</span></a><br>
<a class="rule-text" href="#unique-invalidation_text"><span>Constraint 25 (unique-invalidation)</span></a><br>
@@ -2039,7 +2054,7 @@
<tr class="component2-color">
- <td class="essential"><a>Derivation</a></td>
+ <td class="essential">Derivation</td>
<td><a class="rule-text" href="#derivation-generation-use-inference_text"><span>Inference 11 (derivation-generation-use-inference)</span></a><br>
@@ -2049,35 +2064,35 @@
<a class="rule-text" href="#derivation-generation-generation-ordering_text"><span>Constraint 42 (derivation-generation-generation-ordering)</span></a><br>
<a class="rule-text" href="#typing_text"><span>Constraint 50 (typing)</span></a><br>
</td>
- <td rowspan="5" style="text-align: center; "><a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#component2" title="Component 2: Derivations">2</a></td>
+ <td rowspan="5" style="text-align: center; "><a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#component2" title="Component 2: Derivations">2</a></td>
</tr>
<tr class="component2-color">
- <td class="provType"><a>Revision</a></td>
+ <td class="provType">Revision</td>
<td><a class="rule-text" href="#revision-is-alternate-inference_text"><span>Inference 12 (revision-is-alternate-inference)</span></a><br></td>
</tr>
<tr class="component2-color">
- <td class="provType"><a>Quotation</a></td>
+ <td class="provType">Quotation</td>
<td>No specific constraints</td>
</tr>
<tr class="component2-color">
- <td class="provType"><a>Primary Source</a></td>
+ <td class="provType">Primary Source</td>
<td>No specific constraints</td>
</tr>
<tr class="component2-color">
- <td><a class="essential">Influence</a></td>
+ <td class="essential">Influence</td>
<td>No specific constraints</td>
</tr>
<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
<tr class="component3-color" style="border-collapse: collapse; ">
- <td class="essential"><a>Agent</a></td>
+ <td class="essential">Agent</td>
<td><a class="rule-text" href="#key-object_text"><span>Constraint 22 (key-object)</span></a><br>
<a class="rule-text" href="#impossible-object-property-overlap_text"><span>Constraint 54 (impossible-object-property-overlap)</span></a><br>
</td>
- <td rowspan="5" style="text-align: center; "><a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#component3" title="Component 3: Agents/Responsibility">3</a></td>
+ <td rowspan="5" style="text-align: center; "><a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#component3" title="Component 3: Agents/Responsibility">3</a></td>
</tr>
<tr class="component3-color">
- <td class="essential"><a>Attribution</a></td>
+ <td class="essential">Attribution</td>
<td><a class="rule-text" href="#attribution-inference_text"><span>Inference 13 (attribution-inference)</span></a><br>
<a class="rule-text" href="#influence-inference_text"><span>Inference 15 (influence-inference)</span></a><br>
<a class="rule-text" href="#key-properties_text"><span>Constraint 23 (key-properties)</span></a><br>
@@ -2087,7 +2102,7 @@
</td>
</tr>
<tr class="component3-color">
- <td class="essential"><a>Association</a></td>
+ <td class="essential">Association</td>
<td><a class="rule-text" href="#influence-inference_text"><span>Inference 15 (influence-inference)</span></a><br>
<a class="rule-text" href="#key-properties_text"><span>Constraint 23 (key-properties)</span></a><br>
<a class="rule-text" href="#wasAssociatedWith-ordering_text"><span>Constraint 47 (wasAssociatedWith-ordering)</span></a><br>
@@ -2096,7 +2111,7 @@
</td>
</tr>
<tr class="component3-color">
- <td class="essential"><a>Delegation</a></td>
+ <td class="essential">Delegation</td>
<td><a class="rule-text" href="#delegation-inference_text"><span>Inference 14 (delegation-inference)</span></a><br>
<a class="rule-text" href="#influence-inference_text"><span>Inference 15 (influence-inference)</span></a><br>
<a class="rule-text" href="#key-properties_text"><span>Constraint 23 (key-properties)</span></a><br>
@@ -2106,7 +2121,7 @@
</td>
</tr>
<tr class="component3-color">
- <td class="essential"><a>Influence</a></td>
+ <td class="essential">Influence</td>
<td><a class="rule-text" href="#influence-inference_text"><span>Inference 15 (influence-inference)</span></a><br>
<a class="rule-text" href="#key-properties_text"><span>Constraint 23 (key-properties)</span></a><br>
</td>
@@ -2114,28 +2129,28 @@
<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
<tr class="component4-color">
- <td><a title="bundle">Bundle constructor</a></td>
+ <td><a title="bundle" href="#dfn-bundle" class="internalDFN">Bundle constructor</a></td>
<td>No specific constraints; see <a href="#bundle-constraints" class="sectionRef sec-ref">section 7.2 Bundles and Documents</a></td>
- <td rowspan="2" style="text-align: center; "><a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#component4" title="Component 4: Bundles">4</a></td>
+ <td rowspan="2" style="text-align: center; "><a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#component4" title="Component 4: Bundles">4</a></td>
</tr>
<tr class="component4-color">
- <td class="provType"><a title="bundle">Bundle type</a></td>
+ <td class="provType"><a title="bundle" href="#dfn-bundle" class="internalDFN">Bundle type</a></td>
<td> No specific constraints; see <a href="#bundle-constraints" class="sectionRef sec-ref">section 7.2 Bundles and Documents</a>
</td>
</tr>
<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
<tr class="component5-color">
- <td><a>Alternate</a></td>
+ <td>Alternate</td>
<td><a class="rule-text" href="#alternate-reflexive_text"><span>Inference 16 (alternate-reflexive)</span></a><br>
<a class="rule-text" href="#alternate-transitive_text"><span>Inference 17 (alternate-transitive)</span></a><br>
<a class="rule-text" href="#alternate-symmetric_text"><span>Inference 18 (alternate-symmetric)</span></a><br>
<a class="rule-text" href="#typing_text"><span>Constraint 50 (typing)</span></a><br>
</td>
- <td rowspan="3" style="text-align: center; "><a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#component5" title="Component 5: Alternate Entities">5</a></td>
+ <td rowspan="3" style="text-align: center; "><a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#component5" title="Component 5: Alternate Entities">5</a></td>
</tr>
<tr class="component5-color">
- <td><a>Specialization</a></td>
+ <td>Specialization</td>
<td><a class="rule-text" href="#specialization-transitive_text"><span>Inference 19 (specialization-transitive)</span></a><br>
<a class="rule-text" href="#specialization-alternate-inference_text"><span>Inference 20 (specialization-alternate-inference)</span></a><br>
<a class="rule-text" href="#specialization-attributes-inference_text"><span>Inference 21 (specialization-attributes-inference)</span></a><br>
@@ -2149,12 +2164,12 @@
<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
<tr class="component6-color">
- <td><a>Collection</a></td>
+ <td>Collection</td>
<td> No specific constraints </td>
- <td rowspan="2" style="text-align: center; "><a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#component6" title="Component 6: Collections">6</a></td>
+ <td rowspan="2" style="text-align: center; "><a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#component6" title="Component 6: Collections">6</a></td>
</tr>
<tr class="component6-color">
- <td><a>Membership</a></td>
+ <td>Membership</td>
<td> <a class="rule-text" href="#membership-empty-collection_text"><span>Constraint 56 (membership-empty-collection)</span></a><br>
<a class="rule-text" href="#typing_text"><span>Constraint 50 (typing)</span></a><br>
</td>
@@ -2233,7 +2248,7 @@
<dfn id="dfn-variables">variables</dfn> denoting the unknown values.
Generally, identifiers occurring in constraints and inferences are
variables. Variables that are generated during inferences and
- appear inside an instance are often called <dfn id="dfn-existential-variables">existential
+ appear inside an instance are often called <dfn title="existential variable" id="dfn-existential-variable">existential
variables</dfn>, because they are implicitly existentially quantified.
</p>
@@ -2241,7 +2256,7 @@
- <p> A <dfn id="term">PROV term</dfn> is a constant identifier
+ <p> A <dfn title="term" id="dfn-term">PROV term</dfn> is a constant identifier
<span class="math">c</span>, a placeholder <span class="name">-</span>, a literal value,
or an existential variable <span class="math">x</span>. An
arbitrary PROV term is written <span class="math">t</span>.</p>
@@ -2249,7 +2264,7 @@
<p> A <dfn id="statement">PROV statement</dfn> is an expression of
the form <span class="math">p(t<sub>1</sub>,...,t<sub>n</sub>)</span> or <span class="math">p(id;t<sub>1</sub>,...,t<sub>n</sub>)</span> where
<span class="math">id,t<sub>1</sub>,...,t<sub>n</sub></span> are
- PROV <a>term</a>s and <span class="math">p</span> is one of the
+ PROV <a href="#dfn-term" class="internalDFN">term</a>s and <span class="math">p</span> is one of the
basic PROV relations. An arbitrary PROV statement is written <span class="math">A</span>.</p>
<p> A <dfn id="instance">PROV instance</dfn> is a set of PROV
@@ -2285,7 +2300,7 @@
statements in <span class="math">I</span>.
</p>
- <p> <dfn id="dfn-unification">Unification</dfn> is an operation that can be applied
+ <p> <dfn title="unification" id="dfn-unification">Unification</dfn> is an operation that can be applied
to a pair of terms.
The result of unification is either a <dfn id="dfn-unifier">unifier</dfn>, that is, a substitution <span class="math">S</span> such that <span class="math">S(t)
= S(t')</span>, or failure, indicating
@@ -2337,10 +2352,10 @@
<section id="inferences">
<h2><span class="secno">5. </span>Definitions and Inferences</h2>
<p>
-This section describes <a title="definition" href="#definition" class="internalDFN">definitions</a> and <a title="inference" href="#inference" class="internalDFN">inferences</a> that <em class="rfc2119" title="may">may</em> be used on
- provenance data, and that preserve <a>equivalence</a> on <a href="#dfn-valid" class="internalDFN">valid</a>
+This section describes <a title="definition" href="#dfn-definition" class="internalDFN">definitions</a> and <a title="inference" href="#inference" class="internalDFN">inferences</a> that <em class="rfc2119" title="may">may</em> be used on
+ provenance data, and that preserve <a title="equivalent" href="#dfn-equivalent" class="internalDFN">equivalence</a> on <a href="#dfn-valid" class="internalDFN">valid</a>
PROV instances (as detailed in <a href="#normalization-validity-equivalence" class="sectionRef sec-ref">section 7. Normalization, Validity, and Equivalence</a>).
-A <dfn id="definition">definition</dfn> is a rule that can be applied to
+A <dfn id="dfn-definition">definition</dfn> is a rule that can be applied to
PROV instances to replace defined statements with other statements. An <dfn id="inference">inference</dfn> is a rule that can be applied
to PROV instances to add new PROV statements. A definition states that a
provenance statement is equivalent to some other statements, whereas
@@ -2437,7 +2452,7 @@
<a class="rule-ref" href="#definition-short-forms"><span>Definition 3 (definition-short-forms)</span></a>,
explain how to expand the compact forms of PROV-N notation into a
normal form. <a class="rule-ref" href="#optional-placeholders"><span>Definition 4 (optional-placeholders)</span></a> indicates when
- other optional parameters can be replaced by <a href="#dfn-existential-variables" class="internalDFN">existential
+ other optional parameters can be replaced by <a title="existential variable" href="#dfn-existential-variable" class="internalDFN">existential
variables</a>.
</p>
@@ -2568,8 +2583,8 @@
by fresh existential variables, distinct from any others occurring in
the instance.
The only exceptions to this general rule, where <span class="name">-</span> are to be left
- in place, are the <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#derivation.activity">activity</a>, <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#derivation.generation">generation</a>, and <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#derivation.usage">usage</a> parameters in <span class="name">wasDerivedFrom</span> and
- the <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#association.plan">plan</a>
+ in place, are the <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#derivation.activity">activity</a>, <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#derivation.generation">generation</a>, and <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#derivation.usage">usage</a> parameters in <span class="name">wasDerivedFrom</span> and
+ the <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#association.plan">plan</a>
parameter in <span class="name">wasAssociatedWith</span>. This is
further explained in remarks below.
</p>
@@ -2724,7 +2739,7 @@
-<p id="communication-generation-use-inference_text">Communication between activities <a title="definition" href="#definition" class="internalDFN">implies</a> the existence of an underlying
+<p id="communication-generation-use-inference_text">Communication between activities <a title="definition" href="#dfn-definition" class="internalDFN">implies</a> the existence of an underlying
entity generated by one activity and used by the other, and vice versa.</p>
<div class="inference" id="communication-generation-use-inference"><div class="ruleTitle"><a id="5"></a><a class="internalDFN" href="#communication-generation-use-inference">Inference 5 (communication-generation-use-inference)</a></div>
@@ -2919,7 +2934,7 @@
existential variable, so it can be unified
with a constant identifier, another existential variable, or a
placeholder <span class="name">-</span>, as explained
- in the definition of <a>unification</a>.
+ in the definition of <a href="#dfn-unification" class="internalDFN">unification</a>.
</div>
<hr>
<p id="delegation-inference_text"> Delegation relates agents where one agent acts on behalf of
@@ -2949,7 +2964,7 @@
<span class="name">_pl1</span> and <span class="name">_pl2</span>
can be replaced with constant identifiers, existential variables, or
placeholders <span class="name">-</span> independently, as explained
- in the definition of <a>unification</a>.
+ in the definition of <a href="#dfn-unification" class="internalDFN">unification</a>.
</div>
<hr>
@@ -3155,7 +3170,7 @@
statements, due to inferences. Uniqueness constraints are
enforced through <a href="#dfn-merging" class="internalDFN">merging</a> pairs of statements subject to
equalities. For example, suppose we have two activity statements
- <span class="name">activity(a,2011-11-16T16:00:00,_t1,[a=1])</span> and <span class="name">activity(a,_t2,2011-11-16T18:00:00,[b=2])</span>, with existential variables <span class="name">_t1</span> and <span class="name">_t2</span>. The <a>merge</a> of
+ <span class="name">activity(a,2011-11-16T16:00:00,_t1,[a=1])</span> and <span class="name">activity(a,_t2,2011-11-16T18:00:00,[b=2])</span>, with existential variables <span class="name">_t1</span> and <span class="name">_t2</span>. The <dfn id="dfn-merge">merge</dfn> of
these two statements (describing the same activity <span class="name">a</span>) is <span class="name">activity(a,2011-11-16T16:00:00,2011-11-16T18:00:00,[a=1,b=2])</span>. </p>
@@ -3175,7 +3190,7 @@
</li>
<li>If unification fails, then the constraint
is unsatisfiable, so application of the constraint to <span class="math">I</span>
- fails. If this failure occurs during <a>normalization</a> prior to
+ fails. If this failure occurs during <a title="normal form" href="#dfn-normal-form" class="internalDFN">normalization</a> prior to
validation, then <span class="math">I</span> is invalid, as explained in <a href="#normalization-validity-equivalence">Section 6</a>.
</li>
<li>If unification succeeds with a substitution <span class="math">S</span>, then
@@ -3231,13 +3246,13 @@
</p>
<div class="constraint" id="key-object"><div class="ruleTitle"><a id="22"></a><a class="internalDFN" href="#key-object">Constraint 22 (key-object)</a></div>
<p></p><ol>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#entity.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#entity.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">entity(id,attrs)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#activity.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#activity.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">activity(id,t1,t2,attrs)</span> statement.
</li>
-<li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#agent.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+<li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#agent.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">agent(id,attrs)</span> statement.
</li>
</ol>
@@ -3252,38 +3267,38 @@
</p>
<div class="constraint" id="key-properties"><div class="ruleTitle"><a id="23"></a><a class="internalDFN" href="#key-properties">Constraint 23 (key-properties)</a></div>
<p></p><ol>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#generation.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#generation.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">wasGeneratedBy(id; e,a,t,attrs)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#usage.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#usage.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">used(id; a,e,t,attrs)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#communication.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#communication.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">wasInformedBy(id; a2,a1,attrs)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#start.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#start.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">wasStartedBy(id; a2,e,a1,t,attrs)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#end.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#end.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">wasEndedBy(id; a2,e,a1,t,attrs)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#invalidation.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#invalidation.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">wasInvalidatedBy(id; e,a,t,attrs)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#derivation.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#derivation.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">wasDerivedFrom(id; e2, e1, a, g2, u1, attrs)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#attribution.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#attribution.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">wasAttributedTo(id; e,ag,attr)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#association.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#association.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">wasAssociatedWith(id; a,ag,pl,attrs)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#delegation.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#delegation.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">actedOnBehalfOf(id; ag2,ag1,a,attrs)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#influence.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#influence.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">wasInfluencedBy(id; o2,o1,attrs)</span> statement.
</li>
</ol>
@@ -3482,7 +3497,7 @@
<p>
This section specifies ordering constraints from the perspective of
-the <a href="#lifetime" class="internalDFN">lifetime</a> of an activity. An activity starts, then during
+the <a href="#dfn-lifetime" class="internalDFN">lifetime</a> of an activity. An activity starts, then during
its lifetime can use, generate or invalidate entities, communicate
with, start, or end
other
@@ -4584,9 +4599,9 @@
<p>Because of the potential interaction among definitions, inferences, and
constraints, the above algorithm is iterative. Nevertheless,
- all of our constraints fall into a class of <a>tuple-generating
- dependencies</a> and <a>equality-generating dependencies</a> that
- satisfy a termination condition called <a>weak acyclicity</a> that
+ all of our constraints fall into a class of <em>tuple-generating
+ dependencies<span class="delete"> and </span></em><span class="insert"> and </span><em>equality-generating dependencies</em> that
+ satisfy a termination condition called <em>weak acyclicity</em> that
has been studied in the context of relational databases
[<cite><a class="bibref" href="#bib-DBCONSTRAINTS">DBCONSTRAINTS</a></cite>]. Therefore, the above algorithm terminates, independently
of the order in which inferences and constraints are applied.
@@ -4628,7 +4643,7 @@
-<p> Two <a href="#dfn-valid" class="internalDFN">valid</a> PROV instances are <dfn id="dfn-equivalent">equivalent</dfn> if they
+<p> Two <a href="#dfn-valid" class="internalDFN">valid</a> PROV instances are <dfn title="equivalent" id="dfn-equivalent">equivalent</dfn> if they
have <a href="#dfn-isomorphic" class="internalDFN">isomorphic</a> normal forms. That is, after applying all possible inference
rules, the two instances produce the same set of PROV statements,
up to reordering of statements and attributes within attribute lists,
@@ -4670,7 +4685,7 @@
<li>
Applying inference rules, definitions, and uniqueness constraints preserves equivalence. That is, a <a href="#instance" class="internalDFN">PROV
instance</a> is equivalent to the instance obtained by applying any
- inference rule or definition, or by <a title="unification">unifying</a> two terms or <a href="#dfn-merging" class="internalDFN">merging</a> two statements to
+ inference rule or definition, or by <a title="unification" href="#dfn-unification" class="internalDFN">unifying</a> two terms or <a href="#dfn-merging" class="internalDFN">merging</a> two statements to
enforce a uniqueness constraint.
</li>
<li>Equivalence is <a href="#dfn-reflexive" class="internalDFN">reflexive</a>, <a href="#dfn-symmetric" class="internalDFN">symmetric</a>, and
@@ -4695,11 +4710,11 @@
the resulting notions of normalization, validity and equivalence,
work on a single PROV instance. In this
section, we describe how to deal with general PROV
-documents, possibly including multiple named bundles as well as a
-toplevel instance. Briefly, each bundle is
+documents, possibly including multiple named <dfn title="bundle" id="dfn-bundle">bundles as well as a
+<dfn id="dfn-toplevel-instance">toplevel <span class="delete">instance.</span><span class="insert">instance</span></dfn><span class="insert">.</span> Briefly, each bundle is
handled independently; there is no interaction between bundles from
the perspective of applying definitions, inferences, or constraints,
-computing normal forms, or checking validity or equivalence.</p>
+computing normal forms, or checking validity or equivalence.</dfn></p>
<p> We model a general PROV document, containing <span class="name">n</span> named bundles
<span class="name">b<sub>1</sub>...b<sub>n</sub></span>, as a tuple
--- a/model/releases/PR-prov-constraints-20130312/Overview.html Tue Feb 19 15:39:53 2013 +0000
+++ b/model/releases/PR-prov-constraints-20130312/Overview.html Tue Feb 19 15:45:56 2013 +0000
@@ -534,10 +534,13 @@
</style>
-<!-- <script src="http://dev.w3.org/2009/dap/ReSpec.js/js/respec.js" class="remove"></script> -->
+
+
+
+
@@ -688,7 +691,7 @@
<dt>Previous version:</dt>
- <dd><a href="http://www.w3.org/TR/2012/CR-prov-constraints-20121211/">http://www.w3.org/TR/2012/CR-prov-constraints-20121211/</a> <a href="diff-c.html">(colored-coded diff)</a></dd>
+ <dd><a href="http://www.w3.org/TR/2012/CR-prov-constraints-20121211/">http://www.w3.org/TR/2012/CR-prov-constraints-20121211/</a> <a href="diff-c.html">(color-coded diff)</a></dd>
<dt>Editors:</dt>
@@ -754,16 +757,16 @@
consistent history of objects and their interactions that is safe to
use for the purpose of logical reasoning and other kinds of analysis.
Valid PROV instances satisfy
-certain <a>definitions</a>, <a>inferences</a>, and
-<a>constraints</a>. These definitions, inferences, and constraints
+certain <a title="definition" href="#dfn-definition" class="internalDFN">definitions</a>, <a title="inference" href="#inference" class="internalDFN">inferences</a>, and
+<a title="constraint">constraints</a>. These definitions, inferences, and constraints
provide a measure of consistency checking for provenance and reasoning
over provenance. They can also be used to <a title="normal
form" href="#dfn-normal-form" class="internalDFN">normalize</a> PROV instances to forms that can easily be
compared in order to determine whether two PROV instances are
-<a href="#dfn-equivalent" class="internalDFN">equivalent</a>. Validity and equivalence are also defined for PROV
+<a title="equivalence">equivalent</a>. Validity and equivalence are also defined for PROV
bundles (that is, named instances) and documents (that is, a toplevel
instance together with zero or more bundles).</p>
-<p>The <a href="http://www.w3.org/TR/2012/WD-prov-overview-20121211/">PROV Document Overview</a> describes the overall state of PROV, and should be read before other PROV documents.</p>
+<p>The <a href="http://www.w3.org/TR/2012/WD-prov-overview-20130312/">PROV Document Overview</a> describes the overall state of PROV, and should be read before other PROV documents.</p>
</section><section id="sotd" class="introductory"><h2>Status of This Document</h2>
@@ -902,9 +905,9 @@
<p>The PROV Data Model, PROV-DM, is a conceptual data model for provenance, which is
realizable using different representations such as PROV-N and PROV-O.
-A PROV <a>instance</a> is a set of PROV statements.
-A PROV <a>document</a> is an instance
-together with zero or more <a>bundles</a>, or named instances. For
+A <dfn id="dfn-prov-instance">PROV instance</dfn> is a set of PROV statements.
+A <dfn id="dfn-prov-document">PROV document</dfn> is an instance
+together with zero or more <a title="bundle" href="#dfn-bundle" class="internalDFN">bundles</a>, or named instances. For
example, a PROV document could be a .provn document, the result
of a query, a triple store containing PROV statements in RDF, etc.
The
@@ -991,9 +994,9 @@
<p><a href="#constraints">Section 6</a> presents four kinds of constraints,
<em>uniqueness</em> constraints that prescribe that certain statements
-must be unique within PROV <a>instances</a>,
+must be unique within <a title="PROV instance" href="#instance" class="internalDFN">PROV instances</a>,
<em>event ordering</em> constraints that require that the records in a
-PROV <a>instance</a> are consistent with a sensible ordering of events
+<a href="#instance" class="internalDFN">PROV instance</a> are consistent with a sensible ordering of events
relating the activities, entities and agents involved,
<em>impossibility</em> constraints that forbid certain patterns of
statements in valid PROV instances, and <em>type</em> constraints that
@@ -1001,7 +1004,7 @@
</p>
<p><a href="#normalization-validity-equivalence">Section 7</a> defines the notions
-of <a>validity</a>, <a>equivalence</a> and <a>normalization</a>.
+of <a title="valid" href="#dfn-valid" class="internalDFN">validity</a>, <a title="equivalent" href="#dfn-equivalent" class="internalDFN">equivalence</a> and <a title="normal form" href="#dfn-normal-form" class="internalDFN">normalization</a>.
</p>
@@ -1047,7 +1050,7 @@
<p>
An entity is a thing one wants to provide provenance for
and whose situation in the world is described by some fixed
-attributes. An entity has a <dfn id="lifetime">lifetime</dfn>,
+attributes. An entity has a <dfn id="dfn-lifetime">lifetime</dfn>,
defined as the period
between its <a title="entity generation event" href="#dfn-generation-event" class="internalDFN">generation event</a>
and its <a title="entity invalidation event" href="#dfn-invalidation-event" class="internalDFN">invalidation event</a>.
@@ -1081,7 +1084,7 @@
In order to describe the provenance of something during an interval
over which relevant attributes of the thing are not fixed, a PROV
instance would describe multiple entities, each with its own
- identifier, <a href="#lifetime" class="internalDFN">lifetime</a>, and fixed attributes, and express dependencies between
+ identifier, <a href="#dfn-lifetime" class="internalDFN">lifetime</a>, and fixed attributes, and express dependencies between
the various entities using <i><a title="instantaneous event" href="#dfn-event" class="internalDFN">events</a></i>. For example, in order to
describe the provenance of several versions of a document, involving
attributes such as authorship that change over time, one can use
@@ -1098,7 +1101,7 @@
attributes; this leads to potential ambiguity, which is mitigated through the
use of identifiers.</p>
-<p>An <a>activity</a>'s lifetime is delimited by its <a title="activity start
+<p>An activity's lifetime is delimited by its <a title="activity start
event" href="#dfn-start-event" class="internalDFN">start</a> and its <a title="activity end event" href="#dfn-end-event" class="internalDFN">end</a>
events. It occurs over
an interval delimited by two <a title="instantaneous event" href="#dfn-event" class="internalDFN">instantaneous
@@ -1147,7 +1150,7 @@
end of activities, respectively. The
<strong>entity generation</strong>, <strong>entity usage</strong>, and <strong>entity
invalidation</strong> events apply to entities, and the generation and
-invalidation events delimit the <a href="#lifetime" class="internalDFN">lifetime</a> of an entity. More
+invalidation events delimit the <a href="#dfn-lifetime" class="internalDFN">lifetime</a> of an entity. More
precisely:
</p>
@@ -1413,7 +1416,7 @@
<h3 id="constants-variables-and-placeholders">Constants, Variables and Placeholders</h3>
<p>
PROV statements involve identifiers, literals,
- placeholders, and attribute lists. Identifiers are, according to PROV-N, expressed as <a href="http://www.w3.org/TR/2012/CR-prov-n-20121211/#prod-QUALIFIED_NAME">qualified names</a> which can be mapped to URIs [<cite><a class="bibref" href="#bib-RFC3987">RFC3987</a></cite>].
+ placeholders, and attribute lists. Identifiers are, according to PROV-N, expressed as <a href="http://www.w3.org/TR/2012/PR-prov-n-20130312/#prod-QUALIFIED_NAME">qualified names</a> which can be mapped to URIs [<cite><a class="bibref" href="#bib-RFC3987">RFC3987</a></cite>].
However, in order to specify
constraints over PROV instances, we also need <em>variables</em>
that represent unknown identifiers, literals, or placeholders.
@@ -1427,7 +1430,7 @@
<p>Several definitions and inferences conclude by saying that some
objects exist such that some other formulas hold. Such an inference
- introduces fresh <a>existential variable</a>s into the instance. An
+ introduces fresh <a href="#dfn-existential-variable" class="internalDFN">existential variable</a>s into the instance. An
existential variable denotes a fixed object that exists, but its
exact identity is unknown. Existential variables can stand for
unknown identifiers or literal values only; we do not allow
@@ -1483,7 +1486,7 @@
<p>
For the purpose of constraint checking, we view PROV statements
(possibly involving existential variables) as
- <dfn id="dfn-formulas">formulas</dfn>. An instance is analogous to a "theory" in
+ <dfn id="formula">formulas</dfn>. An instance is analogous to a "theory" in
logic, that is, a set of formulas all thought to describe the same
situation. The set can also be thought of a single, large formula:
the conjunction of all of the atomic formulas.
@@ -1850,9 +1853,9 @@
<h4 id="from-instances-to-bundles-and-documents">From Instances to Bundles and Documents</h4>
-<p>PROV documents can contain multiple instances: a <a>toplevel
+<p>PROV documents can contain multiple instances: a <a href="#dfn-toplevel-instance" class="internalDFN">toplevel
instance</a>, and
-zero or more additional, named instances called <a>bundle</a>s. For the purpose
+zero or more additional, named instances called <a title="bundle" href="#dfn-bundle" class="internalDFN">bundles</a>. For the purpose
of inference and constraint checking, these instances are treated independently. That is,
a PROV document is valid provided that each instance in it is valid
and the names of its bundles are distinct. In other words, there are
@@ -1892,23 +1895,23 @@
<div id="prov-constraints-fig" style="text-align: left;">
<table class="thinborder" style="margin-left: auto; margin-right: auto; border-color: black;">
<caption id="prov-constraints">Table 2: Summary of inferences and constraints for PROV Types and Relations</caption>
-<tbody><tr><td><a><b>Type or Relation Name</b></a></td><td><b>
+<tbody><tr><td><b>Type or Relation Name</b></td><td><b>
Inferences and Constraints</b></td><td><b>Component</b></td></tr>
<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
<tr class="component1-color">
- <td class="essential"><a>Entity</a></td>
+ <td class="essential">Entity</td>
<td><a class="rule-text" href="#entity-generation-invalidation-inference_text"><span>Inference 7 (entity-generation-invalidation-inference)</span></a><br>
<a class="rule-text" href="#specialization-attributes-inference_text"><span>Inference 21 (specialization-attributes-inference)</span></a><br>
<a class="rule-text" href="#key-object_text"><span>Constraint 22 (key-object)</span></a><br>
<a class="rule-text" href="#impossible-object-property-overlap_text"><span>Constraint 54 (impossible-object-property-overlap)</span></a><br>
<a class="rule-text" href="#entity-activity-disjoint_text"><span>Constraint 55 (entity-activity-disjoint)</span></a><br>
</td>
- <td rowspan="8" style="text-align: center; "><a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#component1" title="Component 1: Entities/Activities">1</a></td>
+ <td rowspan="8" style="text-align: center; "><a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#component1" title="Component 1: Entities/Activities">1</a></td>
</tr>
<tr class="component1-color">
- <td class="essential"><a>Activity</a></td>
+ <td class="essential">Activity</td>
<td><a class="rule-text" href="#activity-start-end-inference_text"><span>Inference 8 (activity-start-end-inference)</span></a><br>
<a class="rule-text" href="#key-object_text"><span>Constraint 22 (key-object)</span></a><br>
<a class="rule-text" href="#unique-startTime_text"><span>Constraint 28 (unique-startTime)</span></a><br>
@@ -1918,7 +1921,7 @@
</td>
</tr>
<tr class="component1-color">
- <td class="essential"><a>Generation</a></td>
+ <td class="essential">Generation</td>
<td><a class="rule-text" href="#generation-use-communication-inference_text"><span>Inference 6 (generation-use-communication-inference)</span></a><br>
<!-- <a class="rule-text" href="#derivation-use-inference"><span>TBD</span></a><br>-->
<a class="rule-text" href="#influence-inference_text"><span>Inference 15 (influence-inference)</span></a><br>
@@ -1941,7 +1944,7 @@
</td>
</tr>
<tr class="component1-color">
- <td class="essential"><a>Usage</a></td>
+ <td class="essential">Usage</td>
<td><a class="rule-text" href="#generation-use-communication-inference_text"><span>Inference 6 (generation-use-communication-inference)</span></a><br>
<a class="rule-text" href="#influence-inference_text"><span>Inference 15 (influence-inference)</span></a><br>
<a class="rule-text" href="#key-properties_text"><span>Constraint 23 (key-properties)</span></a><br>
@@ -1954,7 +1957,7 @@
</td>
</tr>
<tr class="component1-color">
- <td class="essential"><a>Communication</a></td>
+ <td class="essential">Communication</td>
<td><a class="rule-text" href="#communication-generation-use-inference_text"><span>Inference 5 (communication-generation-use-inference)</span></a><br>
<a class="rule-text" href="#influence-inference_text"><span>Inference 15 (influence-inference)</span></a><br>
<a class="rule-text" href="#key-properties_text"><span>Constraint 23 (key-properties)</span></a><br>
@@ -1964,7 +1967,7 @@
</td>
</tr>
<tr class="component1-color">
- <td class="essential"><a>Start</a></td>
+ <td class="essential">Start</td>
<td><a class="rule-text" href="#wasStartedBy-inference_text"><span>Inference 9 (wasStartedBy-inference)</span></a><br>
<a class="rule-text" href="#influence-inference_text"><span>Inference 15 (influence-inference)</span></a><br>
<a class="rule-text" href="#key-properties_text"><span>Constraint 23 (key-properties)</span></a><br>
@@ -1982,7 +1985,7 @@
</td>
</tr>
<tr class="component1-color">
- <td class="essential"><a>End</a></td>
+ <td class="essential">End</td>
<td><a class="rule-text" href="#wasEndedBy-inference_text"><span>Inference 10 (wasEndedBy-inference)</span></a><br>
<a class="rule-text" href="#influence-inference_text"><span>Inference 15 (influence-inference)</span></a><br>
<a class="rule-text" href="#key-properties_text"><span>Constraint 23 (key-properties)</span></a><br>
@@ -2000,7 +2003,7 @@
</td>
</tr>
<tr class="component1-color">
- <td class="essential"><a>Invalidation</a></td>
+ <td class="essential">Invalidation</td>
<td><a class="rule-text" href="#influence-inference_text"><span>Inference 15 (influence-inference)</span></a><br>
<a class="rule-text" href="#key-properties_text"><span>Constraint 23 (key-properties)</span></a><br>
<a class="rule-text" href="#unique-invalidation_text"><span>Constraint 25 (unique-invalidation)</span></a><br>
@@ -2021,7 +2024,7 @@
<tr class="component2-color">
- <td class="essential"><a>Derivation</a></td>
+ <td class="essential">Derivation</td>
<td><a class="rule-text" href="#derivation-generation-use-inference_text"><span>Inference 11 (derivation-generation-use-inference)</span></a><br>
<!-- <a class="rule-text" href="#derivation-use-inference"><span>TBD</span></a><br>-->
<!-- <a class="rule-text" href="#specific-derivation-inference"><span>TBD</span></a><br>-->
@@ -2031,35 +2034,35 @@
<a class="rule-text" href="#derivation-generation-generation-ordering_text"><span>Constraint 42 (derivation-generation-generation-ordering)</span></a><br>
<a class="rule-text" href="#typing_text"><span>Constraint 50 (typing)</span></a><br>
</td>
- <td rowspan="5" style="text-align: center; "><a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#component2" title="Component 2: Derivations">2</a></td>
+ <td rowspan="5" style="text-align: center; "><a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#component2" title="Component 2: Derivations">2</a></td>
</tr>
<tr class="component2-color">
- <td class="provType"><a>Revision</a></td>
+ <td class="provType">Revision</td>
<td><a class="rule-text" href="#revision-is-alternate-inference_text"><span>Inference 12 (revision-is-alternate-inference)</span></a><br></td>
</tr>
<tr class="component2-color">
- <td class="provType"><a>Quotation</a></td>
+ <td class="provType">Quotation</td>
<td>No specific constraints</td>
</tr>
<tr class="component2-color">
- <td class="provType"><a>Primary Source</a></td>
+ <td class="provType">Primary Source</td>
<td>No specific constraints</td>
</tr>
<tr class="component2-color">
- <td><a class="essential">Influence</a></td>
+ <td class="essential">Influence</td>
<td>No specific constraints</td>
</tr>
<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
<tr class="component3-color" style="border-collapse: collapse; ">
- <td class="essential"><a>Agent</a></td>
+ <td class="essential">Agent</td>
<td><a class="rule-text" href="#key-object_text"><span>Constraint 22 (key-object)</span></a><br>
<a class="rule-text" href="#impossible-object-property-overlap_text"><span>Constraint 54 (impossible-object-property-overlap)</span></a><br>
</td>
- <td rowspan="5" style="text-align: center; "><a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#component3" title="Component 3: Agents/Responsibility">3</a></td>
+ <td rowspan="5" style="text-align: center; "><a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#component3" title="Component 3: Agents/Responsibility">3</a></td>
</tr>
<tr class="component3-color">
- <td class="essential"><a>Attribution</a></td>
+ <td class="essential">Attribution</td>
<td><a class="rule-text" href="#attribution-inference_text"><span>Inference 13 (attribution-inference)</span></a><br>
<a class="rule-text" href="#influence-inference_text"><span>Inference 15 (influence-inference)</span></a><br>
<a class="rule-text" href="#key-properties_text"><span>Constraint 23 (key-properties)</span></a><br>
@@ -2069,7 +2072,7 @@
</td>
</tr>
<tr class="component3-color">
- <td class="essential"><a>Association</a></td>
+ <td class="essential">Association</td>
<td><a class="rule-text" href="#influence-inference_text"><span>Inference 15 (influence-inference)</span></a><br>
<a class="rule-text" href="#key-properties_text"><span>Constraint 23 (key-properties)</span></a><br>
<a class="rule-text" href="#wasAssociatedWith-ordering_text"><span>Constraint 47 (wasAssociatedWith-ordering)</span></a><br>
@@ -2078,7 +2081,7 @@
</td>
</tr>
<tr class="component3-color">
- <td class="essential"><a>Delegation</a></td>
+ <td class="essential">Delegation</td>
<td><a class="rule-text" href="#delegation-inference_text"><span>Inference 14 (delegation-inference)</span></a><br>
<a class="rule-text" href="#influence-inference_text"><span>Inference 15 (influence-inference)</span></a><br>
<a class="rule-text" href="#key-properties_text"><span>Constraint 23 (key-properties)</span></a><br>
@@ -2088,7 +2091,7 @@
</td>
</tr>
<tr class="component3-color">
- <td class="essential"><a>Influence</a></td>
+ <td class="essential">Influence</td>
<td><a class="rule-text" href="#influence-inference_text"><span>Inference 15 (influence-inference)</span></a><br>
<a class="rule-text" href="#key-properties_text"><span>Constraint 23 (key-properties)</span></a><br>
</td>
@@ -2096,28 +2099,28 @@
<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
<tr class="component4-color">
- <td><a title="bundle">Bundle constructor</a></td>
+ <td><a title="bundle" href="#dfn-bundle" class="internalDFN">Bundle constructor</a></td>
<td>No specific constraints; see <a href="#bundle-constraints" class="sectionRef sec-ref">section 7.2 Bundles and Documents</a></td>
- <td rowspan="2" style="text-align: center; "><a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#component4" title="Component 4: Bundles">4</a></td>
+ <td rowspan="2" style="text-align: center; "><a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#component4" title="Component 4: Bundles">4</a></td>
</tr>
<tr class="component4-color">
- <td class="provType"><a title="bundle">Bundle type</a></td>
+ <td class="provType"><a title="bundle" href="#dfn-bundle" class="internalDFN">Bundle type</a></td>
<td> No specific constraints; see <a href="#bundle-constraints" class="sectionRef sec-ref">section 7.2 Bundles and Documents</a>
</td>
</tr>
<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
<tr class="component5-color">
- <td><a>Alternate</a></td>
+ <td>Alternate</td>
<td><a class="rule-text" href="#alternate-reflexive_text"><span>Inference 16 (alternate-reflexive)</span></a><br>
<a class="rule-text" href="#alternate-transitive_text"><span>Inference 17 (alternate-transitive)</span></a><br>
<a class="rule-text" href="#alternate-symmetric_text"><span>Inference 18 (alternate-symmetric)</span></a><br>
<a class="rule-text" href="#typing_text"><span>Constraint 50 (typing)</span></a><br>
</td>
- <td rowspan="3" style="text-align: center; "><a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#component5" title="Component 5: Alternate Entities">5</a></td>
+ <td rowspan="3" style="text-align: center; "><a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#component5" title="Component 5: Alternate Entities">5</a></td>
</tr>
<tr class="component5-color">
- <td><a>Specialization</a></td>
+ <td>Specialization</td>
<td><a class="rule-text" href="#specialization-transitive_text"><span>Inference 19 (specialization-transitive)</span></a><br>
<a class="rule-text" href="#specialization-alternate-inference_text"><span>Inference 20 (specialization-alternate-inference)</span></a><br>
<a class="rule-text" href="#specialization-attributes-inference_text"><span>Inference 21 (specialization-attributes-inference)</span></a><br>
@@ -2139,12 +2142,12 @@
<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
<tr class="component6-color">
- <td><a>Collection</a></td>
+ <td>Collection</td>
<td> No specific constraints </td>
- <td rowspan="2" style="text-align: center; "><a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#component6" title="Component 6: Collections">6</a></td>
+ <td rowspan="2" style="text-align: center; "><a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#component6" title="Component 6: Collections">6</a></td>
</tr>
<tr class="component6-color">
- <td><a>Membership</a></td>
+ <td>Membership</td>
<td> <a class="rule-text" href="#membership-empty-collection_text"><span>Constraint 56 (membership-empty-collection)</span></a><br>
<a class="rule-text" href="#typing_text"><span>Constraint 50 (typing)</span></a><br>
</td>
@@ -2223,13 +2226,13 @@
<dfn id="dfn-variables">variables</dfn> denoting the unknown values.
Generally, identifiers occurring in constraints and inferences are
variables. Variables that are generated during inferences and
- appear inside an instance are often called <dfn id="dfn-existential-variables">existential
+ appear inside an instance are often called <dfn title="existential variable" id="dfn-existential-variable">existential
variables</dfn>, because they are implicitly existentially quantified.
</p>
- <p> A <dfn id="term">PROV term</dfn> is a constant identifier
+ <p> A <dfn title="term" id="dfn-term">PROV term</dfn> is a constant identifier
<span class="math">c</span>, a placeholder <span class="name">-</span>, a literal value,
or an existential variable <span class="math">x</span>. An
arbitrary PROV term is written <span class="math">t</span>.</p>
@@ -2237,7 +2240,7 @@
<p> A <dfn id="statement">PROV statement</dfn> is an expression of
the form <span class="math">p(t<sub>1</sub>,...,t<sub>n</sub>)</span> or <span class="math">p(id;t<sub>1</sub>,...,t<sub>n</sub>)</span> where
<span class="math">id,t<sub>1</sub>,...,t<sub>n</sub></span> are
- PROV <a>term</a>s and <span class="math">p</span> is one of the
+ PROV <a href="#dfn-term" class="internalDFN">term</a>s and <span class="math">p</span> is one of the
basic PROV relations. An arbitrary PROV statement is written <span class="math">A</span>.</p>
<p> A <dfn id="instance">PROV instance</dfn> is a set of PROV
@@ -2273,7 +2276,7 @@
statements in <span class="math">I</span>.
</p>
- <p> <dfn id="dfn-unification">Unification</dfn> is an operation that can be applied
+ <p> <dfn title="unification" id="dfn-unification">Unification</dfn> is an operation that can be applied
to a pair of terms.
The result of unification is either a <dfn id="dfn-unifier">unifier</dfn>, that is, a substitution <span class="math">S</span> such that <span class="math">S(t)
= S(t')</span>, or failure, indicating
@@ -2325,10 +2328,10 @@
<section id="inferences">
<!--OddPage--><h2><span class="secno">5. </span>Definitions and Inferences</h2>
<p>
-This section describes <a title="definition" href="#definition" class="internalDFN">definitions</a> and <a title="inference" href="#inference" class="internalDFN">inferences</a> that <em class="rfc2119" title="may">may</em> be used on
- provenance data, and that preserve <a>equivalence</a> on <a href="#dfn-valid" class="internalDFN">valid</a>
+This section describes <a title="definition" href="#dfn-definition" class="internalDFN">definitions</a> and <a title="inference" href="#inference" class="internalDFN">inferences</a> that <em class="rfc2119" title="may">may</em> be used on
+ provenance data, and that preserve <a title="equivalent" href="#dfn-equivalent" class="internalDFN">equivalence</a> on <a href="#dfn-valid" class="internalDFN">valid</a>
PROV instances (as detailed in <a href="#normalization-validity-equivalence" class="sectionRef sec-ref">section 7. Normalization, Validity, and Equivalence</a>).
-A <dfn id="definition">definition</dfn> is a rule that can be applied to
+A <dfn id="dfn-definition">definition</dfn> is a rule that can be applied to
PROV instances to replace defined statements with other statements. An <dfn id="inference">inference</dfn> is a rule that can be applied
to PROV instances to add new PROV statements. A definition states that a
provenance statement is equivalent to some other statements, whereas
@@ -2427,7 +2430,7 @@
<a class="rule-ref" href="#definition-short-forms"><span>Definition 3 (definition-short-forms)</span></a>,
explain how to expand the compact forms of PROV-N notation into a
normal form. <a class="rule-ref" href="#optional-placeholders"><span>Definition 4 (optional-placeholders)</span></a> indicates when
- other optional parameters can be replaced by <a href="#dfn-existential-variables" class="internalDFN">existential
+ other optional parameters can be replaced by <a title="existential variable" href="#dfn-existential-variable" class="internalDFN">existential
variables</a>.
</p>
@@ -2569,8 +2572,8 @@
by fresh existential variables, distinct from any others occurring in
the instance.
The only exceptions to this general rule, where <span class="name">-</span> are to be left
- in place, are the <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#derivation.activity">activity</a>, <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#derivation.generation">generation</a>, and <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#derivation.usage">usage</a> parameters in <span class="name">wasDerivedFrom</span> and
- the <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#association.plan">plan</a>
+ in place, are the <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#derivation.activity">activity</a>, <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#derivation.generation">generation</a>, and <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#derivation.usage">usage</a> parameters in <span class="name">wasDerivedFrom</span> and
+ the <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#association.plan">plan</a>
parameter in <span class="name">wasAssociatedWith</span>. This is
further explained in remarks below.
</p>
@@ -2756,7 +2759,7 @@
-<p id="communication-generation-use-inference_text">Communication between activities <a title="definition" href="#definition" class="internalDFN">implies</a> the existence of an underlying
+<p id="communication-generation-use-inference_text">Communication between activities <a title="definition" href="#dfn-definition" class="internalDFN">implies</a> the existence of an underlying
entity generated by one activity and used by the other, and vice versa.</p>
<div class="inference" id="communication-generation-use-inference"><div class="ruleTitle"><a id="5"></a><a class="internalDFN" href="#communication-generation-use-inference">Inference 5 (communication-generation-use-inference)</a></div>
@@ -3090,7 +3093,7 @@
existential variable, so it can be unified
with a constant identifier, another existential variable, or a
placeholder <span class="name">-</span>, as explained
- in the definition of <a>unification</a>.
+ in the definition of <a href="#dfn-unification" class="internalDFN">unification</a>.
</div>
<hr>
<p id="delegation-inference_text"> Delegation relates agents where one agent acts on behalf of
@@ -3120,7 +3123,7 @@
<span class="name">_pl1</span> and <span class="name">_pl2</span>
can be replaced with constant identifiers, existential variables, or
placeholders <span class="name">-</span> independently, as explained
- in the definition of <a>unification</a>.
+ in the definition of <a href="#dfn-unification" class="internalDFN">unification</a>.
</div>
<hr>
@@ -3343,7 +3346,7 @@
statements, due to inferences. Uniqueness constraints are
enforced through <a href="#dfn-merging" class="internalDFN">merging</a> pairs of statements subject to
equalities. For example, suppose we have two activity statements
- <span class="name">activity(a,2011-11-16T16:00:00,_t1,[a=1])</span> and <span class="name">activity(a,_t2,2011-11-16T18:00:00,[b=2])</span>, with existential variables <span class="name">_t1</span> and <span class="name">_t2</span>. The <a>merge</a> of
+ <span class="name">activity(a,2011-11-16T16:00:00,_t1,[a=1])</span> and <span class="name">activity(a,_t2,2011-11-16T18:00:00,[b=2])</span>, with existential variables <span class="name">_t1</span> and <span class="name">_t2</span>. The <dfn id="dfn-merge">merge</dfn> of
these two statements (describing the same activity <span class="name">a</span>) is <span class="name">activity(a,2011-11-16T16:00:00,2011-11-16T18:00:00,[a=1,b=2])</span>. </p>
@@ -3363,7 +3366,7 @@
</li>
<li>If unification fails, then the constraint
is unsatisfiable, so application of the constraint to <span class="math">I</span>
- fails. If this failure occurs during <a>normalization</a> prior to
+ fails. If this failure occurs during <a title="normal form" href="#dfn-normal-form" class="internalDFN">normalization</a> prior to
validation, then <span class="math">I</span> is invalid, as explained in <a href="#normalization-validity-equivalence">Section 6</a>.
</li>
<li>If unification succeeds with a substitution <span class="math">S</span>, then
@@ -3419,13 +3422,13 @@
</p>
<div class="constraint" id="key-object"><div class="ruleTitle"><a id="22"></a><a class="internalDFN" href="#key-object">Constraint 22 (key-object)</a></div>
<p></p><ol>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#entity.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#entity.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">entity(id,attrs)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#activity.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#activity.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">activity(id,t1,t2,attrs)</span> statement.
</li>
-<li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#agent.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+<li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#agent.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">agent(id,attrs)</span> statement.
</li>
</ol>
@@ -3440,42 +3443,42 @@
</p>
<div class="constraint" id="key-properties"><div class="ruleTitle"><a id="23"></a><a class="internalDFN" href="#key-properties">Constraint 23 (key-properties)</a></div>
<p></p><ol>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#generation.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#generation.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">wasGeneratedBy(id; e,a,t,attrs)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#usage.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#usage.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">used(id; a,e,t,attrs)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#communication.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#communication.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">wasInformedBy(id; a2,a1,attrs)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#start.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#start.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">wasStartedBy(id; a2,e,a1,t,attrs)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#end.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#end.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">wasEndedBy(id; a2,e,a1,t,attrs)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#invalidation.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#invalidation.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">wasInvalidatedBy(id; e,a,t,attrs)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#derivation.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#derivation.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">wasDerivedFrom(id; e2, e1, a, g2, u1, attrs)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#attribution.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#attribution.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">wasAttributedTo(id; e,ag,attr)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#association.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#association.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">wasAssociatedWith(id; a,ag,pl,attrs)</span> statement.
</li>
<!--
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#association.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#association.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">wasAssociatedWith(id; a,ag,-,attrs)</span> statement.
</li>
-->
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#delegation.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#delegation.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">actedOnBehalfOf(id; ag2,ag1,a,attrs)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#influence.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#influence.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">wasInfluencedBy(id; o2,o1,attrs)</span> statement.
</li>
</ol>
@@ -3703,7 +3706,7 @@
<p>
This section specifies ordering constraints from the perspective of
-the <a href="#lifetime" class="internalDFN">lifetime</a> of an activity. An activity starts, then during
+the <a href="#dfn-lifetime" class="internalDFN">lifetime</a> of an activity. An activity starts, then during
its lifetime can use, generate or invalidate entities, communicate
with, start, or end
other
@@ -4864,9 +4867,9 @@
<p>Because of the potential interaction among definitions, inferences, and
constraints, the above algorithm is iterative. Nevertheless,
- all of our constraints fall into a class of <a>tuple-generating
- dependencies</a> and <a>equality-generating dependencies</a> that
- satisfy a termination condition called <a>weak acyclicity</a> that
+ all of our constraints fall into a class of <em>tuple-generating
+ dependencies</em> and <em>equality-generating dependencies</em> that
+ satisfy a termination condition called <em>weak acyclicity</em> that
has been studied in the context of relational databases
[<cite><a class="bibref" href="#bib-DBCONSTRAINTS">DBCONSTRAINTS</a></cite>]. Therefore, the above algorithm terminates, independently
of the order in which inferences and constraints are applied.
@@ -4908,7 +4911,7 @@
-<p> Two <a href="#dfn-valid" class="internalDFN">valid</a> PROV instances are <dfn id="dfn-equivalent">equivalent</dfn> if they
+<p> Two <a href="#dfn-valid" class="internalDFN">valid</a> PROV instances are <dfn title="equivalent" id="dfn-equivalent">equivalent</dfn> if they
have <a href="#dfn-isomorphic" class="internalDFN">isomorphic</a> normal forms. That is, after applying all possible inference
rules, the two instances produce the same set of PROV statements,
up to reordering of statements and attributes within attribute lists,
@@ -4950,7 +4953,7 @@
<li>
Applying inference rules, definitions, and uniqueness constraints preserves equivalence. That is, a <a href="#instance" class="internalDFN">PROV
instance</a> is equivalent to the instance obtained by applying any
- inference rule or definition, or by <a title="unification">unifying</a> two terms or <a href="#dfn-merging" class="internalDFN">merging</a> two statements to
+ inference rule or definition, or by <a title="unification" href="#dfn-unification" class="internalDFN">unifying</a> two terms or <a href="#dfn-merging" class="internalDFN">merging</a> two statements to
enforce a uniqueness constraint.
</li>
<li>Equivalence is <a href="#dfn-reflexive" class="internalDFN">reflexive</a>, <a href="#dfn-symmetric" class="internalDFN">symmetric</a>, and
@@ -4975,11 +4978,11 @@
the resulting notions of normalization, validity and equivalence,
work on a single PROV instance. In this
section, we describe how to deal with general PROV
-documents, possibly including multiple named bundles as well as a
-toplevel instance. Briefly, each bundle is
+documents, possibly including multiple named <dfn title="bundle" id="dfn-bundle">bundles as well as a
+<dfn id="dfn-toplevel-instance">toplevel instance</dfn>. Briefly, each bundle is
handled independently; there is no interaction between bundles from
the perspective of applying definitions, inferences, or constraints,
-computing normal forms, or checking validity or equivalence.</p>
+computing normal forms, or checking validity or equivalence.</dfn></p>
<p> We model a general PROV document, containing <span class="name">n</span> named bundles
<span class="name">b<sub>1</sub>...b<sub>n</sub></span>, as a tuple
--- a/model/releases/PR-prov-constraints-20130312/diff-c.html Tue Feb 19 15:39:53 2013 +0000
+++ b/model/releases/PR-prov-constraints-20130312/diff-c.html Tue Feb 19 15:45:56 2013 +0000
@@ -547,6 +547,21 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
<style>/*****************************************************************
* ReSpec 3 CSS
* Robin Berjon - http://berjon.com/
@@ -691,7 +706,7 @@
<dt><span class="insert">Previous</span> version:</dt>
- <dd><a href="http://www.w3.org/TR/2012/CR-prov-constraints-20121211/">http://www.w3.org/TR/2012/CR-prov-constraints-20121211/</a>
+ <dd><a href="http://www.w3.org/TR/2012/CR-prov-constraints-20121211/">http://www.w3.org/TR/2012/CR-prov-constraints-20121211/
<span class="delete">Latest published version:</span>
<span class="delete">http://www.w3.org/TR/prov-constraints/</span>
@@ -707,7 +722,7 @@
<span class="delete">Previous version:</span>
- <span class="delete">http://www.w3.org/TR/2012/WD-prov-constraints-20120911/</span> <a href="diff-c.html"><span class="delete">(color-coded</span><span class="insert">(colored-coded</span> diff)</a></dd>
+ <span class="delete">http://www.w3.org/TR/2012/WD-prov-constraints-20120911/</span></a> <a href="diff-c.html">(color-coded diff)</a></dd>
<dt>Editors:</dt>
@@ -757,20 +772,20 @@
<p> This document defines a subset of PROV instances called
<i><a href="#dfn-valid" class="internalDFN">valid</a></i> PROV instances, by analogy with notions of
validity for other Web standards.
-The intent of validation is<span class="insert"> to</span> ensure that a PROV instance represents a
+The intent of validation is <span class="insert">to </span>ensure that a PROV instance represents a
consistent history of objects and their interactions that is safe to
use for the purpose of logical reasoning and other kinds of analysis.
Valid PROV instances satisfy
-certain <a>definitions</a>, <a>inferences</a>, and
-<a>constraints</a>. These definitions, inferences, and constraints
+certain <a title="definition" href="#dfn-definition" class="internalDFN">definitions</a>, <a title="inference" href="#inference" class="internalDFN">inferences</a>, and
+<a title="constraint">constraints</a>. These definitions, inferences, and constraints
provide a measure of consistency checking for provenance and reasoning
over provenance. They can also be used to <a title="normal
form" href="#dfn-normal-form" class="internalDFN">normalize</a> PROV instances to forms that can easily be
compared in order to determine whether two PROV instances are
-<a href="#dfn-equivalent" class="internalDFN">equivalent</a>. Validity and equivalence are also defined for PROV
+<a title="equivalence">equivalent</a>. Validity and equivalence are also defined for PROV
bundles (that is, named instances) and documents (that is, a toplevel
instance together with zero or more bundles).</p>
-<p>The <a href="http://www.w3.org/TR/2012/WD-prov-overview-20121211/">PROV Document Overview</a> describes the overall state of PROV, and should be read before other PROV documents.</p>
+<p>The <a href="http://www.w3.org/TR/2012/WD-prov-overview-20130312/">PROV Document Overview</a> describes the overall state of PROV, and should be read before other PROV documents.</p>
</section><section id="sotd" class="introductory"><h2>Status of This Document</h2>
@@ -950,9 +965,9 @@
<p>The PROV Data Model, PROV-DM, is a conceptual data model for provenance, which is
realizable using different representations such as PROV-N and PROV-O.
-A PROV <a>instance</a> is a set of PROV statements.
-A PROV <a>document</a> is an instance
-together with zero or more <a>bundles</a>, or named instances. For
+A <dfn id="dfn-prov-instance">PROV instance</dfn> is a set of PROV statements.
+A <dfn id="dfn-prov-document">PROV document</dfn> is an instance
+together with zero or more <a title="bundle" href="#dfn-bundle" class="internalDFN">bundles</a>, or named instances. For
example, a PROV document could be a .provn document, the result
of a query, a triple store containing PROV statements in RDF, etc.
The
@@ -1039,9 +1054,9 @@
<p><a href="#constraints">Section 6</a> presents four kinds of constraints,
<em>uniqueness</em> constraints that prescribe that certain statements
-must be unique within PROV <a>instances</a>,
+must be unique within <a title="PROV instance" href="#instance" class="internalDFN">PROV instances</a>,
<em>event ordering</em> constraints that require that the records in a
-PROV <a>instance</a> are consistent with a sensible ordering of events
+<a href="#instance" class="internalDFN">PROV instance</a> are consistent with a sensible ordering of events
relating the activities, entities and agents involved,
<em>impossibility</em> constraints that forbid certain patterns of
statements in valid PROV instances, and <em>type</em> constraints that
@@ -1049,7 +1064,7 @@
</p>
<p><a href="#normalization-validity-equivalence">Section 7</a> defines the notions
-of <a>validity</a>, <a>equivalence</a> and <a>normalization</a>.
+of <a title="valid" href="#dfn-valid" class="internalDFN">validity</a>, <a title="equivalent" href="#dfn-equivalent" class="internalDFN">equivalence</a> and <a title="normal form" href="#dfn-normal-form" class="internalDFN">normalization</a>.
</p>
@@ -1095,7 +1110,7 @@
<p>
An entity is a thing one wants to provide provenance for
and whose situation in the world is described by some fixed
-attributes. An entity has a <dfn id="lifetime">lifetime</dfn>,
+attributes. An entity has a <dfn id="dfn-lifetime">lifetime</dfn>,
defined as the period
between its <a title="entity generation event" href="#dfn-generation-event" class="internalDFN">generation event</a>
and its <a title="entity invalidation event" href="#dfn-invalidation-event" class="internalDFN">invalidation event</a>.
@@ -1129,7 +1144,7 @@
In order to describe the provenance of something during an interval
over which relevant attributes of the thing are not fixed, a PROV
instance would describe multiple entities, each with its own
- identifier, <a href="#lifetime" class="internalDFN">lifetime</a>, and fixed attributes, and express dependencies between
+ identifier, <a href="#dfn-lifetime" class="internalDFN">lifetime</a>, and fixed attributes, and express dependencies between
the various entities using <i><a title="instantaneous event" href="#dfn-event" class="internalDFN">events</a></i>. For example, in order to
describe the provenance of several versions of a document, involving
attributes such as authorship that change over time, one can use
@@ -1146,7 +1161,7 @@
attributes; this leads to potential ambiguity, which is mitigated through the
use of identifiers.</p>
-<p>An <a>activity</a>'s lifetime is delimited by its <a title="activity start
+<p>An <span class="delete">activity</span><span class="delete">'s</span><span class="insert">activity's</span> lifetime is delimited by its <a title="activity start
event" href="#dfn-start-event" class="internalDFN">start</a> and its <a title="activity end event" href="#dfn-end-event" class="internalDFN">end</a>
events. It occurs over
an interval delimited by two <a title="instantaneous event" href="#dfn-event" class="internalDFN">instantaneous
@@ -1195,7 +1210,7 @@
end of activities, respectively. The
<strong>entity generation</strong>, <strong>entity usage</strong>, and <strong>entity
invalidation</strong> events apply to entities, and the generation and
-invalidation events delimit the <a href="#lifetime" class="internalDFN">lifetime</a> of an entity. More
+invalidation events delimit the <a href="#dfn-lifetime" class="internalDFN">lifetime</a> of an entity. More
precisely:
</p>
@@ -1447,7 +1462,7 @@
<h3 id="constants-variables-and-placeholders">Constants, Variables and Placeholders</h3>
<p>
PROV statements involve identifiers, literals,
- placeholders, and attribute lists. Identifiers are, according to PROV-N, expressed as <a href="http://www.w3.org/TR/2012/CR-prov-n-20121211/#prod-QUALIFIED_NAME">qualified names</a> which can be mapped to URIs [<cite><a class="bibref" href="#bib-RFC3987">RFC3987</a></cite>].
+ placeholders, and attribute lists. Identifiers are, according to PROV-N, expressed as <a href="http://www.w3.org/TR/2012/PR-prov-n-20130312/#prod-QUALIFIED_NAME">qualified names</a> which can be mapped to URIs [<cite><a class="bibref" href="#bib-RFC3987">RFC3987</a></cite>].
However, in order to specify
constraints over PROV instances, we also need <em>variables</em>
that represent unknown identifiers, literals, or placeholders.
@@ -1461,7 +1476,7 @@
<p>Several definitions and inferences conclude by saying that some
objects exist such that some other formulas hold. Such an inference
- introduces fresh <a>existential variable</a>s into the instance. An
+ introduces fresh <a href="#dfn-existential-variable" class="internalDFN">existential variable</a>s into the instance. An
existential variable denotes a fixed object that exists, but its
exact identity is unknown. Existential variables can stand for
unknown identifiers or literal values only; we do not allow
@@ -1507,7 +1522,7 @@
<p>
For the purpose of constraint checking, we view PROV statements
(possibly involving existential variables) as
- <dfn id="dfn-formulas">formulas</dfn>. An instance is analogous to a "theory" in
+ <dfn id="formula">formulas</dfn>. An instance is analogous to a "theory" in
logic, that is, a set of formulas all thought to describe the same
situation. The set can also be thought of a single, large formula:
the conjunction of all of the atomic formulas.
@@ -1871,9 +1886,9 @@
<h4 id="from-instances-to-bundles-and-documents">From Instances to Bundles and Documents</h4>
-<p>PROV documents can contain multiple instances: a <a>toplevel
+<p>PROV documents can contain multiple instances: a <a href="#dfn-toplevel-instance" class="internalDFN">toplevel
instance</a>, and
-zero or more additional, named instances called <a>bundle</a>s. For the purpose
+zero or more additional, named instances called <span class="delete">bundle</span><span class="delete">s.</span><a title="bundle" href="#dfn-bundle" class="internalDFN"><span class="insert">bundles</span></a><span class="insert">.</span> For the purpose
of inference and constraint checking, these instances are treated independently. That is,
a PROV document is valid provided that each instance in it is valid
and the names of its bundles are distinct. In other words, there are
@@ -1910,23 +1925,23 @@
<div id="prov-constraints-fig" style="text-align: left;">
<table class="thinborder" style="margin-left: auto; margin-right: auto; border-color: black;">
<caption id="prov-constraints">Table 2: Summary of inferences and constraints for PROV Types and Relations</caption>
-<tbody><tr><td><a><b>Type or Relation Name</b></a></td><td><b>
+<tbody><tr><td><b>Type or Relation Name</b></td><td><b>
Inferences and Constraints</b></td><td><b>Component</b></td></tr>
<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
<tr class="component1-color">
- <td class="essential"><a>Entity</a></td>
+ <td class="essential">Entity</td>
<td><a class="rule-text" href="#entity-generation-invalidation-inference_text"><span>Inference 7 (entity-generation-invalidation-inference)</span></a><br>
<a class="rule-text" href="#specialization-attributes-inference_text"><span>Inference 21 (specialization-attributes-inference)</span></a><br>
<a class="rule-text" href="#key-object_text"><span>Constraint 22 (key-object)</span></a><br>
<a class="rule-text" href="#impossible-object-property-overlap_text"><span>Constraint 54 (impossible-object-property-overlap)</span></a><br>
<a class="rule-text" href="#entity-activity-disjoint_text"><span>Constraint 55 (entity-activity-disjoint)</span></a><br>
</td>
- <td rowspan="8" style="text-align: center; "><a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#component1" title="Component 1: Entities/Activities">1</a></td>
+ <td rowspan="8" style="text-align: center; "><a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#component1" title="Component 1: Entities/Activities">1</a></td>
</tr>
<tr class="component1-color">
- <td class="essential"><a>Activity</a></td>
+ <td class="essential">Activity</td>
<td><a class="rule-text" href="#activity-start-end-inference_text"><span>Inference 8 (activity-start-end-inference)</span></a><br>
<a class="rule-text" href="#key-object_text"><span>Constraint 22 (key-object)</span></a><br>
<a class="rule-text" href="#unique-startTime_text"><span>Constraint 28 (unique-startTime)</span></a><br>
@@ -1936,7 +1951,7 @@
</td>
</tr>
<tr class="component1-color">
- <td class="essential"><a>Generation</a></td>
+ <td class="essential">Generation</td>
<td><a class="rule-text" href="#generation-use-communication-inference_text"><span>Inference 6 (generation-use-communication-inference)</span></a><br>
<a class="rule-text" href="#influence-inference_text"><span>Inference 15 (influence-inference)</span></a><br>
@@ -1959,7 +1974,7 @@
</td>
</tr>
<tr class="component1-color">
- <td class="essential"><a>Usage</a></td>
+ <td class="essential">Usage</td>
<td><a class="rule-text" href="#generation-use-communication-inference_text"><span>Inference 6 (generation-use-communication-inference)</span></a><br>
<a class="rule-text" href="#influence-inference_text"><span>Inference 15 (influence-inference)</span></a><br>
<a class="rule-text" href="#key-properties_text"><span>Constraint 23 (key-properties)</span></a><br>
@@ -1972,7 +1987,7 @@
</td>
</tr>
<tr class="component1-color">
- <td class="essential"><a>Communication</a></td>
+ <td class="essential">Communication</td>
<td><a class="rule-text" href="#communication-generation-use-inference_text"><span>Inference 5 (communication-generation-use-inference)</span></a><br>
<a class="rule-text" href="#influence-inference_text"><span>Inference 15 (influence-inference)</span></a><br>
<a class="rule-text" href="#key-properties_text"><span>Constraint 23 (key-properties)</span></a><br>
@@ -1982,7 +1997,7 @@
</td>
</tr>
<tr class="component1-color">
- <td class="essential"><a>Start</a></td>
+ <td class="essential">Start</td>
<td><a class="rule-text" href="#wasStartedBy-inference_text"><span>Inference 9 (wasStartedBy-inference)</span></a><br>
<a class="rule-text" href="#influence-inference_text"><span>Inference 15 (influence-inference)</span></a><br>
<a class="rule-text" href="#key-properties_text"><span>Constraint 23 (key-properties)</span></a><br>
@@ -2000,7 +2015,7 @@
</td>
</tr>
<tr class="component1-color">
- <td class="essential"><a>End</a></td>
+ <td class="essential">End</td>
<td><a class="rule-text" href="#wasEndedBy-inference_text"><span>Inference 10 (wasEndedBy-inference)</span></a><br>
<a class="rule-text" href="#influence-inference_text"><span>Inference 15 (influence-inference)</span></a><br>
<a class="rule-text" href="#key-properties_text"><span>Constraint 23 (key-properties)</span></a><br>
@@ -2018,7 +2033,7 @@
</td>
</tr>
<tr class="component1-color">
- <td class="essential"><a>Invalidation</a></td>
+ <td class="essential">Invalidation</td>
<td><a class="rule-text" href="#influence-inference_text"><span>Inference 15 (influence-inference)</span></a><br>
<a class="rule-text" href="#key-properties_text"><span>Constraint 23 (key-properties)</span></a><br>
<a class="rule-text" href="#unique-invalidation_text"><span>Constraint 25 (unique-invalidation)</span></a><br>
@@ -2039,7 +2054,7 @@
<tr class="component2-color">
- <td class="essential"><a>Derivation</a></td>
+ <td class="essential">Derivation</td>
<td><a class="rule-text" href="#derivation-generation-use-inference_text"><span>Inference 11 (derivation-generation-use-inference)</span></a><br>
@@ -2049,35 +2064,35 @@
<a class="rule-text" href="#derivation-generation-generation-ordering_text"><span>Constraint 42 (derivation-generation-generation-ordering)</span></a><br>
<a class="rule-text" href="#typing_text"><span>Constraint 50 (typing)</span></a><br>
</td>
- <td rowspan="5" style="text-align: center; "><a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#component2" title="Component 2: Derivations">2</a></td>
+ <td rowspan="5" style="text-align: center; "><a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#component2" title="Component 2: Derivations">2</a></td>
</tr>
<tr class="component2-color">
- <td class="provType"><a>Revision</a></td>
+ <td class="provType">Revision</td>
<td><a class="rule-text" href="#revision-is-alternate-inference_text"><span>Inference 12 (revision-is-alternate-inference)</span></a><br></td>
</tr>
<tr class="component2-color">
- <td class="provType"><a>Quotation</a></td>
+ <td class="provType">Quotation</td>
<td>No specific constraints</td>
</tr>
<tr class="component2-color">
- <td class="provType"><a>Primary Source</a></td>
+ <td class="provType">Primary Source</td>
<td>No specific constraints</td>
</tr>
<tr class="component2-color">
- <td><a class="essential">Influence</a></td>
+ <td class="essential">Influence</td>
<td>No specific constraints</td>
</tr>
<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
<tr class="component3-color" style="border-collapse: collapse; ">
- <td class="essential"><a>Agent</a></td>
+ <td class="essential">Agent</td>
<td><a class="rule-text" href="#key-object_text"><span>Constraint 22 (key-object)</span></a><br>
<a class="rule-text" href="#impossible-object-property-overlap_text"><span>Constraint 54 (impossible-object-property-overlap)</span></a><br>
</td>
- <td rowspan="5" style="text-align: center; "><a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#component3" title="Component 3: Agents/Responsibility">3</a></td>
+ <td rowspan="5" style="text-align: center; "><a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#component3" title="Component 3: Agents/Responsibility">3</a></td>
</tr>
<tr class="component3-color">
- <td class="essential"><a>Attribution</a></td>
+ <td class="essential">Attribution</td>
<td><a class="rule-text" href="#attribution-inference_text"><span>Inference 13 (attribution-inference)</span></a><br>
<a class="rule-text" href="#influence-inference_text"><span>Inference 15 (influence-inference)</span></a><br>
<a class="rule-text" href="#key-properties_text"><span>Constraint 23 (key-properties)</span></a><br>
@@ -2087,7 +2102,7 @@
</td>
</tr>
<tr class="component3-color">
- <td class="essential"><a>Association</a></td>
+ <td class="essential">Association</td>
<td><a class="rule-text" href="#influence-inference_text"><span>Inference 15 (influence-inference)</span></a><br>
<a class="rule-text" href="#key-properties_text"><span>Constraint 23 (key-properties)</span></a><br>
<a class="rule-text" href="#wasAssociatedWith-ordering_text"><span>Constraint 47 (wasAssociatedWith-ordering)</span></a><br>
@@ -2096,7 +2111,7 @@
</td>
</tr>
<tr class="component3-color">
- <td class="essential"><a>Delegation</a></td>
+ <td class="essential">Delegation</td>
<td><a class="rule-text" href="#delegation-inference_text"><span>Inference 14 (delegation-inference)</span></a><br>
<a class="rule-text" href="#influence-inference_text"><span>Inference 15 (influence-inference)</span></a><br>
<a class="rule-text" href="#key-properties_text"><span>Constraint 23 (key-properties)</span></a><br>
@@ -2106,7 +2121,7 @@
</td>
</tr>
<tr class="component3-color">
- <td class="essential"><a>Influence</a></td>
+ <td class="essential">Influence</td>
<td><a class="rule-text" href="#influence-inference_text"><span>Inference 15 (influence-inference)</span></a><br>
<a class="rule-text" href="#key-properties_text"><span>Constraint 23 (key-properties)</span></a><br>
</td>
@@ -2114,28 +2129,28 @@
<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
<tr class="component4-color">
- <td><a title="bundle">Bundle constructor</a></td>
+ <td><a title="bundle" href="#dfn-bundle" class="internalDFN">Bundle constructor</a></td>
<td>No specific constraints; see <a href="#bundle-constraints" class="sectionRef sec-ref">section 7.2 Bundles and Documents</a></td>
- <td rowspan="2" style="text-align: center; "><a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#component4" title="Component 4: Bundles">4</a></td>
+ <td rowspan="2" style="text-align: center; "><a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#component4" title="Component 4: Bundles">4</a></td>
</tr>
<tr class="component4-color">
- <td class="provType"><a title="bundle">Bundle type</a></td>
+ <td class="provType"><a title="bundle" href="#dfn-bundle" class="internalDFN">Bundle type</a></td>
<td> No specific constraints; see <a href="#bundle-constraints" class="sectionRef sec-ref">section 7.2 Bundles and Documents</a>
</td>
</tr>
<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
<tr class="component5-color">
- <td><a>Alternate</a></td>
+ <td>Alternate</td>
<td><a class="rule-text" href="#alternate-reflexive_text"><span>Inference 16 (alternate-reflexive)</span></a><br>
<a class="rule-text" href="#alternate-transitive_text"><span>Inference 17 (alternate-transitive)</span></a><br>
<a class="rule-text" href="#alternate-symmetric_text"><span>Inference 18 (alternate-symmetric)</span></a><br>
<a class="rule-text" href="#typing_text"><span>Constraint 50 (typing)</span></a><br>
</td>
- <td rowspan="3" style="text-align: center; "><a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#component5" title="Component 5: Alternate Entities">5</a></td>
+ <td rowspan="3" style="text-align: center; "><a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#component5" title="Component 5: Alternate Entities">5</a></td>
</tr>
<tr class="component5-color">
- <td><a>Specialization</a></td>
+ <td>Specialization</td>
<td><a class="rule-text" href="#specialization-transitive_text"><span>Inference 19 (specialization-transitive)</span></a><br>
<a class="rule-text" href="#specialization-alternate-inference_text"><span>Inference 20 (specialization-alternate-inference)</span></a><br>
<a class="rule-text" href="#specialization-attributes-inference_text"><span>Inference 21 (specialization-attributes-inference)</span></a><br>
@@ -2149,12 +2164,12 @@
<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
<tr class="component6-color">
- <td><a>Collection</a></td>
+ <td>Collection</td>
<td> No specific constraints </td>
- <td rowspan="2" style="text-align: center; "><a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#component6" title="Component 6: Collections">6</a></td>
+ <td rowspan="2" style="text-align: center; "><a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#component6" title="Component 6: Collections">6</a></td>
</tr>
<tr class="component6-color">
- <td><a>Membership</a></td>
+ <td>Membership</td>
<td> <a class="rule-text" href="#membership-empty-collection_text"><span>Constraint 56 (membership-empty-collection)</span></a><br>
<a class="rule-text" href="#typing_text"><span>Constraint 50 (typing)</span></a><br>
</td>
@@ -2233,7 +2248,7 @@
<dfn id="dfn-variables">variables</dfn> denoting the unknown values.
Generally, identifiers occurring in constraints and inferences are
variables. Variables that are generated during inferences and
- appear inside an instance are often called <dfn id="dfn-existential-variables">existential
+ appear inside an instance are often called <dfn title="existential variable" id="dfn-existential-variable">existential
variables</dfn>, because they are implicitly existentially quantified.
</p>
@@ -2241,7 +2256,7 @@
- <p> A <dfn id="term">PROV term</dfn> is a constant identifier
+ <p> A <dfn title="term" id="dfn-term">PROV term</dfn> is a constant identifier
<span class="math">c</span>, a placeholder <span class="name">-</span>, a literal value,
or an existential variable <span class="math">x</span>. An
arbitrary PROV term is written <span class="math">t</span>.</p>
@@ -2249,7 +2264,7 @@
<p> A <dfn id="statement">PROV statement</dfn> is an expression of
the form <span class="math">p(t<sub>1</sub>,...,t<sub>n</sub>)</span> or <span class="math">p(id;t<sub>1</sub>,...,t<sub>n</sub>)</span> where
<span class="math">id,t<sub>1</sub>,...,t<sub>n</sub></span> are
- PROV <a>term</a>s and <span class="math">p</span> is one of the
+ PROV <a href="#dfn-term" class="internalDFN">term</a>s and <span class="math">p</span> is one of the
basic PROV relations. An arbitrary PROV statement is written <span class="math">A</span>.</p>
<p> A <dfn id="instance">PROV instance</dfn> is a set of PROV
@@ -2285,7 +2300,7 @@
statements in <span class="math">I</span>.
</p>
- <p> <dfn id="dfn-unification">Unification</dfn> is an operation that can be applied
+ <p> <dfn title="unification" id="dfn-unification">Unification</dfn> is an operation that can be applied
to a pair of terms.
The result of unification is either a <dfn id="dfn-unifier">unifier</dfn>, that is, a substitution <span class="math">S</span> such that <span class="math">S(t)
= S(t')</span>, or failure, indicating
@@ -2337,10 +2352,10 @@
<section id="inferences">
<h2><span class="secno">5. </span>Definitions and Inferences</h2>
<p>
-This section describes <a title="definition" href="#definition" class="internalDFN">definitions</a> and <a title="inference" href="#inference" class="internalDFN">inferences</a> that <em class="rfc2119" title="may">may</em> be used on
- provenance data, and that preserve <a>equivalence</a> on <a href="#dfn-valid" class="internalDFN">valid</a>
+This section describes <a title="definition" href="#dfn-definition" class="internalDFN">definitions</a> and <a title="inference" href="#inference" class="internalDFN">inferences</a> that <em class="rfc2119" title="may">may</em> be used on
+ provenance data, and that preserve <a title="equivalent" href="#dfn-equivalent" class="internalDFN">equivalence</a> on <a href="#dfn-valid" class="internalDFN">valid</a>
PROV instances (as detailed in <a href="#normalization-validity-equivalence" class="sectionRef sec-ref">section 7. Normalization, Validity, and Equivalence</a>).
-A <dfn id="definition">definition</dfn> is a rule that can be applied to
+A <dfn id="dfn-definition">definition</dfn> is a rule that can be applied to
PROV instances to replace defined statements with other statements. An <dfn id="inference">inference</dfn> is a rule that can be applied
to PROV instances to add new PROV statements. A definition states that a
provenance statement is equivalent to some other statements, whereas
@@ -2437,7 +2452,7 @@
<a class="rule-ref" href="#definition-short-forms"><span>Definition 3 (definition-short-forms)</span></a>,
explain how to expand the compact forms of PROV-N notation into a
normal form. <a class="rule-ref" href="#optional-placeholders"><span>Definition 4 (optional-placeholders)</span></a> indicates when
- other optional parameters can be replaced by <a href="#dfn-existential-variables" class="internalDFN">existential
+ other optional parameters can be replaced by <a title="existential variable" href="#dfn-existential-variable" class="internalDFN">existential
variables</a>.
</p>
@@ -2568,8 +2583,8 @@
by fresh existential variables, distinct from any others occurring in
the instance.
The only exceptions to this general rule, where <span class="name">-</span> are to be left
- in place, are the <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#derivation.activity">activity</a>, <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#derivation.generation">generation</a>, and <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#derivation.usage">usage</a> parameters in <span class="name">wasDerivedFrom</span> and
- the <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#association.plan">plan</a>
+ in place, are the <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#derivation.activity">activity</a>, <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#derivation.generation">generation</a>, and <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#derivation.usage">usage</a> parameters in <span class="name">wasDerivedFrom</span> and
+ the <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#association.plan">plan</a>
parameter in <span class="name">wasAssociatedWith</span>. This is
further explained in remarks below.
</p>
@@ -2724,7 +2739,7 @@
-<p id="communication-generation-use-inference_text">Communication between activities <a title="definition" href="#definition" class="internalDFN">implies</a> the existence of an underlying
+<p id="communication-generation-use-inference_text">Communication between activities <a title="definition" href="#dfn-definition" class="internalDFN">implies</a> the existence of an underlying
entity generated by one activity and used by the other, and vice versa.</p>
<div class="inference" id="communication-generation-use-inference"><div class="ruleTitle"><a id="5"></a><a class="internalDFN" href="#communication-generation-use-inference">Inference 5 (communication-generation-use-inference)</a></div>
@@ -2919,7 +2934,7 @@
existential variable, so it can be unified
with a constant identifier, another existential variable, or a
placeholder <span class="name">-</span>, as explained
- in the definition of <a>unification</a>.
+ in the definition of <a href="#dfn-unification" class="internalDFN">unification</a>.
</div>
<hr>
<p id="delegation-inference_text"> Delegation relates agents where one agent acts on behalf of
@@ -2949,7 +2964,7 @@
<span class="name">_pl1</span> and <span class="name">_pl2</span>
can be replaced with constant identifiers, existential variables, or
placeholders <span class="name">-</span> independently, as explained
- in the definition of <a>unification</a>.
+ in the definition of <a href="#dfn-unification" class="internalDFN">unification</a>.
</div>
<hr>
@@ -3155,7 +3170,7 @@
statements, due to inferences. Uniqueness constraints are
enforced through <a href="#dfn-merging" class="internalDFN">merging</a> pairs of statements subject to
equalities. For example, suppose we have two activity statements
- <span class="name">activity(a,2011-11-16T16:00:00,_t1,[a=1])</span> and <span class="name">activity(a,_t2,2011-11-16T18:00:00,[b=2])</span>, with existential variables <span class="name">_t1</span> and <span class="name">_t2</span>. The <a>merge</a> of
+ <span class="name">activity(a,2011-11-16T16:00:00,_t1,[a=1])</span> and <span class="name">activity(a,_t2,2011-11-16T18:00:00,[b=2])</span>, with existential variables <span class="name">_t1</span> and <span class="name">_t2</span>. The <dfn id="dfn-merge">merge</dfn> of
these two statements (describing the same activity <span class="name">a</span>) is <span class="name">activity(a,2011-11-16T16:00:00,2011-11-16T18:00:00,[a=1,b=2])</span>. </p>
@@ -3175,7 +3190,7 @@
</li>
<li>If unification fails, then the constraint
is unsatisfiable, so application of the constraint to <span class="math">I</span>
- fails. If this failure occurs during <a>normalization</a> prior to
+ fails. If this failure occurs during <a title="normal form" href="#dfn-normal-form" class="internalDFN">normalization</a> prior to
validation, then <span class="math">I</span> is invalid, as explained in <a href="#normalization-validity-equivalence">Section 6</a>.
</li>
<li>If unification succeeds with a substitution <span class="math">S</span>, then
@@ -3231,13 +3246,13 @@
</p>
<div class="constraint" id="key-object"><div class="ruleTitle"><a id="22"></a><a class="internalDFN" href="#key-object">Constraint 22 (key-object)</a></div>
<p></p><ol>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#entity.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#entity.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">entity(id,attrs)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#activity.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#activity.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">activity(id,t1,t2,attrs)</span> statement.
</li>
-<li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#agent.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+<li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#agent.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">agent(id,attrs)</span> statement.
</li>
</ol>
@@ -3252,38 +3267,38 @@
</p>
<div class="constraint" id="key-properties"><div class="ruleTitle"><a id="23"></a><a class="internalDFN" href="#key-properties">Constraint 23 (key-properties)</a></div>
<p></p><ol>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#generation.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#generation.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">wasGeneratedBy(id; e,a,t,attrs)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#usage.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#usage.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">used(id; a,e,t,attrs)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#communication.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#communication.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">wasInformedBy(id; a2,a1,attrs)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#start.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#start.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">wasStartedBy(id; a2,e,a1,t,attrs)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#end.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#end.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">wasEndedBy(id; a2,e,a1,t,attrs)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#invalidation.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#invalidation.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">wasInvalidatedBy(id; e,a,t,attrs)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#derivation.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#derivation.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">wasDerivedFrom(id; e2, e1, a, g2, u1, attrs)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#attribution.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#attribution.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">wasAttributedTo(id; e,ag,attr)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#association.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#association.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">wasAssociatedWith(id; a,ag,pl,attrs)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#delegation.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#delegation.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">actedOnBehalfOf(id; ag2,ag1,a,attrs)</span> statement.
</li>
- <li>The identifier field <a href="http://www.w3.org/TR/2012/CR-prov-dm-20121211/#influence.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
+ <li>The identifier field <a href="http://www.w3.org/TR/2013/PR-prov-dm-20130312/#influence.id"><span class="name">id</span></a> is a <span class="conditional">KEY</span> for
the <span class="name">wasInfluencedBy(id; o2,o1,attrs)</span> statement.
</li>
</ol>
@@ -3482,7 +3497,7 @@
<p>
This section specifies ordering constraints from the perspective of
-the <a href="#lifetime" class="internalDFN">lifetime</a> of an activity. An activity starts, then during
+the <a href="#dfn-lifetime" class="internalDFN">lifetime</a> of an activity. An activity starts, then during
its lifetime can use, generate or invalidate entities, communicate
with, start, or end
other
@@ -4584,9 +4599,9 @@
<p>Because of the potential interaction among definitions, inferences, and
constraints, the above algorithm is iterative. Nevertheless,
- all of our constraints fall into a class of <a>tuple-generating
- dependencies</a> and <a>equality-generating dependencies</a> that
- satisfy a termination condition called <a>weak acyclicity</a> that
+ all of our constraints fall into a class of <em>tuple-generating
+ dependencies<span class="delete"> and </span></em><span class="insert"> and </span><em>equality-generating dependencies</em> that
+ satisfy a termination condition called <em>weak acyclicity</em> that
has been studied in the context of relational databases
[<cite><a class="bibref" href="#bib-DBCONSTRAINTS">DBCONSTRAINTS</a></cite>]. Therefore, the above algorithm terminates, independently
of the order in which inferences and constraints are applied.
@@ -4628,7 +4643,7 @@
-<p> Two <a href="#dfn-valid" class="internalDFN">valid</a> PROV instances are <dfn id="dfn-equivalent">equivalent</dfn> if they
+<p> Two <a href="#dfn-valid" class="internalDFN">valid</a> PROV instances are <dfn title="equivalent" id="dfn-equivalent">equivalent</dfn> if they
have <a href="#dfn-isomorphic" class="internalDFN">isomorphic</a> normal forms. That is, after applying all possible inference
rules, the two instances produce the same set of PROV statements,
up to reordering of statements and attributes within attribute lists,
@@ -4670,7 +4685,7 @@
<li>
Applying inference rules, definitions, and uniqueness constraints preserves equivalence. That is, a <a href="#instance" class="internalDFN">PROV
instance</a> is equivalent to the instance obtained by applying any
- inference rule or definition, or by <a title="unification">unifying</a> two terms or <a href="#dfn-merging" class="internalDFN">merging</a> two statements to
+ inference rule or definition, or by <a title="unification" href="#dfn-unification" class="internalDFN">unifying</a> two terms or <a href="#dfn-merging" class="internalDFN">merging</a> two statements to
enforce a uniqueness constraint.
</li>
<li>Equivalence is <a href="#dfn-reflexive" class="internalDFN">reflexive</a>, <a href="#dfn-symmetric" class="internalDFN">symmetric</a>, and
@@ -4695,11 +4710,11 @@
the resulting notions of normalization, validity and equivalence,
work on a single PROV instance. In this
section, we describe how to deal with general PROV
-documents, possibly including multiple named bundles as well as a
-toplevel instance. Briefly, each bundle is
+documents, possibly including multiple named <dfn title="bundle" id="dfn-bundle">bundles as well as a
+<dfn id="dfn-toplevel-instance">toplevel <span class="delete">instance.</span><span class="insert">instance</span></dfn><span class="insert">.</span> Briefly, each bundle is
handled independently; there is no interaction between bundles from
the perspective of applying definitions, inferences, or constraints,
-computing normal forms, or checking validity or equivalence.</p>
+computing normal forms, or checking validity or equivalence.</dfn></p>
<p> We model a general PROV document, containing <span class="name">n</span> named bundles
<span class="name">b<sub>1</sub>...b<sub>n</sub></span>, as a tuple