--- a/model/diff-n.html Fri Jun 29 12:43:52 2012 +0100
+++ b/model/diff-n.html Fri Jun 29 12:46:18 2012 +0100
@@ -528,9 +528,12 @@
/* other */
pre.sh_sourceCode .sh_section { color: black; font-weight: bold; }
pre.sh_sourceCode .sh_paren { color: red; }
-pre.sh_sourceCode .sh_attribute { color: #006400; }<span class="delete">
-
-
+pre.sh_sourceCode .sh_attribute { color: #006400; }
+
+
+
+
+</style><style type="text/css">
/* --- EDITORIAL NOTES --- */
.pending {
padding: 1em;
@@ -577,22 +580,23 @@
background: #fff;
}
-.inference[id]::before {
- content: "Inference: " attr(id);
- width: 380px; /* How can we compute the length of "Constraint: " attr(id) */
-}
-
-
-.inference::before {
- content: "Inference";
- display: block;
- width: 150px;
- margin: -1.5em 0 0.5em 0;
- font-weight: bold;
- border: 1px solid #f00;
- background: #fff;
- padding: 3px 1em;
-}
+<span class="insert">/* </span>.inference[id]::before {
+ <span class="insert"> */
+/* </span>content: "Inference:<span class="insert"> " attr(id); */
+/* width: 380px; /\* How can we compute the length of "Constraint: " attr(id) *\/ */
+/* } */
+
+
+/* .inference::before { */
+/* content: "Inference"; */
+/* display: block; */
+/* width: 150px; */
+/* margin: -1.5em 0 0.5em 0; */
+/* font-weight: bold; */
+/* border: 1px solid #f00; */
+/* background: #fff; */
+/* padding: 3px 1em; */
+/* } */
.syntax {
padding: 1em;
@@ -602,13 +606,13 @@
}
.syntax[id]::before {
- content: "Syntax: " attr(id);
+ content: "Syntax:</span> " attr(id);
width: 380px; /* How can we compute the length of "Constraint: " attr(id) */
}
-.syntax::before {
- content: "Syntax";
+<span class="delete">.inference::before</span><span class="insert">.syntax::before</span> {
+ content: <span class="delete">"Inference";</span><span class="insert">"Syntax";</span>
display: block;
width: 150px;
margin: -1.5em 0 0.5em 0;
@@ -618,16 +622,18 @@
padding: 3px 1em;
}
-.unamedconstraint {
+<span class="delete">.syntax</span><span class="insert">.unamedconstraint</span> {
padding: 1em;
margin: 1em 0em 0em;
- border: 1px solid #00f;
+ border: 1px solid <span class="delete">#f00;</span><span class="insert">#00f;</span>
background: #fff;
-}
-
-
-.unamedconstraint::before {
- content: "Constraint";
+}<span class="delete">
+
+.syntax[id]::before</span><span class="insert">
+
+
+.unamedconstraint::before</span> {
+ content: <span class="delete">"Syntax:</span><span class="insert">"Constraint";
display: block;
width: 150px;
margin: -1.5em 0 0.5em 0;
@@ -646,22 +652,22 @@
background: #fff;
}
-.constraint[id]::before {
- content: "Constraint: " attr(id);
- width: 380px; /* How can we compute the length of "Constraint: " attr(id) */
-}
-
-
-.constraint::before {
- content: "Constraint";
- display: block;
- width: 150px;
- margin: -1.5em 0 0.5em 0;
- font-weight: bold;
- border: 1px solid #00f;
- background: #fff;
- padding: 3px 1em;
-}
+/* .constraint[id]::before { */
+/* content: "Constraint: " attr(id); */
+/* width: 380px; /\* How can we compute the length of "Constraint: " attr(id) *\/ */
+/* } */
+
+
+/* .constraint::before { */
+/* content: "Constraint"; */
+/* display: block; */
+/* width: 150px; */
+/* margin: -1.5em 0 0.5em 0; */
+/* font-weight: bold; */
+/* border: 1px solid #00f; */
+/* background: #fff; */
+/* padding: 3px 1em; */
+/* } */
@@ -673,7 +679,313 @@
}
.interpretation[id]::before {
- content: "Interpretation: " attr(id);
+ content: "Interpretation:</span> " attr(id);
+ width: 380px; /* How can we compute the length of <span class="delete">"Constraint:</span><span class="insert">"Interpretation:</span> " attr(id) */
+}
+
+
+<span class="delete">.syntax::before</span><span class="insert">.interpretation::before</span> {
+ content: <span class="delete">"Syntax";</span><span class="insert">"Interpretation";</span>
+ display: block;
+ width: 150px;
+ margin: -1.5em 0 0.5em 0;
+ font-weight: bold;
+ border: 1px solid <span class="delete">#f00;</span><span class="insert">#00f;</span>
+ background: #fff;
+ padding: 3px 1em;
+}
+
+<span class="delete">.unamedconstraint</span><span class="insert">.definition</span> {
+ padding: 1em;
+ margin: 1em 0em 0em;
+ border: 1px solid <span class="delete">#00f;</span><span class="insert">#777;</span>
+ background: #fff;
+}<span class="delete">
+
+
+.unamedconstraint::before</span><span class="insert">
+
+/* .definition[id]::before</span> {
+ <span class="insert"> */
+/* </span>content: <span class="delete">"Constraint";
+ </span><span class="insert">"Definition: " attr(id); */
+/* width: 380px; */
+/* } */
+
+
+/* .definition::before { */
+/* content: "Definition"; */
+/* </span>display: block;
+ <span class="insert"> */
+/* </span>width: 150px;
+ <span class="insert"> */
+/* </span>margin: -1.5em 0 0.5em 0;
+ <span class="insert"> */
+/* </span>font-weight: bold;
+ <span class="insert"> */
+/* </span>border: 1px solid <span class="delete">#00f;
+ </span><span class="insert">#000; */
+/* </span>background: #fff;
+ <span class="insert"> */
+/* </span>padding: 3px 1em;
+<span class="insert"> */
+/* </span>}<span class="delete">
+
+
+
+.constraint</span><span class="insert"> */
+
+
+.deprecatedconstraint</span> {
+ padding: 1em;
+ margin: 1em 0em 0em;
+ border: 1px solid #00f;
+ background: #fff;
+}
+
+<span class="delete">.constraint[id]::before</span><span class="insert">.deprecatedconstraint[id]::before</span> {
+ content: <span class="delete">"Constraint:</span><span class="insert">"Deprecated:</span> " attr(id);
+ width: 380px; /* How can we compute the length of <span class="delete">"Constraint:</span><span class="insert">"Deprecatedconstraint:</span> " attr(id) */
+}
+
+
+<span class="delete">.constraint::before</span><span class="insert">.deprecatedconstraint::before</span> {
+ content: <span class="delete">"Constraint";</span><span class="insert">"Deprecated";</span>
+ display: block;
+ width: 150px;
+ margin: -1.5em 0 0.5em 0;
+ font-weight: bold;
+ border: 1px solid #00f;
+ background: #fff;
+ padding: 3px 1em;
+}<span class="delete">
+
+
+
+.interpretation</span><span class="insert">
+
+.glossary-ref {
+ font-style: italic;
+}
+
+.dfn {
+ font-weight: bold;
+}
+
+
+.attribute {
+ font-style: italic;
+}
+
+
+.conditional {
+ color: blue;
+}
+
+.grammar {
+ margin-top: 1ex;
+ margin-bottom: 1ex;
+ padding-left: 1ex;
+ padding-right: 1ex;
+ padding-top: 1ex;
+ padding-bottom: 0.6ex;
+ border: 1px dashed #2f6fab;
+ font-size: 80%;
+}
+.nonterminal {
+ font-weight: bold;
+ font-family: sans-serif;
+ font-size: 95%;
+}
+
+.name {
+ font-family: monospace;
+}
+
+
+.xmpl</span> {
+ padding: 1em;
+ margin: 1em 0em 0em;
+ border: 1px solid <span class="delete">#00f;</span><span class="insert">#f00;</span>
+ background: #fff;
+}
+
+<span class="delete">.interpretation[id]::before</span><span class="insert">.xmpl::before {
+ content: "Example";
+ display: block;
+ width: 150px;
+ margin: -1.5em 0 0.5em 0;
+ font-weight: bold;
+ border: 1px solid #f00;
+ background: #fff;
+ padding: 3px 1em;
+}
+
+/*
+.anexample[count]::before {
+ content: "Example " attr(count) ;
+ font-family: sans-serif;
+ font-size: 1.6ex;
+ font-weight: bold;
+}
+
+.anexample:before {
+ content: "Example:";
+ font-family: sans-serif;
+ font-size: 1.6ex;
+ font-weight: bold;
+}
+
+*/
+
+.anexample {
+ margin-top: 1ex;
+ margin-bottom: 1ex;
+ padding-left: 1ex;
+ padding-right: 1ex;
+ padding-top: 1ex;
+ padding-bottom: 0.6ex;
+ border: 1px dashed #2f6fab;
+ background-color: #f9f9f9;
+}
+.anexample table {
+ background-color: #f9f9f9;
+}
+
+.conceptexample:before {
+ content: "Example:";
+ font-family: sans-serif;
+ font-size: 1.6ex;
+ font-weight: bold;
+}
+.conceptexample {
+ margin-top: 1ex;
+ margin-bottom: 1ex;
+ padding-left: 1ex;
+ padding-right: 1ex;
+ padding-top: 1ex;
+ padding-bottom: 0.6ex;
+ border: 1px dashed #2f6fab;
+ background-color: #f9f9f9;
+}
+
+.pnExpression {
+ font-weight: normal;
+ font-size:120%;
+ font-family: monospace;
+}
+
+
+div[class="grammar"] span[class="name"]:before {
+ content: "'";
+}
+
+div[class="grammar"] span[class="name"]:after {
+ content: "'";
+}
+
+
+div[class="grammar"] span[class="optional"]:before {
+ font-weight: normal;
+ font-size:130%;
+ font-family: monospace;
+ content: "(";
+}
+
+div[class="grammar"] span[class="optional"]:after {
+ font-weight: normal;
+ font-size:130%;
+ font-family: monospace;
+ content: ")?";
+}
+
+
+div[class="grammar"] span[class="plus"]:before {
+ font-weight: normal;
+ font-size:130%;
+ font-family: monospace;
+ content: "(";
+}
+
+div[class="grammar"] span[class="plus"]:after {
+ font-weight: normal;
+ font-size:130%;
+ font-family: monospace;
+ content: ")+";
+}
+
+
+div[class="grammar"] span[class="star"]:before {
+ font-weight: normal;
+ font-size:130%;
+ font-family: monospace;
+ content: "(";
+}
+
+div[class="grammar"] span[class="star"]:after {
+ font-weight: normal;
+ font-size:130%;
+ font-family: monospace;
+ content: ")*";
+}
+
+div[class="grammar"] span[class="choice"]:before {
+ font-weight: normal;
+ font-size:130%;
+ font-family: monospace;
+ content: "(";
+}
+
+div[class="grammar"] span[class="choice"]:after {
+ font-weight: normal;
+ font-size:130%;
+ font-family: monospace;
+ content: ")";
+}
+
+div[class="grammar"] span[class="group"]:before {
+ font-weight: normal;
+ font-size:130%;
+ font-family: monospace;
+ content: "(";
+}
+
+div[class="grammar"] span[class="group"]:after {
+ font-weight: normal;
+ font-size:130%;
+ font-family: monospace;
+ content: ")";
+}
+
+table {
+ background-color: #f9f9f9;
+}
+
+.component1-color {
+ background-color: rgba(255,42,42,0.2);
+}
+
+.component2-color {
+ background-color: rgba(0,68,170,0.2);
+}
+
+.component3-color {
+ background-color: rgba(0,170,0,0.2);
+}
+.component4-color {
+ background-color: rgba(204,255,0,0.2);
+}
+
+.component5-color {
+ background-color: rgba(11,40,40,0.2);
+}
+
+.component6-color {
+ background-color: rgba(244,105,14,0.2);
+}
+
+.interpretation-forward::before</span> {
+ content: "Interpretation: <span class="delete">" attr(id);
width: 380px; /* How can we compute the length of "Interpretation: " attr(id) */
}
@@ -682,22 +994,22 @@
content: "Interpretation";
display: block;
width: 150px;
- margin: -1.5em 0 0.5em 0;
- font-weight: bold;
+ margin: -1.5em 0 0.5em 0;</span><span class="insert">";</span>
+ font-weight: bold;<span class="delete">
border: 1px solid #00f;
background: #fff;
- padding: 3px 1em;
+ padding: 3px 1em;</span>
}
-.definition {
+<span class="delete">.definition {
padding: 1em;
margin: 1em 0em 0em;
border: 1px solid #777;
background: #fff;
}
-.definition[id]::before {
- content: "Definition: " attr(id);
+.definition[id]::before</span><span class="insert">.structural-forward::before</span> {
+ content: <span class="delete">"Definition: " attr(id);
width: 380px;
}
@@ -706,25 +1018,27 @@
content: "Definition";
display: block;
width: 150px;
- margin: -1.5em 0 0.5em 0;
- font-weight: bold;
+ margin: -1.5em 0 0.5em 0;</span><span class="insert">"Structural constraint: ";</span>
+ font-weight: bold;<span class="delete">
border: 1px solid #000;
background: #fff;
- padding: 3px 1em;
+ padding: 3px 1em;</span>
}
-.deprecatedconstraint {
- padding: 1em;
+<span class="delete">.deprecatedconstraint</span><span class="insert">code</span> {
+ <span class="delete">padding: 1em;
margin: 1em 0em 0em;
border: 1px solid #00f;
- background: #fff;
+ background: #fff;</span><span class="insert">color: black;</span>
}
-.deprecatedconstraint[id]::before {
- content: "Deprecated: " attr(id);
- width: 380px; /* How can we compute the length of "Deprecatedconstraint: " attr(id) */
-}
+<span class="delete">.deprecatedconstraint[id]::before</span><span class="insert">.ruleTitle</span> {
+ <span class="delete">content: "Deprecated: " attr(id);
+ width: 380px; /* How can we compute the length of "Deprecatedconstraint: " attr(id) */</span><span class="insert">font-family: sans-serif;
+ font-size: 1.6ex;
+ font-weight: bold;</span>
+}<span class="delete">
.deprecatedconstraint::before {
@@ -963,9 +1277,9 @@
</span>
-</style><link href="./extra.css" rel="stylesheet" type="text/css" charset="utf-8"><link href="http://www.w3.org/StyleSheets/TR/W3C-ED" rel="stylesheet" type="text/css" charset="utf-8"></head>
+</style><link href="http://www.w3.org/StyleSheets/TR/W3C-ED" rel="stylesheet" type="text/css" charset="utf-8"></head>
<body style="display: inherit; "><div class="head"><p><a href="http://www.w3.org/"><img width="72" height="48" src="http://www.w3.org/Icons/w3c_home" alt="W3C"></a></p><h1 class="title" id="title">PROV-N: The Provenance Notation</h1>
-<h2 id="subtitle"><span class="insert">towards second working draft (</span><a href="diff-n.html"><span class="insert">Diffs since last release</span></a><span class="insert">)</span></h2><h2 id="w3c-editor-s-draft-14-june-2012"><acronym title="World Wide Web Consortium">W3C</acronym> <span class="delete">Working</span><span class="insert">Editor's</span> Draft <span class="delete">03 May</span><span class="insert">14 June</span> 2012</h2>
+<h2 id="subtitle"><span class="insert">Final review before Last Call Vote (</span><a href="diff-n.html"><span class="insert">Diffs since last release</span></a><span class="insert">)</span></h2><h2 id="w3c-editor-s-draft-29-june-2012"><acronym title="World Wide Web Consortium">W3C</acronym> <span class="delete">Working</span><span class="insert">Editor's</span> Draft <span class="delete">03 May</span><span class="insert">29 June</span> 2012</h2>
<dl><dt>This<span class="insert"> version:</span></dt><dd><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-n.html"><span class="insert">http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-n.html</span></a></dd><dt><span class="insert">Latest published version:</span></dt><dd><a href="http://www.w3.org/TR/prov-n/"><span class="insert">http://www.w3.org/TR/prov-n/</span></a></dd><dt><span class="insert">Latest editor's draft:</span></dt><dd><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-n.html"><span class="insert">http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-n.html</span></a></dd><dt><span class="insert">Previous</span> version:</dt><dd><a href="http://www.w3.org/TR/2012/WD-prov-n-20120503/">http://www.w3.org/TR/2012/WD-prov-n-20120503/</a></dd>
<span class="delete">Latest published version:</span><span class="delete">http://www.w3.org/TR/prov-n/</span>
<span class="delete">Latest editor's draft:</span><span class="delete">http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-n.html</span>
@@ -977,18 +1291,23 @@
<p>
-PROV-DM, the PROV<span class="insert"> conceptual</span> data model, is a data model for provenance that describes
+<span class="delete">PROV-DM, the PROV</span><span class="insert">Provenance is information about entities, activities, and people
+involved in producing a piece of</span> data <span class="delete">model,</span><span class="insert">or thing, which can be used
+ to form assessments about its quality, reliability or trustworthiness.
+PROV-DM</span> is <span class="insert">the conceptual data model that forms </span>a <span class="delete">data model</span><span class="insert">basis</span> for <span class="insert">the </span><acronym title="World Wide Web Consortium"><span class="insert">W3C</span></acronym>
+provenance <span class="delete">that describes
the entities, people and activities involved in
-producing a piece of data or thing.
-PROV-DM <span class="insert">distinguishes core structures, forming the essence of provenance descriptions, from
-extended structures catering for more advanced uses of provenance.
-PROV-DM </span>is <span class="delete">structured</span><span class="insert">organized</span> in six components,<span class="insert"> respectively</span> dealing with:
+producing a piece</span><span class="insert">(PROV) family</span> of <span class="delete">data or thing.</span><span class="insert">specifications.
+PROV-DM distinguishes core structures, forming the essence of provenance information, from
+extended structures catering for more specific uses of provenance.</span>
+PROV-DM is <span class="delete">structured</span><span class="insert">organized</span> in six components,<span class="insert"> respectively</span> dealing with:
(1) entities and activities, and the time at which they were created, used, or ended;
-(2) agents bearing responsibility for entities that were generated and activities that happened;
-(3) derivations of entities from entities;
-(4) properties to link entities that refer to the same thing;
-(5) <span class="insert">a notion of bundle, a mechanism to support provenance of provenance; and,
-(6) </span>collections forming a logical structure for its <span class="delete">members;
+(2) <span class="insert">derivations of entities from entities;
+(3) </span>agents bearing responsibility for entities that were generated and activities that happened;
+<span class="delete">(3) derivations</span><span class="insert">(4) a notion</span> of <span class="insert">bundle, a mechanism to support provenance of provenance; and,
+(5) properties to link </span>entities <span class="delete">from entities;
+(4) properties</span><span class="insert">that refer</span> to <span class="delete">link entities that refer to </span>the same thing;
+<span class="delete">(5)</span><span class="insert">(6)</span> collections forming a logical structure for its <span class="delete">members;
(6) a simple annotation mechanism.</span><span class="insert">members.</span>
</p>
@@ -1002,9 +1321,12 @@
<p><span class="insert">This is the fifth public release of the PROV-DM document.
Publication as Last Call working draft means that
the Working Group believes that it has satisfied the relevant technical requirements outlined in its charter on this document. The design is not expected to change significantly, going forward, and now is the key time for external review, before the implementation phase.</span></p>
-<h4 id="please-comment-by--date-tbd"><span class="insert">Please Comment By (date TBD)</span></h4>
+
+<p><span class="insert">This specification identifies one </span><a href="http://www.w3.org/2005/10/Process-20051014/tr#cfi"><span class="insert">feature at risk</span></a><span class="insert">: </span><a href="#term-mention"><span class="insert">Mention</span></a><span class="insert"> might be removed from PROV if implementation experience reveals problems with supporting this construct.</span></p>
+
+<h4 id="please-comment-by--2012-09-13--tbc"><span class="insert">Please Comment By 2012-09-13 (TBC)</span></h4>
<p><span class="insert">The PROV Working group seeks public feedback on this Working Draft.
-The end date of the Last Call review period is TBD, and we would appreciate comments by that date to public-prov-comments@w3.org
+The end date of the Last Call review period is </span><b><span class="insert">2012-09-13 (TBC)</span></b><span class="insert">, and we would appreciate comments by that date to public-prov-comments@w3.org
</span></p>
<h4 id="prov-family-of-specifications">PROV Family of Specifications</h4>
@@ -1040,7 +1362,7 @@
from its constraints, and the notation used to illustrate it. The
PROV-N release is synchronized with the release of the PROV-DM, PROV-O,
PROV-PRIMER, and PROV-CONSTRAINTS documents.
-</span><span class="delete">This </span>document was published by the <a href="http://www.w3.org/2011/prov/">Provenance Working Group</a> as <span class="delete">a First Public Working</span><span class="insert">an Editor's</span> Draft.<span class="delete"> This document is intended to become a </span><span class="delete">W3C</span><span class="delete"> Recommendation.</span> If you wish to make comments regarding this document, please send them to <a href="mailto:public-prov-wg@w3.org">public-prov-wg@w3.org</a> (<a href="mailto:public-prov-wg-request@w3.org?subject=subscribe">subscribe</a>, <a href="http://lists.w3.org/Archives/Public/public-prov-wg/">archives</a>). All feedback is welcome.</p><p>Publication as <span class="delete">a Working</span><span class="insert">an Editor's</span> Draft does not imply endorsement by the <acronym title="World Wide Web Consortium">W3C</acronym> Membership. This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress.</p><p>This document was produced by a group operating under the <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/">5 February 2004 <acronym title="World Wide Web Consortium">W3C</acronym> Patent Policy</a>. <acronym title="World Wide Web Consortium">W3C</acronym> maintains a <a href="http://www.w3.org/2004/01/pp-impl/46974/status" rel="disclosure">public list of any patent disclosures</a> made in connection with the deliverables of the group; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/#def-essential">Essential Claim(s)</a> must disclose the information in accordance with <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/#sec-Disclosure">section 6 of the <acronym title="World Wide Web Consortium">W3C</acronym> Patent Policy</a>.</p></div><div id="toc" class="section"><h2 class="introductory">Table of Contents</h2><ul class="toc"><li class="tocline"><a href="#introduction" class="tocxref"><span class="secno">1. </span>Introduction</a><ul class="toc"><li class="tocline"><a href="#purpose" class="tocxref"><span class="secno">1.1 </span>Purpose of this Document and target audience</a></li><li class="tocline"><a href="#structure-of-this-document" class="tocxref"><span class="secno">1.2 </span>Structure of this Document</a></li><li class="tocline"><a href="#notational-conventions" class="tocxref"><span class="secno">1.3 </span>Notational Conventions</a></li></ul></li><li class="tocline"><a href="#general-conventions" class="tocxref"><span class="secno">2. </span>General grammar considerations</a><ul class="toc"><li class="tocline"><a href="#functional-syntax" class="tocxref"><span class="secno">2.1 </span>Functional-style Syntax</a></li><li class="tocline"><a href="#grammar-notation" class="tocxref"><span class="secno">2.2 </span>EBNF Grammar</a></li><li class="tocline"><a href="#prov-n-optionals" class="tocxref"><span class="secno">2.3 </span>Optional terms in expressions</a></li><li class="tocline"><a href="#prov-n-standard-terms" class="tocxref"><span class="secno">2.4 </span>Identifiers and attributes</a></li><li class="tocline"><a href="#comments" class="tocxref"><span class="secno"><span class="insert">2.5 </span></span><span class="insert">Comments</span></a></li></ul></li><li class="tocline"><a href="#prov-n-expressions" class="tocxref"><span class="secno">3. </span>PROV-N Productions per Component</a><ul class="toc"><li class="tocline"><a href="#component1" class="tocxref"><span class="secno">3.1 </span>Component 1: Entities and Activities</a><ul class="toc"><li class="tocline"><a href="#expression-Entity" class="tocxref"><span class="secno">3.1.1 </span>Entity</a></li><li class="tocline"><a href="#expression-Activity" class="tocxref"><span class="secno">3.1.2 </span>Activity</a></li><li class="tocline"><a href="#expression-Generation" class="tocxref"><span class="secno">3.1.3 </span>Generation</a></li><li class="tocline"><a href="#expression-Usage" class="tocxref"><span class="secno">3.1.4 </span>Usage</a></li><li class="tocline"><a href="#expression-wasInformedBy" class="tocxref"><span class="secno"><span class="insert">3.1.5 </span></span><span class="insert">Communication</span></a></li><li class="tocline"><a href="#expression-Start" class="tocxref"><span class="secno"><span class="delete">3.1.5</span><span class="insert">3.1.6</span> </span>Start</a></li><li class="tocline"><a href="#expression-End" class="tocxref"><span class="secno"><span class="delete">3.1.6</span><span class="insert">3.1.7</span> </span>End</a></li><li class="tocline"><a href="#expression-Invalidation" class="tocxref"><span class="secno"><span class="delete">3.1.7</span><span class="insert">3.1.8</span> </span>Invalidation<span class="delete">3.1.8 </span><span class="delete">Communication</span><span class="delete">3.1.9 </span><span class="delete">Start by Activity</span></a></li></ul></li><li class="tocline"><a href="#component2" class="tocxref"><span class="secno">3.2 </span>Component 2: <span class="delete">Agents and Responsibility</span><span class="insert">Derivations</span></a><ul class="toc"><li class="tocline"><a href="#Derivation-Relation" class="tocxref"><span class="secno">3.2.1 </span><span class="delete">Agent</span><span class="insert">Derivation</span></a></li><li class="tocline"><a href="#expression-Revision" class="tocxref"><span class="secno">3.2.2 </span><span class="delete">Attribution</span><span class="insert">Revision</span></a></li><li class="tocline"><a href="#expression-quotation" class="tocxref"><span class="secno">3.2.3 </span><span class="delete">Association</span><span class="insert">Quotation</span></a></li><li class="tocline"><a href="#expression-original-source" class="tocxref"><span class="secno">3.2.4 </span><span class="delete">Responsibility</span><span class="insert">Original Source</span></a></li></ul></li><li class="tocline"><a href="#component3" class="tocxref"><span class="secno">3.3 </span>Component 3: <span class="delete">Derivations</span><span class="insert">Agents and Responsibility</span></a><ul class="toc"><li class="tocline"><a href="#expression-Agent" class="tocxref"><span class="secno">3.3.1 </span><span class="delete">Derivation</span><span class="insert">Agent</span></a></li><li class="tocline"><a href="#expression-attribution" class="tocxref"><span class="secno">3.3.2 </span><span class="delete">Revision</span><span class="insert">Attribution</span></a></li><li class="tocline"><a href="#expression-Association" class="tocxref"><span class="secno">3.3.3 </span><span class="delete">Quotation</span><span class="insert">Association</span></a></li><li class="tocline"><a href="#expression-delegation" class="tocxref"><span class="secno">3.3.4 </span><span class="delete">Original Source</span><span class="insert">Delegation</span></a></li><li class="tocline"><a href="#expression-trace" class="tocxref"><span class="secno">3.3.5 </span>Trace</a></li></ul></li><li class="tocline"><a href="#component4" class="tocxref"><span class="secno">3.4 </span>Component 4: <span class="delete">Alternate Entities</span><span class="insert">Bundles</span></a><ul class="toc"><li class="tocline"><a href="#expression-bundle-declaration" class="tocxref"><span class="secno">3.4.1 </span><span class="delete">Alternate</span><span class="delete">3.4.2 </span><span class="delete">Specialization</span><span class="insert">Bundle Declaration</span></a></li></ul></li><li class="tocline"><a href="#component5" class="tocxref"><span class="secno">3.5 </span>Component 5: <span class="delete">Collections</span><span class="insert">Alternate Entities</span></a><ul class="toc"><li class="tocline"><a href="#expression-alternate" class="tocxref"><span class="secno">3.5.1 </span><span class="delete">Insertion</span><span class="insert">Alternate</span></a></li><li class="tocline"><a href="#expression-specialization" class="tocxref"><span class="secno">3.5.2 </span><span class="delete">Removal</span><span class="insert">Specialization</span></a></li><li class="tocline"><a href="#expression-contextualization" class="tocxref"><span class="secno">3.5.3 </span><span class="delete">Membership</span><span class="insert">Contextualization</span></a></li></ul></li><li class="tocline"><a href="#component6" class="tocxref"><span class="secno">3.6 </span>Component 6: <span class="delete">Annotations</span><span class="insert">Collections</span></a><ul class="toc"><li class="tocline"><a href="#expression-collection-insertion" class="tocxref"><span class="secno">3.6.1 </span><span class="delete">Note</span><span class="insert">Insertion</span></a></li><li class="tocline"><a href="#expression-collection-removal" class="tocxref"><span class="secno">3.6.2 </span><span class="delete">Annotation</span><span class="insert">Removal</span></a></li><li class="tocline"><a href="#expression-collection-membership" class="tocxref"><span class="secno"><span class="insert">3.6.3 </span></span><span class="insert">Membership</span></a></li></ul></li><li class="tocline"><a href="#subexpressions" class="tocxref"><span class="secno">3.7 </span>Further Expressions</a><ul class="toc"><li class="tocline"><a href="#expression-NamespaceDeclaration" class="tocxref"><span class="secno">3.7.1 </span>Namespace Declaration</a></li><li class="tocline"><a href="#expression-identifier" class="tocxref"><span class="secno">3.7.2 </span>Identifier</a></li><li class="tocline"><a href="#expression-attribute" class="tocxref"><span class="secno">3.7.3 </span>Attribute</a></li><li class="tocline"><a href="#expression-literal" class="tocxref"><span class="secno">3.7.4 </span>Literal</a><ul class="toc"><li class="tocline"><a href="#expression-types" class="tocxref"><span class="secno">3.7.4.1 </span>Reserved Type Values</a></li><li class="tocline"><a href="#expression-Time" class="tocxref"><span class="secno">3.7.4.2 </span>Time Values</a></li></ul></li></ul></li></ul></li><li class="tocline"><a href="#toplevelBundle" class="tocxref"><span class="secno">4. </span><span class="delete">Expression Container</span><span class="delete">5. </span><span class="delete">Account</span><span class="insert">Toplevel Bundle</span></a></li><li class="tocline"><a href="#media-type" class="tocxref"><span class="secno"><span class="delete">6.</span><span class="insert">5.</span> </span>Media Type</a></li><li class="tocline"><a href="#acknowledgements" class="tocxref"><span class="secno">A. </span>Acknowledgements</a></li><li class="tocline"><a href="#references" class="tocxref"><span class="secno">B. </span>References</a><ul class="toc"><li class="tocline"><a href="#normative-references" class="tocxref"><span class="secno">B.1 </span>Normative references</a></li><li class="tocline"><a href="#informative-references" class="tocxref"><span class="secno">B.2 </span>Informative references</a></li></ul></li></ul></div>
+</span><span class="delete">This </span>document was published by the <a href="http://www.w3.org/2011/prov/">Provenance Working Group</a> as <span class="delete">a First Public Working</span><span class="insert">an Editor's</span> Draft. <span class="delete">This document is intended</span><span class="insert">If you wish</span> to <span class="delete">become a </span><span class="delete">W3C</span><span class="delete"> Recommendation. If you wish</span><span class="insert">make comments regarding this document, please send them</span> to <span class="delete">make comments regarding this document, please send them to </span><span class="delete">public-prov-wg@w3.org</span><a href="mailto:public-prov-comments@w3.org"><span class="insert">public-prov-comments@w3.org</span></a> (<a href="mailto:public-prov-comments-request@w3.org?subject=subscribe">subscribe</a>, <a href="http://lists.w3.org/Archives/Public/public-prov-comments/">archives</a>). All feedback is welcome.</p><p>Publication as <span class="delete">a Working</span><span class="insert">an Editor's</span> Draft does not imply endorsement by the <acronym title="World Wide Web Consortium">W3C</acronym> Membership. This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress.</p><p>This document was produced by a group operating under the <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/">5 February 2004 <acronym title="World Wide Web Consortium">W3C</acronym> Patent Policy</a>. <acronym title="World Wide Web Consortium">W3C</acronym> maintains a <a href="http://www.w3.org/2004/01/pp-impl/46974/status" rel="disclosure">public list of any patent disclosures</a> made in connection with the deliverables of the group; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/#def-essential">Essential Claim(s)</a> must disclose the information in accordance with <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/#sec-Disclosure">section 6 of the <acronym title="World Wide Web Consortium">W3C</acronym> Patent Policy</a>.</p></div><div id="toc" class="section"><h2 class="introductory">Table of Contents</h2><ul class="toc"><li class="tocline"><a href="#introduction" class="tocxref"><span class="secno">1. </span>Introduction</a><ul class="toc"><li class="tocline"><a href="#purpose" class="tocxref"><span class="secno">1.1 </span>Purpose of this Document and target audience</a></li><li class="tocline"><a href="#structure-of-this-document" class="tocxref"><span class="secno">1.2 </span>Structure of this Document</a></li><li class="tocline"><a href="#notational-conventions" class="tocxref"><span class="secno">1.3 </span>Notational Conventions</a></li></ul></li><li class="tocline"><a href="#general-conventions" class="tocxref"><span class="secno">2. </span>General grammar considerations</a><ul class="toc"><li class="tocline"><a href="#functional-syntax" class="tocxref"><span class="secno">2.1 </span>Functional-style Syntax</a></li><li class="tocline"><a href="#grammar-notation" class="tocxref"><span class="secno">2.2 </span>EBNF Grammar</a></li><li class="tocline"><a href="#prov-n-optionals" class="tocxref"><span class="secno">2.3 </span>Optional terms in expressions</a></li><li class="tocline"><a href="#prov-n-standard-terms" class="tocxref"><span class="secno">2.4 </span>Identifiers and attributes</a></li><li class="tocline"><a href="#comments" class="tocxref"><span class="secno"><span class="insert">2.5 </span></span><span class="insert">Comments</span></a></li></ul></li><li class="tocline"><a href="#prov-n-expressions" class="tocxref"><span class="secno">3. </span>PROV-N Productions per Component</a><ul class="toc"><li class="tocline"><a href="#component1" class="tocxref"><span class="secno">3.1 </span>Component 1: Entities and Activities</a><ul class="toc"><li class="tocline"><a href="#expression-Entity" class="tocxref"><span class="secno">3.1.1 </span>Entity</a></li><li class="tocline"><a href="#expression-Activity" class="tocxref"><span class="secno">3.1.2 </span>Activity</a></li><li class="tocline"><a href="#expression-Generation" class="tocxref"><span class="secno">3.1.3 </span>Generation</a></li><li class="tocline"><a href="#expression-Usage" class="tocxref"><span class="secno">3.1.4 </span>Usage</a></li><li class="tocline"><a href="#expression-wasInformedBy" class="tocxref"><span class="secno"><span class="insert">3.1.5 </span></span><span class="insert">Communication</span></a></li><li class="tocline"><a href="#expression-Start" class="tocxref"><span class="secno"><span class="delete">3.1.5</span><span class="insert">3.1.6</span> </span>Start</a></li><li class="tocline"><a href="#expression-End" class="tocxref"><span class="secno"><span class="delete">3.1.6</span><span class="insert">3.1.7</span> </span>End</a></li><li class="tocline"><a href="#expression-Invalidation" class="tocxref"><span class="secno"><span class="delete">3.1.7</span><span class="insert">3.1.8</span> </span>Invalidation<span class="delete">3.1.8 </span><span class="delete">Communication</span><span class="delete">3.1.9 </span><span class="delete">Start by Activity</span></a></li></ul></li><li class="tocline"><a href="#component2" class="tocxref"><span class="secno">3.2 </span>Component 2: <span class="delete">Agents and Responsibility</span><span class="insert">Derivations</span></a><ul class="toc"><li class="tocline"><a href="#Derivation-Relation" class="tocxref"><span class="secno">3.2.1 </span><span class="delete">Agent</span><span class="insert">Derivation</span></a></li><li class="tocline"><a href="#expression-Revision" class="tocxref"><span class="secno">3.2.2 </span><span class="delete">Attribution</span><span class="insert">Revision</span></a></li><li class="tocline"><a href="#expression-quotation" class="tocxref"><span class="secno">3.2.3 </span><span class="delete">Association</span><span class="insert">Quotation</span></a></li><li class="tocline"><a href="#expression-original-source" class="tocxref"><span class="secno">3.2.4 </span><span class="delete">Responsibility</span><span class="insert">Primary Source</span></a></li></ul></li><li class="tocline"><a href="#component3" class="tocxref"><span class="secno">3.3 </span>Component 3: <span class="delete">Derivations</span><span class="insert">Agents, Responsibility, and Influence</span></a><ul class="toc"><li class="tocline"><a href="#expression-Agent" class="tocxref"><span class="secno">3.3.1 </span><span class="delete">Derivation</span><span class="insert">Agent</span></a></li><li class="tocline"><a href="#expression-attribution" class="tocxref"><span class="secno">3.3.2 </span><span class="delete">Revision</span><span class="insert">Attribution</span></a></li><li class="tocline"><a href="#expression-Association" class="tocxref"><span class="secno">3.3.3 </span><span class="delete">Quotation</span><span class="insert">Association</span></a></li><li class="tocline"><a href="#expression-delegation" class="tocxref"><span class="secno">3.3.4 </span><span class="delete">Original Source</span><span class="insert">Delegation</span></a></li><li class="tocline"><a href="#expression-influence" class="tocxref"><span class="secno">3.3.5 </span><span class="delete">Trace</span><span class="insert">Influence</span></a></li></ul></li><li class="tocline"><a href="#component4" class="tocxref"><span class="secno">3.4 </span>Component 4: <span class="delete">Alternate Entities</span><span class="insert">Bundles</span></a><ul class="toc"><li class="tocline"><a href="#expression-bundle-declaration" class="tocxref"><span class="secno">3.4.1 </span><span class="delete">Alternate</span><span class="delete">3.4.2 </span><span class="delete">Specialization</span><span class="insert">Bundle Declaration</span></a></li></ul></li><li class="tocline"><a href="#component5" class="tocxref"><span class="secno">3.5 </span>Component 5: <span class="delete">Collections</span><span class="insert">Alternate Entities</span></a><ul class="toc"><li class="tocline"><a href="#expression-alternate" class="tocxref"><span class="secno">3.5.1 </span><span class="delete">Insertion</span><span class="insert">Alternate</span></a></li><li class="tocline"><a href="#expression-specialization" class="tocxref"><span class="secno">3.5.2 </span><span class="delete">Removal</span><span class="insert">Specialization</span></a></li><li class="tocline"><a href="#expression-mention" class="tocxref"><span class="secno">3.5.3 </span><span class="delete">Membership</span><span class="insert">Mention</span></a></li></ul></li><li class="tocline"><a href="#component6" class="tocxref"><span class="secno">3.6 </span>Component 6: <span class="delete">Annotations</span><span class="insert">Collections</span></a><ul class="toc"><li class="tocline"><a href="#expression-collection-membership" class="tocxref"><span class="secno">3.6.1 </span><span class="delete">Note</span><span class="delete">3.6.2 </span><span class="delete">Annotation</span><span class="insert">Membership</span></a></li></ul></li><li class="tocline"><a href="#subexpressions" class="tocxref"><span class="secno">3.7 </span>Further Expressions</a><ul class="toc"><li class="tocline"><a href="#expression-identifier" class="tocxref"><span class="secno">3.7.1 <span class="delete">Namespace Declaration</span><span class="delete">3.7.2</span> </span>Identifier</a></li><li class="tocline"><a href="#expression-attribute" class="tocxref"><span class="secno"><span class="delete">3.7.3</span><span class="insert">3.7.2</span> </span>Attribute</a></li><li class="tocline"><a href="#expression-literal" class="tocxref"><span class="secno"><span class="delete">3.7.4</span><span class="insert">3.7.3</span> </span>Literal</a><ul class="toc"><li class="tocline"><a href="#expression-types" class="tocxref"><span class="secno"><span class="delete">3.7.4.1</span><span class="insert">3.7.3.1</span> </span>Reserved Type Values</a></li><li class="tocline"><a href="#expression-Time" class="tocxref"><span class="secno"><span class="delete">3.7.4.2</span><span class="insert">3.7.3.2</span> </span>Time Values</a></li></ul></li><li class="tocline"><a href="#expression-NamespaceDeclaration" class="tocxref"><span class="secno"><span class="insert">3.7.4 </span></span><span class="insert">Namespace Declaration</span></a></li></ul></li></ul></li><li class="tocline"><a href="#toplevelBundle" class="tocxref"><span class="secno">4. </span><span class="delete">Expression Container</span><span class="delete">5. </span><span class="delete">Account</span><span class="insert">Toplevel Bundle</span></a></li><li class="tocline"><a href="#media-type" class="tocxref"><span class="secno"><span class="delete">6.</span><span class="insert">5.</span> </span>Media Type</a></li><li class="tocline"><a href="#acknowledgements" class="tocxref"><span class="secno">A. </span>Acknowledgements</a></li><li class="tocline"><a href="#references" class="tocxref"><span class="secno">B. </span>References</a><ul class="toc"><li class="tocline"><a href="#normative-references" class="tocxref"><span class="secno">B.1 </span>Normative references</a></li><li class="tocline"><a href="#informative-references" class="tocxref"><span class="secno">B.2 </span>Informative references</a></li></ul></li></ul></div>
@@ -1147,10 +1469,10 @@
</p><div style="text-align: left;">
<table border="1" style="margin-left: auto; margin-right: auto;">
<caption id="namespace-table">Table 1: Prefix and Namespaces used in this specification</caption>
-<tbody><tr><td><a><bf>prefix</bf></a></td><td><bf>namespace uri </bf></td> <td><bf>definition</bf></td></tr>
+<tbody><tr><td><a><b>prefix</b></a></td><td><b>namespace uri </b></td> <td><b>definition</b></td></tr>
<tr><td><a>prov</a></td><td>http://www.w3.org/ns/prov#</td><td>The PROV namespace (see Section <a href="#expression-NamespaceDeclaration">4.7.1</a>)</td></tr>
-<tr><td><a>xsd</a></td><td>http://www.w3.org/2000/10/XMLSchema#</td><td>XML Schema Namespace [<cite><a class="bibref" rel="biblioentry" href="#bib-XMLSCHEMA-2">XMLSCHEMA-2</a></cite>]</td></tr>
-<tr><td><a>rdf</a></td><td>http://www.w3.org/1999/02/22-rdf-syntax-ns#</td><td>The RDF namespace [<cite><a class="bibref" rel="biblioentry" href="#bib-RDF-CONCEPTS">RDF-CONCEPTS</a></cite>]</td></tr>
+<tr><td><a>xsd</a></td><td>http://www.w3.org/2000/10/XMLSchema#</td><td>XML Schema Namespace [<cite><span class="delete">XMLSCHEMA-2</span><span class="delete">]</span>
+<span class="delete">rdf</span><span class="delete">http://www.w3.org/1999/02/22-rdf-syntax-ns#</span><span class="delete">The RDF namespace [</span><span class="delete">RDF-CONCEPTS</span><a class="bibref" rel="biblioentry" href="#bib-XMLSCHEMA11-2"><span class="insert">XMLSCHEMA11-2</span></a></cite>]</td></tr>
<tr><td><a>(others)</a></td><td>(various)</td><td>All other namespace prefixes are used in examples only. <br> In particular, URIs starting with "http://example.com" represent<br> some application-dependent URI [<cite><a class="bibref" rel="biblioentry" href="#bib-URI">URI</a></cite>]</td></tr>
</tbody></table>
</div>
@@ -1266,14 +1588,14 @@
| </span><span class="prod"><a class="grammarRef" href="#prod-derivationExpression">derivationExpression
</a></span> | <span class="delete">revisionExpression</span>
-<span class="prod"><a class="grammarRef" href="#prod-tracedToExpression"><span class="insert">tracedToExpression</span></a></span> | <span class="delete">quotationExpression</span> <span class="delete">
+<span class="prod"><a class="grammarRef" href="#prod-influenceExpression"><span class="insert">influenceExpression</span></a></span> | <span class="delete">quotationExpression</span> <span class="delete">
| </span><span class="delete">hadOriginalSourceExpression</span>
<span class="prod"><a class="grammarRef" href="#prod-alternateExpression"><span class="insert">alternateExpression</span></a></span> | <span class="delete">traceExpression</span>
<span class="delete">
| </span><span class="delete">alternateExpression</span>
<span class="prod"><a class="grammarRef" href="#prod-specializationExpression"><span class="insert">specializationExpression</span></a></span> | <span class="delete">specializationExpression</span>
-<span class="prod"><a class="grammarRef" href="#prod-contextualizationExpression"><span class="insert">contextualizationExpression</span></a></span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-insertionExpression"><span class="insert">insertionExpression</span></a></span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-removalExpression"><span class="insert">removalExpression</span></a></span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-membershipExpression"><span class="insert">membershipExpression</span></a></span><span class="insert"> )</span></code></td> </tr> </tbody>
+<span class="prod"><a class="grammarRef" href="#prod-mentionExpression"><span class="insert">mentionExpression</span></a></span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-membershipExpression"><span class="insert">membershipExpression</span></a></span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-insertionExpression"><span class="insert">insertionExpression</span></a></span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-removalExpression"><span class="insert">removalExpression</span></a></span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-dictMembershipExpression"><span class="insert">dictMembershipExpression</span></a></span><span class="insert"> )</span></code></td> </tr> </tbody>
</table>
@@ -1372,9 +1694,9 @@
Comments in PROV-N take two forms:
</span><ul>
-<li><span class="insert"> '//' outside an </span><code class="content"><a class="grammarRef" href="#prod-IRI_REF"><span class="insert">IRI_REF</span></a></code><span class="insert"> or </span><code class="content"><a class="grammarRef" href="#prod-STRING_LITERAL"><span class="insert">STRING_LITERAL</span></a></code><span class="insert">; such cooments continue to the end of line (marked by characters U+000D or U+000A) or end of file if there is no end of line after the comment marker.
-
-</span></li><li><span class="insert"> '/*' ... '*/', outside an </span><code class="content"><a class="grammarRef" href="#prod-IRI_REF"><span class="insert">IRI_REF</span></a></code><span class="insert"> or </span><code class="content"><a class="grammarRef" href="#prod-STRING_LITERAL"><span class="insert">STRING_LITERAL</span></a></code><span class="insert">.
+<li><span class="insert"> '//' outside an </span><code class="content"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rIRI_REF"><span class="insert">IRI_REF</span></a></code><span class="insert"> or </span><code class="content"><a class="grammarRef" href="#prod-STRING_LITERAL"><span class="insert">STRING_LITERAL</span></a></code><span class="insert">; such cooments continue to the end of line (marked by characters U+000D or U+000A) or end of file if there is no end of line after the comment marker.
+
+</span></li><li><span class="insert"> '/*' ... '*/', outside an </span><code class="content"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rIRI_REF"><span class="insert">IRI_REF</span></a></code><span class="insert"> or </span><code class="content"><a class="grammarRef" href="#prod-STRING_LITERAL"><span class="insert">STRING_LITERAL</span></a></code><span class="insert">.
</span></li></ul>
<p><span class="insert">Comments are treated as white space.</span></p>
@@ -1672,7 +1994,7 @@
<table class="grammar">
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-communicationExpression" name="prod-communicationExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">16</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">communicationExpression</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"wasInformedBy" "(" </span><span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-aIdentifier"><span class="insert">aIdentifier</span></a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-aIdentifier"><span class="insert">aIdentifier</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></span><span class="insert"> ")"</span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-communicationExpression" name="prod-communicationExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">13</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">communicationExpression</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"wasInformedBy" "(" </span><span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-aIdentifier"><span class="insert">aIdentifier</span></a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-aIdentifier"><span class="insert">aIdentifier</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></span><span class="insert"> ")"</span></code></td> </tr> </tbody>
</table>
@@ -1717,7 +2039,7 @@
<table class="grammar">
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-startExpression" name="prod-startExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">13</span></span><span class="insert">] </span></td> <td><code class="production prod">startExpression<span class="delete"> ::=
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-startExpression" name="prod-startExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">14</span></span><span class="insert">] </span></td> <td><code class="production prod">startExpression<span class="delete"> ::=
</span><span class="delete">wasStartedBy</span>
</code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"wasStartedBy" "(" </span><span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-aIdentifier"><span class="insert">aIdentifier</span></a></span> (
<span class="delete">( </span><span class="delete">identifier</span><span class="delete"> | </span><span class="delete">-</span><span class="delete"> ) </span><span class="delete">,</span>
@@ -1785,7 +2107,7 @@
<table class="grammar">
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-endExpression" name="prod-endExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">14</span></span><span class="insert">] </span></td> <td><code class="production prod">endExpression<span class="delete"> ::=
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-endExpression" name="prod-endExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">15</span></span><span class="insert">] </span></td> <td><code class="production prod">endExpression<span class="delete"> ::=
</span><span class="delete">wasEndedBy</span>
</code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"wasEndedBy" "(" </span><span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-aIdentifier"><span class="insert">aIdentifier</span></a></span> (
<span class="delete">( </span><span class="delete">identifier</span><span class="delete"> | </span><span class="delete">-</span><span class="delete"> ) </span><span class="delete">,</span>
@@ -1843,7 +2165,7 @@
<p><strong>Note:</strong>Even though the production <code class="content"><a class="grammarRef" href="#prod-endExpression">endExpression</a></code> allows for expressions <span class="name">wasEndedBy(e2, -, -)</span> and <span class="name"><span class="delete">wasEndedBy(-,</span><span class="insert">wasEndedBy(-;</span> e2, -, -)</span>, these expressions are not valid in PROV-N,
since
- at least<span class="insert"> one</span> <span class="delete">one </span>of <a href="http://www.w3.org/TR/prov-dm/#end.id"><span class="attribute"><span class="insert">id</span></span></a><span class="insert">, </span><a href="http://www.w3.org/TR/prov-dm/#end.trigger"><span class="attribute">trigger</span></a>, <a href="http://www.w3.org/TR/prov-dm/#end.ene"><span class="attribute"><span class="insert">ender</span></span></a><span class="insert">, </span><a href="http://www.w3.org/TR/prov-dm/#end.time"><span class="attribute">time</span></a>, and <a href="http://www.w3.org/TR/prov-dm/#end.attributes"><span class="attribute">attributes</span></a> <em class="rfc2119" title="must">must</em> be present.</p>
+ at least<span class="insert"> one</span> <span class="delete">one </span>of <a href="http://www.w3.org/TR/prov-dm/#end.id"><span class="attribute"><span class="insert">id</span></span></a><span class="insert">, </span><a href="http://www.w3.org/TR/prov-dm/#end.trigger"><span class="attribute">trigger</span></a>, <a href="http://www.w3.org/TR/prov-dm/#end.ender"><span class="attribute"><span class="insert">ender</span></span></a><span class="insert">, </span><a href="http://www.w3.org/TR/prov-dm/#end.time"><span class="attribute">time</span></a>, and <a href="http://www.w3.org/TR/prov-dm/#end.attributes"><span class="attribute">attributes</span></a> <em class="rfc2119" title="must">must</em> be present.</p>
</div>
@@ -1862,7 +2184,7 @@
<table class="grammar">
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-invalidationExpression" name="prod-invalidationExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">15</span></span><span class="insert">] </span></td> <td><code class="production prod">invalidationExpression<span class="delete"> ::=
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-invalidationExpression" name="prod-invalidationExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">16</span></span><span class="insert">] </span></td> <td><code class="production prod">invalidationExpression<span class="delete"> ::=
</span><span class="delete">wasInvalidatedBy</span>
</code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"wasInvalidatedBy" "(" </span><span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-eIdentifier"><span class="insert">eIdentifier</span></a></span> (
<span class="delete">( </span><span class="delete">identifier</span><span class="delete"> | </span><span class="delete">-</span><span class="delete"> ) </span><span class="delete">,</span>
@@ -2000,166 +2322,11 @@
<div id="component2" class="section">
<h3><span class="secno">3.2 </span>Component 2: <span class="delete">Agents and Responsibility</span><span class="insert">Derivations</span></h3>
<div id="Derivation-Relation" class="section">
-<h4><span class="secno">3.2.1 </span><span class="delete">Agent</span>
-
-
-<span class="delete">agentExpression</span><span class="delete"> ::=
-</span><span class="delete">agent</span>
-<span class="delete">(</span>
-<span class="delete">identifier</span>
-<span class="delete">optional-attribute-values</span>
-<span class="delete">)</span>
-
-
-
-
-<span class="delete">agent(ag4, [ prov:type="prov:Person", ex:name="David" ])
-</span>
-<span class="delete">Here </span><span class="delete">ag</span><span class="delete"> is the agent identifier, and
- </span><span class="delete">[ prov:type="prov:Person", ex:name="David" ]</span><span class="delete"> are optional attributes. </span><span class="delete">
-In the next example, the optional attributes are omitted.
-
-</span><span class="delete">agent(ag4)
-</span>
-
-
-
-
-
-<span class="delete">3.2.2 </span><span class="delete">Attribution</span>
-
-
-<span class="delete">attributionExpression</span><span class="delete"> ::=
-</span><span class="delete">wasAttributedTo</span>
-<span class="delete">(</span>
-<span class="delete">( </span><span class="delete">identifier</span><span class="delete"> | </span><span class="delete">-</span><span class="delete"> ) </span><span class="delete">,</span>
-<span class="delete">eIdentifier</span>
-<span class="delete">,</span>
-<span class="delete">agIdentifier</span>
-<span class="delete">optional-attribute-values</span>
-<span class="delete">)</span>
-
-
-
-
-<span class="delete">wasAttributedTo(id, e, ag, [ex:license="cc:attributionURL" %% "xsd:QName"])
- </span>
-<span class="delete"> Here </span><span class="delete">id</span><span class="delete"> is the optional attribution identifier, </span><span class="delete">e</span><span class="delete"> is an entity identifier,
- </span><span class="delete">ag</span><span class="delete"> is the identifier of the agent to whom the entity is abscribed,
-and </span><span class="delete">[ex:license="cc:attributionURL" %% "xsd:QName"]</span><span class="delete"> are optional attributes. </span><span class="delete">
-The remaining examples show cases where some of the optionals are omitted.
-
-</span><span class="delete">wasAttributedTo(e, ag)
-wasAttributedTo(e, ag, [ex:license="cc:attributionURL" %% "xsd:QName"])
-wasAttributedTo(-, e, ag, [ex:license="cc:attributionURL" %% "xsd:QName"])
-</span>
-
-
-
-
-
-
-<span class="delete">3.2.3 </span><span class="delete">Association</span>
-
-
-<span class="delete">associationExpression</span><span class="delete"> ::=
-</span><span class="delete">wasAssociatedWith</span>
-<span class="delete">(</span>
-<span class="delete">( </span><span class="delete">identifier</span><span class="delete"> | </span><span class="delete">-</span><span class="delete"> ) </span><span class="delete">,</span>
-<span class="delete">aIdentifier</span>
-<span class="delete">,</span><span class="delete">
-( </span><span class="delete">agIdentifier</span><span class="delete"> | </span><span class="delete">-</span><span class="delete"> )
-</span><span class="delete">,</span><span class="delete">
-( </span><span class="delete">eIdentifier</span><span class="delete"> | </span><span class="delete">-</span><span class="delete"> )
-</span><span class="delete">optional-attribute-values</span>
-<span class="delete">)</span>
-
-
-
-
-
-<span class="delete">wasAssociatedWith(ex:agas, ex:a1, ex:ag1, ex:e1, [ex:param1="a", ex:param2="b"])
- </span>
-
-<span class="delete"> Here </span><span class="delete">ex:agas</span><span class="delete"> is the optional attribution identifier,
- </span><span class="delete">ex:a1</span><span class="delete"> is an activity identifier,
- </span><span class="delete">ex:ag1</span><span class="delete"> is the optional identifier of the agent associated to the activity,
- </span><span class="delete">ex:e1</span><span class="delete"> is the optional identifier of the plan used by the agent in the context of the activity,
- and </span><span class="delete"> [ex:param1="a", ex:param2="b"]</span><span class="delete"> are optional attributes. </span><span class="delete">
-The remaining examples show cases where some of the optionals are omitted.
-
-
-
-</span><span class="delete">wasAssociatedWith(ex:a1, -, ex:e1)
-wasAssociatedWith(ex:a1, ex:ag1, -)
-wasAssociatedWith(ex:a1, ex:ag1, ex:e1)
-wasAssociatedWith(ex:a1, ex:ag1, ex:e1, [ex:param1="a", ex:param2="b"])
-wasAssociatedWith(a, ex:a1, -, ex:e1)
-wasAssociatedWith(-, ex:a1, -, ex:e1)
-wasAssociatedWith(-, ex:a1, ex:ag1, -)
-</span>
-
-
-<span class="delete">Note:</span><span class="delete">The production </span><span class="delete">associationExpression</span><span class="delete"> allows for expressions </span><span class="delete">wasAssociatedWith(a, -, -)</span><span class="delete"> and </span><span class="delete">wasAssociatiedWith(-, a, -, -)</span><span class="delete">. However, these expressions are not valid in PROV-N,
-because at least one of </span><span class="delete">agent</span><span class="delete"> or </span><span class="delete">plan</span> <span class="delete">must</span><span class="delete"> be present.</span>
-
-
-
-<span class="delete">3.2.4 </span><span class="delete">Responsibility</span>
-
-
-<span class="delete">responsibilityExpression</span><span class="delete"> ::=
-</span><span class="delete">actedOnBehalfOf</span>
-<span class="delete">(</span>
-<span class="delete">( </span><span class="delete">identifier</span><span class="delete"> | </span><span class="delete">-</span><span class="delete"> ) </span><span class="delete">,</span>
-<span class="delete">agIdentifier</span>
-<span class="delete">,</span>
-<span class="delete">agIdentifier</span>
-<span class="delete">,</span><span class="delete">
-( </span><span class="delete">aIdentifier</span><span class="delete"> | </span><span class="delete">-</span><span class="delete"> )
-</span><span class="delete">optional-attribute-values</span>
-<span class="delete">)</span>
-
-
-
-
- <span class="delete">actedOnBehalfOf(act1, ag1, ag2, a, [prov:type="contract"])
- </span>
-<span class="delete"> Here </span><span class="delete">act1</span><span class="delete"> is the optional attribution identifier,
- </span><span class="delete">ag1</span><span class="delete"> is the identifier for the subordinate agent,
- </span><span class="delete">ag2</span><span class="delete"> is the identifier of the responsible agent,
- </span><span class="delete">a</span><span class="delete"> is the optional identifier of the activity for which the responsibility link holds,
- and </span><span class="delete"> [prov:type="contract"]</span><span class="delete"> are optional attributes. </span><span class="delete">
-The remaining examples show cases where some of the optionals are omitted.
-
-
-</span><span class="delete">actedOnBehalfOf(ag1, ag2, -)
-actedOnBehalfOf(ag1, ag2, a)
-actedOnBehalfOf(ag1, ag2, -, [prov:type="delegation"])
-actedOnBehalfOf(ag2, ag3, a, [prov:type="contract"])
-actedOnBehalfOf(r, ag2, ag3, a, [prov:type="contract"])
-actedOnBehalfOf(-, ag1, ag2, -)
-</span>
-
-
-
-
-
-
-<span class="delete">3.3 </span><span class="delete">Component 3: Derivations</span>
-
-<span class="delete">3.3.1 </span>Derivation</h4>
-
-
-
+<h4><span class="secno">3.2.1 </span><span class="insert">Derivation</span></h4>
<table class="grammar">
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-derivationExpression" name="prod-derivationExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">21</span></span><span class="insert">] </span></td> <td><code class="production prod">derivationExpression<span class="delete"> ::=
-</span><span class="delete">wasDerivedFrom</span>
-</code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"wasDerivedFrom" "(" </span><span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-eIdentifier"><span class="insert">eIdentifier</span></a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-eIdentifier"><span class="insert">eIdentifier</span></a></span> (
-<span class="delete">( </span><span class="delete">identifier</span><span class="delete"> | </span><span class="delete">-</span><span class="delete"> ) </span><span class="delete">,</span>
-<span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-aIdentifierOrMarker"><span class="insert">aIdentifierOrMarker</span></a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-gIdentifierOrMarker"><span class="insert">gIdentifierOrMarker</span></a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-uIdentifierOrMarker"><span class="insert">uIdentifierOrMarker</span></a></span><span class="insert"> )? </span><span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></span><span class="insert"> ")"</span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-derivationExpression" name="prod-derivationExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">17</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">derivationExpression</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"wasDerivedFrom" "(" </span><span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-eIdentifier"><span class="insert">eIdentifier</span></a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-eIdentifier"><span class="insert">eIdentifier</span></a></span><span class="insert"> ( "," </span><span class="prod"><a class="grammarRef" href="#prod-aIdentifierOrMarker"><span class="insert">aIdentifierOrMarker</span></a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-gIdentifierOrMarker"><span class="insert">gIdentifierOrMarker</span></a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-uIdentifierOrMarker"><span class="insert">uIdentifierOrMarker</span></a></span><span class="insert"> )? </span><span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></span><span class="insert"> ")"</span></code></td> </tr> </tbody>
</table>
<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Derivation maps to a non-terminal.</span></p>
@@ -2170,21 +2337,9 @@
<tr><td><a href="http://www.w3.org/TR/prov-dm/#derivation.id"><span class="attribute" id="derivation.id"><span class="insert">id</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></code></td></tr>
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#derivation.generatedEntity"><span class="attribute" id="derivation.generatedEntity"><span class="insert">generatedEntity</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier
-<span class="delete">,</span>
-</a></code></td></tr>
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#derivation.usedEntity"><span class="attribute" id="derivation.usedEntity"><span class="insert">usedEntity</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier
-
-<span class="delete">,</span><span class="delete">
-( </span><span class="delete">aIdentifier</span><span class="delete"> | </span><span class="delete">-</span><span class="delete"> )
-</span><span class="delete">,</span><span class="delete">
-( </span><span class="delete">gIdentifier</span><span class="delete"> | </span><span class="delete">-</span><span class="delete"> )
-</span><span class="delete">,</span><span class="delete">
-( </span><span class="delete">uIdentifier</span><span class="delete"> | </span><span class="delete">-</span><span class="delete"> )
-</span>
-<span class="delete">optional-attribute-values</span>
-<span class="delete">)</span></a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#derivation.generatedEntity"><span class="attribute" id="derivation.generatedEntity"><span class="insert">generatedEntity</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifier"><span class="insert">eIdentifier</span></a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#derivation.usedEntity"><span class="attribute" id="derivation.usedEntity"><span class="insert">usedEntity</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifier"><span class="insert">eIdentifier</span></a></code></td></tr>
<tr><td><a href="http://www.w3.org/TR/prov-dm/#derivation.activity"><span class="attribute" id="derivation.activity"><span class="insert">activity</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-aIdentifierOrMarker"><span class="insert">aIdentifierOrMarker</span></a></code></td></tr>
@@ -2204,24 +2359,21 @@
-
-
-
<div class="anexample" id="anexample-derivation" data-count="17"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-derivation"><span class="insert">Example 17</span></a></div>
- <pre class="codeexample">wasDerivedFrom(d, e2, e1, a, g2, u1, <span class="delete">[prov:comment="a</span><span class="insert">[ex:comment="a</span> righteous derivation"])
- </pre>
-<p> Here
- <span class="name">d</span> is the optional derivation identifier,
- <span class="name">e2</span> is the identifier for the entity being derived,
- <span class="name">e1</span> is the identifier of the entity from which <span class="name">e2</span> is derived,
- <span class="name">a</span> is the optional identifier of the activity which used/generated the entities,
- <span class="name">g2</span> is the optional identifier of the generation,
- <span class="name">u1</span> is the optional identifier of the usage,
- and <span class="name"><span class="delete">[prov:comment="a</span><span class="insert">[ex:comment="a</span> righteous derivation"]</span> are optional attributes. </p>
+ <pre class="codeexample"><span class="insert">wasDerivedFrom(d, e2, e1, a, g2, u1, [ex:comment="a righteous derivation"])
+ </span></pre>
+<p><span class="insert"> Here
+ </span><span class="name"><span class="insert">d</span></span><span class="insert"> is the optional derivation identifier,
+ </span><span class="name"><span class="insert">e2</span></span><span class="insert"> is the identifier for the entity being derived,
+ </span><span class="name"><span class="insert">e1</span></span><span class="insert"> is the identifier of the entity from which </span><span class="name"><span class="insert">e2</span></span><span class="insert"> is derived,
+ </span><span class="name"><span class="insert">a</span></span><span class="insert"> is the optional identifier of the activity which used/generated the entities,
+ </span><span class="name"><span class="insert">g2</span></span><span class="insert"> is the optional identifier of the generation,
+ </span><span class="name"><span class="insert">u1</span></span><span class="insert"> is the optional identifier of the usage,
+ and </span><span class="name"><span class="insert">[ex:comment="a righteous derivation"]</span></span><span class="insert"> are optional attributes. </span></p><span class="insert">
The remaining examples show cases where some of the optionals are omitted.
-<pre class="codeexample">wasDerivedFrom(e2, e1)
+</span><pre class="codeexample"><span class="insert">wasDerivedFrom(e2, e1)
wasDerivedFrom(e2, e1, a, g2, u1)
wasDerivedFrom(e2, e1, -, g2, u1)
wasDerivedFrom(e2, e1, a, -, u1)
@@ -2231,12 +2383,410 @@
wasDerivedFrom(e2, e1, -, -, -)
wasDerivedFrom(d, e2, e1, a, g2, u1)
wasDerivedFrom(-, e2, e1, a, g2, u1)
-</pre>
+</span></pre>
</div>
</div>
<div id="expression-Revision" class="section">
-<h4><span class="secno"><span class="delete">3.3.2</span><span class="insert">3.2.2</span> </span>Revision</h4>
+<h4><span class="secno"><span class="insert">3.2.2 </span></span><span class="insert">Revision</span></h4>
+
+
+
+
+<div class="anexample" id="example_18" data-count="18"><div class="anexampleTitle"><a class="internalDFN" href="#example_18"><span class="insert">Example 18</span></a></div>
+ <pre class="codeexample"><span class="insert">wasDerivedFrom(d; e2, e1, a, g2, u1,
+ [prov:type='prov:Revision',
+ ex:comment="a righteous derivation"])
+ </span></pre>
+<p><span class="insert">Here, the derivation from
+</span><a href="#anexample-derivation" class="anexample-ref"><span><span class="insert">Example 17</span></span></a><span class="insert">
+is extended with a </span><span class="name"><span class="insert">prov:type</span></span><span class="insert"> attribute and value </span><span class="name"><span class="insert">prov:Revision</span></span><span class="insert">.
+</span></p></div>
+
+
+</div>
+<div id="expression-quotation" class="section">
+<h4><span class="secno"><span class="insert">3.2.3 </span></span><span class="insert">Quotation</span></h4>
+
+
+
+
+
+<div class="anexample" id="example_19" data-count="19"><div class="anexampleTitle"><a class="internalDFN" href="#example_19"><span class="insert">Example 19</span></a></div>
+ <pre class="codeexample"><span class="insert">wasDerivedFrom(quoteId1; ex:blockQuote,ex:blog, ex:act1, ex:g, ex:u,
+ [ prov:type='prov:Quotation' ])
+ </span></pre>
+
+<p><span class="insert">Here, the derivation is provided with a </span><span class="name"><span class="insert">prov:type</span></span><span class="insert"> attribute and value </span><span class="name"><span class="insert">prov:Quotation</span></span><span class="insert">.
+</span></p></div>
+
+
+</div>
+
+
+<div id="expression-original-source" class="section">
+<h4><span class="secno"><span class="insert">3.2.4 </span></span><span class="insert">Primary Source</span></h4>
+
+
+
+
+<div class="anexample" id="example_20" data-count="20"><div class="anexampleTitle"><a class="internalDFN" href="#example_20"><span class="insert">Example 20</span></a></div>
+ <pre class="codeexample"><span class="insert">wasDerivedFrom(src1; ex:e1, ex:e2, ex:act, ex:g, ex:u,
+ [ prove:type='prov:PrimarySource' ])
+</span></pre>
+<p><span class="insert">Here, the derivation is provided with a </span><span class="name"><span class="insert">prov:type</span></span><span class="insert"> attribute and value </span><span class="name"><span class="insert">prov:PrimarySource</span></span><span class="insert">.
+
+</span></p></div>
+
+
+</div>
+
+</div>
+
+
+<div id="component3" class="section">
+<h3><span class="secno"><span class="insert">3.3 </span></span><span class="insert">Component 3: Agents, Responsibility, and Influence</span></h3>
+<div id="expression-Agent" class="section">
+<h4><span class="secno"><span class="insert">3.3.1 </span></span>Agent</h4>
+
+
+
+
+
+
+<table class="grammar">
+
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-agentExpression" name="prod-agentExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">18</span></span><span class="insert">] </span></td> <td><code class="production prod">agentExpression<span class="delete"> ::=
+</span><span class="delete">agent</span>
+<span class="delete">(</span>
+</code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"agent" "(" </span><span class="prod"><a class="grammarRef" href="#prod-identifier">identifier
+<span class="delete">optional-attribute-values</span>
+<span class="delete">)</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></span><span class="insert"> ")"</span></code></td> </tr> </tbody>
+
+</table>
+
+<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Agent maps to a non-terminal.</span></p>
+<div style="text-align: left; ">
+<table class="thinborder" style="margin-left: auto; margin-right: auto;">
+<tbody><tr><td><b><span class="insert">Agent</span></b></td><td><b><span class="insert">Non-Terminal</span></b></td></tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#agent.id"><span class="attribute" id="agent.id"><span class="insert">id</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-identifier"><span class="insert">identifier</span></a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#agent.attributes"><span class="attribute" id="agent.attributes"><span class="insert">attributes</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></code></td></tr>
+</tbody></table>
+</div>
+
+
+
+
+
+
+<div class="anexample" id="example_21" data-count="21"><div class="anexampleTitle"><a class="internalDFN" href="#example_21"><span class="insert">Example 21</span></a></div>
+<pre class="codeexample">agent(ag4, [ prov:type="prov:Person", ex:name="David" ])
+</pre>
+<p>Here <span class="name">ag</span> is the agent identifier, and
+ <span class="name">[ prov:type="prov:Person", ex:name="David" ]</span> are optional attributes. </p>
+In the next example, the optional attributes are omitted.
+
+<pre class="codeexample">agent(ag4)
+</pre>
+</div>
+
+
+</div>
+<div id="expression-attribution" class="section">
+<h4><span class="secno"><span class="delete">3.2.2</span><span class="insert">3.3.2</span> </span>Attribution</h4>
+
+
+
+
+
+
+
+<table class="grammar">
+
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-attributionExpression" name="prod-attributionExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">19</span></span><span class="insert">] </span></td> <td><code class="production prod">attributionExpression<span class="delete"> ::=
+</span><span class="delete">wasAttributedTo</span>
+<span class="delete">(</span>
+<span class="delete">( </span><span class="delete">identifier</span><span class="delete"> | </span><span class="delete">-</span><span class="delete"> ) </span><span class="delete">,</span>
+</code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"wasAttributedTo" "(" </span><span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier
+<span class="delete">,</span>
+</a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-agIdentifier">agIdentifier
+<span class="delete">optional-attribute-values</span>
+<span class="delete">)</span>
+</a></span> <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></span><span class="insert"> ")"</span></code></td> </tr> </tbody>
+
+</table>
+
+
+<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Attribution maps to a non-terminal.</span></p>
+<div style="text-align: left; ">
+<table class="thinborder" style="margin-left: auto; margin-right: auto;">
+<tbody><tr><td><b><span class="insert">Attribution</span></b></td><td><b><span class="insert">Non-Terminal</span></b></td></tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#attribution.id"><span class="attribute" id="attribution.id"><span class="insert">id</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#attribution.entity"><span class="attribute" id="attribution.entity"><span class="insert">entity</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-identifier"><span class="insert">eIdentifier</span></a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#attribution.agent"><span class="attribute" id="attribution.agent"><span class="insert">agent</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-agIdentifier"><span class="insert">agIdentifier</span></a></code></td></tr>
+
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#attribution.attributes"><span class="attribute" id="attribution.attributes"><span class="insert">attributes</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></code></td></tr>
+</tbody></table>
+</div>
+
+
+
+
+
+<div class="anexample" id="example_22" data-count="22"><div class="anexampleTitle"><a class="internalDFN" href="#example_22"><span class="insert">Example 22</span></a></div>
+
+<pre class="codeexample"><span class="delete">wasAttributedTo(id,</span><span class="insert">wasAttributedTo(id;</span> e, ag, <span class="delete">[ex:license="cc:attributionURL" %% "xsd:QName"])</span><span class="insert">[ex:license='cc:attributionURL' ])</span>
+ </pre>
+<p> Here <span class="name">id</span> is the optional attribution identifier, <span class="name">e</span> is an entity identifier,
+ <span class="name">ag</span> is the identifier of the agent to whom the entity is abscribed,
+and <span class="name"><span class="delete">[ex:license="cc:attributionURL" %% "xsd:QName"]</span><span class="insert">[ex:license='cc:attributionURL' ]</span></span> are optional attributes. </p>
+The remaining examples show cases where some of the optionals are omitted.
+
+<pre class="codeexample">wasAttributedTo(e, ag)
+wasAttributedTo(e, ag, <span class="delete">[ex:license="cc:attributionURL" %% "xsd:QName"])
+wasAttributedTo(-, e, ag, [ex:license="cc:attributionURL" %% "xsd:QName"])</span><span class="insert">[ex:license='cc:attributionURL' ])</span>
+</pre>
+</div>
+
+</div>
+
+
+<div id="expression-Association" class="section">
+<h4><span class="secno"><span class="delete">3.2.3</span><span class="insert">3.3.3</span> </span>Association</h4>
+
+
+
+
+
+
+<table class="grammar">
+
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-associationExpression" name="prod-associationExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">20</span></span><span class="insert">] </span></td> <td><code class="production prod">associationExpression<span class="delete"> ::=
+</span><span class="delete">wasAssociatedWith</span>
+</code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"wasAssociatedWith" "(" </span><span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-aIdentifier"><span class="insert">aIdentifier</span></a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-agIdentifierOrMarker"><span class="insert">agIdentifierOrMarker</span></a></span> (
+<span class="delete">( </span><span class="delete">identifier</span><span class="delete"> | </span><span class="delete">-</span><span class="delete"> ) </span><span class="delete">,</span>
+<span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-eIdentifierOrMarker"><span class="insert">eIdentifierOrMarker</span></a></span><span class="insert"> )? </span><span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></span><span class="insert"> ")"</span></code></td> </tr> </tbody>
+
+</table>
+
+
+<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Association maps to a non-terminal.</span></p>
+<div style="text-align: left; ">
+<table class="thinborder" style="margin-left: auto; margin-right: auto;">
+<tbody><tr><td><b><span class="insert">Association</span></b></td><td><b><span class="insert">Non-Terminal</span></b></td></tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#association.id"><span class="attribute" id="association.id"><span class="insert">id</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#association.activity"><span class="attribute" id="association.activity"><span class="insert">activity</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-aIdentifier">aIdentifier
+<span class="delete">,</span><span class="delete">
+( </span><span class="delete">agIdentifier</span><span class="delete"> | </span><span class="delete">-</span><span class="delete"> )
+</span><span class="delete">,</span><span class="delete">
+( </span><span class="delete">eIdentifier</span><span class="delete"> | </span><span class="delete">-</span><span class="delete"> )
+</span><span class="delete">optional-attribute-values</span>
+<span class="delete">)</span></a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#association.agent"><span class="attribute" id="association.agent"><span class="insert">agent</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-agIdentifierOrMarker"><span class="insert">agIdentifierOrMarker</span></a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#association.plan"><span class="attribute" id="association.plan"><span class="insert">plan</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifierOrMarker"><span class="insert">eIdentifierOrMarker</span></a></code></td></tr>
+
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#association.attributes"><span class="attribute" id="association.attributes"><span class="insert">attributes</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></code></td></tr>
+</tbody></table>
+</div>
+
+
+
+
+
+
+<div class="anexample" id="example_23" data-count="23"><div class="anexampleTitle"><a class="internalDFN" href="#example_23"><span class="insert">Example 23</span></a></div>
+<pre class="codeexample"><span class="delete">wasAssociatedWith(ex:agas,</span><span class="insert">wasAssociatedWith(ex:agas;</span> ex:a1, ex:ag1, ex:e1, [ex:param1="a", ex:param2="b"])
+ </pre>
+
+<p> Here <span class="name">ex:agas</span> is the optional attribution identifier,
+ <span class="name">ex:a1</span> is an activity identifier,
+ <span class="name">ex:ag1</span> is the optional identifier of the agent associated to the activity,
+ <span class="name">ex:e1</span> is the optional identifier of the plan used by the agent in the context of the activity,
+ and <span class="name"> [ex:param1="a", ex:param2="b"]</span> are optional attributes. </p>
+The remaining examples show cases where some of the optionals are omitted.
+
+
+
+<pre class="codeexample">wasAssociatedWith(ex:a1, -, ex:e1)
+wasAssociatedWith(ex:a1, <span class="insert">ex:ag1)
+wasAssociatedWith(ex:a1, </span>ex:ag1, <span class="delete">-)</span><span class="insert">ex:e1)</span>
+wasAssociatedWith(ex:a1, ex:ag1, <span class="insert">ex:e1, [ex:param1="a", ex:param2="b"])
+wasAssociatedWith(a; ex:a1, -, </span>ex:e1)<span class="delete">
+wasAssociatedWith(ex:a1, ex:ag1, ex:e1, [ex:param1="a", ex:param2="b"])
+wasAssociatedWith(a, ex:a1, -, ex:e1)
+wasAssociatedWith(-, ex:a1, -, ex:e1)
+wasAssociatedWith(-, ex:a1, ex:ag1, -)</span>
+</pre>
+</div>
+
+<p><strong>Note:</strong>The production <code class="content"><a class="grammarRef" href="#prod-associationExpression">associationExpression</a></code> allows for expressions <span class="name">wasAssociatedWith(a, -, -)</span> and <span class="name"><span class="delete">wasAssociatiedWith(-,</span><span class="insert">wasAssociatiedWith(-;</span> a, -, -)</span>. However, these expressions are not valid in PROV-N,
+<span class="delete">because </span><span class="insert">since
+</span>at least one of <a href="http://www.w3.org/TR/prov-dm/#association.id"><span class="attribute"><span class="insert">id</span></span></a><span class="insert">, </span><a href="http://www.w3.org/TR/prov-dm/#association.agent"><span class="attribute">agent</span><span class="delete"> or </span></a><span class="insert">, </span><a href="http://www.w3.org/TR/prov-dm/#association.plan"><span class="attribute">plan</span> </a><span class="insert">, and </span><a href="http://www.w3.org/TR/prov-dm/#association.attributes"><span class="attribute"><span class="insert">attributes</span></span></a> <em class="rfc2119" title="must">must</em> be present.</p>
+
+</div>
+<div id="expression-delegation" class="section">
+<h4><span class="secno"><span class="delete">3.2.4 </span><span class="delete">Responsibility</span><span class="insert">3.3.4 </span></span><span class="insert">Delegation</span></h4>
+
+
+<span class="delete">responsibilityExpression</span><span class="delete"> ::=
+</span><span class="delete">actedOnBehalfOf</span>
+
+
+
+
+<table class="grammar">
+
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-delegationExpression" name="prod-delegationExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">21</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">delegationExpression</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"actedOnBehalfOf" "(" </span><span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-agIdentifier"><span class="insert">agIdentifier</span></a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-agIdentifier"><span class="insert">agIdentifier</span></a></span> (
+<span class="delete">( </span><span class="delete">identifier</span><span class="delete"> | </span><span class="delete">-</span><span class="delete"> ) </span><span class="delete">,</span>
+<span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-aIdentifierOrMarker"><span class="insert">aIdentifierOrMarker</span></a></span><span class="insert"> )? </span><span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></span><span class="insert"> ")"</span></code></td> </tr> </tbody>
+
+</table>
+
+<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Delegation maps to a non-terminal.</span></p>
+<div style="text-align: left; ">
+<table class="thinborder" style="margin-left: auto; margin-right: auto;">
+<tbody><tr><td><b><span class="insert">Delegation</span></b></td><td><b><span class="insert">Non-Terminal</span></b></td></tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#delegation.id"><span class="attribute" id="delegation.id"><span class="insert">id</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#delegation.delegate"><span class="attribute" id="delegation.delegate"><span class="insert">delegate</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-agIdentifier">agIdentifier
+<span class="delete">,</span>
+</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#delegation.responsible"><span class="attribute" id="delegation.responsible"><span class="insert">responsible</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-agIdentifier">agIdentifier
+<span class="delete">,</span><span class="delete">
+( </span><span class="delete">aIdentifier</span><span class="delete"> | </span><span class="delete">-</span><span class="delete"> )
+</span><span class="delete">optional-attribute-values</span>
+<span class="delete">)</span></a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#delegation.activity"><span class="attribute" id="delegation.activity"><span class="insert">activity</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-aIdentifierOrMarker"><span class="insert">aIdentifierOrMarker</span></a></code></td></tr>
+
+
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#delegation.attributes"><span class="attribute" id="delegation.attributes"><span class="insert">attributes</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></code></td></tr>
+</tbody></table>
+</div>
+
+
+
+
+
+<div class="anexample" id="example_24" data-count="24"><div class="anexampleTitle"><a class="internalDFN" href="#example_24"><span class="insert">Example 24</span></a></div>
+
+ <pre class="codeexample"><span class="delete">actedOnBehalfOf(act1,</span><span class="insert">actedOnBehalfOf(del1; ag2,</span> ag1,<span class="delete"> ag2,</span> a, [prov:type="contract"])
+ </pre>
+<p> Here <span class="name"><span class="delete">act1</span><span class="insert">del1</span></span> is the optional <span class="delete">attribution</span><span class="insert">delegation</span> identifier,
+ <span class="name"><span class="delete">ag1</span><span class="insert">ag2</span></span> is the identifier for the <span class="delete">subordinate</span><span class="insert">delegate</span> agent,
+ <span class="name"><span class="delete">ag2</span><span class="insert">ag1</span></span> is the identifier of the responsible agent,
+ <span class="name">a</span> is the optional identifier of the activity for which the <span class="delete">responsibility</span><span class="insert">delegation</span> link holds,
+ and <span class="name"> [prov:type="contract"]</span> are optional attributes. </p>
+The remaining examples show cases where some of the optionals are omitted.
+
+
+<pre class="codeexample">actedOnBehalfOf(ag1, <span class="insert">ag2)
+actedOnBehalfOf(ag1, </span>ag2, <span class="delete">-)</span><span class="insert">a)</span>
+actedOnBehalfOf(ag1, ag2, <span class="delete">a)
+actedOnBehalfOf(ag1,</span><span class="insert">-, [prov:type="delegation"])
+actedOnBehalfOf(ag2, ag3, a, [prov:type="contract"])
+actedOnBehalfOf(r;</span> ag2, <span class="delete">-, [prov:type="delegation"])
+actedOnBehalfOf(ag2, </span>ag3, a, [prov:type="contract"])<span class="delete">
+actedOnBehalfOf(r, ag2, ag3, a, [prov:type="contract"])
+actedOnBehalfOf(-, ag1, ag2, -)</span>
+</pre>
+</div>
+
+
+</div>
+
+
+<span class="delete">3.3 </span><span class="delete">Component 3: Derivations</span>
+
+
+<div id="expression-influence" class="section">
+<h4><span class="secno"><span class="delete">3.3.1 </span><span class="delete">Derivation</span><span class="insert">3.3.5 </span></span><span class="insert">Influence</span></h4>
+
+
+<span class="delete">derivationExpression</span><span class="delete"> ::=
+</span><span class="delete">wasDerivedFrom</span>
+<span class="delete">(</span>
+<span class="delete">( </span><span class="delete">identifier</span><span class="delete"> | </span><span class="delete">-</span><span class="delete"> ) </span><span class="delete">,</span>
+
+
+
+<table class="grammar">
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-influenceExpression" name="prod-influenceExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">22</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">influenceExpression</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"influence" "(" </span><span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier
+<span class="delete">,</span>
+</a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier
+
+<span class="delete">,</span><span class="delete">
+( </span><span class="delete">aIdentifier</span><span class="delete"> | </span><span class="delete">-</span><span class="delete"> )
+</span><span class="delete">,</span><span class="delete">
+( </span><span class="delete">gIdentifier</span><span class="delete"> | </span><span class="delete">-</span><span class="delete"> )
+</span><span class="delete">,</span><span class="delete">
+( </span><span class="delete">uIdentifier</span><span class="delete"> | </span><span class="delete">-</span><span class="delete"> )
+</span>
+<span class="delete">optional-attribute-values</span>
+<span class="delete">)</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></span><span class="insert"> ")"</span></code></td> </tr> </tbody>
+</table>
+
+
+<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Influence maps to a non-terminal.</span></p>
+<div style="text-align: left; ">
+<table class="thinborder" style="margin-left: auto; margin-right: auto;">
+<tbody><tr><td><b><span class="insert">Trace</span></b></td><td><b><span class="insert">Non-Terminal</span></b></td></tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#trace.id"><span class="attribute" id="trace.id"><span class="insert">id</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#trace.entity"><span class="attribute" id="trace.entity"><span class="insert">entity</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifier"><span class="insert">eIdentifier</span></a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#trace.ancestor"><span class="attribute" id="trace.ancestor"><span class="insert">ancestor</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifier"><span class="insert">eIdentifier</span></a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#trace.attributes"><span class="attribute" id="trace.attributes"><span class="insert">attributes</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></code></td></tr>
+</tbody></table>
+</div>
+
+
+<div class="anexample" id="example_25" data-count="25"><div class="anexampleTitle"><a class="internalDFN" href="#example_25"><span class="insert">Example 25</span></a></div>
+ <pre class="codeexample"><span class="delete">wasDerivedFrom(d, e2, e1, a, g2, u1, [prov:comment="a righteous derivation"])</span><span class="insert">influence(id,e2,e1,[ex:param="a"])</span>
+ </pre>
+<p> Here
+ <span class="name"><span class="delete">d</span><span class="insert">id</span></span> is the optional <span class="delete">derivation</span><span class="insert">trace</span> identifier,
+ <span class="name">e2</span> is <span class="delete">the identifier for the entity being derived,
+ </span><span class="delete">e1</span><span class="delete"> is the identifier of the entity from which </span><span class="delete">e2</span><span class="delete"> is derived,
+ </span><span class="delete">a</span><span class="delete"> is the optional identifier of the activity which used/generated the entities,
+ </span><span class="delete">g2</span><span class="delete"> is the optional identifier of the generation,
+ </span><span class="delete">u1</span><span class="delete"> is the optional identifier of the usage,
+ and </span><span class="delete">[prov:comment="a righteous derivation"]</span><span class="delete"> are optional attributes. </span><span class="delete">
+The remaining examples show cases where some of the optionals are omitted.
+
+
+</span><span class="delete">wasDerivedFrom(e2, e1)
+wasDerivedFrom(e2, e1, a, g2, u1)
+wasDerivedFrom(e2, e1, -, g2, u1)
+wasDerivedFrom(e2, e1, a, -, u1)
+wasDerivedFrom(e2, e1, a, g2, -)
+wasDerivedFrom(e2, e1, a, -, -)
+wasDerivedFrom(e2, e1, -, -, u1)
+wasDerivedFrom(e2, e1, -, -, -)
+wasDerivedFrom(d, e2, e1, a, g2, u1)
+wasDerivedFrom(-, e2, e1, a, g2, u1)
+</span>
+
+
+
+
+<span class="delete">3.3.2 </span><span class="delete">Revision</span>
<span class="delete">revisionExpression</span><span class="delete"> ::=
@@ -2254,24 +2804,14 @@
-
-
-
-<div class="anexample" id="example_18" data-count="18"><div class="anexampleTitle"><a class="internalDFN" href="#example_18"><span class="insert">Example 18</span></a></div>
-
-
-
- <pre class="codeexample"><span class="delete">wasRevisionOf(rev1, tr:WD-prov-dm-20111215, tr:WD-prov-dm-20111018, w3:Consortium, [prov:comment="??"] )</span><span class="insert">wasDerivedFrom(d, e2, e1, a, g2, u1, [prov:type="prov:WasRevisionOf", ex:comment="a righteous derivation"])</span>
- </pre>
-<p><span class="delete"> Here
- </span><span class="insert">Here, the derivation from
-</span><a href="#anexample-derivation" class="anexample-ref"><span><span class="insert">Example 17</span></span></a><span class="insert">
-is extended with a </span><span class="name"><span class="delete">rev1</span><span class="delete"> is the optional revision identifier,
- </span><span class="insert">prov:type</span></span><span class="insert"> attribute and value </span><span class="name"><span class="delete">tr:WD-prov-dm-20111215</span><span class="delete"> is the identifier of the revised entity,
+ <span class="delete">wasRevisionOf(rev1, tr:WD-prov-dm-20111215, tr:WD-prov-dm-20111018, w3:Consortium, [prov:comment="??"] )
+ </span>
+<span class="delete"> Here
+ </span><span class="delete">rev1</span><span class="delete"> is the optional revision identifier,
+ </span><span class="delete">tr:WD-prov-dm-20111215</span><span class="delete"> is the identifier of the revised entity,
</span><span class="delete">tr:WD-prov-dm-20111018</span><span class="delete"> is the identifier of the original entity,
</span><span class="delete">w3:Consortium</span><span class="delete"> is the optional identifier of the agent involved in the revision,
- and </span><span class="delete"> [prov:comment="??"] )</span><span class="delete"> are optional attributes. </span><span class="insert">prov:WasRevisionOf</span></span><span class="insert">.
-</span></p><span class="delete">
+ and </span><span class="delete"> [prov:comment="??"] )</span><span class="delete"> are optional attributes. </span><span class="delete">
The remaining examples show cases where some of the optionals are omitted.
@@ -2282,27 +2822,17 @@
wasRevisionOf(id,tr:WD-prov-dm-20111215, tr:WD-prov-dm-20111018, -)
wasRevisionOf(-,tr:WD-prov-dm-20111215, tr:WD-prov-dm-20111018, -)
</span>
-</div>
-
-
-</div>
-<div id="expression-quotation" class="section">
-<h4><span class="secno"><span class="delete">3.3.3</span><span class="insert">3.2.3</span> </span>Quotation</h4>
+
+
+
+
+
+<span class="delete">3.3.3 </span><span class="delete">Quotation</span>
<span class="delete">quotationExpression</span><span class="delete"> ::=
-</span>
-
-
-
-
-
-<div class="anexample" id="example_19" data-count="19"><div class="anexampleTitle"><a class="internalDFN" href="#example_19"><span class="insert">Example 19</span></a></div>
- <pre class="codeexample"><span class="insert">wasDerivedFrom(quoteId1; ex:blockQuote,ex:blog, ex:act1, ex:g, ex:u, [ prov:type='prov:WasQuotedFrom' ])
- </span></pre>
-
-<p><span class="insert">Here, the derivation is provided with a </span><span class="name"><span class="delete">wasQuotedFrom</span>
-<span class="insert">prov:type</span></span><span class="insert"> attribute and value </span><span class="name"><span class="delete">(</span>
+</span><span class="delete">wasQuotedFrom</span>
+<span class="delete">(</span>
<span class="delete">( </span><span class="delete">identifier</span><span class="delete"> | </span><span class="delete">-</span><span class="delete"> ) </span><span class="delete">,</span>
<span class="delete">eIdentifier</span>
<span class="delete">,</span>
@@ -2315,176 +2845,19 @@
</span>
<span class="delete">optional-attribute-values</span>
<span class="delete">)</span>
-<span class="insert">prov:WasQuotedFrom</span></span><span class="insert">.
-</span></p></div>
-
-
-</div>
-
-
-<div id="expression-original-source" class="section">
-<h4><span class="secno"><span class="insert">3.2.4 </span></span><span class="insert">Original Source</span></h4>
-
-
-
-
-
-<div class="anexample" id="example_20" data-count="20"><div class="anexampleTitle"><a class="internalDFN" href="#example_20"><span class="insert">Example 20</span></a></div>
- <pre class="codeexample"><span class="delete">wasQuotedFrom(quoteId1, ex:blockQuote,ex:blog,ex:Luc,ex:Paul,[])</span><span class="insert">wasDerivedFrom(src1; ex:e1, ex:e2, ex:act, ex:g, ex:u, [ prove:type='prov:HadOriginalSource' ])
-</span></pre>
-<p><span class="insert">Here, the derivation is provided with a </span><span class="name"><span class="insert">prov:type</span></span><span class="insert"> attribute and value </span><span class="name"><span class="insert">prov:HadOriginalSource</span></span><span class="insert">.
-
-</span></p></div>
-
-
-
-</div>
-
-</div>
-
-
-<div id="component3" class="section">
-<h3><span class="secno"><span class="insert">3.3 </span></span><span class="insert">Component 3: Agents and Responsibility</span></h3>
-<div id="expression-Agent" class="section">
-<h4><span class="secno"><span class="insert">3.3.1 </span></span><span class="insert">Agent</span></h4>
-
-
-
-<table class="grammar">
-
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-agentExpression" name="prod-agentExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">17</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">agentExpression</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"agent" "(" </span><span class="prod"><a class="grammarRef" href="#prod-identifier"><span class="insert">identifier</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></span><span class="insert"> ")"</span></code></td> </tr> </tbody>
-
-</table>
-
-<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Agent maps to a non-terminal.</span></p>
-<div style="text-align: left; ">
-<table class="thinborder" style="margin-left: auto; margin-right: auto;">
-<tbody><tr><td><b><span class="insert">Agent</span></b></td><td><b><span class="insert">Non-Terminal</span></b></td></tr>
-<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#agent.id"><span class="attribute" id="agent.id"><span class="insert">id</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-identifier"><span class="insert">identifier</span></a></code></td></tr>
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#agent.attributes"><span class="attribute" id="agent.attributes"><span class="insert">attributes</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></code></td></tr>
-</tbody></table>
-</div>
-
-
-
-<div class="anexample" id="example_21" data-count="21"><div class="anexampleTitle"><a class="internalDFN" href="#example_21"><span class="insert">Example 21</span></a></div>
-<pre class="codeexample"><span class="insert">agent(ag4, [ prov:type="prov:Person", ex:name="David" ])
-</span></pre>
-<p><span class="insert">Here </span><span class="name"><span class="insert">ag</span></span><span class="insert"> is the agent identifier, and
- </span><span class="name"><span class="insert">[ prov:type="prov:Person", ex:name="David" ]</span></span><span class="insert"> are optional attributes. </span></p><span class="insert">
-In the next example, the optional attributes are omitted.
-
-</span><pre class="codeexample"><span class="insert">agent(ag4)
-</span></pre>
-</div>
-
-
-</div>
-<div id="expression-attribution" class="section">
-<h4><span class="secno"><span class="insert">3.3.2 </span></span><span class="insert">Attribution</span></h4>
-
-
-
-
-<table class="grammar">
-
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-attributionExpression" name="prod-attributionExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">18</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">attributionExpression</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"wasAttributedTo" "(" </span><span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-eIdentifier"><span class="insert">eIdentifier</span></a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-agIdentifier"><span class="insert">agIdentifier</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></span><span class="insert"> ")"</span></code></td> </tr> </tbody>
-
-</table>
-
-
-<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Attribution maps to a non-terminal.</span></p>
-<div style="text-align: left; ">
-<table class="thinborder" style="margin-left: auto; margin-right: auto;">
-<tbody><tr><td><b><span class="insert">Attribution</span></b></td><td><b><span class="insert">Non-Terminal</span></b></td></tr>
-<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#attribution.id"><span class="attribute" id="attribution.id"><span class="insert">id</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></code></td></tr>
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#attribution.entity"><span class="attribute" id="attribution.entity"><span class="insert">entity</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-Identifier"><span class="insert">eIdentifier</span></a></code></td></tr>
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#attribution.agent"><span class="attribute" id="attribution.agent"><span class="insert">agent</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-agIdentifier"><span class="insert">agIdentifier</span></a></code></td></tr>
-
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#attribution.attributes"><span class="attribute" id="attribution.attributes"><span class="insert">attributes</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></code></td></tr>
-</tbody></table>
-</div>
-
-
-
-<div class="anexample" id="example_22" data-count="22"><div class="anexampleTitle"><a class="internalDFN" href="#example_22"><span class="insert">Example 22</span></a></div>
-
-<pre class="codeexample"><span class="insert">wasAttributedTo(id; e, ag, [ex:license='cc:attributionURL' ])</span>
- </pre>
-<p><span class="insert"> Here </span><span class="name"><span class="insert">id</span></span><span class="insert"> is the optional attribution identifier, </span><span class="name"><span class="insert">e</span></span><span class="insert"> is an entity identifier,
- </span><span class="name"><span class="insert">ag</span></span><span class="insert"> is the identifier of the agent to whom the entity is abscribed,
-and </span><span class="name"><span class="insert">[ex:license='cc:attributionURL' ]</span></span><span class="insert"> are optional attributes. </span></p><span class="insert">
-The remaining examples show cases where some of the optionals are omitted.
-
-</span><pre class="codeexample"><span class="insert">wasAttributedTo(e, ag)
-wasAttributedTo(e, ag, [ex:license='cc:attributionURL' ])
-</span></pre>
-</div>
-
-</div>
-
-
-<div id="expression-Association" class="section">
-<h4><span class="secno"><span class="insert">3.3.3 </span></span><span class="insert">Association</span></h4>
-
-
-
-<table class="grammar">
-
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-associationExpression" name="prod-associationExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">19</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">associationExpression</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"wasAssociatedWith" "(" </span><span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-aIdentifier"><span class="insert">aIdentifier</span></a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-agIdentifierOrMarker"><span class="insert">agIdentifierOrMarker</span></a></span><span class="insert"> ( "," </span><span class="prod"><a class="grammarRef" href="#prod-eIdentifierOrMarker"><span class="insert">eIdentifierOrMarker</span></a></span><span class="insert"> )? </span><span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></span><span class="insert"> ")"</span></code></td> </tr> </tbody>
-
-</table>
-
-
-<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Association maps to a non-terminal.</span></p>
-<div style="text-align: left; ">
-<table class="thinborder" style="margin-left: auto; margin-right: auto;">
-<tbody><tr><td><b><span class="insert">Association</span></b></td><td><b><span class="insert">Non-Terminal</span></b></td></tr>
-<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#association.id"><span class="attribute" id="association.id"><span class="insert">id</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></code></td></tr>
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#association.activity"><span class="attribute" id="association.activity"><span class="insert">activity</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-aIdentifier"><span class="insert">aIdentifier</span></a></code></td></tr>
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#association.agent"><span class="attribute" id="association.agent"><span class="insert">agent</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-agIdentifierOrMarker"><span class="insert">agIdentifierOrMarker</span></a></code></td></tr>
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#association.plan"><span class="attribute" id="association.plan"><span class="insert">plan</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifierOrMarker"><span class="insert">eIdentifierOrMarker</span></a></code></td></tr>
-
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#association.attributes"><span class="attribute" id="association.attributes"><span class="insert">attributes</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></code></td></tr>
-</tbody></table>
-</div>
-
-
-<div class="anexample" id="example_23" data-count="23"><div class="anexampleTitle"><a class="internalDFN" href="#example_23"><span class="insert">Example 23</span></a></div>
-<pre class="codeexample"><span class="insert">wasAssociatedWith(ex:agas; ex:a1, ex:ag1, ex:e1, [ex:param1="a", ex:param2="b"])
- </span></pre>
-
-<p> Here
- <span class="name"><span class="delete">quoteId1</span><span class="insert">ex:agas</span></span> is the optional <span class="delete">revision</span><span class="insert">attribution</span> identifier,
- <span class="name"><span class="delete">ex:blockQuote</span><span class="insert">ex:a1</span></span> is <span class="delete">the identifier of the entity that represents the quote (the partial copy)</span><span class="insert">an activity identifier,</span>
- <span class="name"><span class="delete">ex:blog</span><span class="insert">ex:ag1</span></span> is the <span class="insert">optional </span>identifier of the <span class="delete">original entity being quoted,</span><span class="insert">agent associated to the activity,</span>
- <span class="name"><span class="delete">ex:Luc</span><span class="insert">ex:e1</span></span> is the optional identifier of the <span class="insert">plan used by the </span>agent <span class="delete">who performs the quoting,
- </span><span class="delete">ex:Paul</span><span class="delete"> is the optional identifier</span><span class="insert">in the context</span> of the <span class="delete">agent to whom the original entity is attributed,</span><span class="insert">activity,</span>
- and <span class="name"><span class="delete">[]</span><span class="delete"> is the (empty)</span><span class="insert"> [ex:param1="a", ex:param2="b"]</span></span><span class="insert"> are</span> optional <span class="delete">set</span><span class="insert">attributes. </span></p><span class="insert">
-The remaining examples show cases where some</span> of <span class="delete">attributes. </span><span class="insert">the optionals are omitted.
-
-
-
-</span><pre class="codeexample"><span class="insert">wasAssociatedWith(ex:a1, -, ex:e1)
-wasAssociatedWith(ex:a1, ex:ag1)
-wasAssociatedWith(ex:a1, ex:ag1, ex:e1)
-wasAssociatedWith(ex:a1, ex:ag1, ex:e1, [ex:param1="a", ex:param2="b"])
-wasAssociatedWith(a; ex:a1, -, ex:e1)
-</span></pre>
-</div>
-
-<p><strong><span class="insert">Note:</span></strong><span class="insert">The production </span><code class="content"><a class="grammarRef" href="#prod-associationExpression"><span class="insert">associationExpression</span></a></code><span class="insert"> allows for expressions </span><span class="name"><span class="insert">wasAssociatedWith(a, -, -)</span></span><span class="insert"> and </span><span class="name"><span class="insert">wasAssociatiedWith(-; a, -, -)</span></span><span class="insert">. However, these expressions are not valid in PROV-N,
-since
-at least one of </span><a href="http://www.w3.org/TR/prov-dm/#association.id"><span class="attribute"><span class="insert">id</span></span></a><span class="insert">, </span><a href="http://www.w3.org/TR/prov-dm/#association.agent"><span class="attribute"><span class="insert">agent</span></span></a><span class="insert">, </span><a href="http://www.w3.org/TR/prov-dm/#association.plan"><span class="attribute"><span class="insert">plan</span></span></a><span class="insert">, and </span><a href="http://www.w3.org/TR/prov-dm/#association.attributes"><span class="attribute"><span class="insert">attributes</span></span></a> <em class="rfc2119" title="must"><span class="insert">must</span></em><span class="insert"> be present.</span></p><span class="delete">
+
+
+
+
+ <span class="delete">wasQuotedFrom(quoteId1, ex:blockQuote,ex:blog,ex:Luc,ex:Paul,[])
+ </span>
+<span class="delete"> Here
+ </span><span class="delete">quoteId1</span><span class="delete"> is the optional revision identifier,
+ </span><span class="delete">ex:blockQuote</span><span class="delete"> is the identifier of the entity that represents the quote (the partial copy)
+ </span><span class="delete">ex:blog</span><span class="delete"> is the identifier of the original entity being quoted,
+ </span><span class="delete">ex:Luc</span><span class="delete"> is the optional identifier of the agent who performs the quoting,
+ </span><span class="delete">ex:Paul</span><span class="delete"> is the optional identifier of the agent to whom the original entity is attributed,
+ and </span><span class="delete">[]</span><span class="delete"> is the (empty) optional set of attributes. </span><span class="delete">
The remaining examples show cases where some of the optionals are omitted.
@@ -2499,147 +2872,76 @@
</span>
-</div>
-
-<div id="expression-delegation" class="section">
-<h4><span class="secno">3.3.4 </span><span class="delete">Original Source</span><span class="insert">Delegation</span></h4>
+<span class="delete">3.3.4 </span><span class="delete">Original Source</span>
<span class="delete">originalSourceExpression</span><span class="delete"> ::=
</span><span class="delete">hadOriginalSource</span>
-
-
-
-
-<table class="grammar">
-
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-delegationExpression" name="prod-delegationExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">20</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">delegationExpression</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"actedOnBehalfOf" "(" </span><span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-agIdentifier"><span class="insert">agIdentifier</span></a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-agIdentifier"><span class="insert">agIdentifier</span></a></span> (
+<span class="delete">(</span>
<span class="delete">( </span><span class="delete">identifier</span><span class="delete"> | </span><span class="delete">-</span><span class="delete"> ) </span><span class="delete">,</span>
<span class="delete">eIdentifier</span>
<span class="delete">,</span>
<span class="delete">eIdentifier</span>
<span class="delete">optional-attribute-values</span>
<span class="delete">)</span>
-<span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-aIdentifierOrMarker"><span class="insert">aIdentifierOrMarker</span></a></span><span class="insert"> )? </span><span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></span><span class="insert"> ")"</span></code></td> </tr> </tbody>
-
-</table>
-
-<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Delegation maps to a non-terminal.</span></p>
-<div style="text-align: left; ">
-<table class="thinborder" style="margin-left: auto; margin-right: auto;">
-<tbody><tr><td><b><span class="insert">Delegation</span></b></td><td><b><span class="insert">Non-Terminal</span></b></td></tr>
-<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#delegation.id"><span class="attribute" id="delegation.id"><span class="insert">id</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></code></td></tr>
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#delegation.delegate"><span class="attribute" id="delegation.delegate"><span class="insert">delegate</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-agIdentifier"><span class="insert">agIdentifier</span></a></code></td></tr>
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#delegation.responsible"><span class="attribute" id="delegation.responsible"><span class="insert">responsible</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-agIdentifier"><span class="insert">agIdentifier</span></a></code></td></tr>
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#delegation.activity"><span class="attribute" id="delegation.activity"><span class="insert">activity</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-aIdentifierOrMarker"><span class="insert">aIdentifierOrMarker</span></a></code></td></tr>
-
-
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#delegation.attributes"><span class="attribute" id="delegation.attributes"><span class="insert">attributes</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></code></td></tr>
-</tbody></table>
-</div>
-
-
-
-
-
-
-
-<div class="anexample" id="example_24" data-count="24"><div class="anexampleTitle"><a class="internalDFN" href="#example_24"><span class="insert">Example 24</span></a></div>
-
- <pre class="codeexample"><span class="delete">hadOriginalSource(src1, ex:e1, ex:e2,[ex:param="a"])</span><span class="insert">actedOnBehalfOf(del1; ag2, ag1, a, [prov:type="contract"])</span>
- </pre>
-<p> Here
- <span class="name"><span class="delete">src1</span><span class="insert">del1</span></span> is the optional <span class="delete">original source</span><span class="insert">delegation</span> identifier,
- <span class="name"><span class="delete">ex:e1</span><span class="insert">ag2</span></span> is the identifier <span class="delete">of the derived entity,</span><span class="insert">for the delegate agent,</span>
- <span class="name"><span class="delete">ex:e2</span><span class="insert">ag1</span></span> is the identifier of the <span class="delete">original source entity,</span><span class="insert">responsible agent,
- </span><span class="name"><span class="insert">a</span></span><span class="insert"> is the optional identifier of the activity for which the delegation link holds,</span>
- and <span class="name"><span class="delete">[ex:param="a"]</span><span class="delete"> is the</span><span class="insert">[prov:type="contract"]</span></span><span class="insert"> are</span> optional <span class="delete">set</span><span class="insert">attributes. </span></p><span class="insert">
-The remaining examples show cases where some</span> of <span class="delete">attributes. </span><span class="delete">
-The remaining examples show cases where some of </span>the optionals are omitted.
+
+
+
+
+ <span class="delete">hadOriginalSource(src1, ex:e1, ex:e2,[ex:param="a"])
+ </span>
+<span class="delete"> Here
+ </span><span class="delete">src1</span><span class="delete"> is the optional original source identifier,
+ </span><span class="delete">ex:e1</span><span class="delete"> is the identifier of the derived entity,
+ </span><span class="delete">ex:e2</span><span class="delete"> is the identifier of the original source entity,
+ and </span><span class="delete">[ex:param="a"]</span><span class="delete"> is the optional set of attributes. </span><span class="delete">
+The remaining examples show cases where some of the optionals are omitted.
+
+
+ </span><span class="delete">hadOriginalSource(ex:e1, ex:e2)
+hadOriginalSource(ex:e1, ex:e2,[ex:param="a"])
+hadOriginalSource(-,ex:e1, ex:e2,[ex:param="a"])
+hadOriginalSource(-,ex:e1, ex:e2)
+</span>
-
-<pre class="codeexample"><span class="delete">hadOriginalSource(ex:e1, ex:e2)
-hadOriginalSource(ex:e1, ex:e2,[ex:param="a"])
-hadOriginalSource(-,ex:e1, ex:e2,[ex:param="a"])
-hadOriginalSource(-,ex:e1, ex:e2)</span><span class="insert">actedOnBehalfOf(ag1, ag2)
-actedOnBehalfOf(ag1, ag2, a)
-actedOnBehalfOf(ag1, ag2, -, [prov:type="delegation"])
-actedOnBehalfOf(ag2, ag3, a, [prov:type="contract"])
-actedOnBehalfOf(r; ag2, ag3, a, [prov:type="contract"])</span>
-</pre>
-</div>
-
-
-
-
-</div>
-
-
-<div id="expression-trace" class="section">
-<h4><span class="secno">3.3.5 </span>Trace</h4>
+<span class="delete">3.3.5 </span><span class="delete">Trace</span>
<span class="delete">traceExpression</span><span class="delete"> ::=
</span><span class="delete">tracedTo</span>
<span class="delete">(</span>
<span class="delete">( </span><span class="delete">identifier</span><span class="delete"> | </span><span class="delete">-</span><span class="delete"> ) </span><span class="delete">,</span>
-
-
-
-<table class="grammar">
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-tracedToExpression" name="prod-tracedToExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">22</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">tracedToExpression</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"tracedTo" "(" </span><span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier
+<span class="delete">eIdentifier</span>
<span class="delete">,</span>
-</a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier
+<span class="delete">eIdentifier</span>
<span class="delete">optional-attribute-values</span>
-<span class="delete">)</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></span><span class="insert"> ")"</span></code></td> </tr> </tbody>
-</table>
-
-
-<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Trace maps to a non-terminal.</span></p>
-<div style="text-align: left; ">
-<table class="thinborder" style="margin-left: auto; margin-right: auto;">
-<tbody><tr><td><b><span class="insert">Trace</span></b></td><td><b><span class="insert">Non-Terminal</span></b></td></tr>
-<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#trace.id"><span class="attribute" id="trace.id"><span class="insert">id</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></code></td></tr>
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#trace.entity"><span class="attribute" id="trace.entity"><span class="insert">entity</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifier"><span class="insert">eIdentifier</span></a></code></td></tr>
-
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#trace.ancestor"><span class="attribute" id="trace.ancestor"><span class="insert">ancestor</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifier"><span class="insert">eIdentifier</span></a></code></td></tr>
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#trace.attributes"><span class="attribute" id="trace.attributes"><span class="insert">attributes</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></code></td></tr>
-</tbody></table>
-</div>
-
-
-<div class="anexample" id="example_25" data-count="25"><div class="anexampleTitle"><a class="internalDFN" href="#example_25"><span class="insert">Example 25</span></a></div>
- <pre class="codeexample">tracedTo(id,e2,e1,[ex:param="a"])
- </pre>
-<p> Here
- <span class="name">id</span> is the optional trace identifier,
- <span class="name">e2</span> is an entity identifier,
+<span class="delete">)</span>
+
+
+
+
+ <span class="delete">tracedTo(id,e2,e1,[ex:param="a"])
+ </span>
+<span class="delete"> Here
+ </span><span class="delete">id</span><span class="delete"> is the optional trace identifier,
+ </span><span class="delete">e2</span><span class="delete"> is </span>an entity identifier,
<span class="name">e1</span> is the identifier for an ancestor entity that <span class="name">e2</span> depends on,
and <span class="name">[ex:param="a"]</span> is the optional set of attributes. </p>
The remaining examples show cases where some of the optionals are omitted.
- <pre class="codeexample">tracedTo(e2,e1)
+ <pre class="codeexample"><span class="delete">tracedTo(e2,e1)
tracedTo(e2,e1,[ex:param="a"])
-<span class="delete">tracedTo(-,e2,e1)</span><span class="insert">tracedTo(id; e2,e1)</span>
+tracedTo(-,e2,e1)</span><span class="insert">influence(e2,e1)
+influence(e2,e1,[ex:param="a"])
+influence(id; e2,e1)</span>
</pre>
</div>
@@ -2658,7 +2960,7 @@
<h4><span class="secno">3.4.1 </span><span class="insert">Bundle Declaration</span></h4>
<table class="grammar">
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-namedBundle" name="prod-namedBundle"></a><span class="insert">[</span><span class="prodNo"><span class="insert">33</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">namedBundle</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"bundle" </span><span class="prod"><a class="grammarRef" href="#prod-identifier"><span class="insert">identifier</span></a></span><span class="insert"> (</span><span class="prod"><a class="grammarRef" href="#prod-namespaceDeclarations"><span class="insert">namespaceDeclarations</span></a></span><span class="insert">)? (</span><span class="prod"><a class="grammarRef" href="#prod-expression"><span class="insert">expression</span></a></span><span class="insert">)* "endBundle"</span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-namedBundle" name="prod-namedBundle"></a><span class="insert">[</span><span class="prodNo"><span class="insert">23</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">namedBundle</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"bundle" </span><span class="prod"><a class="grammarRef" href="#prod-identifier"><span class="insert">identifier</span></a></span><span class="insert"> (</span><span class="prod"><a class="grammarRef" href="#prod-namespaceDeclarations"><span class="insert">namespaceDeclarations</span></a></span><span class="insert">)? (</span><span class="prod"><a class="grammarRef" href="#prod-expression"><span class="insert">expression</span></a></span><span class="insert">)* "endBundle"</span></code></td> </tr> </tbody>
</table>
<div class="anexample" id="example_26" data-count="26"><div class="anexampleTitle"><a class="internalDFN" href="#example_26"><span class="insert">Example 26</span></a></div>
@@ -2686,7 +2988,7 @@
<table class="grammar">
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-alternateExpression" name="prod-alternateExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">23</span></span><span class="insert">] </span></td> <td><code class="production prod">alternateExpression<span class="delete"> ::=
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-alternateExpression" name="prod-alternateExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">24</span></span><span class="insert">] </span></td> <td><code class="production prod">alternateExpression<span class="delete"> ::=
</span><span class="delete">alternateOf</span>
<span class="delete">(</span>
</code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"alternateOf" "(" </span><span class="prod"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier
@@ -2732,7 +3034,7 @@
<table class="grammar">
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-specializationExpression" name="prod-specializationExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">24</span></span><span class="insert">] </span></td> <td><code class="production prod">specializationExpression<span class="delete"> ::=
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-specializationExpression" name="prod-specializationExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">25</span></span><span class="insert">] </span></td> <td><code class="production prod">specializationExpression<span class="delete"> ::=
</span><span class="delete">specializationOf</span>
<span class="delete">(</span>
</code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"specializationOf" "(" </span><span class="prod"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier
@@ -2771,57 +3073,18 @@
-<div id="expression-contextualization" class="section">
-<h4><span class="secno"><span class="insert">3.5.3 </span></span><span class="insert">Contextualization</span></h4>
-
-
-<table class="grammar">
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-contextualizationExpression" name="prod-contextualizationExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">25</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">contextualizationExpression</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"contextualizationOf" "(" </span><span class="prod"><a class="grammarRef" href="#prod-identifier"><span class="insert">identifier</span></a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-identifier"><span class="insert">identifier</span></a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-bIdentifier"><span class="insert">bIdentifier</span></a></span><span class="insert"> ")"</span></code></td> </tr> </tbody>
-</table>
-
-
-<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Contextualization maps to a non-terminal.</span></p>
-<div style="text-align: left; ">
-<table class="thinborder" style="margin-left: auto; margin-right: auto;">
-<tbody><tr><td><b><span class="insert">Contextualization</span></b></td><td><b><span class="insert">Non-Terminal</span></b></td></tr>
-<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
-
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#contextualization.specificEntity"><span class="attribute" id="contextualization.local"><span class="insert">local</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifier"><span class="insert">eIdentifier</span></a></code></td></tr>
-
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#contextualization.generalEntity"><span class="attribute" id="contextualization.contextualized"><span class="insert">contextualized</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifier"><span class="insert">eIdentifier</span></a></code></td></tr>
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#contextualization.context"><span class="attribute" id="contextualization.context"><span class="insert">context</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-bIdentifier"><span class="insert">bIdentifier</span></a></code></td></tr>
-
-</tbody></table>
+<div id="expression-mention" class="section">
+<h4><span class="secno"><span class="insert">3.5.3 </span></span><span class="insert">Mention</span></h4>
+
+<div class="note">
+<p><span class="insert">Note: This feature is "</span><a href="http://www.w3.org/2005/10/Process-20051014/tr#cfi"><span class="insert">at risk</span></a><span class="insert">" and may be removed from this specification based on feedback. Please send feedback to public-prov-comments@w3.org.</span></p>
+
+
+<p><span class="insert">The "Mention" construct might be removed from PROV if implementation experience reveals problems with supporting this construct.</span></p>
</div>
-
-
-
-<div class="anexample" id="example_29" data-count="29"><div class="anexampleTitle"><a class="internalDFN" href="#example_29"><span class="insert">Example 29</span></a></div>
-<pre class="codeexample"><span class="insert"> contextualization(ex:report1_as_in_b1, ex:report1, ex:b1)
-</span></pre>
-<p><span class="insert"> Here
- </span><span class="name"><span class="insert">ex:report1_as_in_b1</span></span><span class="insert"> is an entity identifier,
- </span><span class="name"><span class="insert">ex:report1</span></span><span class="insert"> is an entity identifier,
- </span><span class="name"><span class="insert">ex:b1</span></span><span class="insert"> is the identifier for a bundle
-</span></p></div>
-
-
-
-</div>
-
-
-
-
-</div>
-
-
-
-<div id="component6" class="section">
-<h3><span class="secno"><span class="delete">3.5</span><span class="insert">3.6</span> </span>Component <span class="delete">5:</span><span class="insert">6:</span> Collections</h3>
+
+<span class="delete">3.5 </span><span class="delete">Component 5: Collections</span>
<span class="delete">Grammar for collections </span><span class="delete">may</span><span class="delete"> under go minor syntactic changes since it has not been implemented yet.</span><span class="delete">
@@ -2829,21 +3092,8 @@
</span>
<span class="delete">keyValuePairs</span><span class="delete"> ::=
-</span>
-
-
-
-
-
-<div id="expression-collection-insertion" class="section">
-<h4><span class="secno"><span class="insert">3.6.1 </span></span><span class="insert">Insertion</span></h4>
-
-
-
-<table class="grammar">
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-insertionExpression" name="prod-insertionExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">26</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">insertionExpression</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"derivedByInsertionFrom" "(" </span><span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-dIdentifier"><span class="insert">dIdentifier</span></a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-dIdentifier"><span class="insert">dIdentifier</span></a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-keyEntitySet"><span class="insert">keyEntitySet</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></span><span class="insert"> ")"</span></code></td> </tr> </tbody>
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-keyEntitySet" name="prod-keyEntitySet"></a><span class="insert">[</span><span class="prodNo"><span class="insert">27</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">keyEntitySet</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"{" "(" </span><span class="prod"><a class="grammarRef" href="#prod-literal"><span class="insert">literal</span></a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-identifier"><span class="insert">identifier</span></a></span><span class="insert"> ")" </span>(
- <span class="insert"> "," "(" </span><span class="prod"><a class="grammarRef" href="#prod-literal">literal
+</span><span class="delete">(</span>
+ <span class="delete">literal</span>
<span class="delete">,</span>
<span class="delete">eidentifier</span>
<span class="delete">)</span><span class="delete">
@@ -2863,26 +3113,29 @@
|
</span><span class="delete">literal</span>
<span class="delete">,</span>
-<span class="delete">keySet</span></a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-identifier"><span class="insert">identifier</span></a></span><span class="insert"> ")" )* "}"</span></code></td> </tr> </tbody>
+<span class="delete">keySet</span>
+
+
+
+<table class="grammar">
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-mentionExpression" name="prod-mentionExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">26</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">mentionExpression</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"mentionOf" "(" </span><span class="prod"><a class="grammarRef" href="#prod-identifier"><span class="insert">identifier</span></a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-identifier"><span class="insert">identifier</span></a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-bIdentifier"><span class="insert">bIdentifier</span></a></span><span class="insert"> ")"</span></code></td> </tr> </tbody>
</table>
-<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Insertion maps to a non-terminal.</span></p>
+<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Mention maps to a non-terminal.</span></p>
<div style="text-align: left; ">
<table class="thinborder" style="margin-left: auto; margin-right: auto;">
-<tbody><tr><td><b><span class="insert">Insertion</span></b></td><td><b><span class="insert">Non-Terminal</span></b></td></tr>
+<tbody><tr><td><b><span class="insert">Mention</span></b></td><td><b><span class="insert">Non-Terminal</span></b></td></tr>
<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#insertion.id"><span class="attribute" id="insertion.id"><span class="insert">id</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></code></td></tr>
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#insertion.after"><span class="attribute" id="insertion.after"><span class="insert">after</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-cIdentifier"><span class="insert">cIdentifier</span></a></code></td></tr>
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#insertion.before"><span class="attribute" id="insertion.before"><span class="insert">before</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-cIdentifier"><span class="insert">cIdentifier</span></a></code></td></tr>
-
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#insertion.key-entity-set"><span class="attribute" id="insertion.key-entity-set"><span class="insert">key-entity-set</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-keyEntitySet"><span class="insert">keyEntitySet</span></a></code></td></tr>
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#insertion.attributes"><span class="attribute" id="insertion.attributes"><span class="insert">attributes</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#mention.specificEntity"><span class="attribute" id="mention.specificEntity"><span class="insert">specificEntity</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifier"><span class="insert">eIdentifier</span></a></code></td></tr>
+
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#mention.generalEntity"><span class="attribute" id="mention.generalEntity"><span class="insert">generalEntity</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifier"><span class="insert">eIdentifier</span></a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#mention.bundle"><span class="attribute" id="mention.bundle"><span class="insert">bundle</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-bIdentifier"><span class="insert">bIdentifier</span></a></code></td></tr>
+
</tbody></table>
</div>
@@ -2905,117 +3158,152 @@
<span class="delete">}</span>
<span class="delete">optional-attribute-values</span>
<span class="delete">)</span>
-<div class="anexample" id="example_30" data-count="30"><div class="anexampleTitle"><a class="internalDFN" href="#example_30"><span class="insert">Example 30</span></a></div>
-
-
- <pre class="codeexample"> <span class="delete">derivedByInsertionFrom(id,</span><span class="insert">derivedByInsertionFrom(id;</span> c1, c, {("k1", v1), ("k2", v2)}, [])
- </pre>
+<div class="anexample" id="example_29" data-count="29"><div class="anexampleTitle"><a class="internalDFN" href="#example_29"><span class="insert">Example 29</span></a></div>
+
+
+
+<pre class="codeexample"><span class="delete"> derivedByInsertionFrom(id, c1, c, {("k1", v1), ("k2", v2)}, [])
+ </span><span class="insert"> mention(ex:report1_as_in_b1, ex:report1, ex:b1)
+</span></pre>
<p> Here
- <span class="name">id</span> is the optional insertion identifier,
- <span class="name">c1</span> is the identifier for the collection after the insertion,
- <span class="name">c</span> is the identifier for the collection before the insertion,
- <span class="name"> {("k1", v1), ("k2", v2)}</span> is the set of key-value pairs that have been inserted in
- <span class="name">c</span>,
- and <span class="name">[]</span> is the optional (empty) set of attributes. </p>
+
+ <span class="name"><span class="delete">id</span><span class="insert">ex:report1_as_in_b1</span></span> is <span class="delete">the optional insertion</span><span class="insert">an entity</span> identifier,
+ <span class="name"><span class="delete">c1</span><span class="insert">ex:report1</span></span> is <span class="delete">the identifier for the collection after the insertion,
+ </span><span class="delete">c</span><span class="delete"> is the identifier for the collection before the insertion,
+ </span><span class="delete"> {("k1", v1), ("k2", v2)}</span><span class="delete"> is the set of key-value pairs that have been inserted in
+ </span><span class="delete">c</span><span class="delete">,
+ and </span><span class="delete">[]</span><span class="delete"> is the optional (empty) set of attributes. </span><span class="delete">
The remaining examples show cases where some of the optionals are omitted.
- <pre class="codeexample"> derivedByInsertionFrom(c1, c, {("k1", v1), ("k2", v2)})
+ </span><span class="delete"> derivedByInsertionFrom(c1, c, {("k1", v1), ("k2", v2)})
derivedByInsertionFrom(c1, c, {("k1", v1)})
derivedByInsertionFrom(c1, c, {("k1", v1), ("k2", v2)}, [])
-</pre>
-</div>
-
-
-</div>
-
-<div id="expression-collection-removal" class="section">
-<h4><span class="secno"><span class="delete">3.5.2</span><span class="insert">3.6.2</span> </span>Removal</h4>
+</span>
+
+
+
+
+
+
+<span class="delete">3.5.2 </span><span class="delete">Removal</span>
<span class="delete">derivationByRemovalFromExpression</span><span class="delete"> ::=
</span><span class="delete">derivedByRemovalFrom</span>
-
+ <span class="delete">(</span>
+ <span class="delete">identifier</span>
+ <span class="delete">,</span>
+<span class="delete">cIdentifier</span>
+ <span class="delete">,</span>
+<span class="delete">cIdentifier</span>
+ <span class="delete">,</span>
+ <span class="delete">{</span>
+ <span class="delete">keySet</span>
+ <span class="delete">}</span>
+<span class="delete">optional-attribute-values</span>
+ <span class="delete">)</span>
+
+
+
+
+ <span class="delete"> derivedByRemovalFrom(id, c3, c, {"k1", "k3"}, [])
+ </span>
+<span class="delete"> Here
+ </span><span class="delete">id</span><span class="delete"> is the optional removal</span><span class="insert">an entity</span> identifier,
+ <span class="name"><span class="delete">c1</span><span class="insert">ex:b1</span></span> is the identifier for <span class="delete">the collection after the removal,
+ </span><span class="delete">c</span><span class="delete"> is the identifier for the collection before the removal,
+ </span><span class="delete"> {("k1", v1), ("k2", v2)}</span><span class="delete"> is the set of key-value pairs that have been removed from
+ </span><span class="delete">c</span><span class="delete">,
+ and </span><span class="delete">[]</span><span class="delete"> is the optional (empty) set of attributes. </span><span class="insert">a bundle
+</span></p><span class="delete">
+ The remaining examples show cases where some of the optionals are omitted.
+
+ </span><span class="delete"> derivedByRemovalFrom(c3, c1, {"k1", "k3"})
+ derivedByRemovalFrom(c3, c1, {"k1"})
+ derivedByRemovalFrom(c3, c1, {"k1", "k3"}, [])
+</span>
+ </div>
+
+
+
+
+
+</div>
+
+
+<span class="delete">3.5.3 </span><span class="delete">Membership</span>
+
+
+ <span class="delete">membershipExpression</span><span class="delete"> ::=
+</span><span class="delete">isMemberOf</span>
+ <span class="delete">(</span>
+ <span class="delete">identifier</span>
+ <span class="delete">,</span>
+<span class="delete">cIdentifier</span>
+ <span class="delete">,</span>
+ <span class="delete">{</span>
+ <span class="delete">keyValuePairs</span>
+ <span class="delete">}</span>
+<span class="delete">optional-attribute-values</span>
+ <span class="delete">)</span>
+
+
+
+
+
+
+</div>
+
+
+
+ <span class="delete"> memberOf(mid, c, {("k4", v4), ("k5", v5)}, [])
+ </span>
+<span class="delete"> Here
+ </span><span class="delete">mid</span><span class="delete"> is the optional membership identifier,
+ </span><span class="delete">c</span><span class="delete"> is the identifier for the collection whose membership is stated,
+ </span><span class="delete"> {("k4", v4), ("k5", v5)}</span><span class="delete"> is the set of key-value pairs that are members of
+ </span><span class="delete">c</span><span class="delete">,
+ and </span><span class="delete">[]</span><span class="delete"> is the optional (empty) set of attributes. </span><span class="delete">
+The remaining examples show cases where some of the optionals are omitted.
+
+
+ </span><span class="delete"> memberOf(c3, {("k4", v4), ("k5", v5)})
+ memberOf(c3, {("k4", v4)})
+ memberOf(c3, {("k4", v4), ("k5", v5)},[])
+</span>
+
+
+
+
+
+
+
+
+
+
+<div id="component6" class="section">
+<h3><span class="secno">3.6 </span>Component 6: <span class="delete">Annotations</span><span class="insert">Collections</span></h3>
+
+
+
+
+
+
+
+
+<div id="expression-collection-membership" class="section">
+<h4><span class="secno">3.6.1 </span><span class="delete">Note</span><span class="insert">Membership</span></h4>
+
+
+<span class="delete">noteExpression</span><span class="delete"> ::=
+</span>
<table class="grammar">
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-removalExpression" name="prod-removalExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">29</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">removalExpression</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"derivedByRemovalFrom" "(" </span><span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-dIdentifier"><span class="insert">dIdentifier</span></a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-dIdentifier"><span class="insert">dIdentifier</span></a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-keySet"><span class="insert">keySet</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></span><span class="insert"> ")"</span></code></td> </tr> </tbody>
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-keySet" name="prod-keySet"></a><span class="insert">[</span><span class="prodNo"><span class="insert">30</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">keySet</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"{" </span><span class="prod"><a class="grammarRef" href="#prod-literal"><span class="insert">literal</span></a></span> (
- <span class="delete">identifier</span>
- <span class="delete">,</span>
-<span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-literal"><span class="insert">literal</span></a></span><span class="insert"> )* "}"</span></code></td> </tr> </tbody>
-</table>
-
-<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Removal maps to a non-terminal.</span></p>
-<div style="text-align: left; ">
-<table class="thinborder" style="margin-left: auto; margin-right: auto;">
-<tbody><tr><td><b><span class="insert">Removal</span></b></td><td><b><span class="insert">Non-Terminal</span></b></td></tr>
-<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#removal.id"><span class="attribute" id="removal.id"><span class="insert">id</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></code></td></tr>
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#removal.after"><span class="attribute" id="removal.after"><span class="insert">after</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-cIdentifier">cIdentifier
- <span class="delete">,</span>
-</a></code></td></tr>
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#removal.before"><span class="attribute" id="removal.before"><span class="insert">before</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-cIdentifier">cIdentifier
- <span class="delete">,</span>
- <span class="delete">{</span>
- </a></code></td></tr>
-
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#removal.key-set"><span class="attribute" id="removal.key-set"><span class="insert">key-set</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-keySet">keySet
- <span class="delete">}</span>
-<span class="delete">optional-attribute-values</span>
- <span class="delete">)</span>
- </a></code></td></tr>
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#removal.attributes"><span class="attribute" id="removal.attributes"><span class="insert">attributes</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></code></td></tr>
-</tbody></table>
-</div>
-
-
-
-
-
-
-<div class="anexample" id="example_31" data-count="31"><div class="anexampleTitle"><a class="internalDFN" href="#example_31"><span class="insert">Example 31</span></a></div>
- <pre class="codeexample"> <span class="delete">derivedByRemovalFrom(id,</span><span class="insert">derivedByRemovalFrom(id;</span> c3, c, {"k1", "k3"}, [])
- </pre>
-<p> Here
- <span class="name">id</span> is the optional removal identifier,
- <span class="name">c1</span> is the identifier for the collection after the removal,
- <span class="name">c</span> is the identifier for the collection before the removal,
- <span class="name"> {("k1", v1), ("k2", v2)}</span> is the set of key-value pairs that have been removed from
- <span class="name">c</span>,
- and <span class="name">[]</span> is the optional (empty) set of attributes. </p>
- The remaining examples show cases where some of the optionals are omitted.
-
- <pre class="codeexample"> derivedByRemovalFrom(c3, c1, {"k1", "k3"})
- derivedByRemovalFrom(c3, c1, {"k1"})
- derivedByRemovalFrom(c3, c1, {"k1", "k3"}, [])
-</pre>
- </div>
-
-</div>
-
-<div id="expression-collection-membership" class="section">
-<h4><span class="secno"><span class="delete">3.5.3</span><span class="insert">3.6.3</span> </span>Membership</h4>
-
-
-
-
-
-
-<table class="grammar">
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-membershipExpression" name="prod-membershipExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">31</span></span><span class="insert">] </span></td> <td><code class="production prod">membershipExpression<span class="delete"> ::=
-</span><span class="delete">isMemberOf</span>
- </code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"memberOf" "(" </span><span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-dIdentifier"><span class="insert">dIdentifier</span></a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-keyEntitySet"><span class="insert">keyEntitySet</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-complete"><span class="insert">complete</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></span><span class="insert"> ")"</span><br><span class="insert"> | "memberOf" "(" </span><span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-cIdentifier"><span class="insert">cIdentifier</span></a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-entitySet"><span class="insert">entitySet</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-complete"><span class="insert">complete</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></span><span class="insert"> ")"</span></code></td> </tr> </tbody>
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-complete" name="prod-complete"></a><span class="insert">[</span><span class="prodNo"><span class="insert">32</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">complete</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content">(
- <span class="delete">identifier</span>
- <span class="delete">,</span>
-<span class="insert"> "," ( "true" | "false" | "-" ) )?</span></code></td> </tr> </tbody>
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-entitySet" name="prod-entitySet"></a><span class="insert">[</span><span class="prodNo"><span class="insert">28</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">entitySet</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"{" (</span><span class="prod"><a class="grammarRef" href="#prod-eIdentifier"><span class="insert">eIdentifier</span></a></span><span class="insert">)* "}"</span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-membershipExpression" name="prod-membershipExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">27</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">membershipExpression</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"memberOf" "(" </span><span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-cIdentifier"><span class="insert">cIdentifier</span></a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-entitySet"><span class="insert">entitySet</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-complete"><span class="insert">complete</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></span><span class="insert"> ")"</span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-complete" name="prod-complete"></a><span class="insert">[</span><span class="prodNo"><span class="insert">28</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">complete</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">( "," ( "true" | "false" | "-" ) )?</span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-entitySet" name="prod-entitySet"></a><span class="insert">[</span><span class="prodNo"><span class="insert">29</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">entitySet</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"{" (</span><span class="prod"><a class="grammarRef" href="#prod-eIdentifier"><span class="insert">eIdentifier</span></a></span><span class="insert">)* "}"</span></code></td> </tr> </tbody>
</table>
@@ -3027,14 +3315,7 @@
<tr><td><a href="http://www.w3.org/TR/prov-dm/#membership.id"><span class="attribute" id="membership.id"><span class="insert">id</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></code></td></tr>
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#membership.collection"><span class="attribute" id="membership.collection"><span class="insert">collection</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-cIdentifier">cIdentifier
- <span class="delete">,</span>
- <span class="delete">{</span>
- <span class="delete">keyValuePairs</span>
- <span class="delete">}</span>
-<span class="delete">optional-attribute-values</span>
- <span class="delete">)</span>
- </a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#membership.collection"><span class="attribute" id="membership.collection"><span class="insert">collection</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-cIdentifier"><span class="insert">cIdentifier</span></a></code></td></tr>
<tr><td><a href="http://www.w3.org/TR/prov-dm/#membership.entity-set"><span class="attribute" id="membership.entity-set"><span class="insert">entity-set</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-entitySet"><span class="insert">entitySet</span></a></code></td></tr>
@@ -3047,64 +3328,13 @@
-<div style="text-align: left; ">
-<table class="thinborder" style="margin-left: auto; margin-right: auto;">
-<tbody><tr><td><b><span class="insert">Dictionary Membership</span></b></td><td><b><span class="insert">Non-Terminal</span></b></td></tr>
-<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#membership-d.id"><span class="attribute" id="membership-d.id"><span class="insert">id</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalIdentifier"><span class="insert">optionalIdentifier</span></a></code></td></tr>
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#membership-d.dictionary"><span class="attribute" id="membership-d.dictionary"><span class="insert">dictionary</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-dIdentifier"><span class="insert">dIdentifier</span></a></code></td></tr>
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#membership-d.key-entity-set"><span class="attribute" id="membership-d.key-entity-set"><span class="insert">key-entity-set</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-keyEntitySet"><span class="insert">keyEntitySet</span></a></code></td></tr>
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#membership-d.complete"><span class="attribute" id="membership-d.complete"><span class="insert">complete</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-complete"><span class="insert">complete</span></a></code></td></tr>
-
-<tr><td><a href="http://www.w3.org/TR/prov-dm/#membership-d.attributes"><span class="attribute" id="membership-d.attributes"><span class="insert">attributes</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></code></td></tr>
-</tbody></table>
-</div>
-
-
-
-<div class="anexample" id="example_32" data-count="32"><div class="anexampleTitle"><a class="internalDFN" href="#example_32"><span class="insert">Example 32</span></a></div>
- <pre class="codeexample"> <span class="delete">memberOf(mid,</span><span class="insert">memberOf(mId,</span> c, <span class="insert">{e1, e2, e3}, []) // Collection membership
- memberOf(mId, c, </span>{("k4", v4), ("k5", v5)}, [])<span class="insert"> // Dictionary membership</span>
- </pre>
-<p> Here
- <span class="name">mid</span> is the optional membership identifier,
- <span class="name">c</span> is the identifier for the collection whose membership is stated,
- <span class="name"> {("k4", v4), ("k5", v5)}</span> is the set of key-value pairs that are members of
- <span class="name">c</span>,
- and <span class="name">[]</span> is the optional (empty) set of attributes. </p>
-The remaining examples show cases <span class="insert">for Dictionaries, </span>where some of the optionals are omitted.
-
-
- <span class="insert"> Key-entity sets are replaced with Entity sets for the corresponding generic Collections examples.
-
-</span><pre class="codeexample"> memberOf(c3, {("k4", v4), ("k5", v5)})
-
-memberOf(c3, {("k4", v4)})
-
-memberOf(c3, {("k4", <span class="insert">v4)}, false)
-memberOf(c3, {("k4", v4)}, true)
-memberOf(c3, {("k4", </span>v4), ("k5", v5)},[])<span class="insert">
-memberOf(c3, {("k4", v4), ("k5", v5)},true, [])</span>
-</pre>
-</div>
-
-</div>
-
-
-</div>
-
-<span class="delete">3.6 </span><span class="delete">Component 6: Annotations</span>
-
-<span class="delete">3.6.1 </span><span class="delete">Note</span>
-
-
-<span class="delete">noteExpression</span><span class="delete"> ::=
-</span><span class="delete">note</span>
-<span class="delete">(</span>
+<div class="anexample" id="example_30" data-count="30"><div class="anexampleTitle"><a class="internalDFN" href="#example_30"><span class="insert">Example 30</span></a></div>
+ <pre class="codeexample"><span class="insert"> memberOf(mId, c, {e1, e2, e3}, []) // Collection membership
+ </span></pre>
+<p><span class="insert"> Here
+ </span><span class="name"><span class="delete">note</span>
+<span class="insert">mId</span></span><span class="insert"> is the optional membership identifier,
+ </span><span class="name"><span class="delete">(</span>
<span class="delete">identifier</span>
<span class="delete">optional-attribute-values</span>
<span class="delete">)</span>
@@ -3136,12 +3366,26 @@
<span class="delete">hasAnnotation(tr:WD-prov-dm-20111215,ex2:n1)
</span><span class="delete">
Here
- </span><span class="delete">ex2:n1</span><span class="delete"> is the identifier for a note of the entity identified by
- </span><span class="delete">(tr:WD-prov-dm-20111215</span><span class="delete">.
-</span>
-
-
-
+ </span><span class="delete">ex2:n1</span><span class="insert">c</span></span> is the identifier for <span class="delete">a note</span><span class="insert">the collection whose membership is stated,
+ </span><span class="name"><span class="insert"> {e1, e2, e3}</span></span><span class="insert"> is the entity-set indicating the members</span> of<span class="delete"> the entity identified by</span>
+ <span class="name"><span class="delete">(tr:WD-prov-dm-20111215</span><span class="delete">.
+</span><span class="insert">c</span></span><span class="insert">,
+ and </span><span class="name"><span class="insert">[]</span></span><span class="insert"> is the optional (empty) set of attributes. </span></p><span class="insert">
+In the remaining examples, some of the optionals are omitted.
+
+</span><pre class="codeexample"><span class="insert">memberOf(c3, {e1})
+memberOf(c3, {e1,e2}) // default "complete" flag is false
+memberOf(c3, {e1,e2}, false)
+memberOf(c3, {e1,e2}, true)
+memberOf(c3, ,[])
+memberOf(c3, ,true, [])
+</span></pre>
+</div>
+
+</div>
+
+
+</div>
@@ -3162,19 +3406,13 @@
This section defines further expressions of PROV-N.
-<div id="expression-NamespaceDeclaration" class="section">
-<h4><span class="secno">3.7.1 </span>Namespace Declaration</h4>
-
-
-
-<table class="grammar">
-
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-namespaceDeclarations" name="prod-namespaceDeclarations"></a><span class="insert">[</span><span class="prodNo"><span class="insert">54</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">namespaceDeclarations</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">( </span><span class="prod"><a class="grammarRef" href="#prod-defaultNamespaceDeclaration"><span class="insert">defaultNamespaceDeclaration</span></a></span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-namespaceDeclaration"><span class="insert">namespaceDeclaration</span></a></span><span class="insert"> ) (</span><span class="prod"><a class="grammarRef" href="#prod-namespaceDeclaration"><span class="insert">namespaceDeclaration</span></a></span><span class="insert">)*</span></code></td> </tr> </tbody>
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-namespaceDeclaration" name="prod-namespaceDeclaration"></a><span class="insert">[</span><span class="prodNo"><span class="insert">55</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">namespaceDeclaration</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"prefix" </span><span class="prod"><a class="grammarRef" href="#prod-QUALIFIED_NAME"><span class="insert">QUALIFIED_NAME</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-namespace"><span class="insert">namespace</span></a></span></code></td> </tr> </tbody>
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-defaultNamespaceDeclaration" name="prod-defaultNamespaceDeclaration"></a><span class="insert">[</span><span class="prodNo"><span class="insert">56</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">defaultNamespaceDeclaration</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"default" </span><span class="prod"><a class="grammarRef" href="#prod-IRI_REF"><span class="insert">IRI_REF</span></a></span></code></td> </tr> </tbody>
-<tbody class="term"> <tr valign="baseline"> <td><a id="prod-IRI_REF" name="prod-IRI_REF"></a><span class="insert">[</span><span class="prodNo"><span class="insert">63</span></span><span class="insert">] </span></td> <td><span class="insert"><</span><code class="production term"><span class="insert">IRI_REF</span></code><span class="insert">></span></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"<" ( [^<>"{}|^`\] - [#0000- ] | </span><span class="prod"><a class="grammarRef" href="#prod-UCHAR"><span class="insert">UCHAR</span></a></span><span class="insert"> )* ">"</span></code></td> </tr> </tbody>
-
-</table>
+
+
+
+
+
+<div id="expression-identifier" class="section">
+<h4><span class="secno">3.7.1 </span><span class="delete">Namespace Declaration</span>
@@ -3186,32 +3424,53 @@
</span><span class="delete">default</span> <span class="delete">IRI</span>
-<p>In PROV-N, the following prefixes are reserved:
-</p><ul>
-<li> <span class="name">prov</span> denotes the PROV namespace with URI <span class="name">http://www.w3.org/ns/prov#</span></li>
-<li> <span class="name">xsd</span> denotes the XML Schema namespace with URI <span class="name">http://www.w3.org/2001/XMLSchema#</span>.
-</li>
-</ul>
-<p>A PROV-N document <em class="rfc2119" title="must not">must not</em> redeclare prefixes <span class="name">prov</span> and <span class="name">xsd</span>.</p>
-
-<div class="anexample" id="anexample-namespace" data-count="33"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-namespace"><span class="insert">Example 33</span></a></div>
-<p>The following example declares three namespaces, one default, and two with explicit prefixes <span class="name">ex1</span> and <span class="name">ex2</span>.</p>
-<pre class="codeexample"><span class="delete">container</span><span class="insert">bundle</span>
+<span class="delete">In PROV-N, the following prefixes are reserved:
+</span>
+ <span class="delete">prov</span><span class="delete"> denotes the PROV namespace with URI </span><span class="delete">http://www.w3.org/ns/prov#</span>
+ <span class="delete">xsd</span><span class="delete"> denotes the XML Schema namespace with URI </span><span class="delete">http://www.w3.org/2001/XMLSchema#</span><span class="delete">.
+</span>
+
+<span class="delete">A PROV-N document </span><span class="delete">must not</span><span class="delete"> redeclare prefixes </span><span class="delete">prov</span><span class="delete"> and </span><span class="delete">xsd</span><span class="delete">.</span>
+
+
+<span class="delete">The following example declares three namespaces, one default, and two with explicit prefixes </span><span class="delete">ex1</span><span class="delete"> and </span><span class="delete">ex2</span><span class="delete">.</span>
+<span class="delete">container
default <http://example.org/0/>
prefix ex1 <http://example.org/1/>
prefix ex2 <http://example.org/2/>
...
-<span class="delete">end</span><span class="insert">endBundle</span>
-</pre>
-</div>
-
-
-
-</div>
-
-
-<div id="expression-identifier" class="section">
-<h4><span class="secno">3.7.2 </span>Identifier</h4>
+end
+</span>
+
+
+
+
+
+
+
+
+<span class="delete">3.7.2 </span>Identifier</h4>
+
+<p><span class="insert">Various kinds of identifiers are used in productions.</span></p>
+
+<table class="grammar">
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-eIdentifier" name="prod-eIdentifier"></a><span class="insert">[</span><span class="prodNo"><span class="insert">30</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">eIdentifier</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-identifier"><span class="insert">identifier</span></a></span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-aIdentifier" name="prod-aIdentifier"></a><span class="insert">[</span><span class="prodNo"><span class="insert">31</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">aIdentifier</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-identifier"><span class="insert">identifier</span></a></span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-agIdentifier" name="prod-agIdentifier"></a><span class="insert">[</span><span class="prodNo"><span class="insert">32</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">agIdentifier</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-identifier"><span class="insert">identifier</span></a></span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-gIdentifier" name="prod-gIdentifier"></a><span class="insert">[</span><span class="prodNo"><span class="insert">33</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">gIdentifier</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-identifier"><span class="insert">identifier</span></a></span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-uIdentifier" name="prod-uIdentifier"></a><span class="insert">[</span><span class="prodNo"><span class="insert">34</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">uIdentifier</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-identifier"><span class="insert">identifier</span></a></span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-cIdentifier" name="prod-cIdentifier"></a><span class="insert">[</span><span class="prodNo"><span class="insert">36</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">cIdentifier</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-identifier"><span class="insert">identifier</span></a></span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-dIdentifier" name="prod-dIdentifier"></a><span class="insert">[</span><span class="prodNo"><span class="insert">35</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">dIdentifier</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-identifier"><span class="insert">identifier</span></a></span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-bIdentifier" name="prod-bIdentifier"></a><span class="insert">[</span><span class="prodNo"><span class="insert">37</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">bIdentifier</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-identifier"><span class="insert">identifier</span></a></span></code></td> </tr> </tbody>
+
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-eIdentifierOrMarker" name="prod-eIdentifierOrMarker"></a><span class="insert">[</span><span class="prodNo"><span class="insert">38</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">eIdentifierOrMarker</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">( </span><span class="prod"><a class="grammarRef" href="#prod-eIdentifier"><span class="insert">eIdentifier</span></a></span><span class="insert"> | "-" )</span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-aIdentifierOrMarker" name="prod-aIdentifierOrMarker"></a><span class="insert">[</span><span class="prodNo"><span class="insert">39</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">aIdentifierOrMarker</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">( </span><span class="prod"><a class="grammarRef" href="#prod-aIdentifier"><span class="insert">aIdentifier</span></a></span><span class="insert"> | "-" )</span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-agIdentifierOrMarker" name="prod-agIdentifierOrMarker"></a><span class="insert">[</span><span class="prodNo"><span class="insert">40</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">agIdentifierOrMarker</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">( </span><span class="prod"><a class="grammarRef" href="#prod-agIdentifier"><span class="insert">agIdentifier</span></a></span><span class="insert"> | "-" )</span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-gIdentifierOrMarker" name="prod-gIdentifierOrMarker"></a><span class="insert">[</span><span class="prodNo"><span class="insert">41</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">gIdentifierOrMarker</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">( </span><span class="prod"><a class="grammarRef" href="#prod-gIdentifier"><span class="insert">gIdentifier</span></a></span><span class="insert"> | "-" )</span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-uIdentifierOrMarker" name="prod-uIdentifierOrMarker"></a><span class="insert">[</span><span class="prodNo"><span class="insert">42</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">uIdentifierOrMarker</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">( </span><span class="prod"><a class="grammarRef" href="#prod-uIdentifier"><span class="insert">uIdentifier</span></a></span><span class="insert"> | "-" )</span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-identifier" name="prod-identifier"></a><span class="insert">[</span><span class="prodNo"><span class="insert">43</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">identifier</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-QUALIFIED_NAME"><span class="insert">QUALIFIED_NAME</span></a></span></code></td> </tr> </tbody>
+</table>
+
<p>
A <dfn id="dfn-qualifiedName">qualified name</dfn> is a name subject to <a>namespace</a> interpretation. It consists of a <a>namespace</a>, denoted by an optional prefix, and a local name.
@@ -3266,33 +3525,17 @@
<table class="grammar">
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-eIdentifier" name="prod-eIdentifier"></a><span class="insert">[</span><span class="prodNo"><span class="insert">34</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">eIdentifier</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-identifier"><span class="insert">identifier</span></a></span></code></td> </tr> </tbody>
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-aIdentifier" name="prod-aIdentifier"></a><span class="insert">[</span><span class="prodNo"><span class="insert">35</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">aIdentifier</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-identifier"><span class="insert">identifier</span></a></span></code></td> </tr> </tbody>
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-agIdentifier" name="prod-agIdentifier"></a><span class="insert">[</span><span class="prodNo"><span class="insert">36</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">agIdentifier</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-identifier"><span class="insert">identifier</span></a></span></code></td> </tr> </tbody>
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-gIdentifier" name="prod-gIdentifier"></a><span class="insert">[</span><span class="prodNo"><span class="insert">37</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">gIdentifier</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-identifier"><span class="insert">identifier</span></a></span></code></td> </tr> </tbody>
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-uIdentifier" name="prod-uIdentifier"></a><span class="insert">[</span><span class="prodNo"><span class="insert">38</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">uIdentifier</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-identifier"><span class="insert">identifier</span></a></span></code></td> </tr> </tbody>
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-cIdentifier" name="prod-cIdentifier"></a><span class="insert">[</span><span class="prodNo"><span class="insert">40</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">cIdentifier</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-identifier"><span class="insert">identifier</span></a></span></code></td> </tr> </tbody>
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-dIdentifier" name="prod-dIdentifier"></a><span class="insert">[</span><span class="prodNo"><span class="insert">39</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">dIdentifier</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-identifier"><span class="insert">identifier</span></a></span></code></td> </tr> </tbody>
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-bIdentifier" name="prod-bIdentifier"></a><span class="insert">[</span><span class="prodNo"><span class="insert">41</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">bIdentifier</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-identifier"><span class="insert">identifier</span></a></span></code></td> </tr> </tbody>
-
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-eIdentifierOrMarker" name="prod-eIdentifierOrMarker"></a><span class="insert">[</span><span class="prodNo"><span class="insert">42</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">eIdentifierOrMarker</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">( </span><span class="prod"><a class="grammarRef" href="#prod-eIdentifier"><span class="insert">eIdentifier</span></a></span><span class="insert"> | "-" )</span></code></td> </tr> </tbody>
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-aIdentifierOrMarker" name="prod-aIdentifierOrMarker"></a><span class="insert">[</span><span class="prodNo"><span class="insert">43</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">aIdentifierOrMarker</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">( </span><span class="prod"><a class="grammarRef" href="#prod-aIdentifier"><span class="insert">aIdentifier</span></a></span><span class="insert"> | "-" )</span></code></td> </tr> </tbody>
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-agIdentifierOrMarker" name="prod-agIdentifierOrMarker"></a><span class="insert">[</span><span class="prodNo"><span class="insert">44</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">agIdentifierOrMarker</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">( </span><span class="prod"><a class="grammarRef" href="#prod-agIdentifier"><span class="insert">agIdentifier</span></a></span><span class="insert"> | "-" )</span></code></td> </tr> </tbody>
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-gIdentifierOrMarker" name="prod-gIdentifierOrMarker"></a><span class="insert">[</span><span class="prodNo"><span class="insert">45</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">gIdentifierOrMarker</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">( </span><span class="prod"><a class="grammarRef" href="#prod-gIdentifier"><span class="insert">gIdentifier</span></a></span><span class="insert"> | "-" )</span></code></td> </tr> </tbody>
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-uIdentifierOrMarker" name="prod-uIdentifierOrMarker"></a><span class="insert">[</span><span class="prodNo"><span class="insert">46</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">uIdentifierOrMarker</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">( </span><span class="prod"><a class="grammarRef" href="#prod-uIdentifier"><span class="insert">uIdentifier</span></a></span><span class="insert"> | "-" )</span></code></td> </tr> </tbody>
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-identifier" name="prod-identifier"></a><span class="insert">[</span><span class="prodNo"><span class="insert">47</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">identifier</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-QUALIFIED_NAME"><span class="insert">QUALIFIED_NAME</span></a></span></code></td> </tr> </tbody>
-
-<tbody class="term"> <tr valign="baseline"> <td><a id="prod-QUALIFIED_NAME" name="prod-QUALIFIED_NAME"></a><span class="insert">[</span><span class="prodNo"><span class="insert">58</span></span><span class="insert">] </span></td> <td><span class="insert"><</span><code class="production term"><span class="insert">QUALIFIED_NAME</span></code><span class="insert">></span></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">( </span><span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_LOCAL"><span class="insert">PN_PREFIX</span></a></span><span class="insert"> ":" )? </span><span class="prod"><a class="grammarRef" href="#prod-PN_LOCAL"><span class="insert">PN_LOCAL</span></a></span><br><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_LOCAL"><span class="insert">PN_PREFIX</span></a></span><span class="insert"> ":"</span></code></td> </tr> </tbody>
-<tbody class="term"> <tr valign="baseline"> <td><a id="prod-PN_LOCAL" name="prod-PN_LOCAL"></a><span class="insert">[</span><span class="prodNo"><span class="insert">76</span></span><span class="insert">] </span></td> <td><span class="insert"><</span><code class="production term"><span class="insert">PN_LOCAL</span></code><span class="insert">></span></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">( </span><span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_CHARS_U"><span class="insert">PN_CHARS_U</span></a></span><span class="insert"> | [0-9] | </span><span class="prod"><a class="grammarRef" href="#prod-PN_CHARS_OTHERS"><span class="insert">PN_CHARS_OTHERS</span></a></span><span class="insert"> ) ( ( </span><span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_CHARS"><span class="insert">PN_CHARS</span></a></span><span class="insert"> | "." | </span><span class="prod"><a class="grammarRef" href="#prod-PN_CHARS_OTHERS"><span class="insert">PN_CHARS_OTHERS</span></a></span><span class="insert"> )* ( </span><span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_CHARS"><span class="insert">PN_CHARS</span></a></span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-PN_CHARS_OTHERS"><span class="insert">PN_CHARS_OTHERS</span></a></span><span class="insert"> ) )?</span></code></td> </tr> </tbody>
-<tbody class="term"> <tr valign="baseline"> <td><a id="prod-PN_CHARS_OTHERS" name="prod-PN_CHARS_OTHERS"></a><span class="insert">[</span><span class="prodNo"><span class="insert">77</span></span><span class="insert">] </span></td> <td><span class="insert"><</span><code class="production term"><span class="insert">PN_CHARS_OTHERS</span></code><span class="insert">></span></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-PERCENT"><span class="insert">PERCENT</span></a></span><br><span class="insert"> | "/"</span><br><span class="insert"> | "@"</span><br><span class="insert"> | "~"</span><br><span class="insert"> | "&"</span><br><span class="insert"> | "+"</span><br><span class="insert"> | "?"</span><br><span class="insert"> | "#"</span><br><span class="insert"> | "$"</span></code></td> </tr> </tbody>
-<tbody class="term"> <tr valign="baseline"> <td><a id="prod-PERCENT" name="prod-PERCENT"></a><span class="insert">[</span><span class="prodNo"><span class="insert">78</span></span><span class="insert">] </span></td> <td><span class="insert"><</span><code class="production term"><span class="insert">PERCENT</span></code><span class="insert">></span></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"%" </span><span class="prod"><a class="grammarRef" href="#prod-HEX"><span class="insert">HEX</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-HEX"><span class="insert">HEX</span></a></span></code></td> </tr> </tbody>
-<tbody class="term"> <tr valign="baseline"> <td><a id="prod-HEX" name="prod-HEX"></a><span class="insert">[</span><span class="prodNo"><span class="insert">79</span></span><span class="insert">] </span></td> <td><span class="insert"><</span><code class="production term"><span class="insert">HEX</span></code><span class="insert">></span></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">[0-9]</span><br><span class="insert"> | [A-F]</span><br><span class="insert"> | [a-f]</span></code></td> </tr> </tbody>
+<tbody class="term"> <tr valign="baseline"> <td><a id="prod-QUALIFIED_NAME" name="prod-QUALIFIED_NAME"></a><span class="insert">[</span><span class="prodNo"><span class="insert">59</span></span><span class="insert">] </span></td> <td><span class="insert"><</span><code class="production term"><span class="insert">QUALIFIED_NAME</span></code><span class="insert">></span></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">( </span><span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_LOCAL"><span class="insert">PN_PREFIX</span></a></span><span class="insert"> ":" )? </span><span class="prod"><a class="grammarRef" href="#prod-PN_LOCAL"><span class="insert">PN_LOCAL</span></a></span><br><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_LOCAL"><span class="insert">PN_PREFIX</span></a></span><span class="insert"> ":"</span></code></td> </tr> </tbody>
+<tbody class="term"> <tr valign="baseline"> <td><a id="prod-PN_LOCAL" name="prod-PN_LOCAL"></a><span class="insert">[</span><span class="prodNo"><span class="insert">60</span></span><span class="insert">] </span></td> <td><span class="insert"><</span><code class="production term"><span class="insert">PN_LOCAL</span></code><span class="insert">></span></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">( </span><span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_CHARS_U"><span class="insert">PN_CHARS_U</span></a></span><span class="insert"> | [0-9] | </span><span class="prod"><a class="grammarRef" href="#prod-PN_CHARS_OTHERS"><span class="insert">PN_CHARS_OTHERS</span></a></span><span class="insert"> ) ( ( </span><span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_CHARS"><span class="insert">PN_CHARS</span></a></span><span class="insert"> | "." | </span><span class="prod"><a class="grammarRef" href="#prod-PN_CHARS_OTHERS"><span class="insert">PN_CHARS_OTHERS</span></a></span><span class="insert"> )* ( </span><span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_CHARS"><span class="insert">PN_CHARS</span></a></span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-PN_CHARS_OTHERS"><span class="insert">PN_CHARS_OTHERS</span></a></span><span class="insert"> ) )?</span></code></td> </tr> </tbody>
+<tbody class="term"> <tr valign="baseline"> <td><a id="prod-PN_CHARS_OTHERS" name="prod-PN_CHARS_OTHERS"></a><span class="insert">[</span><span class="prodNo"><span class="insert">61</span></span><span class="insert">] </span></td> <td><span class="insert"><</span><code class="production term"><span class="insert">PN_CHARS_OTHERS</span></code><span class="insert">></span></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-PERCENT"><span class="insert">PERCENT</span></a></span><br><span class="insert"> | "/"</span><br><span class="insert"> | "@"</span><br><span class="insert"> | "~"</span><br><span class="insert"> | "&"</span><br><span class="insert"> | "+"</span><br><span class="insert"> | "?"</span><br><span class="insert"> | "#"</span><br><span class="insert"> | "$"</span></code></td> </tr> </tbody>
+<tbody class="term"> <tr valign="baseline"> <td><a id="prod-PERCENT" name="prod-PERCENT"></a><span class="insert">[</span><span class="prodNo"><span class="insert">62</span></span><span class="insert">] </span></td> <td><span class="insert"><</span><code class="production term"><span class="insert">PERCENT</span></code><span class="insert">></span></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"%" </span><span class="prod"><a class="grammarRef" href="#prod-HEX"><span class="insert">HEX</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-HEX"><span class="insert">HEX</span></a></span></code></td> </tr> </tbody>
+<tbody class="term"> <tr valign="baseline"> <td><a id="prod-HEX" name="prod-HEX"></a><span class="insert">[</span><span class="prodNo"><span class="insert">63</span></span><span class="insert">] </span></td> <td><span class="insert"><</span><code class="production term"><span class="insert">HEX</span></code><span class="insert">></span></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">[0-9]</span><br><span class="insert"> | [A-F]</span><br><span class="insert"> | [a-f]</span></code></td> </tr> </tbody>
</table>
-<div class="anexample" id="anexample-qualified-name" data-count="34"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-qualified-name"><span class="insert">Example 34</span></a></div>
+<div class="anexample" id="anexample-qualified-name" data-count="31"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-qualified-name"><span class="insert">Example 31</span></a></div>
<p>Examples of articles on the BBC Web site seen as entities.</p>
<pre class="codeexample"><span class="delete">container</span><span class="insert">bundle</span>
prefix bbc <http://www.bbc.co.uk/>
@@ -3311,7 +3554,7 @@
-<div class="anexample" id="anexample-qualified-name2" data-count="35"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-qualified-name2"><span class="insert">Example 35</span></a></div>
+<div class="anexample" id="anexample-qualified-name2" data-count="32"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-qualified-name2"><span class="insert">Example 32</span></a></div>
<p>Examples of entities with declared and default namespace.</p>
<pre class="codeexample"><span class="delete">container</span><span class="insert">bundle</span>
default <http://example.org/2/>
@@ -3330,7 +3573,7 @@
-<p><b>Note:</b>The productions for <code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME">qualifiedName</a></code> and <code class="content"><a class="grammarRef" href="#http://www.w3.org/TR/rdf-sparql-query/#rPN_PREFIX">prefix</a></code> are conflicting. In the context of a <code class="content"><a class="grammarRef" href="#prod-namespaceDeclaration">namespaceDeclaration</a></code>, a parser should give precedence to the production for <code class="content"><a class="grammarRef" href="#http://www.w3.org/TR/rdf-sparql-query/#rPN_PREFIX">prefix</a></code>.
+<p><b>Note:</b>The productions for <code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME">qualifiedName</a></code> and <code class="content"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_PREFIX">prefix</a></code> are conflicting. In the context of a <code class="content"><a class="grammarRef" href="#prod-namespaceDeclaration">namespaceDeclaration</a></code>, a parser should give precedence to the production for <code class="content"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_PREFIX">prefix</a></code>.
</p>
@@ -3340,7 +3583,7 @@
</div>
<div id="expression-attribute" class="section">
-<h4><span class="secno">3.7.3 </span>Attribute</h4>
+<h4><span class="secno"><span class="delete">3.7.3</span><span class="insert">3.7.2</span> </span>Attribute</h4>
@@ -3348,7 +3591,7 @@
<table class="grammar">
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-attribute" name="prod-attribute"></a><span class="insert">[</span><span class="prodNo"><span class="insert">48</span></span><span class="insert">] </span></td> <td><code class="production prod">attribute<span class="delete"> ::= </span><span class="delete">qualifiedName</span>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-attribute" name="prod-attribute"></a><span class="insert">[</span><span class="prodNo"><span class="insert">44</span></span><span class="insert">] </span></td> <td><code class="production prod">attribute<span class="delete"> ::= </span><span class="delete">qualifiedName</span>
</code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-QUALIFIED_NAME"><span class="insert">QUALIFIED_NAME</span></a></span></code></td> </tr> </tbody>
@@ -3373,7 +3616,7 @@
<div id="expression-literal" class="section">
-<h4><span class="secno">3.7.4 </span>Literal</h4>
+<h4><span class="secno"><span class="delete">3.7.4</span><span class="insert">3.7.3</span> </span>Literal</h4>
<span class="delete">Literal</span><span class="delete"> ::= </span>
@@ -3381,29 +3624,27 @@
<table class="grammar">
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-literal" name="prod-literal"></a><span class="insert">[</span><span class="prodNo"><span class="insert">50</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">literal</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-typedLiteral">typedLiteral</a></span><br> | <span class="prod"><a class="grammarRef" href="#prod-convenienceNotation">convenienceNotation </a></span></code></td> </tr> </tbody>
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-typedLiteral" name="prod-typedLiteral"></a><span class="insert">[</span><span class="prodNo"><span class="insert">51</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">typedLiteral</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-STRING_LITERAL"><span class="insert">STRING_LITERAL</span></a></span><span class="insert"> "%%" </span><span class="prod"><a class="grammarRef" href="#prod-datatype"><span class="insert">datatype</span></a></span></code></td> </tr> </tbody>
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-datatype" name="prod-datatype"></a><span class="insert">[</span><span class="prodNo"><span class="insert">52</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">datatype</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-QUALIFIED_NAME"><span class="insert">QUALIFIED_NAME</span></a></span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-literal" name="prod-literal"></a><span class="insert">[</span><span class="prodNo"><span class="insert">45</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">literal</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-typedLiteral">typedLiteral</a></span><br> | <span class="prod"><a class="grammarRef" href="#prod-convenienceNotation">convenienceNotation </a></span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-typedLiteral" name="prod-typedLiteral"></a><span class="insert">[</span><span class="prodNo"><span class="insert">46</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">typedLiteral</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-STRING_LITERAL"><span class="insert">STRING_LITERAL</span></a></span><span class="insert"> "%%" </span><span class="prod"><a class="grammarRef" href="#prod-datatype"><span class="insert">datatype</span></a></span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-datatype" name="prod-datatype"></a><span class="insert">[</span><span class="prodNo"><span class="insert">47</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">datatype</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-QUALIFIED_NAME"><span class="insert">QUALIFIED_NAME</span></a></span></code></td> </tr> </tbody>
<tbody><tr valign="baseline"><td></td><td></td><td></td></tr></tbody>
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-convenienceNotation" name="prod-convenienceNotation"></a><span class="insert">[</span><span class="prodNo"><span class="insert">53</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">convenienceNotation</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-STRING_LITERAL"><span class="insert">STRING_LITERAL</span></a></span><br>
-<span class="delete">typedLiteral</span><span class="delete"> ::= </span><span class="delete">quotedString</span> <span class="delete">%%</span> <span class="delete">datatype</span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-INT_LITERAL"><span class="insert">INT_LITERAL</span></a></span><br>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-convenienceNotation" name="prod-convenienceNotation"></a><span class="insert">[</span><span class="prodNo"><span class="insert">48</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">convenienceNotation</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-STRING_LITERAL"><span class="insert">STRING_LITERAL</span></a></span><span class="insert"> (</span><span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rLANGTAG"><span class="insert">LANGTAG</span></a></span><span class="insert">)?</span><br>
+<span class="delete">typedLiteral</span><span class="delete"> ::= </span><span class="delete">quotedString</span> <span class="delete">%%</span> <span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-INT_LITERAL"><span class="insert">INT_LITERAL</span></a></span><br><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-QUALIFIED_NAME_LITERAL"><span class="insert">QUALIFIED_NAME_LITERAL</span></a></span></code></td> </tr> </tbody>
+<tbody class="term"> <tr valign="baseline"> <td><a id="prod-STRING_LITERAL" name="prod-STRING_LITERAL"></a><span class="insert">[</span><span class="prodNo"><span class="insert">64</span></span><span class="insert">] </span></td> <td><span class="insert"><</span><code class="production term"><span class="insert">STRING_LITERAL</span></code><span class="insert">></span></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rSTRING_LITERAL2"><span class="insert">STRING_LITERAL2</span></a></span><br><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rSTRING_LITERAL_LONG2"><span class="insert">STRING_LITERAL_LONG2</span></a></span></code></td> </tr> </tbody>
+<tbody class="term"> <tr valign="baseline"> <td><a id="prod-INT_LITERAL" name="prod-INT_LITERAL"></a><span class="insert">[</span><span class="prodNo"><span class="insert">66</span></span><span class="insert">] </span></td> <td><span class="insert"><</span><code class="production term"><span class="insert">INT_LITERAL</span></code><span class="insert">></span></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">("-")? (</span><span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span><span class="insert">)+</span></code></td> </tr> </tbody>
+<tbody class="term"> <tr valign="baseline"> <td><a id="prod-QUALIFIED_NAME_LITERAL" name="prod-QUALIFIED_NAME_LITERAL"></a><span class="insert">[</span><span class="prodNo"><span class="insert">67</span></span><span class="insert">] </span></td> <td><span class="insert"><</span><code class="production term"><span class="insert">QUALIFIED_NAME_LITERAL</span></code><span class="insert">></span></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"'" </span><span class="prod"><a class="grammarRef" href="#prod-QUALIFIED_NAME"><span class="insert">QUALIFIED_NAME</span></a></span><span class="insert"> "'"</span></code></td> </tr> </tbody>
+</table>
+
+<p><span class="insert">In production </span><code class="content"><a class="grammarRef" href="#prod-datatype">datatype
<span class="delete">datatype</span><span class="delete"> ::= </span><span class="delete">qualifiedName</span> <span class="delete"> listed in Table </span><span class="delete">permitted-datatypes</span>
-<span class="delete">convenienceNotation</span><span class="delete"> ::= </span><span class="delete">stringLiteral</span> | <span class="delete">intLiteral</span>
+<span class="delete">convenienceNotation</span><span class="delete"> ::= </span><span class="delete">stringLiteral</span><span class="delete"> | </span><span class="delete">intLiteral</span>
<span class="delete">stringLiteral</span><span class="delete"> ::= </span><span class="delete">quotedString</span>
-<span class="delete">quotedString</span><span class="delete"> ::= </span><span class="prod"><a class="grammarRef" href="#prod-QUALIFIED_NAME_LITERAL"><span class="insert">QUALIFIED_NAME_LITERAL</span></a></span></code></td> </tr> </tbody>
-<tbody class="term"> <tr valign="baseline"> <td><a id="prod-STRING_LITERAL" name="prod-STRING_LITERAL"></a><span class="insert">[</span><span class="prodNo"><span class="insert">64</span></span><span class="insert">] </span></td> <td><span class="insert"><</span><code class="production term"><span class="insert">STRING_LITERAL</span></code><span class="insert">></span></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">'"' ( ( [^"\
-
-] ) | </span><span class="prod"><a class="grammarRef" href="#prod-ECHAR"><span class="insert">ECHAR</span></a></span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-UCHAR"><span class="insert">UCHAR</span></a></span><span class="insert"> )* '"'</span></code></td> </tr> </tbody>
-<tbody class="term"> <tr valign="baseline"> <td><a id="prod-INT_LITERAL" name="prod-INT_LITERAL"></a><span class="insert">[</span><span class="prodNo"><span class="insert">65</span></span><span class="insert">] </span></td> <td><span class="insert"><</span><code class="production term"><span class="insert">INT_LITERAL</span></code><span class="insert">></span></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">("-")? (</span><span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span><span class="insert">)+</span></code></td> </tr> </tbody>
-<tbody class="term"> <tr valign="baseline"> <td><a id="prod-QUALIFIED_NAME_LITERAL" name="prod-QUALIFIED_NAME_LITERAL"></a><span class="insert">[</span><span class="prodNo"><span class="insert">66</span></span><span class="insert">] </span></td> <td><span class="insert"><</span><code class="production term"><span class="insert">QUALIFIED_NAME_LITERAL</span></code><span class="insert">></span></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"'" </span><span class="prod"><a class="grammarRef" href="#prod-QUALIFIED_NAME"><span class="insert">QUALIFIED_NAME</span></a></span><span class="insert"> "'"</span></code></td> </tr> </tbody>
-</table>
-
-<p><span class="insert">In production </span><code class="content"><a class="grammarRef" href="#prod-datatype"><span class="insert">prod-datatype</span></a></code><span class="insert">, the </span><code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME"><span class="insert">QUALIFIED_NAME</span></a></code><span class="insert"> is used to denote </span>a <span class="delete">finite sequence of characters in which " (#x22) and \ (#x5C) occur only in pairs of the form \" (#x5C, #x22) and \\ (#x5C,
+<span class="delete">quotedString</span><span class="delete"> ::= </span></a></code><span class="insert">, the </span><code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME"><span class="insert">QUALIFIED_NAME</span></a></code><span class="insert"> is used to denote </span>a <span class="delete">finite sequence of characters in which " (#x22) and \ (#x5C) occur only in pairs of the form \" (#x5C, #x22) and \\ (#x5C,
#x5C), enclosed in a pair of " (#x22) characters</span>
<span class="delete">intLiteral</span><span class="delete"> ::= </span><span class="delete">a finite-length non-empty sequence of decimal digits (#x30-#x39) with an optional leading negative sign (-)</span>
-<a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-dm.html#term-value"><span class="insert">PROV data type</span></a><span class="insert"> [</span><cite><a class="bibref" rel="biblioentry" href="#bib-PROV-DM"><span class="insert">PROV-DM</span></a></cite><span class="insert">].
+<a href="http://www.w3.org/TR/prov-dm/#term-value"><span class="insert">PROV data type</span></a><span class="insert"> [</span><cite><a class="bibref" rel="biblioentry" href="#bib-PROV-DM"><span class="insert">PROV-DM</span></a></cite><span class="insert">].
</span></p><p>The non terminals <span class="delete">stringLiteral</span>
@@ -3448,17 +3689,30 @@
</p>
<span class="delete">
-Wouldn't it be useful to introduce a literal for a qualified name?
+Wouldn't it</span><div class="anexample" id="anexample-value" data-count="33"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-value"><span class="insert">Example 33</span></a></div>
+<p><span class="insert">
+The following examples respectively are the string "abc", the string (in French) "bonjour", the integer number 1, and the IRI "http://example.org/foo".
+</span></p><pre class="codeexample"><span class="insert"> "abc"
+ "bonjour"@fr
+ "1" %% xsd:integer
+ "http://example.org/foo" %% xsd:anyURI
+</span></pre>
+<p><span class="insert">The following example shows a value of type </span><span class="name"><span class="insert">prov:QUALIFIED_NAME</span></span><span class="insert"> (see
+</span><span class="name"><a href="#prod-QUALIFIED_NAME"><span class="insert">prov:QUALIFIED_NAME</span></a></span><span class="insert">).
+The prefix </span><span class="name"><span class="insert">ex</span></span> <em class="rfc2119" title="must"><span class="insert">must</span></em> be <span class="delete">useful</span><span class="insert">bound</span> to <span class="delete">introduce </span>a <span class="delete">literal for</span><a><span class="insert">namespace</span></a><span class="insert"> declared in</span> a <span class="delete">qualified name?
Currenlty, we have to write:
-</span><span class="delete">prov:type="ex:Programmer" %% xsd:QName
-</span><span class="delete">
-to indicate that ex:Programmer should be interpreted as qualified name (QName).
+</span><span class="delete">prov:type="ex:Programmer" </span><a><span class="insert">namespace declaration</span></a><span class="insert">.</span></p>
+<pre class="codeexample"><span class="insert">
+ "ex:value" </span>%% <span class="delete">xsd:QName</span><span class="insert">prov:QUALIFIED_NAME</span>
+</pre>
+<span class="delete">to indicate that ex:Programmer should</span><span class="insert">Alternatively, the same value can</span> be <span class="delete">interpreted as qualified name (QName).
Instead, we could have a notation such as
-</span><span class="delete">prov:type='ex:Programmer'
-</span>
-
-
-
+</span><span class="delete">prov:type='ex:Programmer'</span><span class="insert">expressed using the following convenience notation.
+</span><pre class="codeexample"><span class="insert">
+ 'ex:value'</span>
+</pre>
+
+</div>
@@ -3466,28 +3720,29 @@
<div id="expression-types" class="section">
-<h5><span class="secno">3.7.4.1 </span>Reserved Type Values</h5>
+<h5><span class="secno"><span class="delete">3.7.4.1</span><span class="insert">3.7.3.1</span> </span>Reserved Type Values</h5>
<p>The reserved type values in the PROV namespace are the following.</p>
<ol>
<li> <span class="name"><span class="delete">prov:Account</span><span class="insert">prov:Bundle</span></span>
</li><li> <span class="name"><span class="insert">prov:Collection</span></span>
-</li><li> <span class="name"><span class="insert">prov:Dictionary</span></span>
-</li><li> <span class="name"><span class="insert">prov:EmptyDictionary</span></span>
-</li><li> <span class="name"><span class="insert">prov:HadOriginalSource</span></span>
+</li><li> <span class="name"><span class="insert">prov:EmptyCollection</span></span>
</li><li> <span class="name"><span class="insert">prov:Organization</span></span>
</li><li> <span class="name"><span class="insert">prov:Person</span></span>
</li><li> <span class="name"><span class="insert">prov:Plan</span></span>
+</li><li> <span class="name"><span class="insert">prov:PrimarySource</span></span>
+</li><li> <span class="name"><span class="insert">prov:Quotation</span></span>
+</li><li> <span class="name"><span class="insert">prov:Revision</span></span>
</li><li> <span class="name">prov:SoftwareAgent</span>
-</li><li> <span class="name"><span class="delete">prov:Person</span><span class="insert">prov:WasQuotedFrom</span></span>
-</li><li> <span class="name"><span class="delete">prov:Organization</span>
+</li> <span class="delete">prov:Person</span>
+ <span class="delete">prov:Organization</span>
<span class="delete">prov:Plan</span>
<span class="delete">prov:Collection</span>
- <span class="delete">prov:EmptyCollection</span><span class="insert">prov:WasRevisionOf</span></span>
-</li></ol>
-
-<div class="anexample" id="anexample-types" data-count="36"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-types"><span class="insert">Example 36</span></a></div>
+ <span class="delete">prov:EmptyCollection</span>
+</ol>
+
+<div class="anexample" id="anexample-types" data-count="34"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-types"><span class="insert">Example 34</span></a></div>
<p>The <span class="delete">entity</span><span class="insert">agent</span> <span class="name">ag</span> is a person (type: <span class="name">prov:Person</span>), whereas the entity
<span class="name">pl</span> is a plan (type: <span class="name">prov:Plan</span>).</p>
<pre class="codeexample"><span class="delete">agent(ag,[prov:type="prov:Person" %% xsd:QName])
@@ -3500,19 +3755,19 @@
</div>
<div id="expression-Time" class="section">
-<h5><span class="secno">3.7.4.2 </span>Time Values</h5>
-
-<p><dfn id="dfn-time">Time instants</dfn> are defined according to xsd:dateTime [<cite><a class="bibref" rel="biblioentry" href="#bib-XMLSCHEMA-2">XMLSCHEMA-2</a></cite>].</p>
+<h5><span class="secno"><span class="delete">3.7.4.2</span><span class="insert">3.7.3.2</span> </span>Time Values</h5>
+
+<p><dfn id="dfn-time">Time instants</dfn> are defined according to xsd:dateTime [<cite><span class="delete">XMLSCHEMA-2</span><a class="bibref" rel="biblioentry" href="#bib-XMLSCHEMA11-2"><span class="insert">XMLSCHEMA11-2</span></a></cite>].</p>
<table class="grammar">
<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-time" name="prod-time"></a><span class="insert">[</span><span class="prodNo"><span class="insert">49</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">time</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-ISODATETIME"><span class="insert">ISODATETIME</span></a></span></code></td> </tr> </tbody>
-<tbody class="term"> <tr valign="baseline"> <td><a id="prod-DIGIT" name="prod-DIGIT"></a><span class="insert">[</span><span class="prodNo"><span class="insert">60</span></span><span class="insert">] </span></td> <td><span class="insert"><</span><code class="production term"><span class="insert">DIGIT</span></code><span class="insert">></span></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">[0-9]</span></code></td> </tr> </tbody>
-<tbody class="term"> <tr valign="baseline"> <td><a id="prod-ISODATETIME" name="prod-ISODATETIME"></a><span class="insert">[</span><span class="prodNo"><span class="insert">61</span></span><span class="insert">] </span></td> <td><span class="insert"><</span><code class="production term"><span class="insert">ISODATETIME</span></code><span class="insert">></span></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span><span class="insert"> "-" </span><span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span><span class="insert"> "-" </span><span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span><span class="insert"> "T" </span><span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span><span class="insert"> ":" </span><span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span><span class="insert"> ":" </span><span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span><span class="insert"> ( "." </span><span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span><span class="insert"> ( </span><span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span><span class="insert"> (</span><span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span><span class="insert">)? )? )? ( "Z" | </span><span class="prod"><a class="grammarRef" href="#prod-TIMEZONEOFFSET"><span class="insert">TIMEZONEOFFSET</span></a></span><span class="insert"> )?</span></code></td> </tr> </tbody>
-<tbody class="term"> <tr valign="baseline"> <td><a id="prod-TIMEZONEOFFSET" name="prod-TIMEZONEOFFSET"></a><span class="insert">[</span><span class="prodNo"><span class="insert">62</span></span><span class="insert">] </span></td> <td><span class="insert"><</span><code class="production term"><span class="insert">TIMEZONEOFFSET</span></code><span class="insert">></span></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">( "+" | "-" ) </span><span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span><span class="insert"> ":" </span><span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span></code></td> </tr> </tbody>
+<tbody class="term"> <tr valign="baseline"> <td><a id="prod-DIGIT" name="prod-DIGIT"></a><span class="insert">[</span><span class="prodNo"><span class="insert">68</span></span><span class="insert">] </span></td> <td><span class="insert"><</span><code class="production term"><span class="insert">DIGIT</span></code><span class="insert">></span></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">[0-9]</span></code></td> </tr> </tbody>
+<tbody class="term"> <tr valign="baseline"> <td><a id="prod-ISODATETIME" name="prod-ISODATETIME"></a><span class="insert">[</span><span class="prodNo"><span class="insert">69</span></span><span class="insert">] </span></td> <td><span class="insert"><</span><code class="production term"><span class="insert">ISODATETIME</span></code><span class="insert">></span></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span><span class="insert"> "-" </span><span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span><span class="insert"> "-" </span><span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span><span class="insert"> "T" </span><span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span><span class="insert"> ":" </span><span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span><span class="insert"> ":" </span><span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span><span class="insert"> ( "." </span><span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span><span class="insert"> ( </span><span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span><span class="insert"> (</span><span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span><span class="insert">)? )? )? ( "Z" | </span><span class="prod"><a class="grammarRef" href="#prod-TIMEZONEOFFSET"><span class="insert">TIMEZONEOFFSET</span></a></span><span class="insert"> )?</span></code></td> </tr> </tbody>
+<tbody class="term"> <tr valign="baseline"> <td><a id="prod-TIMEZONEOFFSET" name="prod-TIMEZONEOFFSET"></a><span class="insert">[</span><span class="prodNo"><span class="insert">70</span></span><span class="insert">] </span></td> <td><span class="insert"><</span><code class="production term"><span class="insert">TIMEZONEOFFSET</span></code><span class="insert">></span></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">( "+" | "-" ) </span><span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span><span class="insert"> ":" </span><span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT"><span class="insert">DIGIT</span></a></span></code></td> </tr> </tbody>
</table>
-<div class="anexample" id="anexample-time" data-count="37"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-time"><span class="insert">Example 37</span></a></div>
+<div class="anexample" id="anexample-time" data-count="35"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-time"><span class="insert">Example 35</span></a></div>
<p>The third argument in the following usage expression is a time instance, namely 4pm on 2011-11-16.</p>
<pre class="codeexample">used(ex:act2, ar3:0111, 2011-11-16T16:00:00)
@@ -3539,6 +3794,60 @@
+
+
+
+
+
+
+<div id="expression-NamespaceDeclaration" class="section">
+<h4><span class="secno"><span class="insert">3.7.4 </span></span><span class="insert">Namespace Declaration</span></h4>
+
+
+<table class="grammar">
+
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-namespaceDeclarations" name="prod-namespaceDeclarations"></a><span class="insert">[</span><span class="prodNo"><span class="insert">50</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">namespaceDeclarations</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">( </span><span class="prod"><a class="grammarRef" href="#prod-defaultNamespaceDeclaration"><span class="insert">defaultNamespaceDeclaration</span></a></span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-namespaceDeclaration"><span class="insert">namespaceDeclaration</span></a></span><span class="insert"> ) (</span><span class="prod"><a class="grammarRef" href="#prod-namespaceDeclaration"><span class="insert">namespaceDeclaration</span></a></span><span class="insert">)*</span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-namespaceDeclaration" name="prod-namespaceDeclaration"></a><span class="insert">[</span><span class="prodNo"><span class="insert">51</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">namespaceDeclaration</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"prefix" </span><span class="prod"><a class="grammarRef" href="#prod-QUALIFIED_NAME"><span class="insert">QUALIFIED_NAME</span></a></span> <span class="prod"><a class="grammarRef" href="#prod-namespace"><span class="insert">namespace</span></a></span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-namespace" name="prod-namespace"></a><span class="insert">[</span><span class="prodNo"><span class="insert">53</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">namespace</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rIRI_REF"><span class="insert">IRI_REF</span></a></span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-defaultNamespaceDeclaration" name="prod-defaultNamespaceDeclaration"></a><span class="insert">[</span><span class="prodNo"><span class="insert">52</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">defaultNamespaceDeclaration</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"default" </span><span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rIRI_REF"><span class="insert">IRI_REF</span></a></span></code></td> </tr> </tbody>
+
+</table>
+
+<p><span class="insert">A </span><a class="grammarRef" href="#prod-namespaceDeclaration"><span class="insert">namespaceDeclaration</span></a><span class="insert"> consists of a binding between a prefix and a namespace. Every qualified name with this prefix in the scope of this declaration refers to this namespace. The scope of a namespace declaration is the </span><a class="grammarRef" href="#prod-namedBundle"><span class="insert">namedBundle</span></a><span class="insert"> or </span><a class="grammarRef" href="#prod-bundle"><span class="insert">toplevel bundle</span></a><span class="insert"> in which it directly occurs.</span></p>
+
+
+
+
+<p><span class="insert">In PROV-N, the following prefixes are reserved:
+</span></p><ul>
+<li> <span class="name"><span class="insert">prov</span></span><span class="insert"> denotes the PROV namespace with URI </span><span class="name"><span class="insert">http://www.w3.org/ns/prov#</span></span></li>
+<li> <span class="name"><span class="insert">xsd</span></span><span class="insert"> denotes the XML Schema namespace with URI </span><span class="name"><span class="insert">http://www.w3.org/2001/XMLSchema#</span></span><span class="insert">.
+</span></li>
+</ul>
+<p><span class="insert">A PROV-N document </span><em class="rfc2119" title="must not"><span class="insert">must not</span></em><span class="insert"> redeclare prefixes </span><span class="name"><span class="insert">prov</span></span><span class="insert"> and </span><span class="name"><span class="insert">xsd</span></span><span class="insert">.</span></p>
+
+<div class="anexample" id="anexample-namespace" data-count="36"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-namespace"><span class="insert">Example 36</span></a></div>
+<p><span class="insert">The following example declares three namespaces, one default, and two with explicit prefixes </span><span class="name"><span class="insert">ex1</span></span><span class="insert"> and </span><span class="name"><span class="insert">ex2</span></span><span class="insert">.</span></p>
+<pre class="codeexample"><span class="insert">bundle
+ default <http://example.org/0/>
+ prefix ex1 <http://example.org/1/>
+ prefix ex2 <http://example.org/2/>
+...
+endBundle
+</span></pre>
+</div>
+
+
+
+</div>
+
+
+
+
+
+
+
+
</div>
</div>
@@ -3579,7 +3888,7 @@
-<div class="anexample" id="example_38" data-count="38"><div class="anexampleTitle"><a class="internalDFN" href="#example_38"><span class="insert">Example 38</span></a></div>
+<div class="anexample" id="example_37" data-count="37"><div class="anexampleTitle"><a class="internalDFN" href="#example_37"><span class="insert">Example 37</span></a></div>
@@ -3708,8 +4017,81 @@
<div class="note">
<p>
See <a href="http://www.w3.org/2002/06/registering-mediatype">http://www.w3.org/2002/06/registering-mediatype</a> for Register an Internet Media Type for a <acronym title="World Wide Web Consortium">W3C</acronym> Spec.</p>
-</div>
-
+<span class="insert">Following text adapted from </span><a href="http://www.w3.org/TeamSubmission/turtle/#sec-mediaReg"><span class="insert">turtle</span></a><span class="insert">.
+</span></div>
+
+
+
+
+ <dl>
+ <dt><span class="insert">Contact:</span></dt>
+ <dd><span class="insert">Ivan Herman</span></dd>
+ <dt><span class="insert">See also:</span></dt>
+ <dd><a href="http://www.w3.org/2002/06/registering-mediatype"><span class="insert">How to Register a Media Type for a </span><acronym title="World Wide Web Consortium"><span class="insert">W3C</span></acronym><span class="insert"> Specification</span></a></dd>
+ <dd><a href="http://www.w3.org/2001/tag/2002/0129-mime"><span class="insert">Internet Media Type registration, consistency of use</span></a><br><span class="insert">TAG Finding 3 June 2002 (Revised 4 September 2002)</span></dd>
+ </dl>
+ <p><span class="insert">The Internet Media Type / MIME Type for PROV-N is "text/prov-n".</span></p>
+ <p><span class="insert">It is recommended that PROV-N files have the extension ".pn" (all lowercase) on all platforms.</span></p>
+ <p><span class="insert">It is recommended that PROV-N files stored on Macintosh HFS file systems be given a file type of "TEXT".</span></p>
+ <p><span class="insert">This information that follows has been </span><a href="TBD"><span class="insert">submitted to the IESG</span></a><span class="insert"> for review, approval, and registration with IANA.</span></p>
+ <dl>
+ <dt><span class="insert">Type name:</span></dt>
+ <dd><span class="insert">text</span></dd>
+ <dt><span class="insert">Subtype name:</span></dt>
+ <dd><span class="insert">prov-n</span></dd>
+ <dt><span class="insert">Required parameters:</span></dt>
+ <dd><span class="insert">None</span></dd>
+ <dt><span class="insert">Optional parameters:</span></dt>
+ <dd><tt><span class="insert">charset</span></tt><span class="insert"> — this parameter is required when transferring non-ASCII data. If present, the value of </span><tt><span class="insert">charset</span></tt><span class="insert"> is always </span><tt><span class="insert">UTF-8</span></tt><span class="insert">.</span></dd>
+ <dt><span class="insert">Encoding considerations:</span></dt>
+ <dd><span class="insert">The syntax of PROV-N is expressed over code points in Unicode [</span><a href="#UNICODE"><span class="insert">UNICODE</span></a><span class="insert">]. The encoding is always UTF-8 [</span><a href="#rfc3629"><span class="insert">RFC3629</span></a><span class="insert">].</span></dd>
+ <dd><span class="insert">Unicode code points may also be expressed using an \uXXXX (U+0 to U+FFFF) or \UXXXXXXXX syntax (for U+10000 onwards) where X is a hexadecimal digit [0-9A-F]</span></dd>
+ <dt><span class="insert">Security considerations:</span></dt>
+ <dd><span class="insert">PROV-N is a general-purpose language for describing the provenance of things; applications may evaluate given data to infer more descriptions or to dereference URIs, invoking the security considerations of the scheme for that URI. Note in particular, the privacy issues in [</span><cite><a class="bibref" rel="biblioentry" href="#bib-RFC3023"><span class="insert">RFC3023</span></a></cite><span class="insert">] section 10 for HTTP URIs. Data obtained from an inaccurate or malicious data source may lead to inaccurate or misleading conclusions, as well as the dereferencing of unintended URIs. Care must be taken to align the trust in consulted resources with the sensitivity of the intended use of the data; inferences of potential medical treatments would likely require different trust than inferences for trip planning.</span></dd>
+ <dd><span class="insert">PROV-N is used to express arbitrary application data; security considerations will vary by domain of use. Security tools and protocols applicable to text (e.g. PGP encryption, MD5 sum validation, password-protected compression) may also be used on PROV-N documents. Security/privacy protocols must be imposed which reflect the sensitivity of the embedded information.</span></dd>
+ <dd><span class="insert">PROV-N can express data which is presented to the user, for example, label attributes. Application rendering strings retrieved from untrusted PROV-N documents must ensure that malignant strings may not be used to mislead the reader. The security considerations in the media type registration for XML ([</span><cite><a class="bibref" rel="biblioentry" href="#bib-RFC3023"><span class="insert">RFC3023</span></a></cite><span class="insert">] section 10) provide additional guidance around the expression of arbitrary data and markup.</span></dd>
+ <dd><span class="insert">PROV-N uses qualified names mappeable to IRIs as term identifiers. Applications interpreting data expressed in PROV-N should address the security issues of
+ </span><a class="norm" href="http://www.ietf.org/rfc/rfc3987.txt"><span class="insert">Internationalized Resource Identifiers (IRIs)</span></a><span class="insert"> [</span><cite><a class="bibref" rel="biblioentry" href="#bib-RFC3987"><span class="insert">RFC3987</span></a></cite><span class="insert">] Section 8, as well as
+ </span><a class="norm" href="http://www.ietf.org/rfc/rfc3986.txt"><span class="insert">Uniform Resource Identifier (URI): Generic Syntax</span></a><span class="insert"> [</span><cite><a class="bibref" rel="biblioentry" href="#bib-RFC3986"><span class="insert">RFC3986</span></a></cite><span class="insert">] Section 7.</span></dd>
+ <dd><span class="insert">Multiple IRIs may have the same appearance. Characters in different scripts may
+look similar (a Cyrillic "о" may appear similar to a Latin "o"). A character followed
+by combining characters may have the same visual representation as another character
+(LATIN SMALL LETTER E followed by COMBINING ACUTE ACCENT has the same visual representation
+as LATIN SMALL LETTER E WITH ACUTE).
+
+Any person or application that is writing or interpreting data in PROV-N must take care to use the IRI that matches the intended semantics, and avoid IRIs that make look similar.
+Further information about matching of similar characters can be found
+in </span><a class="inform" href="http://www.unicode.org/reports/tr36/"><span class="insert">Unicode Security
+Considerations</span></a><span class="insert"> [</span><cite><a class="bibref" rel="biblioentry" href="#bib-UNISEC"><span class="insert">UNISEC</span></a></cite><span class="insert">] and
+</span><a class="norm" href="http://www.ietf.org/rfc/rfc3987.txt"><span class="insert">Internationalized Resource
+Identifiers (IRIs)</span></a><span class="insert"> [</span><cite><a class="bibref" rel="biblioentry" href="#bib-RFC3987"><span class="insert">RFC3987</span></a></cite><span class="insert">] Section 8.
+</span></dd>
+
+ <dt><span class="insert">Interoperability considerations:</span></dt>
+ <dd><span class="insert">There are no known interoperability issues.</span></dd>
+ <dt><span class="insert">Published specification:</span></dt>
+ <dd><span class="insert">This specification.</span></dd>
+ <dt><span class="insert">Applications which use this media type:</span></dt>
+ <dd><span class="insert">No widely deployed applications are known to use this media type. It may be used by some web services and clients consuming their data.</span></dd>
+ <dt><span class="insert">Additional information:</span></dt>
+ <dt><span class="insert">Magic number(s):</span></dt>
+ <dd><span class="insert">PROV-N documents may have the strings 'bundle' near the beginning of the document.</span></dd>
+ <dt><span class="insert">File extension(s):</span></dt>
+ <dd><span class="insert">".pn"</span></dd>
+ <dt><span class="insert">Base URI:</span></dt>
+ <dd><span class="insert">None</span></dd>
+ <dt><span class="insert">Macintosh file type code(s):</span></dt>
+ <dd><span class="insert">"TEXT"</span></dd>
+ <dt><span class="insert">Person & email address to contact for further information:</span></dt>
+ <dd><span class="insert">Ivan Herman, ivan@w3.org</span></dd>
+ <dt><span class="insert">Intended usage:</span></dt>
+ <dd><span class="insert">COMMON</span></dd>
+ <dt><span class="insert">Restrictions on usage:</span></dt>
+ <dd><span class="insert">None</span></dd>
+ <dt><span class="insert">Author/Change controller:</span></dt>
+ <dd><span class="insert">The PROV-N specification is the product of Luc Moreau and Paolo Missier. A </span><acronym title="World Wide Web Consortium"><span class="insert">W3C</span></acronym><span class="insert"> Working Group may assume maintenance of this document; </span><acronym title="World Wide Web Consortium"><span class="insert">W3C</span></acronym><span class="insert"> reserves change control over this specifications.</span></dd>
+ </dl>
+
</div>
@@ -3725,26 +4107,96 @@
<div class="appendix section" id="acknowledgements">
<h2><span class="secno">A. </span>Acknowledgements</h2>
- <p>
+ <p><span class="delete">
WG membership to be listed here.
- </p>
+ </span><span class="insert">
+
+This document has been produced by the PROV Working Group, and its contents reflect extensive discussion within the Working Group as a whole.
+ </span></p>
+
+
+<p><span class="insert">
+Members of the PROV Working Group at the time of publication of this document were:
+
+Ilkay Altintas (Invited expert),
+Reza B'Far (Oracle Corporation),
+Khalid Belhajjame (University of Manchester),
+James Cheney (University of Edinburgh, School of Informatics),
+Sam Coppens (IBBT),
+David Corsar (University of Aberdeen, Computing Science),
+Stephen Cresswell (The National Archives),
+Tom De Nies (IBBT),
+Helena Deus (DERI Galway at the National University of Ireland, Galway, Ireland),
+Simon Dobson (Invited expert),
+Martin Doerr (Foundation for Research and Technology - Hellas(FORTH)),
+Kai Eckert (Invited expert),
+Jean-Pierre EVAIN (European Broadcasting Union, EBU-UER),
+James Frew (Invited expert),
+Irini Fundulaki (Foundation for Research and Technology - Hellas(FORTH)),
+Daniel Garijo (Universidad Politécnica de Madrid),
+Yolanda Gil (Invited expert),
+Ryan Golden (Oracle Corporation),
+Paul Groth (Vrije Universiteit),
+Olaf Hartig (Invited expert),
+David Hau (National Cancer Institute, NCI),
+Sandro Hawke (</span><acronym title="World Wide Web Consortium"><span class="insert">W3C</span></acronym><span class="insert">/</span><acronym title="Massachusetts Institute of Technology"><span class="insert">MIT</span></acronym><span class="insert">),
+Jörn Hees (German Research Center for Artificial Intelligence (DFKI) Gmbh),
+Ivan Herman, (</span><acronym title="World Wide Web Consortium"><span class="insert">W3C</span></acronym><span class="insert">/</span><acronym title="European Research Consortium for Informatics and Mathematics"><span class="insert">ERCIM</span></acronym><span class="insert">),
+Ralph Hodgson (TopQuadrant),
+Hook Hua (Invited expert),
+Trung Dong Huynh (University of Southampton),
+Graham Klyne (University of Oxford),
+Michael Lang (Revelytix, Inc.),
+Timothy Lebo (Rensselaer Polytechnic Institute),
+James McCusker (Rensselaer Polytechnic Institute),
+Deborah McGuinness (Rensselaer Polytechnic Institute),
+Simon Miles (Invited expert),
+Paolo Missier (School of Computing Science, Newcastle university),
+Luc Moreau (University of Southampton),
+James Myers (Rensselaer Polytechnic Institute),
+Vinh Nguyen (Wright State University),
+Edoardo Pignotti (University of Aberdeen, Computing Science),
+Paulo da Silva Pinheiro (Rensselaer Polytechnic Institute),
+Carl Reed (Open Geospatial Consortium),
+Adam Retter (Invited Expert),
+Christine Runnegar (Invited expert),
+Satya Sahoo (Invited expert),
+David Schaengold (Revelytix, Inc.),
+Daniel Schutzer (FSTC, Financial Services Technology Consortium),
+Yogesh Simmhan (Invited expert),
+Stian Soiland-Reyes (University of Manchester),
+Eric Stephan (Pacific Northwest National Laboratory),
+Linda Stewart (The National Archives),
+Ed Summers (Library of Congress),
+Maria Theodoridou (Foundation for Research and Technology - Hellas(FORTH)),
+Ted Thibodeau (OpenLink Software Inc.),
+Curt Tilmes (National Aeronautics and Space Administration),
+Craig Trim (IBM Corporation),
+Stephan Zednik (Rensselaer Polytechnic Institute),
+Jun Zhao (University of Oxford),
+Yuting Zhao (University of Aberdeen, Computing Science).
+</span></p>
+
</div>
<div id="references" class="appendix section"><h2><span class="secno">B. </span>References</h2><div id="normative-references" class="section"><h3><span class="secno">B.1 </span>Normative references</h3><dl class="bibliography"><dt id="bib-IRI">[IRI]</dt><dd>M. Duerst, M. Suignard. <a href="http://www.ietf.org/rfc/rfc3987.txt"><cite>Internationalized Resource Identifiers (IRI).</cite></a> January 2005. Internet RFC 3987. URL: <a href="http://www.ietf.org/rfc/rfc3986.txt">http://www.ietf.org/rfc/rfc3987.txt</a>
-</dd><dt id="bib-RDF-CONCEPTS">[RDF-CONCEPTS]</dt><dd>Graham Klyne; Jeremy J. Carroll. <a href="http://www.w3.org/TR/2004/REC-rdf-concepts-20040210"><cite>Resource Description Framework (RDF): Concepts and Abstract Syntax.</cite></a> 10 February 2004. W3C Recommendation. URL: <a href="http://www.w3.org/TR/2004/REC-rdf-concepts-20040210">http://www.w3.org/TR/2004/REC-rdf-concepts-20040210</a>
-</dd><span class="delete">[RDFA-CORE]</span><dt id="bib-RDF-SPARQL-QUERY"><span class="insert">[RDF-SPARQL-QUERY]</span></dt><dd><span class="delete">Shane McCarron; et al. </span><span class="insert">Andy Seaborne; Eric Prud'hommeaux. </span><a href="http://www.w3.org/TR/2008/REC-rdf-sparql-query-20080115"><cite><span class="delete">RDFa Core 1.1: Syntax and processing rules</span><span class="insert">SPARQL Query Language</span> for <span class="delete">embedding RDF through attributes.</span><span class="insert">RDF.</span></cite></a> <span class="delete">13 March 2012.</span><span class="insert">15 January 2008.</span> W3C <span class="delete">Candidate </span>Recommendation. URL: <span class="delete">http://www.w3.org/TR/2012/CR-rdfa-core-20120313/</span><a href="http://www.w3.org/TR/2008/REC-rdf-sparql-query-20080115"><span class="insert">http://www.w3.org/TR/2008/REC-rdf-sparql-query-20080115</span></a>
-</dd><dt id="bib-RFC2119">[RFC2119]</dt><dd>S. Bradner. <a href="http://www.ietf.org/rfc/rfc2119.txt"><cite>Key words for use in RFCs to Indicate Requirement Levels.</cite></a> March 1997. Internet RFC 2119. URL: <a href="http://www.ietf.org/rfc/rfc2119.txt">http://www.ietf.org/rfc/rfc2119.txt
-<span class="delete">[RFC3987]</span><span class="delete">M. Dürst; M. Suignard. </span><span class="delete">Internationalized Resource Identifiers (IRIs).</span><span class="delete"> January 2005. Internet RFC 3987. URL: </span><span class="delete">http://www.ietf.org/rfc/rfc3987.txt</span></a>
+</dd><span class="delete">[RDF-CONCEPTS]</span><dt id="bib-RDF-SPARQL-QUERY"><span class="insert">[RDF-SPARQL-QUERY]</span></dt><dd><span class="delete">Graham Klyne; Jeremy J. Carroll. </span><span class="insert">Andy Seaborne; Eric Prud'hommeaux. </span><a href="http://www.w3.org/TR/2008/REC-rdf-sparql-query-20080115"><cite><span class="delete">Resource Description Framework (RDF): Concepts and Abstract Syntax.</span><span class="insert">SPARQL Query Language for RDF.</span></cite></a> <span class="delete">10 February 2004.</span><span class="insert">15 January 2008.</span> W3C Recommendation. URL: <span class="delete">http://www.w3.org/TR/2004/REC-rdf-concepts-20040210</span>
+<span class="delete">[RDFA-CORE]</span><span class="delete">Shane McCarron; et al. </span><span class="delete">RDFa Core 1.1: Syntax and processing rules for embedding RDF through attributes.</span><span class="delete"> 13 March 2012. W3C Candidate Recommendation. URL: </span><span class="delete">http://www.w3.org/TR/2012/CR-rdfa-core-20120313/</span><a href="http://www.w3.org/TR/2008/REC-rdf-sparql-query-20080115"><span class="insert">http://www.w3.org/TR/2008/REC-rdf-sparql-query-20080115</span></a>
+</dd><dt id="bib-RFC2119">[RFC2119]</dt><dd>S. Bradner. <a href="http://www.ietf.org/rfc/rfc2119.txt"><cite>Key words for use in RFCs to Indicate Requirement Levels.</cite></a> March 1997. Internet RFC 2119. URL: <a href="http://www.ietf.org/rfc/rfc2119.txt">http://www.ietf.org/rfc/rfc2119.txt</a>
+</dd><dt id="bib-RFC3023"><span class="insert">[RFC3023]</span></dt><dd><span class="insert">M. Murata; S. St.Laurent; D. Kohn. </span><a href="http://www.ietf.org/rfc/rfc3023.txt"><cite><span class="insert">XML Media Types</span></cite></a><span class="insert"> January 2001. Internet RFC 3023. URL: </span><a href="http://www.ietf.org/rfc/rfc3023.txt"><span class="insert">http://www.ietf.org/rfc/rfc3023.txt</span></a>
+</dd><dt id="bib-RFC3986"><span class="insert">[RFC3986]</span></dt><dd><span class="insert">T. Berners-Lee; R. Fielding; L. Masinter. </span><a href="http://www.ietf.org/rfc/rfc3986.txt"><cite><span class="insert">Uniform Resource Identifier (URI): Generic Syntax.</span></cite></a><span class="insert"> January 2005. Internet RFC 3986. URL: </span><a href="http://www.ietf.org/rfc/rfc3986.txt"><span class="insert">http://www.ietf.org/rfc/rfc3986.txt</span></a>
+</dd><dt id="bib-RFC3987">[RFC3987]</dt><dd>M. Dürst; M. Suignard. <a href="http://www.ietf.org/rfc/rfc3987.txt"><cite>Internationalized Resource Identifiers (IRIs).</cite></a> January 2005. Internet RFC 3987. URL: <a href="http://www.ietf.org/rfc/rfc3987.txt">http://www.ietf.org/rfc/rfc3987.txt</a>
</dd><dt id="bib-URI">[URI]</dt><dd>T. Berners-Lee; R. Fielding; L. Masinter. <a href="http://www.ietf.org/rfc/rfc3986.txt"><cite>Uniform Resource Identifiers (URI): generic syntax.</cite></a> January 2005. Internet RFC 3986. URL: <a href="http://www.ietf.org/rfc/rfc3986.txt">http://www.ietf.org/rfc/rfc3986.txt</a>
</dd><dt id="bib-XML-NAMES">[XML-NAMES]</dt><dd>Richard Tobin; et al. <a href="http://www.w3.org/TR/2009/REC-xml-names-20091208/"><cite>Namespaces in XML 1.0 (Third Edition).</cite></a> 8 December 2009. W3C Recommendation. URL: <a href="http://www.w3.org/TR/2009/REC-xml-names-20091208/">http://www.w3.org/TR/2009/REC-xml-names-20091208/</a>
-</dd><dt id="bib-XMLSCHEMA-2">[XMLSCHEMA-2]</dt><dd>Paul V. Biron; Ashok Malhotra. <a href="http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/"><cite>XML Schema Part 2: Datatypes Second Edition.</cite></a> 28 October 2004. W3C Recommendation. URL: <a href="http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/">http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/</a>
+</dd><span class="delete">[XMLSCHEMA-2]</span><dt id="bib-XMLSCHEMA11-2"><span class="insert">[XMLSCHEMA11-2]</span></dt><dd><span class="delete">Paul V. Biron; Ashok Malhotra. </span><span class="insert">Henry S. Thompson; et al. </span><a href="http://www.w3.org/TR/2012/REC-xmlschema11-2-20120405/"><cite><span class="insert">W3C </span>XML Schema <span class="insert">Definition Language (XSD) 1.1 </span>Part 2: <span class="delete">Datatypes Second Edition.</span><span class="insert">Datatypes.</span></cite></a> <span class="delete">28 October 2004.</span><span class="insert">5 April 2012.</span> W3C <span class="delete">Recommendation.</span><span class="insert">Recommendation</span> URL: <span class="delete">http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/</span><a href="http://www.w3.org/TR/2012/REC-xmlschema11-2-20120405/"><span class="insert">http://www.w3.org/TR/2012/REC-xmlschema11-2-20120405/</span></a>
</dd></dl></div><div id="informative-references" class="section"><h3><span class="secno">B.2 </span>Informative references</h3><dl class="bibliography"><dt id="bib-PROV-AQ">[PROV-AQ]</dt><dd>Graham Klyne and Paul Groth (eds.) Luc Moreau, Olaf Hartig, Yogesh Simmhan, James Meyers, Timothy Lebo, Khalid Belhajjame, and Simon Miles <a href="http://www.w3.org/TR/prov-aq/"><cite>Provenance Access and Query</cite></a>. 2011, Working Draft. URL: <a href="http://www.w3.org/TR/prov-aq/">http://www.w3.org/TR/prov-aq/</a>
</dd><dt id="bib-PROV-CONSTRAINTS">[PROV-CONSTRAINTS]</dt><dd>James Cheney, Paolo Missier, and Luc Moreau (eds.)<a href="http://www.w3.org/TR/prov-constraints/"><cite>Constraints of the Prov Data Model</cite></a>. 2012, Working Draft. URL: <a href="http://www.w3.org/TR/prov-constraints/">http://www.w3.org/TR/prov-constraints/</a>
</dd><dt id="bib-PROV-DM">[PROV-DM]</dt><dd>Luc Moreau and Paolo Missier (eds.) Khalid Belhajjame, Reza B'Far, Stephen Cresswell, Yolanda Gil, Paul Groth, Graham Klyne, Jim McCusker, Simon Miles, James Myers, Satya Sahoo, and Curt Tilmes<a href="http://www.w3.org/TR/prov-dm/"><cite>PROV-DM: The PROV Data Model</cite></a>. 2012, Working Draft. URL: <a href="http://www.w3.org/TR/prov-dm/">http://www.w3.org/TR/prov-dm/</a>
</dd><dt id="bib-PROV-RDF">[PROV-RDF]</dt><dd>James Cheney<a href="http://www.w3.org/2011/prov/wiki/ProvRDF"><cite>PROV-RDF Mapping </cite></a>2012, Working in Progress. URL: <a href="http://www.w3.org/2011/prov/wiki/ProvRDF">http://www.w3.org/2011/prov/wiki/ProvRDF</a>
</dd><dt id="bib-PROV-SEM">[PROV-SEM]</dt><dd>James Cheney <a href="http://www.w3.org/2011/prov/wiki/FormalSemanticsStrawman"><cite>Formal Semantics Strawman</cite></a>. 2011, Work in progress. URL: <a href="http://www.w3.org/2011/prov/wiki/FormalSemanticsStrawman">http://www.w3.org/2011/prov/wiki/FormalSemanticsStrawman</a>
</dd><dt id="bib-PROV-XML">[PROV-XML]</dt><dd>James Cheney<a href="http://www.w3.org/2011/prov/wiki/ProvXML"><cite>PROV-XML Mapping </cite></a>2012, Working in Progress. URL: <a href="http://www.w3.org/2011/prov/wiki/ProvXML">http://www.w3.org/2011/prov/wiki/ProvXML</a>
-</dd></dl></div></div></body></html>
-
+</dd><dt id="bib-UNISEC"><span class="insert">[UNISEC]</span></dt><dd><span class="insert"> Mark Davis and Michel Suignard. </span><a href="http://www.unicode.org/reports/tr36/"><cite><span class="insert">Unicode Security Considerations</span><cite></cite></cite></a><span class="insert">. 4 August 2010. URL: </span><a href="http://www.unicode.org/reports/tr36/" http:="" www.unicode.org="" reports="" tr36="" <="" a="">
+</a></dd></dl></div></div></body></html>
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/model/releases/ED-prov-n-20120629/prov-n.html Fri Jun 29 12:46:18 2012 +0100
@@ -0,0 +1,3356 @@
+<!DOCTYPE html PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN' 'http://www.w3.org/TR/html4/loose.dtd'>
+<html lang="en" dir="ltr">
+<head>
+ <title>PROV-N: The Provenance Notation</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+ <!--
+ === NOTA BENE ===
+ For the three scripts below, if your spec resides on dev.w3 you can check them
+ out in the same tree and use relative links so that they'll work offline,
+ -->
+<!-- PM -->
+ <style type="text/css">
+ .note { font-size:small; margin-left:50px }
+table.thinborder {
+ border-width: 1px;
+ border-spacing: 0px;
+ border-style: none;
+ border-color: gray;
+ border-collapse: collapse;
+}
+table.thinborder th {
+ border-width: 1px;
+ padding: 0px;
+ border-style: solid;
+ border-color: gray;
+ -moz-border-radius: ;
+}
+table.thinborder td {
+ border-width: 1px;
+ padding: 2px;
+ border-style: solid;
+ border-color: gray;
+ -moz-border-radius: ;
+}
+</style>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <style type="text/css">
+/*****************************************************************
+ * ReSpec CSS
+ * Robin Berjon (robin at berjon dot com)
+ * v0.05 - 2009-07-31
+ *****************************************************************/
+
+
+/* --- INLINES --- */
+em.rfc2119 {
+ text-transform: lowercase;
+ font-variant: small-caps;
+ font-style: normal;
+ color: #900;
+}
+
+h1 acronym, h2 acronym, h3 acronym, h4 acronym, h5 acronym, h6 acronym, a acronym,
+h1 abbr, h2 abbr, h3 abbr, h4 abbr, h5 abbr, h6 abbr, a abbr {
+ border: none;
+}
+
+dfn {
+ font-weight: bold;
+}
+
+a.internalDFN {
+ color: inherit;
+ border-bottom: 1px solid #99c;
+ text-decoration: none;
+}
+
+a.externalDFN {
+ color: inherit;
+ border-bottom: 1px dotted #ccc;
+ text-decoration: none;
+}
+
+a.bibref {
+ text-decoration: none;
+}
+
+code {
+ color: #ff4500;
+}
+
+
+/* --- WEB IDL --- */
+pre.idl {
+ border-top: 1px solid #90b8de;
+ border-bottom: 1px solid #90b8de;
+ padding: 1em;
+ line-height: 120%;
+}
+
+pre.idl::before {
+ content: "WebIDL";
+ display: block;
+ width: 150px;
+ background: #90b8de;
+ color: #fff;
+ font-family: initial;
+ padding: 3px;
+ font-weight: bold;
+ margin: -1em 0 1em -1em;
+}
+
+.idlType {
+ color: #ff4500;
+ font-weight: bold;
+ text-decoration: none;
+}
+
+/*.idlModule*/
+/*.idlModuleID*/
+/*.idlInterface*/
+.idlInterfaceID, .idlDictionaryID {
+ font-weight: bold;
+ color: #005a9c;
+}
+
+.idlSuperclass {
+ font-style: italic;
+ color: #005a9c;
+}
+
+/*.idlAttribute*/
+.idlAttrType, .idlFieldType, .idlMemberType {
+ color: #005a9c;
+}
+.idlAttrName, .idlFieldName, .idlMemberName {
+ color: #ff4500;
+}
+.idlAttrName a, .idlFieldName a, .idlMemberName a {
+ color: #ff4500;
+ border-bottom: 1px dotted #ff4500;
+ text-decoration: none;
+}
+
+/*.idlMethod*/
+.idlMethType {
+ color: #005a9c;
+}
+.idlMethName {
+ color: #ff4500;
+}
+.idlMethName a {
+ color: #ff4500;
+ border-bottom: 1px dotted #ff4500;
+ text-decoration: none;
+}
+
+/*.idlParam*/
+.idlParamType {
+ color: #005a9c;
+}
+.idlParamName {
+ font-style: italic;
+}
+
+.extAttr {
+ color: #666;
+}
+
+/*.idlConst*/
+.idlConstType {
+ color: #005a9c;
+}
+.idlConstName {
+ color: #ff4500;
+}
+.idlConstName a {
+ color: #ff4500;
+ border-bottom: 1px dotted #ff4500;
+ text-decoration: none;
+}
+
+/*.idlException*/
+.idlExceptionID {
+ font-weight: bold;
+ color: #c00;
+}
+
+.idlTypedefID, .idlTypedefType {
+ color: #005a9c;
+}
+
+.idlRaises, .idlRaises a.idlType, .idlRaises a.idlType code, .excName a, .excName a code {
+ color: #c00;
+ font-weight: normal;
+}
+
+.excName a {
+ font-family: monospace;
+}
+
+.idlRaises a.idlType, .excName a.idlType {
+ border-bottom: 1px dotted #c00;
+}
+
+.excGetSetTrue, .excGetSetFalse, .prmNullTrue, .prmNullFalse, .prmOptTrue, .prmOptFalse {
+ width: 45px;
+ text-align: center;
+}
+.excGetSetTrue, .prmNullTrue, .prmOptTrue { color: #0c0; }
+.excGetSetFalse, .prmNullFalse, .prmOptFalse { color: #c00; }
+
+.idlImplements a {
+ font-weight: bold;
+}
+
+dl.attributes, dl.methods, dl.constants, dl.fields, dl.dictionary-members {
+ margin-left: 2em;
+}
+
+.attributes dt, .methods dt, .constants dt, .fields dt, .dictionary-members dt {
+ font-weight: normal;
+}
+
+.attributes dt code, .methods dt code, .constants dt code, .fields dt code, .dictionary-members dt code {
+ font-weight: bold;
+ color: #000;
+ font-family: monospace;
+}
+
+.attributes dt code, .fields dt code, .dictionary-members dt code {
+ background: #ffffd2;
+}
+
+.attributes dt .idlAttrType code, .fields dt .idlFieldType code, .dictionary-members dt .idlMemberType code {
+ color: #005a9c;
+ background: transparent;
+ font-family: inherit;
+ font-weight: normal;
+ font-style: italic;
+}
+
+.methods dt code {
+ background: #d9e6f8;
+}
+
+.constants dt code {
+ background: #ddffd2;
+}
+
+.attributes dd, .methods dd, .constants dd, .fields dd, .dictionary-members dd {
+ margin-bottom: 1em;
+}
+
+table.parameters, table.exceptions {
+ border-spacing: 0;
+ border-collapse: collapse;
+ margin: 0.5em 0;
+ width: 100%;
+}
+table.parameters { border-bottom: 1px solid #90b8de; }
+table.exceptions { border-bottom: 1px solid #deb890; }
+
+.parameters th, .exceptions th {
+ color: #fff;
+ padding: 3px 5px;
+ text-align: left;
+ font-family: initial;
+ font-weight: normal;
+ text-shadow: #666 1px 1px 0;
+}
+.parameters th { background: #90b8de; }
+.exceptions th { background: #deb890; }
+
+.parameters td, .exceptions td {
+ padding: 3px 10px;
+ border-top: 1px solid #ddd;
+ vertical-align: top;
+}
+
+.parameters tr:first-child td, .exceptions tr:first-child td {
+ border-top: none;
+}
+
+.parameters td.prmName, .exceptions td.excName, .exceptions td.excCodeName {
+ width: 100px;
+}
+
+.parameters td.prmType {
+ width: 120px;
+}
+
+table.exceptions table {
+ border-spacing: 0;
+ border-collapse: collapse;
+ width: 100%;
+}
+
+/* --- TOC --- */
+.toc a {
+ text-decoration: none;
+}
+
+a .secno {
+ color: #000;
+}
+
+/* --- TABLE --- */
+table.simple {
+ border-spacing: 0;
+ border-collapse: collapse;
+ border-bottom: 3px solid #005a9c;
+}
+
+.simple th {
+ background: #005a9c;
+ color: #fff;
+ padding: 3px 5px;
+ text-align: left;
+}
+
+.simple th[scope="row"] {
+ background: inherit;
+ color: inherit;
+ border-top: 1px solid #ddd;
+}
+
+.simple td {
+ padding: 3px 10px;
+ border-top: 1px solid #ddd;
+}
+
+.simple tr:nth-child(even) {
+ background: #f0f6ff;
+}
+
+/* --- DL --- */
+.section dd > p:first-child {
+ margin-top: 0;
+}
+
+.section dd > p:last-child {
+ margin-bottom: 0;
+}
+
+.section dd {
+ margin-bottom: 1em;
+}
+
+.section dl.attrs dd, .section dl.eldef dd {
+ margin-bottom: 0;
+}
+
+/* --- EXAMPLES --- */
+pre.example {
+ border-top: 1px solid #ff4500;
+ border-bottom: 1px solid #ff4500;
+ padding: 1em;
+ margin-top: 1em;
+}
+
+pre.example::before {
+ content: "Example";
+ display: block;
+ width: 150px;
+ background: #ff4500;
+ color: #fff;
+ font-family: initial;
+ padding: 3px;
+ font-weight: bold;
+ margin: -1em 0 1em -1em;
+}
+
+/* --- EDITORIAL NOTES --- */
+.issue {
+ padding: 1em;
+ margin: 1em 0em 0em;
+ border: 1px solid #f00;
+ background: #ffc;
+}
+
+.issue::before {
+ content: "Issue";
+ display: block;
+ width: 150px;
+ margin: -1.5em 0 0.5em 0;
+ font-weight: bold;
+ border: 1px solid #f00;
+ background: #fff;
+ padding: 3px 1em;
+}
+
+.note {
+ margin: 1em 0em 0em;
+ padding: 1em;
+ border: 2px solid #cff6d9;
+ background: #e2fff0;
+}
+
+.note::before {
+ content: "Note";
+ display: block;
+ width: 150px;
+ margin: -1.5em 0 0.5em 0;
+ font-weight: bold;
+ border: 1px solid #cff6d9;
+ background: #fff;
+ padding: 3px 1em;
+}
+
+/* --- Best Practices --- */
+div.practice {
+ border: solid #bebebe 1px;
+ margin: 2em 1em 1em 2em;
+}
+
+span.practicelab {
+ margin: 1.5em 0.5em 1em 1em;
+ font-weight: bold;
+ font-style: italic;
+}
+
+span.practicelab { background: #dfffff; }
+
+span.practicelab {
+ position: relative;
+ padding: 0 0.5em;
+ top: -1.5em;
+}
+
+p.practicedesc {
+ margin: 1.5em 0.5em 1em 1em;
+}
+
+@media screen {
+ p.practicedesc {
+ position: relative;
+ top: -2em;
+ padding: 0;
+ margin: 1.5em 0.5em -1em 1em;
+ }
+}
+
+/* --- SYNTAX HIGHLIGHTING --- */
+pre.sh_sourceCode {
+ background-color: white;
+ color: black;
+ font-style: normal;
+ font-weight: normal;
+}
+
+pre.sh_sourceCode .sh_keyword { color: #005a9c; font-weight: bold; } /* language keywords */
+pre.sh_sourceCode .sh_type { color: #666; } /* basic types */
+pre.sh_sourceCode .sh_usertype { color: teal; } /* user defined types */
+pre.sh_sourceCode .sh_string { color: red; font-family: monospace; } /* strings and chars */
+pre.sh_sourceCode .sh_regexp { color: orange; font-family: monospace; } /* regular expressions */
+pre.sh_sourceCode .sh_specialchar { color: #ffc0cb; font-family: monospace; } /* e.g., \n, \t, \\ */
+pre.sh_sourceCode .sh_comment { color: #A52A2A; font-style: italic; } /* comments */
+pre.sh_sourceCode .sh_number { color: purple; } /* literal numbers */
+pre.sh_sourceCode .sh_preproc { color: #00008B; font-weight: bold; } /* e.g., #include, import */
+pre.sh_sourceCode .sh_symbol { color: blue; } /* e.g., *, + */
+pre.sh_sourceCode .sh_function { color: black; font-weight: bold; } /* function calls and declarations */
+pre.sh_sourceCode .sh_cbracket { color: red; } /* block brackets (e.g., {, }) */
+pre.sh_sourceCode .sh_todo { font-weight: bold; background-color: #00FFFF; } /* TODO and FIXME */
+
+/* Predefined variables and functions (for instance glsl) */
+pre.sh_sourceCode .sh_predef_var { color: #00008B; }
+pre.sh_sourceCode .sh_predef_func { color: #00008B; font-weight: bold; }
+
+/* for OOP */
+pre.sh_sourceCode .sh_classname { color: teal; }
+
+/* line numbers (not yet implemented) */
+pre.sh_sourceCode .sh_linenum { display: none; }
+
+/* Internet related */
+pre.sh_sourceCode .sh_url { color: blue; text-decoration: underline; font-family: monospace; }
+
+/* for ChangeLog and Log files */
+pre.sh_sourceCode .sh_date { color: blue; font-weight: bold; }
+pre.sh_sourceCode .sh_time, pre.sh_sourceCode .sh_file { color: #00008B; font-weight: bold; }
+pre.sh_sourceCode .sh_ip, pre.sh_sourceCode .sh_name { color: #006400; }
+
+/* for Prolog, Perl... */
+pre.sh_sourceCode .sh_variable { color: #006400; }
+
+/* for LaTeX */
+pre.sh_sourceCode .sh_italics { color: #006400; font-style: italic; }
+pre.sh_sourceCode .sh_bold { color: #006400; font-weight: bold; }
+pre.sh_sourceCode .sh_underline { color: #006400; text-decoration: underline; }
+pre.sh_sourceCode .sh_fixed { color: green; font-family: monospace; }
+pre.sh_sourceCode .sh_argument { color: #006400; }
+pre.sh_sourceCode .sh_optionalargument { color: purple; }
+pre.sh_sourceCode .sh_math { color: orange; }
+pre.sh_sourceCode .sh_bibtex { color: blue; }
+
+/* for diffs */
+pre.sh_sourceCode .sh_oldfile { color: orange; }
+pre.sh_sourceCode .sh_newfile { color: #006400; }
+pre.sh_sourceCode .sh_difflines { color: blue; }
+
+/* for css */
+pre.sh_sourceCode .sh_selector { color: purple; }
+pre.sh_sourceCode .sh_property { color: blue; }
+pre.sh_sourceCode .sh_value { color: #006400; font-style: italic; }
+
+/* other */
+pre.sh_sourceCode .sh_section { color: black; font-weight: bold; }
+pre.sh_sourceCode .sh_paren { color: red; }
+pre.sh_sourceCode .sh_attribute { color: #006400; }
+
+</style><style type="text/css">
+/* --- EDITORIAL NOTES --- */
+.pending {
+ padding: 1em;
+ margin: 1em 0em 0em;
+ border: 1px solid #f00;
+ background: #BFEFFF;
+}
+
+.pending::before {
+ content: "Pending Review";
+ display: block;
+ width: 150px;
+ margin: -1.5em 0 0.5em 0;
+ font-weight: bold;
+ border: 1px solid #f00;
+ background: #fff;
+ padding: 3px 1em;
+}
+
+
+.resolved {
+ padding: 1em;
+ margin: 1em 0em 0em;
+ border: 1px solid #f00;
+ background: #9BCD9B;
+}
+
+.resolved::before {
+ content: "Resolved";
+ display: block;
+ width: 150px;
+ margin: -1.5em 0 0.5em 0;
+ font-weight: bold;
+ border: 1px solid #f00;
+ background: #fff;
+ padding: 3px 1em;
+}
+
+
+.inference {
+ padding: 1em;
+ margin: 1em 0em 0em;
+ border: 1px solid #f00;
+ background: #fff;
+}
+
+/* .inference[id]::before { */
+/* content: "Inference: " attr(id); */
+/* width: 380px; /\* How can we compute the length of "Constraint: " attr(id) *\/ */
+/* } */
+
+
+/* .inference::before { */
+/* content: "Inference"; */
+/* display: block; */
+/* width: 150px; */
+/* margin: -1.5em 0 0.5em 0; */
+/* font-weight: bold; */
+/* border: 1px solid #f00; */
+/* background: #fff; */
+/* padding: 3px 1em; */
+/* } */
+
+.syntax {
+ padding: 1em;
+ margin: 1em 0em 0em;
+ border: 1px solid #f00;
+ background: #fff;
+}
+
+.syntax[id]::before {
+ content: "Syntax: " attr(id);
+ width: 380px; /* How can we compute the length of "Constraint: " attr(id) */
+}
+
+
+.syntax::before {
+ content: "Syntax";
+ display: block;
+ width: 150px;
+ margin: -1.5em 0 0.5em 0;
+ font-weight: bold;
+ border: 1px solid #f00;
+ background: #fff;
+ padding: 3px 1em;
+}
+
+.unamedconstraint {
+ padding: 1em;
+ margin: 1em 0em 0em;
+ border: 1px solid #00f;
+ background: #fff;
+}
+
+
+.unamedconstraint::before {
+ content: "Constraint";
+ display: block;
+ width: 150px;
+ margin: -1.5em 0 0.5em 0;
+ font-weight: bold;
+ border: 1px solid #00f;
+ background: #fff;
+ padding: 3px 1em;
+}
+
+
+
+.constraint {
+ padding: 1em;
+ margin: 1em 0em 0em;
+ border: 1px solid #00f;
+ background: #fff;
+}
+
+/* .constraint[id]::before { */
+/* content: "Constraint: " attr(id); */
+/* width: 380px; /\* How can we compute the length of "Constraint: " attr(id) *\/ */
+/* } */
+
+
+/* .constraint::before { */
+/* content: "Constraint"; */
+/* display: block; */
+/* width: 150px; */
+/* margin: -1.5em 0 0.5em 0; */
+/* font-weight: bold; */
+/* border: 1px solid #00f; */
+/* background: #fff; */
+/* padding: 3px 1em; */
+/* } */
+
+
+
+.interpretation {
+ padding: 1em;
+ margin: 1em 0em 0em;
+ border: 1px solid #00f;
+ background: #fff;
+}
+
+.interpretation[id]::before {
+ content: "Interpretation: " attr(id);
+ width: 380px; /* How can we compute the length of "Interpretation: " attr(id) */
+}
+
+
+.interpretation::before {
+ content: "Interpretation";
+ display: block;
+ width: 150px;
+ margin: -1.5em 0 0.5em 0;
+ font-weight: bold;
+ border: 1px solid #00f;
+ background: #fff;
+ padding: 3px 1em;
+}
+
+.definition {
+ padding: 1em;
+ margin: 1em 0em 0em;
+ border: 1px solid #777;
+ background: #fff;
+}
+
+/* .definition[id]::before { */
+/* content: "Definition: " attr(id); */
+/* width: 380px; */
+/* } */
+
+
+/* .definition::before { */
+/* content: "Definition"; */
+/* display: block; */
+/* width: 150px; */
+/* margin: -1.5em 0 0.5em 0; */
+/* font-weight: bold; */
+/* border: 1px solid #000; */
+/* background: #fff; */
+/* padding: 3px 1em; */
+/* } */
+
+
+.deprecatedconstraint {
+ padding: 1em;
+ margin: 1em 0em 0em;
+ border: 1px solid #00f;
+ background: #fff;
+}
+
+.deprecatedconstraint[id]::before {
+ content: "Deprecated: " attr(id);
+ width: 380px; /* How can we compute the length of "Deprecatedconstraint: " attr(id) */
+}
+
+
+.deprecatedconstraint::before {
+ content: "Deprecated";
+ display: block;
+ width: 150px;
+ margin: -1.5em 0 0.5em 0;
+ font-weight: bold;
+ border: 1px solid #00f;
+ background: #fff;
+ padding: 3px 1em;
+}
+
+.glossary-ref {
+ font-style: italic;
+}
+
+.dfn {
+ font-weight: bold;
+}
+
+
+.attribute {
+ font-style: italic;
+}
+
+
+.conditional {
+ color: blue;
+}
+
+.grammar {
+ margin-top: 1ex;
+ margin-bottom: 1ex;
+ padding-left: 1ex;
+ padding-right: 1ex;
+ padding-top: 1ex;
+ padding-bottom: 0.6ex;
+ border: 1px dashed #2f6fab;
+ font-size: 80%;
+}
+.nonterminal {
+ font-weight: bold;
+ font-family: sans-serif;
+ font-size: 95%;
+}
+
+.name {
+ font-family: monospace;
+}
+
+
+.xmpl {
+ padding: 1em;
+ margin: 1em 0em 0em;
+ border: 1px solid #f00;
+ background: #fff;
+}
+
+.xmpl::before {
+ content: "Example";
+ display: block;
+ width: 150px;
+ margin: -1.5em 0 0.5em 0;
+ font-weight: bold;
+ border: 1px solid #f00;
+ background: #fff;
+ padding: 3px 1em;
+}
+
+/*
+.anexample[count]::before {
+ content: "Example " attr(count) ;
+ font-family: sans-serif;
+ font-size: 1.6ex;
+ font-weight: bold;
+}
+
+.anexample:before {
+ content: "Example:";
+ font-family: sans-serif;
+ font-size: 1.6ex;
+ font-weight: bold;
+}
+
+*/
+
+.anexample {
+ margin-top: 1ex;
+ margin-bottom: 1ex;
+ padding-left: 1ex;
+ padding-right: 1ex;
+ padding-top: 1ex;
+ padding-bottom: 0.6ex;
+ border: 1px dashed #2f6fab;
+ background-color: #f9f9f9;
+}
+.anexample table {
+ background-color: #f9f9f9;
+}
+
+.conceptexample:before {
+ content: "Example:";
+ font-family: sans-serif;
+ font-size: 1.6ex;
+ font-weight: bold;
+}
+.conceptexample {
+ margin-top: 1ex;
+ margin-bottom: 1ex;
+ padding-left: 1ex;
+ padding-right: 1ex;
+ padding-top: 1ex;
+ padding-bottom: 0.6ex;
+ border: 1px dashed #2f6fab;
+ background-color: #f9f9f9;
+}
+
+.pnExpression {
+ font-weight: normal;
+ font-size:120%;
+ font-family: monospace;
+}
+
+
+div[class="grammar"] span[class="name"]:before {
+ content: "'";
+}
+
+div[class="grammar"] span[class="name"]:after {
+ content: "'";
+}
+
+
+div[class="grammar"] span[class="optional"]:before {
+ font-weight: normal;
+ font-size:130%;
+ font-family: monospace;
+ content: "(";
+}
+
+div[class="grammar"] span[class="optional"]:after {
+ font-weight: normal;
+ font-size:130%;
+ font-family: monospace;
+ content: ")?";
+}
+
+
+div[class="grammar"] span[class="plus"]:before {
+ font-weight: normal;
+ font-size:130%;
+ font-family: monospace;
+ content: "(";
+}
+
+div[class="grammar"] span[class="plus"]:after {
+ font-weight: normal;
+ font-size:130%;
+ font-family: monospace;
+ content: ")+";
+}
+
+
+div[class="grammar"] span[class="star"]:before {
+ font-weight: normal;
+ font-size:130%;
+ font-family: monospace;
+ content: "(";
+}
+
+div[class="grammar"] span[class="star"]:after {
+ font-weight: normal;
+ font-size:130%;
+ font-family: monospace;
+ content: ")*";
+}
+
+div[class="grammar"] span[class="choice"]:before {
+ font-weight: normal;
+ font-size:130%;
+ font-family: monospace;
+ content: "(";
+}
+
+div[class="grammar"] span[class="choice"]:after {
+ font-weight: normal;
+ font-size:130%;
+ font-family: monospace;
+ content: ")";
+}
+
+div[class="grammar"] span[class="group"]:before {
+ font-weight: normal;
+ font-size:130%;
+ font-family: monospace;
+ content: "(";
+}
+
+div[class="grammar"] span[class="group"]:after {
+ font-weight: normal;
+ font-size:130%;
+ font-family: monospace;
+ content: ")";
+}
+
+table {
+ background-color: #f9f9f9;
+}
+
+.component1-color {
+ background-color: rgba(255,42,42,0.2);
+}
+
+.component2-color {
+ background-color: rgba(0,68,170,0.2);
+}
+
+.component3-color {
+ background-color: rgba(0,170,0,0.2);
+}
+.component4-color {
+ background-color: rgba(204,255,0,0.2);
+}
+
+.component5-color {
+ background-color: rgba(11,40,40,0.2);
+}
+
+.component6-color {
+ background-color: rgba(244,105,14,0.2);
+}
+
+.interpretation-forward::before {
+ content: "Interpretation: ";
+ font-weight: bold;
+}
+
+.structural-forward::before {
+ content: "Structural constraint: ";
+ font-weight: bold;
+}
+
+
+code {
+ color: black;
+}
+
+.ruleTitle {
+ font-family: sans-serif;
+ font-size: 1.6ex;
+ font-weight: bold;
+}
+
+</style><link href="http://www.w3.org/StyleSheets/TR/W3C-ED" rel="stylesheet" type="text/css" charset="utf-8"></head>
+ <body style="display: inherit; "><div class="head"><p><a href="http://www.w3.org/"><img width="72" height="48" src="http://www.w3.org/Icons/w3c_home" alt="W3C"></a></p><h1 class="title" id="title">PROV-N: The Provenance Notation</h1><h2 id="subtitle">Final review before Last Call Vote (<a href="diff-n.html">Diffs since last release</a>)</h2><h2 id="w3c-editor-s-draft-29-june-2012"><acronym title="World Wide Web Consortium">W3C</acronym> Editor's Draft 29 June 2012</h2><dl><dt>This version:</dt><dd><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-n.html">http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-n.html</a></dd><dt>Latest published version:</dt><dd><a href="http://www.w3.org/TR/prov-n/">http://www.w3.org/TR/prov-n/</a></dd><dt>Latest editor's draft:</dt><dd><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-n.html">http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-n.html</a></dd><dt>Previous version:</dt><dd><a href="http://www.w3.org/TR/2012/WD-prov-n-20120503/">http://www.w3.org/TR/2012/WD-prov-n-20120503/</a></dd><dt>Editors:</dt><dd><a href="http://www.ecs.soton.ac.uk/~lavm/">Luc Moreau</a>, University of Southampton</dd>
+<dd><a href="http://www.cs.ncl.ac.uk/people/Paolo.Missier">Paolo Missier</a>, Newcastle University</dd>
+</dl><p class="copyright"><a href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> © 2012 <a href="http://www.w3.org/"><acronym title="World Wide Web Consortium">W3C</acronym></a><sup>®</sup> (<a href="http://www.csail.mit.edu/"><acronym title="Massachusetts Institute of Technology">MIT</acronym></a>, <a href="http://www.ercim.eu/"><acronym title="European Research Consortium for Informatics and Mathematics">ERCIM</acronym></a>, <a href="http://www.keio.ac.jp/">Keio</a>), All Rights Reserved. <acronym title="World Wide Web Consortium">W3C</acronym> <a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>, <a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a> and <a href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a> rules apply.</p><hr></div>
+
+ <div id="abstract" class="introductory section"><h2>Abstract</h2>
+
+<p>
+Provenance is information about entities, activities, and people
+involved in producing a piece of data or thing, which can be used
+ to form assessments about its quality, reliability or trustworthiness.
+PROV-DM is the conceptual data model that forms a basis for the <acronym title="World Wide Web Consortium">W3C</acronym>
+provenance (PROV) family of specifications.
+PROV-DM distinguishes core structures, forming the essence of provenance information, from
+extended structures catering for more specific uses of provenance.
+PROV-DM is organized in six components, respectively dealing with:
+(1) entities and activities, and the time at which they were created, used, or ended;
+(2) derivations of entities from entities;
+(3) agents bearing responsibility for entities that were generated and activities that happened;
+(4) a notion of bundle, a mechanism to support provenance of provenance; and,
+(5) properties to link entities that refer to the same thing;
+(6) collections forming a logical structure for its members.
+</p>
+<p>To provide examples of the PROV data model, the PROV notation (PROV-N) is introduced: aimed at human consumption, PROV-N allows serializations of PROV
+instances to be created in a compact manner. PROV-N facilitates the
+mapping of the PROV data model to concrete syntax, and is used as the basis for a
+formal semantics of PROV. The purpose of this document is to define the PROV-N notation.
+</p>
+ </div><div id="sotd" class="introductory section"><h2>Status of This Document</h2><p><em>This section describes the status of this document at the time of its publication. Other documents may supersede this document. A list of current <acronym title="World Wide Web Consortium">W3C</acronym> publications and the latest revision of this technical report can be found in the <a href="http://www.w3.org/TR/"><acronym title="World Wide Web Consortium">W3C</acronym> technical reports index</a> at http://www.w3.org/TR/.</em></p>
+<h4 id="intended-to-be-last-call--tbc">Intended to be Last Call (TBC)</h4>
+<p>This is the fifth public release of the PROV-DM document.
+Publication as Last Call working draft means that
+the Working Group believes that it has satisfied the relevant technical requirements outlined in its charter on this document. The design is not expected to change significantly, going forward, and now is the key time for external review, before the implementation phase.</p>
+
+<p>This specification identifies one <a href="http://www.w3.org/2005/10/Process-20051014/tr#cfi">feature at risk</a>: <a href="#term-mention">Mention</a> might be removed from PROV if implementation experience reveals problems with supporting this construct.</p>
+
+<h4 id="please-comment-by--2012-09-13--tbc">Please Comment By 2012-09-13 (TBC)</h4>
+<p>The PROV Working group seeks public feedback on this Working Draft.
+The end date of the Last Call review period is <b>2012-09-13 (TBC)</b>, and we would appreciate comments by that date to public-prov-comments@w3.org
+</p>
+
+<h4 id="prov-family-of-specifications">PROV Family of Specifications</h4>
+This document is part of the PROV family of specifications, a set of specifications defining various aspects that are necessary to achieve the vision of inter-operable
+interchange of provenance information in heterogeneous environments such as the Web. The specifications are:
+<ul>
+<li> PROV-DM, the PROV data model for provenance;</li>
+<li> PROV-CONSTRAINTS, a set of constraints applying to the PROV data model;</li>
+<li> PROV-N, a notation for provenance aimed at human consumption (this document);</li>
+<li> PROV-O, the PROV ontology, an OWL-RL ontology allowing the mapping of PROV to RDF;</li>
+<li> PROV-AQ, the mechanisms for accessing and querying provenance; </li>
+<li> PROV-PRIMER, a primer for the PROV data model;</li>
+<li> PROV-SEM, a formal semantics for the PROV data model;</li>
+<li> PROV-XML, an XML schema for the PROV data model.</li>
+</ul>
+<h4 id="how-to-read-the-prov-family-of-specifications">How to read the PROV Family of Specifications</h4>
+<ul>
+<li>The primer is the entry point to PROV offering an introduction to the provenance model.</li>
+<li>The Linked Data and Semantic Web community should focus on PROV-O defining PROV classes and properties specified in an OWL-RL ontology. For further details, PROV-DM and PROV-CONSTRAINTS specify the constraints applicable to the data model, and its interpretation. PROV-SEM provides a mathematical semantics.</li>
+<li>The XML community should focus on PROV-XML defining an XML schema for PROV. Further details can also be found in PROV-DM, PROV-CONSTRAINTS, and PROV-SEM.</li>
+<li>Developers seeking to retrieve or publish provenance should focus on PROV-AQ.</li>
+<li>Readers seeking to implement other PROV serializations
+should focus on PROV-DM and PROV-CONSTRAINTS. PROV-O, PROV-N, PROV-XML offer examples of mapping to RDF, text, and XML, respectively.</li>
+</ul>
+<p>This document was published by the <a href="http://www.w3.org/2011/prov/">Provenance Working Group</a> as an Editor's Draft. If you wish to make comments regarding this document, please send them to <a href="mailto:public-prov-comments@w3.org">public-prov-comments@w3.org</a> (<a href="mailto:public-prov-comments-request@w3.org?subject=subscribe">subscribe</a>, <a href="http://lists.w3.org/Archives/Public/public-prov-comments/">archives</a>). All feedback is welcome.</p><p>Publication as an Editor's Draft does not imply endorsement by the <acronym title="World Wide Web Consortium">W3C</acronym> Membership. This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress.</p><p>This document was produced by a group operating under the <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/">5 February 2004 <acronym title="World Wide Web Consortium">W3C</acronym> Patent Policy</a>. <acronym title="World Wide Web Consortium">W3C</acronym> maintains a <a href="http://www.w3.org/2004/01/pp-impl/46974/status" rel="disclosure">public list of any patent disclosures</a> made in connection with the deliverables of the group; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/#def-essential">Essential Claim(s)</a> must disclose the information in accordance with <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/#sec-Disclosure">section 6 of the <acronym title="World Wide Web Consortium">W3C</acronym> Patent Policy</a>.</p></div><div id="toc" class="section"><h2 class="introductory">Table of Contents</h2><ul class="toc"><li class="tocline"><a href="#introduction" class="tocxref"><span class="secno">1. </span>Introduction</a><ul class="toc"><li class="tocline"><a href="#purpose" class="tocxref"><span class="secno">1.1 </span>Purpose of this Document and target audience</a></li><li class="tocline"><a href="#structure-of-this-document" class="tocxref"><span class="secno">1.2 </span>Structure of this Document</a></li><li class="tocline"><a href="#notational-conventions" class="tocxref"><span class="secno">1.3 </span>Notational Conventions</a></li></ul></li><li class="tocline"><a href="#general-conventions" class="tocxref"><span class="secno">2. </span>General grammar considerations</a><ul class="toc"><li class="tocline"><a href="#functional-syntax" class="tocxref"><span class="secno">2.1 </span>Functional-style Syntax</a></li><li class="tocline"><a href="#grammar-notation" class="tocxref"><span class="secno">2.2 </span>EBNF Grammar</a></li><li class="tocline"><a href="#prov-n-optionals" class="tocxref"><span class="secno">2.3 </span>Optional terms in expressions</a></li><li class="tocline"><a href="#prov-n-standard-terms" class="tocxref"><span class="secno">2.4 </span>Identifiers and attributes</a></li><li class="tocline"><a href="#comments" class="tocxref"><span class="secno">2.5 </span>Comments</a></li></ul></li><li class="tocline"><a href="#prov-n-expressions" class="tocxref"><span class="secno">3. </span>PROV-N Productions per Component</a><ul class="toc"><li class="tocline"><a href="#component1" class="tocxref"><span class="secno">3.1 </span>Component 1: Entities and Activities</a><ul class="toc"><li class="tocline"><a href="#expression-Entity" class="tocxref"><span class="secno">3.1.1 </span>Entity</a></li><li class="tocline"><a href="#expression-Activity" class="tocxref"><span class="secno">3.1.2 </span>Activity</a></li><li class="tocline"><a href="#expression-Generation" class="tocxref"><span class="secno">3.1.3 </span>Generation</a></li><li class="tocline"><a href="#expression-Usage" class="tocxref"><span class="secno">3.1.4 </span>Usage</a></li><li class="tocline"><a href="#expression-wasInformedBy" class="tocxref"><span class="secno">3.1.5 </span>Communication</a></li><li class="tocline"><a href="#expression-Start" class="tocxref"><span class="secno">3.1.6 </span>Start</a></li><li class="tocline"><a href="#expression-End" class="tocxref"><span class="secno">3.1.7 </span>End</a></li><li class="tocline"><a href="#expression-Invalidation" class="tocxref"><span class="secno">3.1.8 </span>Invalidation</a></li></ul></li><li class="tocline"><a href="#component2" class="tocxref"><span class="secno">3.2 </span>Component 2: Derivations</a><ul class="toc"><li class="tocline"><a href="#Derivation-Relation" class="tocxref"><span class="secno">3.2.1 </span>Derivation</a></li><li class="tocline"><a href="#expression-Revision" class="tocxref"><span class="secno">3.2.2 </span>Revision</a></li><li class="tocline"><a href="#expression-quotation" class="tocxref"><span class="secno">3.2.3 </span>Quotation</a></li><li class="tocline"><a href="#expression-original-source" class="tocxref"><span class="secno">3.2.4 </span>Primary Source</a></li></ul></li><li class="tocline"><a href="#component3" class="tocxref"><span class="secno">3.3 </span>Component 3: Agents, Responsibility, and Influence</a><ul class="toc"><li class="tocline"><a href="#expression-Agent" class="tocxref"><span class="secno">3.3.1 </span>Agent</a></li><li class="tocline"><a href="#expression-attribution" class="tocxref"><span class="secno">3.3.2 </span>Attribution</a></li><li class="tocline"><a href="#expression-Association" class="tocxref"><span class="secno">3.3.3 </span>Association</a></li><li class="tocline"><a href="#expression-delegation" class="tocxref"><span class="secno">3.3.4 </span>Delegation</a></li><li class="tocline"><a href="#expression-influence" class="tocxref"><span class="secno">3.3.5 </span>Influence</a></li></ul></li><li class="tocline"><a href="#component4" class="tocxref"><span class="secno">3.4 </span>Component 4: Bundles</a><ul class="toc"><li class="tocline"><a href="#expression-bundle-declaration" class="tocxref"><span class="secno">3.4.1 </span>Bundle Declaration</a></li></ul></li><li class="tocline"><a href="#component5" class="tocxref"><span class="secno">3.5 </span>Component 5: Alternate Entities</a><ul class="toc"><li class="tocline"><a href="#expression-alternate" class="tocxref"><span class="secno">3.5.1 </span>Alternate</a></li><li class="tocline"><a href="#expression-specialization" class="tocxref"><span class="secno">3.5.2 </span>Specialization</a></li><li class="tocline"><a href="#expression-mention" class="tocxref"><span class="secno">3.5.3 </span>Mention</a></li></ul></li><li class="tocline"><a href="#component6" class="tocxref"><span class="secno">3.6 </span>Component 6: Collections</a><ul class="toc"><li class="tocline"><a href="#expression-collection-membership" class="tocxref"><span class="secno">3.6.1 </span>Membership</a></li></ul></li><li class="tocline"><a href="#subexpressions" class="tocxref"><span class="secno">3.7 </span>Further Expressions</a><ul class="toc"><li class="tocline"><a href="#expression-identifier" class="tocxref"><span class="secno">3.7.1 </span>Identifier</a></li><li class="tocline"><a href="#expression-attribute" class="tocxref"><span class="secno">3.7.2 </span>Attribute</a></li><li class="tocline"><a href="#expression-literal" class="tocxref"><span class="secno">3.7.3 </span>Literal</a><ul class="toc"><li class="tocline"><a href="#expression-types" class="tocxref"><span class="secno">3.7.3.1 </span>Reserved Type Values</a></li><li class="tocline"><a href="#expression-Time" class="tocxref"><span class="secno">3.7.3.2 </span>Time Values</a></li></ul></li><li class="tocline"><a href="#expression-NamespaceDeclaration" class="tocxref"><span class="secno">3.7.4 </span>Namespace Declaration</a></li></ul></li></ul></li><li class="tocline"><a href="#toplevelBundle" class="tocxref"><span class="secno">4. </span>Toplevel Bundle</a></li><li class="tocline"><a href="#media-type" class="tocxref"><span class="secno">5. </span>Media Type</a></li><li class="tocline"><a href="#acknowledgements" class="tocxref"><span class="secno">A. </span>Acknowledgements</a></li><li class="tocline"><a href="#references" class="tocxref"><span class="secno">B. </span>References</a><ul class="toc"><li class="tocline"><a href="#normative-references" class="tocxref"><span class="secno">B.1 </span>Normative references</a></li><li class="tocline"><a href="#informative-references" class="tocxref"><span class="secno">B.2 </span>Informative references</a></li></ul></li></ul></div>
+
+
+
+
+
+
+
+
+<div id="introduction" class="section">
+<!--OddPage--><h2><span class="secno">1. </span>Introduction</h2>
+
+<p> Provenance is a record that describes the people,
+institutions, entities, and activities, involved in producing,
+influencing, or delivering a piece of data or a thing in the world. Two
+companion specifications respectively define PROV-DM, a data model for
+provenance, allowing provenance descriptions to be expressed [<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-DM">PROV-DM</a></cite>] and a set of constraints that provenance descriptions are expected to satisfy [<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-CONSTRAINTS">PROV-CONSTRAINTS</a></cite>].
+</p>
+
+<div id="purpose" class="section">
+<h3><span class="secno">1.1 </span>Purpose of this Document and target audience</h3>
+
+A key goal of PROV is the specification of a machine-processable data model for provenance. However, communicating provenance between humans is also important when teaching, illustrating, formalizing, and discussing provenance-related issues.
+
+<!-- As such, representations of PROV-DM are available in RDF and XML. -->
+
+With these two requirements in mind, this document introduces PROV-N, a syntax notation designed to write instances of the PROV data model according to the following design principles:
+<ul>
+<li>Technology independence. PROV-N provides a simple syntax that can be mapped to several technologies.
+
+</li><li>Human readability. PROV-N follows a functional syntax style that is meant to be easily human-readable so it can be used in illustrative examples, such as those presented in the PROV documents suite;
+
+</li><li>Formality. PROV-N is defined through a formal grammar amenable to be used with parser generators.
+
+ </li></ul>
+
+PROV-N has several known uses:
+<ul>
+<li> It is the notation used in the examples found in [<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-DM">PROV-DM</a></cite>], as well as in the definition of PROV constraints [<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-CONSTRAINTS">PROV-CONSTRAINTS</a></cite>]; </li>
+<li> It is a source language for the encoding of PROV data model instances into a variety of target languages, including amongst others RDF [<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-RDF">PROV-RDF</a></cite>] and XML [<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-XML">PROV-XML</a></cite>]; </li>
+<li> It provides the basis for a formal semantics of the PROV data model [<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-SEM">PROV-SEM</a></cite>], in which an interpretation is given to each element of the PROV-N language.
+</li></ul>
+
+<p>This document introduces the PROV-N grammar along with examples of its usage.</p>
+<p>Its target audience is twofold:
+</p><ul>
+<li>Developers of provenance management applications, as well as implementors of new PROV data model encodings, and thus in particular of PROV-N parsers. These readers may be interested in the entire structure of the grammar, starting from the top level nonterminal
+<a class="grammarRef" href="#prod-bundle">bundle</a>.</li>
+<li>Readers of the [<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-DM">PROV-DM</a></cite>] and of [<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-CONSTRAINTS">PROV-CONSTRAINTS</a></cite>] documents, who are interested in the details of the formal language underpinning the notation used in the examples and in the definition of the constraints. Those readers may find the <a class="grammarRef" href="#prod-expression">expression</a> nonterminal a useful entry point into the grammar.</li>
+</ul>
+
+</div>
+
+ <div id="structure-of-this-document" class="section">
+<h3><span class="secno">1.2 </span>Structure of this Document</h3>
+
+<p>This document structured as follows.
+
+</p><p><a href="#general-conventions">Section 2</a> provides general consideration about the PROV-N grammar.</p>
+
+<p><a href="#prov-n-expressions">Section 3</a> presents the grammar of all expressions of the language grouped according to the PROV data model components.</p>
+
+<p><a href="#toplevelBundle">Section 4</a> defines the grammar of toplevel bundles, a house-keeping construct of PROV-N capable of packaging up PROV-N expressions and namespace declarations.</p>
+
+
+<p><a href="#media-type">Section 5</a> defines media type for the PROV-N notation.</p>
+
+
+ </div>
+
+
+<div id="notational-conventions" class="section">
+ <h3><span class="secno">1.3 </span>Notational Conventions</h3>
+
+<!--
+<p>The PROV namespace is <span class="name">http://www.w3.org/ns/prov#</span> with prefix <span class="name">prov:</span>.</p>
+
+<p> All the elements, predicates, reserved names and attributes introduced in this specification belong to the PROV namespace.</p>
+</section>
+
+<section id="conventions">
+<h3>Conventions</h3>
+
+-->
+
+<p>The key words "<em class="rfc2119" title="must">must</em>", "<em class="rfc2119" title="must not">must not</em>", "<em class="rfc2119" title="required">required</em>", "<em class="rfc2119" title="shall">shall</em>", "<em class="rfc2119" title="shall
+ not">shall
+ not</em>", "<em class="rfc2119" title="should">should</em>", "<em class="rfc2119" title="should not">should not</em>", "<em class="rfc2119" title="recommended">recommended</em>", "<em class="rfc2119" title="may">may</em>", and
+ "<em class="rfc2119" title="optional">optional</em>" in this document are to be interpreted as described in
+ [<cite><a class="bibref" rel="biblioentry" href="#bib-RFC2119">RFC2119</a></cite>].</p>
+
+
+
+
+<p>
+The following namespaces prefixes are used throughout this document.
+
+</p><div style="text-align: left;">
+<table border="1" style="margin-left: auto; margin-right: auto;">
+<caption id="namespace-table">Table 1: Prefix and Namespaces used in this specification</caption>
+<tbody><tr><td><a><b>prefix</b></a></td><td><b>namespace uri</b></td> <td><b>definition</b></td></tr>
+<tr><td><a>prov</a></td><td>http://www.w3.org/ns/prov#</td><td>The PROV namespace (see Section <a href="#expression-NamespaceDeclaration">4.7.1</a>)</td></tr>
+<tr><td><a>xsd</a></td><td>http://www.w3.org/2000/10/XMLSchema#</td><td>XML Schema Namespace [<cite><a class="bibref" rel="biblioentry" href="#bib-XMLSCHEMA11-2">XMLSCHEMA11-2</a></cite>]</td></tr>
+<tr><td><a>(others)</a></td><td>(various)</td><td>All other namespace prefixes are used in examples only. <br> In particular, URIs starting with "http://example.com" represent<br> some application-dependent URI [<cite><a class="bibref" rel="biblioentry" href="#bib-URI">URI</a></cite>]</td></tr>
+</tbody></table>
+</div>
+
+</div>
+
+</div>
+
+<div id="general-conventions" class="section">
+<!--OddPage--><h2><span class="secno">2. </span>General grammar considerations</h2>
+
+<div id="functional-syntax" class="section">
+<h3><span class="secno">2.1 </span>Functional-style Syntax</h3>
+
+<p> PROV-N adopts a functional-style syntax consisting of a predicate name and an ordered list of terms.
+All PROV data model relations involve two primary elements, the <em>subject</em> and the <em>object</em>, in this order. Furthermore, some expressions also admit additional elements that further characterize it.
+</p><div class="anexample" id="example_1" data-count="1"><div class="anexampleTitle"><a class="internalDFN" href="#example_1">Example 1</a></div>
+The following expression should be read as "<span class="name">e2</span> was derived from <span class="name">e1</span>". Here <span class="name">e2</span> is the subject, and <span class="name">e1</span> is the object.
+<pre class="codeexample">wasDerivedFrom(e2, e1)
+</pre>
+ </div>
+
+<div class="anexample" id="example_2" data-count="2"><div class="anexampleTitle"><a class="internalDFN" href="#example_2">Example 2</a></div>
+In the following expressions, the optional activity <span class="name">a</span> along with the generation and usage identifiers <span class="name">g2</span> and <span class="name">u1</span>:
+<pre class="codeexample">wasDerivedFrom(e2, e1, a, g2, u1)
+</pre>
+</div>
+
+</div>
+
+<div id="grammar-notation" class="section">
+<h3><span class="secno">2.2 </span>EBNF Grammar</h3>
+
+<p>The grammar is specified using the Extended Backus-Naur Form (EBNF) notation.</p>
+<div class="grammar">
+ Each production rule (or <dfn id="dfn-production">production</dfn>, for short) in the grammar defines one non-terminal symbol <span class="nonterminal">E</span>, in the following form:<p></p>
+
+<span class="nonterminal">E</span> ::= <em>term</em>
+
+<p>Within the term on the right-hand side of a rule, the following terms are used to match strings of one or more characters:
+</p><ul>
+<li>
+<span class="nonterminal">E</span>: matches term satisfying rule for symbol E.
+</li>
+
+<li>
+<span class="name">abc</span>: matches the literal string inside the single quotes.
+</li>
+
+
+<li>
+<span class="optional"><em>term</em></span>: optional <em>term</em>, matches <em>term</em> or nothing.
+</li>
+
+<li>
+<span class="plus"><em>term</em></span>: matches one or more occurrences of <em>term</em>.
+</li>
+
+<li>
+<span class="star"><em>term</em></span>: matches zero or more occurrences of <em>term</em>.
+</li>
+
+<li>
+<span class="choice"><em>term</em> | <em>term</em></span>: matches one of the two <em>terms</em>.
+</li>
+
+</ul>
+</div>
+
+The grammar is centered on nonterminals for various types of <a class="grammarRef" href="#prod-expression">expression</a>. The main production is introduced here below as it reflects the rationale for the design of the entire grammar. Note that parser developers may use the top level
+<a class="grammarRef" href="#prod-bundle">bundle</a> nonterminal as a starting point instead.
+
+
+<!--
+<div class='grammar'>
+<table style="background: white; border=0; ">
+<tr><td><span class="nonterminal">expression</span> <br/><br/><br/><br/><br/><br/><br/>
+</td><td> ::=<br/><br/><br/><br/><br/><br/><br/></td><td>
+-->
+<!-- Component 1-->
+<!--
+<a href="#expression-Entity"><span class="nonterminal">entityExpression</span></a>
+| <a href="#expression-Activity"><span class="nonterminal">activityExpression</span> </a>
+| <a href="#expression-Generation"><span class="nonterminal">generationExpression</span> </a>
+| <a href="#expression-Usage"><span class="nonterminal">usageExpression</span> </a>
+<br/>
+ | <span class="nonterminal">startExpression</span>
+| <span class="nonterminal">endExpression</span>
+| <span class="nonterminal">invalidationExpression</span>
+| <span class="nonterminal">communicationExpression</span>
+| <span class="nonterminal">startByActivityExpression</span>
+<br/>
+-->
+<!-- Component 2-->
+<!--
+ | <span class="nonterminal">agentExpression</span>
+| <span class="nonterminal">attributionExpression</span>
+| <span class="nonterminal">associationExpression</span>
+| <span class="nonterminal">responsibilityExpression</span>
+<br/>
+-->
+<!-- Component 3-->
+<!--
+ | <span class="nonterminal">derivationExpression</span>
+| <span class="nonterminal">revisionExpression</span>
+| <span class="nonterminal">quotationExpression</span> <br/>
+ | <span class="nonterminal">hadOriginalSourceExpression</span>
+| <span class="nonterminal">traceExpression</span>
+<br/>
+-->
+<!-- Component 4-->
+<!--
+ | <span class="nonterminal">alternateExpression</span>
+| <span class="nonterminal">specializationExpression</span>
+<br/>
+-->
+<!-- Component 5 TODO-->
+<!-- Component 6-->
+<!--
+ | <span class="nonterminal">noteExpression</span>
+| <span class="nonterminal">annotationExpression</span>
+<br/>
+</td></tr>
+</table>
+</div>
+-->
+
+<table class="grammar">
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-expression" name="prod-expression"></a>[<span class="prodNo">2</span>] </td> <td><code class="production prod">expression</code></td> <td> ::= </td> <td><code class="content">( <span class="prod"><a class="grammarRef" href="#prod-entityExpression">entityExpression</a></span> | <span class="prod"><a class="grammarRef" href="#prod-activityExpression">activityExpression</a></span> | <span class="prod"><a class="grammarRef" href="#prod-generationExpression">generationExpression</a></span> | <span class="prod"><a class="grammarRef" href="#prod-usageExpression">usageExpression</a></span> | <span class="prod"><a class="grammarRef" href="#prod-startExpression">startExpression</a></span> | <span class="prod"><a class="grammarRef" href="#prod-endExpression">endExpression</a></span> | <span class="prod"><a class="grammarRef" href="#prod-invalidationExpression">invalidationExpression</a></span> | <span class="prod"><a class="grammarRef" href="#prod-communicationExpression">communicationExpression</a></span> | <span class="prod"><a class="grammarRef" href="#prod-agentExpression">agentExpression</a></span> | <span class="prod"><a class="grammarRef" href="#prod-associationExpression">associationExpression</a></span> | <span class="prod"><a class="grammarRef" href="#prod-attributionExpression">attributionExpression</a></span> | <span class="prod"><a class="grammarRef" href="#prod-delegationExpression">delegationExpression</a></span> | <span class="prod"><a class="grammarRef" href="#prod-derivationExpression">derivationExpression</a></span> | <span class="prod"><a class="grammarRef" href="#prod-influenceExpression">influenceExpression</a></span> | <span class="prod"><a class="grammarRef" href="#prod-alternateExpression">alternateExpression</a></span> | <span class="prod"><a class="grammarRef" href="#prod-specializationExpression">specializationExpression</a></span> | <span class="prod"><a class="grammarRef" href="#prod-mentionExpression">mentionExpression</a></span> | <span class="prod"><a class="grammarRef" href="#prod-membershipExpression">membershipExpression</a></span> | <span class="prod"><a class="grammarRef" href="#prod-insertionExpression">insertionExpression</a></span> | <span class="prod"><a class="grammarRef" href="#prod-removalExpression">removalExpression</a></span> | <span class="prod"><a class="grammarRef" href="#prod-dictMembershipExpression">dictMembershipExpression</a></span> )</code></td> </tr> </tbody>
+</table>
+
+
+Each expression non-terminal <a class="grammarRef" href="#prod-expression">expression</a>, i.e., <a class="grammarRef" href="#prod-entityExpression">entityExpression</a>, <a class="grammarRef" href="#prod-activityExpression">activityExpression</a> etc., corresponds to one element (entity, activity, etc.) of the PROV data model.
+<p>A PROV-N document consists of a collection of <a title="expression">expressions</a>, wrapped in a <a class="grammarRef" href="#prod-bundle">toplevel bundle</a> with some namespace declarations, such that the text for an element matches the corresponding <a class="grammarRef" href="#prod-expression">expression</a> production of the grammar.
+
+</p></div>
+
+
+<div id="prov-n-optionals" class="section">
+<h3><span class="secno">2.3 </span>Optional terms in expressions</h3>
+
+Some terms in an expression may be optional. For example:
+
+<div class="anexample" id="example_3" data-count="3"><div class="anexampleTitle"><a class="internalDFN" href="#example_3">Example 3</a></div>
+<pre class="codeexample">wasDerivedFrom(e2, e1, a, g2, u1)
+wasDerivedFrom(e2, e1)
+</pre>
+In a derivation expression, the activity, generation, and usage are optional terms. They are specified in the first derivation, but not in the second.
+</div>
+
+<div class="anexample" id="example_4" data-count="4"><div class="anexampleTitle"><a class="internalDFN" href="#example_4">Example 4</a></div>
+<pre class="codeexample">activity(a2, 2011-11-16T16:00:00, 2011-11-16T16:00:01)
+activity(a1)
+</pre>
+The start and end times for Activity <span class="name">a1</span> are optional. They are specified in the first expression, but not in the second.
+</div>
+
+<p>The general rule for optionals is that, if <em>none</em> of the optionals are used in the expression, then they are simply omitted, resulting in a simpler expression as in the examples above.</p>
+However, it may be the case that only some of the optional terms are omitted. Because the position of the terms in the expression matters, an additional marker must be used to indicate that a particular term is not available. The symbol <span class="name">'-'</span> is used for this purpose.
+
+<div class="anexample" id="example_5" data-count="5"><div class="anexampleTitle"><a class="internalDFN" href="#example_5">Example 5</a></div>
+<p>In the first expression below, all optionals are specified. However in the second and third, only one optional is specified, forcing the use of the marker for the missing terms.
+
+</p><pre class="codeexample">wasDerivedFrom(e2, e1, a, g2, u1)
+wasDerivedFrom(e2, e1, -, -, u1)
+wasDerivedFrom(e2, e1, a, -, -)
+</pre>
+</div>
+Note that the more succinct form is just shorthand for a complete expression with all the markers specified:
+<div class="anexample" id="example_6" data-count="6"><div class="anexampleTitle"><a class="internalDFN" href="#example_6">Example 6</a></div>
+<pre class="codeexample">activity(a1)
+activity(a1, -, -)
+</pre>
+</div>
+
+
+</div>
+
+<div id="prov-n-standard-terms" class="section">
+<h3><span class="secno">2.4 </span>Identifiers and attributes</h3>
+
+<p>Most expressions defined in the grammar include the use of two terms: an identifier and a set of attribute-value pairs, delimited by square brackets. Identifiers are optional except for Entities, Activites, and Agents. Identifiers are always the first term in any expression. By convention, optional identifiers are separated using a semi-colon ';'. This makes it possible to completely omit an optional identifier with no ambiguity arising. Also, if the set of attribute-value pairs is present, it is always the last term in any expression.</p>
+
+<div class="anexample" id="example_7" data-count="7"><div class="anexampleTitle"><a class="internalDFN" href="#example_7">Example 7</a></div>
+<p>Derivation has an optional identifier. In the first expression, the identifier is not available, while it is explicit in the second. The third example shows that one can optionally indicate the missing identifier using the <span class="name">-</span> marker.</p>
+<pre class="codeexample">wasDerivedFrom(e2, e1)
+wasDerivedFrom(d; e2, e1)
+wasDerivedFrom(-; e2, e1)
+</pre>
+</div>
+
+Lack of attributes can be equivalently expressed by omitting the list, or by using an empty list.
+
+<!-- Expressions with no attributes A distinction is made between expressions with no attributes, and expressions that include an empty list of attributes. -->
+
+<div class="anexample" id="example_8" data-count="8"><div class="anexampleTitle"><a class="internalDFN" href="#example_8">Example 8</a></div>
+<p>The first and second activities have no attributes.
+<!-- does not have any attributes. The second has an empty list of attributes. -->
+The third activity has two attributes.
+</p><pre class="codeexample">activity(ex:a10)
+activity(ex:a10, [])
+activity(ex:a10, [ex:param1="a", ex:param2="b"])
+</pre>
+</div>
+
+</div>
+
+<div id="comments" class="section">
+<h3><span class="secno">2.5 </span>Comments</h3>
+
+
+Comments in PROV-N take two forms:
+<ul>
+<li> '//' outside an <code class="content"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rIRI_REF">IRI_REF</a></code> or <code class="content"><a class="grammarRef" href="#prod-STRING_LITERAL">STRING_LITERAL</a></code>; such cooments continue to the end of line (marked by characters U+000D or U+000A) or end of file if there is no end of line after the comment marker.
+
+</li><li> '/*' ... '*/', outside an <code class="content"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rIRI_REF">IRI_REF</a></code> or <code class="content"><a class="grammarRef" href="#prod-STRING_LITERAL">STRING_LITERAL</a></code>.
+</li></ul>
+<p>Comments are treated as white space.</p>
+
+</div>
+
+</div>
+
+<div id="prov-n-expressions" class="section">
+<!--OddPage--><h2><span class="secno">3. </span>PROV-N Productions per Component</h2>
+
+<p>This section introduces grammar productions for each expression, followed by small examples of expressions illustrating the grammar. Strings conforming to the grammar are valid expressions in the PROV-N language.</p>
+
+<div id="component1" class="section">
+<h3><span class="secno">3.1 </span>Component 1: Entities and Activities</h3>
+
+<div id="expression-Entity" class="section">
+<h4><span class="secno">3.1.1 </span>Entity</h4>
+
+<div class="withPn">
+<p>
+
+<!--
+<div class='grammar'>
+<span class="nonterminal">entityExpression</span> ::=
+<span class="name">entity</span>
+<span class="name">(</span>
+<a href="#expression-identifier"><span class="nonterminal">identifier</span></a>
+<span class="nonterminal">optional-attribute-values</span>
+<span class="name">)</span><br/><br/>
+
+<span class="nonterminal">optional-attribute-values</span> ::=
+<span class="optional"><span class="name">,</span>
+<span class="name">[</span>
+<span class="nonterminal">attribute-values</span>
+<span class="name">]</span>
+</span><br/>
+<span class="nonterminal">attribute-values</span> ::=
+<span class="nonterminal">attribute-value</span>
+| <span class="nonterminal">attribute-value</span> <span class="name">,</span> <span class="nonterminal">attribute-values</span>
+<br/>
+<span class="nonterminal">attribute-value</span> ::=
+<span class="nonterminal">attribute</span>
+<span class="name">=</span>
+<span class="nonterminal">Literal</span>
+<br/>
+</div>
+</div>
+-->
+
+</p><table class="grammar">
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-entityExpression" name="prod-entityExpression"></a>[<span class="prodNo">3</span>] </td> <td><code class="production prod">entityExpression</code></td> <td> ::= </td> <td><code class="content">"entity" "(" <span class="prod"><a class="grammarRef" href="#prod-identifier">identifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-optionalAttributeValuePairs" name="prod-optionalAttributeValuePairs"></a>[<span class="prodNo">4</span>] </td> <td><code class="production prod">optionalAttributeValuePairs</code></td> <td> ::= </td> <td><code class="content">( "," "[" <span class="prod"><a class="grammarRef" href="#prod-attributeValuePairs">attributeValuePairs</a></span> "]" )?</code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-attributeValuePairs" name="prod-attributeValuePairs"></a>[<span class="prodNo">5</span>] </td> <td><code class="production prod">attributeValuePairs</code></td> <td> ::= </td> <td><code class="content">( | <span class="prod"><a class="grammarRef" href="#prod-attributeValuePair">attributeValuePair</a></span> ( "," <span class="prod"><a class="grammarRef" href="#prod-attributeValuePair">attributeValuePair</a></span> )* )</code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-attributeValuePair" name="prod-attributeValuePair"></a>[<span class="prodNo">6</span>] </td> <td><code class="production prod">attributeValuePair</code></td> <td> ::= </td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-attribute">attribute</a></span> "=" <span class="prod"><a class="grammarRef" href="#prod-literal">literal</a></span></code></td> </tr> </tbody>
+</table>
+
+
+<p>The following table summarizes how each constituent of a PROV-DM Entity maps to a non-terminal.</p>
+<div style="text-align: left; ">
+<table class="thinborder" style="margin-left: auto; margin-right: auto;">
+<tbody><tr><td><b>Entity</b></td><td><b>Non-Terminal</b></td></tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#entity.id"><span class="attribute" id="entity.id">id</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-identifier">identifier</a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#entity.attributes"><span class="attribute" id="entity.attributes">attributes</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></code></td></tr>
+</tbody></table>
+</div>
+
+
+
+<div class="anexample" id="example_9" data-count="9"><div class="anexampleTitle"><a class="internalDFN" href="#example_9">Example 9</a></div>
+<pre class="codeexample">entity(tr:WD-prov-dm-20111215, [ prov:type="document" ])
+</pre>
+ Here <span class="name">tr:WD-prov-dm-20111215</span> is the entity identifier, and <span class="name">[ prov:type="document" ]</span> groups the optional attributes, only one in this example, with their values.
+ <pre class="codeexample"><!-- entity(tr:WD-prov-dm-20111215, [ prov:type="document", ex:version=2 ]) -->
+entity(tr:WD-prov-dm-20111215)
+</pre>
+Here, the optional attributes are absent.
+</div>
+
+
+
+</div></div>
+<div id="expression-Activity" class="section">
+<h4><span class="secno">3.1.2 </span>Activity</h4>
+
+<!--
+<div class='grammar'>
+<span class="nonterminal">activityExpression</span> ::=
+<span class="name">activity</span>
+<span class="name">(</span>
+<a href="#expression-identifier"><span class="nonterminal">identifier</span></a>
+<span class="optional"><span class="name">,</span>
+(<a href="#expression-Time"><span class="nonterminal">time</span></a> | <span class="name">-</span> )
+<span class="name">,</span>
+(<a href="#expression-Time"><span class="nonterminal">time</span></a> | <span class="name">-</span> )</span>
+<a href="#expression-Entity"><span class="nonterminal">optional-attribute-values</span></a>
+<span class="name">)</span>
+</div>
+</div>
+-->
+
+<table class="grammar">
+
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-activityExpression" name="prod-activityExpression"></a>[<span class="prodNo">7</span>] </td> <td><code class="production prod">activityExpression</code></td> <td> ::= </td> <td><code class="content">"activity" "(" <span class="prod"><a class="grammarRef" href="#prod-identifier">identifier</a></span> ( "," <span class="prod"><a class="grammarRef" href="#prod-timeOrMarker">timeOrMarker</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-timeOrMarker">timeOrMarker</a></span> )? <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-timeOrMarker" name="prod-timeOrMarker"></a>[<span class="prodNo">8</span>] </td> <td><code class="production prod">timeOrMarker</code></td> <td> ::= </td> <td><code class="content">( <span class="prod"><a class="grammarRef" href="#prod-time">time</a></span> | "-" )</code></td> </tr> </tbody>
+</table>
+
+<p>The following table summarizes how each constituent of a PROV-DM Activity maps to a non-terminal.</p>
+<div style="text-align: left; ">
+<table class="thinborder" style="margin-left: auto; margin-right: auto;">
+<tbody><tr><td><b>Activity</b></td><td><b>Non-Terminal</b></td></tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#activity.id"><span class="attribute" id="activity.id">id</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-identifier">identifier</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#activity.startTime"><span class="attribute" id="activity.startTime">startTime</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-timeOrMarker">timeOrMarker</a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#activity.endTime"><span class="attribute" id="activity.endTime">endTime</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-timeOrMarker">timeOrMarker</a></code></td></tr>
+
+
+
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#activity.attributes"><span class="attribute" id="activity.attributes">attributes</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></code></td></tr>
+</tbody></table>
+</div>
+
+
+
+<div class="anexample" id="example_10" data-count="10"><div class="anexampleTitle"><a class="internalDFN" href="#example_10">Example 10</a></div>
+<pre class="codeexample">activity(ex:a10, 2011-11-16T16:00:00, 2011-11-16T16:00:01, [prov:type="createFile"])
+</pre>
+<p>Here <span class="name">ex:a10</span> is the activity identifier, <span class="name">2011-11-16T16:00:00</span> and <span class="name">2011-11-16T16:00:01</span> are the optional start and end times for the activity, and <span class="name">[prov:type="createFile"]</span> are optional attributes. </p>
+The remaining examples show cases where some of the optionals are omitted.
+<pre class="codeexample">activity(ex:a10)
+activity(ex:a10, -, -)
+activity(ex:a10, -, -, [prov:type="edit"])
+activity(ex:a10, -, 2011-11-16T16:00:00)
+activity(ex:a10, 2011-11-16T16:00:00, -)
+activity(ex:a10, 2011-11-16T16:00:00, -, [prov:type="createFile"])
+activity(ex:a10, [prov:type="edit"])
+</pre>
+</div>
+
+
+</div>
+<div id="expression-Generation" class="section">
+<h4><span class="secno">3.1.3 </span>Generation</h4>
+
+
+<div class="withPn">
+
+<!--
+<div class='grammar'>
+<span class="nonterminal">generationExpression</span> ::=
+<span class="name">wasGeneratedBy</span>
+<span class="name">(</span>
+<span class="optional">( <span class="nonterminal">identifier</span> | <span class="name">-</span> ) <span class="name">;</span> </span>
+<span class="nonterminal">eIdentifier</span>(
+<span class="name">,</span>
+( <span class="nonterminal">aIdentifier</span> | <span class="name">-</span> )
+<span class="name">,</span> ( <span class="nonterminal">time</span> | <span class="name">-</span> ))?
+<span class="nonterminal">optional-attribute-values</span>
+<span class="name">)</span><br/>
+</div>
+</div>
+-->
+
+<table class="grammar">
+
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-generationExpression" name="prod-generationExpression"></a>[<span class="prodNo">9</span>] </td> <td><code class="production prod">generationExpression</code></td> <td> ::= </td> <td><code class="content">"wasGeneratedBy" "(" <span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier</a></span> ( "," <span class="prod"><a class="grammarRef" href="#prod-aIdentifierOrMarker">aIdentifierOrMarker</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-timeOrMarker">timeOrMarker</a></span> )? <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-optionalIdentifier" name="prod-optionalIdentifier"></a>[<span class="prodNo">10</span>] </td> <td><code class="production prod">optionalIdentifier</code></td> <td> ::= </td> <td><code class="content">( <span class="prod"><a class="grammarRef" href="#prod-identifierOrMarker">identifierOrMarker</a></span> ";" )?</code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-identifierOrMarker" name="prod-identifierOrMarker"></a>[<span class="prodNo">11</span>] </td> <td><code class="production prod">identifierOrMarker</code></td> <td> ::= </td> <td><code class="content">( <span class="prod"><a class="grammarRef" href="#prod-identifier">identifier</a></span> | "-" )</code></td> </tr> </tbody>
+
+</table>
+
+<p>The following table summarizes how each constituent of a PROV-DM Generation maps to a non-terminal.</p>
+<div style="text-align: left; ">
+<table class="thinborder" style="margin-left: auto; margin-right: auto;">
+<tbody><tr><td><b>Generation</b></td><td><b>Non-Terminal</b></td></tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#generation.id"><span class="attribute" id="generation.id">id</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#generation.entity"><span class="attribute" id="generation.entity">entity</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier</a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#generation.activity"><span class="attribute" id="generation.activity">activity</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-aIdentifierOrMarker">aIdentifierOrMarker</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#generation.time"><span class="attribute" id="generation.time">time</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-timeOrMarker">timeOrMarker</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#generation.attributes"><span class="attribute" id="generation.attributes">attributes</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></code></td></tr>
+</tbody></table>
+</div>
+
+
+<div class="anexample" id="example_11" data-count="11"><div class="anexampleTitle"><a class="internalDFN" href="#example_11">Example 11</a></div>
+
+<pre class="codeexample">wasGeneratedBy(ex:g1; tr:WD-prov-dm-20111215, ex:edit1, 2011-11-16T16:00:00, [ex:fct="save"])
+</pre>
+<p> Here <span class="name">ex:g1</span> is the optional generation identifier, <span class="name">tr:WD-prov-dm-20111215</span> is the identifier of the entity being generated,
+ <span class="name">ex:edit1</span> is the optional identifier of the generating activity, <span class="name">2011-11-16T16:00:00</span> is the optional generation time, and <span class="name"> [ex:fct="save"]</span> are optional attributes. </p>
+The remaining examples show cases where some of the optionals are omitted.
+
+<pre class="codeexample">wasGeneratedBy(e2, a1, tr:WD-prov-dm-20111215)
+wasGeneratedBy(e, ex:edit1, 2011-11-16T16:00:00)
+wasGeneratedBy(e2, a1, -, [ex:fct="save"])
+wasGeneratedBy(e2, [ex:fct="save"])
+wasGeneratedBy(ex:g1; e)
+wasGeneratedBy(ex:g1; e, a, tr:WD-prov-dm-20111215)
+</pre>
+</div>
+
+<p>Even though the production <code class="content"><a class="grammarRef" href="#prod-generationExpression">generationExpression</a></code> allows for expressions <span class="name">wasGeneratedBy(e2, -, -)</span> and <span class="name">wasGeneratedBy(-; e2, -, -)</span>, these expressions are not valid in PROV-N, since at least one of <a href="http://www.w3.org/TR/prov-dm/#generation.id"><span class="attribute">id</span></a>, <a href="http://www.w3.org/TR/prov-dm/#generation.activity"><span class="attribute">activity</span></a>, <a href="http://www.w3.org/TR/prov-dm/#generation.time"><span class="attribute">time</span></a>, and <a href="http://www.w3.org/TR/prov-dm/#generation.attributes"><span class="attribute">attributes</span></a> <em class="rfc2119" title="must">must</em> be present.</p>
+
+
+
+
+</div></div>
+
+<div id="expression-Usage" class="section">
+<h4><span class="secno">3.1.4 </span>Usage</h4>
+
+<!--
+<div class='grammar'>
+<span class="nonterminal">usageExpression</span> ::=
+<span class="name">used</span>
+<span class="name">(</span>
+<span class="optional">( <span class="nonterminal">identifier</span> | <span class="name">-</span> ) <span class="name">;</span> </span>
+<span class="nonterminal">aIdentifier</span> (
+<span class="name">,</span>
+( <span class="nonterminal">eIdentifier</span> )
+<span class="name">,</span> ( <span class="nonterminal">time</span> | <span class="name">-</span> ))?
+<span class="nonterminal">optional-attribute-values</span>
+<span class="name">)</span><br/>
+</div>
+-->
+
+<table class="grammar">
+
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-usageExpression" name="prod-usageExpression"></a>[<span class="prodNo">12</span>] </td> <td><code class="production prod">usageExpression</code></td> <td> ::= </td> <td><code class="content">"used" "(" <span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-aIdentifier">aIdentifier</a></span> "," ( "," <span class="prod"><a class="grammarRef" href="#prod-eIdentifierOrMarker">eIdentifierOrMarker</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-timeOrMarker">timeOrMarker</a></span> )? <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td> </tr> </tbody>
+</table>
+<!--
+<div class="note">should this: usageExpression ::= "used" "(" optionalIdentifier aIdentifier "," eIdentifier ( "," timeOrMarker )? optionalAttributeValuePairs ")" <br/>
+ be: usageExpression ::= "used" "(" optionalIdentifier aIdentifier ( "," eIdentifier "," timeOrMarker )? optionalAttributeValuePairs ")" ?
+</div>
+-->
+
+<p>The following table summarizes how each constituent of a PROV-DM Usage maps to a non-terminal.</p>
+<div style="text-align: left; ">
+<table class="thinborder" style="margin-left: auto; margin-right: auto;">
+<tbody><tr><td><b>Usage</b></td><td><b>Non-Terminal</b></td></tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#usage.id"><span class="attribute" id="usage.id">id</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#usage.activity"><span class="attribute" id="usage.activity">activity</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-aIdentifier">aIdentifier</a></code></td></tr><tr><td><a href="http://www.w3.org/TR/prov-dm/#usage.entity"><span class="attribute" id="usage.entity">entity</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifierOrMarker">eIdentifierOrMarker</a></code></td></tr>
+
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#usage.time"><span class="attribute" id="usage.time">time</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-timeOrMarker">timeOrMarker</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#usage.attributes"><span class="attribute" id="usage.attributes">attributes</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></code></td></tr>
+</tbody></table>
+</div>
+
+<div class="anexample" id="example_12" data-count="12"><div class="anexampleTitle"><a class="internalDFN" href="#example_12">Example 12</a></div>
+
+<pre class="codeexample">used(ex:u1; ex:act2, ar3:0111, 2011-11-16T16:00:00, [ex:fct="load"])
+ </pre>
+<p> Here <span class="name">ex:u1</span> is the optional usage identifier, <span class="name">ex:act2</span> is the identifier of the using activity,
+ <span class="name">ar3:0111</span> is the identifier of the entity being used,
+ <span class="name">2011-11-16T16:00:00</span> is the optional usage time, and <span class="name"> [ex:fct="load"]</span> are optional attributes.</p>
+The remaining examples show cases where some of the optionals are omitted.
+
+ <pre class="codeexample">used(ex:act2)
+used(ex:act2, ar3:0111, 2011-11-16T16:00:00)
+used(a1,e1, -, [ex:fct="load"])
+used(ex:u1; ex:act2, ar3:0111, -)
+</pre>
+</div>
+
+
+<p>Even though the production <code class="content"><a class="grammarRef" href="#prod-usageExpression">usageExpression</a></code> allows for expressions <span class="name">used(a2, -, -)</span> and <span class="name">used(-; e2, -, -)</span>, these expressions are not valid in PROV-N, since at least one of <a href="http://www.w3.org/TR/prov-dm/#usage.id"><span class="attribute">id</span></a>, <a href="http://www.w3.org/TR/prov-dm/#usage.entity"><span class="attribute">entity</span></a>, <a href="http://www.w3.org/TR/prov-dm/#usage.time"><span class="attribute">time</span></a>, and <a href="http://www.w3.org/TR/prov-dm/#usage.attributes"><span class="attribute">attributes</span></a> <em class="rfc2119" title="must">must</em> be present.</p>
+
+
+
+</div>
+
+<div id="expression-wasInformedBy" class="section">
+<h4><span class="secno">3.1.5 </span>Communication</h4>
+
+<!--
+<div class="grammar">
+<span class="nonterminal">communicationExpression</span> ::=
+<span class="name">wasInformedBy</span>
+<span class="name">(</span>
+<span class="optional">( <span class="nonterminal">identifier</span> | <span class="name">-</span> ) <span class="name">,</span> </span>
+<span class="nonterminal">aIdentifier</span>
+<span class="name">,</span>
+<span class="nonterminal">aIdentifier</span>
+<span class="nonterminal">optional-attribute-values</span>
+<span class="name">)</span>
+</div>
+-->
+
+
+<table class="grammar">
+
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-communicationExpression" name="prod-communicationExpression"></a>[<span class="prodNo">13</span>] </td> <td><code class="production prod">communicationExpression</code></td> <td> ::= </td> <td><code class="content">"wasInformedBy" "(" <span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-aIdentifier">aIdentifier</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-aIdentifier">aIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td> </tr> </tbody>
+
+</table>
+
+
+<p>The following table summarizes how each constituent of a PROV-DM Communication maps to a non-terminal.</p>
+<div style="text-align: left; ">
+<table class="thinborder" style="margin-left: auto; margin-right: auto;">
+<tbody><tr><td><b>Communication</b></td><td><b>Non-Terminal</b></td></tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#communication.id"><span class="attribute" id="communication.id">id</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#communication.informed"><span class="attribute" id="communication.informed">informed</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-aIdentifier">aIdentifier</a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#communication.informant"><span class="attribute" id="communication.informant">informant</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-aIdentifier">aIdentifier</a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#communication.attributes"><span class="attribute" id="communication.attributes">attributes</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></code></td></tr>
+</tbody></table>
+</div>
+
+
+
+<div class="anexample" id="example_13" data-count="13"><div class="anexampleTitle"><a class="internalDFN" href="#example_13">Example 13</a></div>
+<pre class="codeexample">wasInformedBy(ex:inf1; ex:a1, ex:a2, [ex:param1="a", ex:param2="b"])
+</pre>
+<p> Here <span class="name">ex:inf1</span> is the optional communication identifier, <span class="name">ex:a1</span> is the identifier of the informed activity,
+ <span class="name">ex:a2</span> is the identifier of the informant activity,
+and <span class="name">[ex:param1="a", ex:param2="b"]</span> are optional attributes. </p>
+The remaining examples show cases where some of the optionals are omitted.
+
+<pre class="codeexample">wasInformedBy(ex:a1, ex:a2)
+wasInformedBy(ex:a1, ex:a2, [ex:param1="a", ex:param2="b"])
+wasInformedBy(i; ex:a1, ex:a2)
+wasInformedBy(i; ex:a1, ex:a2, [ex:param1="a", ex:param2="b"])
+</pre>
+</div>
+</div>
+
+
+
+<div id="expression-Start" class="section">
+<h4><span class="secno">3.1.6 </span>Start</h4>
+
+
+<table class="grammar">
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-startExpression" name="prod-startExpression"></a>[<span class="prodNo">14</span>] </td> <td><code class="production prod">startExpression</code></td> <td> ::= </td> <td><code class="content">"wasStartedBy" "(" <span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-aIdentifier">aIdentifier</a></span> ( "," <span class="prod"><a class="grammarRef" href="#prod-eIdentifierOrMarker">eIdentifierOrMarker</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-aIdentifierOrMarker">aIdentifierOrMarker</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-timeOrMarker">timeOrMarker</a></span> )? <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td> </tr> </tbody>
+</table>
+
+<p>The following table summarizes how each constituent of a PROV-DM Start maps to a non-terminal.</p>
+<div style="text-align: left; ">
+<table class="thinborder" style="margin-left: auto; margin-right: auto;">
+<tbody><tr><td><b>Start</b></td><td><b>Non-Terminal</b></td></tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#start.id"><span class="attribute" id="start.id">id</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#start.activity"><span class="attribute" id="start.activity">activity</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-aIdentifier">aIdentifier</a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#start.trigger"><span class="attribute" id="start.trigger">trigger</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifierOrMarker">eIdentifierOrMarker</a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#start.starter"><span class="attribute" id="start.starter">starter</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-aIdentifierOrMarker">aIdentifierOrMarker</a></code></td></tr>
+
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#start.time"><span class="attribute" id="start.time">time</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-timeOrMarker">timeOrMarker</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#start.attributes"><span class="attribute" id="start.attributes">attributes</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></code></td></tr>
+</tbody></table>
+</div>
+
+
+
+<div class="anexample" id="example_14" data-count="14"><div class="anexampleTitle"><a class="internalDFN" href="#example_14">Example 14</a></div>
+
+ <pre class="codeexample">wasStartedBy(s; ex:act2, ex:trigger, ex:act1, 2011-11-16T16:00:00, [ex:param="a"])
+ </pre>
+ <p>Here <span class="name">s</span> is the optional start identifier, <span class="name">ex:act2</span> is the identifier of the started activity,
+ <span class="name">ex:trigger</span> is the optional identifier for the entity that triggered the activity start,
+ <span class="name">ex:act1</span> is the optional identifier for the activity that generated the (possibly unspecified) entity <span class="name">ex:trigger</span>,
+ <span class="name">2011-11-16T16:00:00</span> is the optional start time, and <span class="name"> [ex:param="a"]</span> are optional attributes.</p>
+ The remaining examples show cases where some of the optionals are omitted.
+
+ <pre class="codeexample">wasStartedBy(ex:act2, -, ex:act1, -)
+wasStartedBy(ex:act2, -, ex:act1, 2011-11-16T16:00:00)
+wasStartedBy(ex:act2, -, -, 2011-11-16T16:00:00)
+wasStartedBy(ex:act2, [ex:param="a"])
+wasStartedBy(s; ex:act2, e, ex:act1, 2011-11-16T16:00:00)
+</pre>
+</div>
+
+<p><strong>Note:</strong> Even though the production <code class="content"><a class="grammarRef" href="#prod-startExpression">startExpression</a></code> allows for expressions <span class="name">wasStartedBy(e2, -, -)</span> and <span class="name">wasStartedBy(-; e2, -, -)</span>, these expressions are not valid in PROV-N,
+since at least one of <a href="http://www.w3.org/TR/prov-dm/#start.id"><span class="attribute">id</span></a>, <a href="http://www.w3.org/TR/prov-dm/#start.trigger"><span class="attribute">trigger</span></a>, <a href="http://www.w3.org/TR/prov-dm/#start.starter"><span class="attribute">starter</span></a>, <a href="http://www.w3.org/TR/prov-dm/#start.time"><span class="attribute">time</span></a>, and <a href="http://www.w3.org/TR/prov-dm/#start.attributes"><span class="attribute">attributes</span></a> <em class="rfc2119" title="must">must</em> be present.</p>
+
+</div>
+
+<div id="expression-End" class="section">
+<h4><span class="secno">3.1.7 </span>End</h4>
+
+<!--
+<div class='grammar'>
+<span class="nonterminal">endExpression</span> ::=
+<span class="name">wasEndedBy</span>
+<span class="name">(</span>
+<span class="optional">( <span class="nonterminal">identifier</span> | <span class="name">-</span> ) <span class="name">;</span> </span>
+<span class="nonterminal">aIdentifier</span> (
+<span class="name">,</span>
+( <span class="nonterminal">eIdentifier</span> | <span class="name">-</span> )
+<span class="name">,</span> ( <span class="nonterminal">time</span> | <span class="name">-</span> ))?
+<span class="nonterminal">optional-attribute-values</span>
+<span class="name">)</span>
+</div>
+-->
+
+<table class="grammar">
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-endExpression" name="prod-endExpression"></a>[<span class="prodNo">15</span>] </td> <td><code class="production prod">endExpression</code></td> <td> ::= </td> <td><code class="content">"wasEndedBy" "(" <span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-aIdentifier">aIdentifier</a></span> ( "," <span class="prod"><a class="grammarRef" href="#prod-eIdentifierOrMarker">eIdentifierOrMarker</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-aIdentifierOrMarker">aIdentifierOrMarker</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-timeOrMarker">timeOrMarker</a></span> )? <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td> </tr> </tbody>
+</table>
+
+
+<p>The following table summarizes how each constituent of a PROV-DM End maps to a non-terminal.</p>
+<div style="text-align: left; ">
+<table class="thinborder" style="margin-left: auto; margin-right: auto;">
+<tbody><tr><td><b>End</b></td><td><b>Non-Terminal</b></td></tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#end.id"><span class="attribute" id="end.id">id</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#end.activity"><span class="attribute" id="end.activity">activity</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-aIdentifier">aIdentifier</a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#end.trigger"><span class="attribute" id="end.trigger">trigger</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifierOrMarker">eIdentifierOrMarker</a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#end.ender"><span class="attribute" id="end.ender">ender</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-aIdentifierOrMarker">aIdentifierOrMarker</a></code></td></tr>
+
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#end.time"><span class="attribute" id="end.time">time</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-timeOrMarker">timeOrMarker</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#end.attributes"><span class="attribute" id="end.attributes">attributes</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></code></td></tr>
+</tbody></table>
+</div>
+
+
+<div class="anexample" id="example_15" data-count="15"><div class="anexampleTitle"><a class="internalDFN" href="#example_15">Example 15</a></div>
+
+ <pre class="codeexample">wasEndedBy(s; ex:act2, ex:trigger,ex:act3, 2011-11-16T16:00:00, [ex:param="a"])
+ </pre>
+<p> Here <span class="name">s</span> is the optional start identifier,
+<span class="name">ex:act2</span> is the identifier of the ending activity,
+ <span class="name">ex:trigger</span> is the identifier of the entity that triggered the activity end,
+ <span class="name">ex:act3</span> is the optional identifier for the activity that generated the (possibly unspecified) entity <span class="name">e</span>,
+ <span class="name">2011-11-16T16:00:00</span> is the optional usage time, and <span class="name"> [ex:param="a"]</span> are optional attributes. </p>
+The remaining examples show cases where some of the optionals are omitted.
+
+
+<pre class="codeexample">wasEndedBy(ex:act2, ex:trigger, -, -)
+wasEndedBy(ex:act2, ex:trigger, -, 2011-11-16T16:00:00)
+wasEndedBy(ex:act2, -, -, 2011-11-16T16:00:00)
+wasEndedBy(ex:act2, -, -, 2011-11-16T16:00:00, [ex:param="a"])
+wasEndedBy(e; ex:act2)
+wasEndedBy(e; ex:act2, ex:trigger, -, 2011-11-16T16:00:00)
+</pre>
+</div>
+
+<p><strong>Note:</strong>Even though the production <code class="content"><a class="grammarRef" href="#prod-endExpression">endExpression</a></code> allows for expressions <span class="name">wasEndedBy(e2, -, -)</span> and <span class="name">wasEndedBy(-; e2, -, -)</span>, these expressions are not valid in PROV-N,
+since at least one of <a href="http://www.w3.org/TR/prov-dm/#end.id"><span class="attribute">id</span></a>, <a href="http://www.w3.org/TR/prov-dm/#end.trigger"><span class="attribute">trigger</span></a>, <a href="http://www.w3.org/TR/prov-dm/#end.ender"><span class="attribute">ender</span></a>, <a href="http://www.w3.org/TR/prov-dm/#end.time"><span class="attribute">time</span></a>, and <a href="http://www.w3.org/TR/prov-dm/#end.attributes"><span class="attribute">attributes</span></a> <em class="rfc2119" title="must">must</em> be present.</p>
+</div>
+
+
+
+<div id="expression-Invalidation" class="section">
+<h4><span class="secno">3.1.8 </span>Invalidation</h4>
+
+
+<div class="withPn">
+<!--
+<div class='grammar'>
+<span class="nonterminal">invalidationExpression</span> ::=
+<span class="name">wasInvalidatedBy</span>
+<span class="name">(</span>
+<span class="optional">( <span class="nonterminal">identifier</span> | <span class="name">-</span> ) <span class="name">;</span> </span>
+<span class="nonterminal">aIdentifier</span> (
+<span class="name">,</span>
+( <span class="nonterminal">eIdentifier</span> | <span class="name">-</span> )
+<span class="name">,</span> ( <span class="nonterminal">time</span> | <span class="name">-</span> ))?
+<span class="nonterminal">optional-attribute-values</span>
+<span class="name">)</span>
+</div>
+</div>
+-->
+
+<table class="grammar">
+
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-invalidationExpression" name="prod-invalidationExpression"></a>[<span class="prodNo">16</span>] </td> <td><code class="production prod">invalidationExpression</code></td> <td> ::= </td> <td><code class="content">"wasInvalidatedBy" "(" <span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier</a></span> ( "," <span class="prod"><a class="grammarRef" href="#prod-aIdentifierOrMarker">aIdentifierOrMarker</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-timeOrMarker">timeOrMarker</a></span> )? <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td> </tr> </tbody>
+</table>
+
+
+<p>The following table summarizes how each constituent of a PROV-DM Invalidation maps to a non-terminal.</p>
+<div style="text-align: left; ">
+<table class="thinborder" style="margin-left: auto; margin-right: auto;">
+<tbody><tr><td><b>Invalidation</b></td><td><b>Non-Terminal</b></td></tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#invalidation.id"><span class="attribute" id="invalidation.id">id</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#invalidation.entity"><span class="attribute" id="invalidation.entity">entity</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier</a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#invalidation.activity"><span class="attribute" id="invalidation.activity">activity</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-aIdentifierOrMarker">aIdentifierOrMarker</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#invalidation.time"><span class="attribute" id="invalidation.time">time</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-timeOrMarker">timeOrMarker</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#invalidation.attributes"><span class="attribute" id="invalidation.attributes">attributes</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></code></td></tr>
+</tbody></table>
+</div>
+
+<div class="anexample" id="example_16" data-count="16"><div class="anexampleTitle"><a class="internalDFN" href="#example_16">Example 16</a></div>
+
+<pre class="codeexample">wasInvalidatedBy(ex:i1; tr:WD-prov-dm-20111215, ex:edit1, 2011-11-16T16:00:00, [ex:fct="save"])
+</pre>
+<p> Here <span class="name">ex:i1</span> is the optional invalidation identifier, <span class="name">tr:WD-prov-dm-20111215</span> is the identifier of the entity being invalidated,
+ <span class="name">ex:edit1</span> is the optional identifier of the invalidating activity, <span class="name">2011-11-16T16:00:00</span> is the optional invalidation time, and <span class="name"> [ex:fct="save"]</span> are optional attributes. </p>
+The remaining examples show cases where some of the optionals are omitted.
+
+<pre class="codeexample">wasInvalidatedBy(tr:WD-prov-dm-20111215, ex:edit1, -)
+wasInvalidatedBy(tr:WD-prov-dm-20111215, ex:edit1, 2011-11-16T16:00:00)
+wasInvalidatedBy(e2, a1, -, [ex:fct="save"])
+wasInvalidatedBy(e2, -, -, [ex:fct="save"])
+wasInvalidatedBy(ex:i1; tr:WD-prov-dm-20111215, ex:edit1, -)
+wasInvalidatedBy(tr:WD-prov-dm-20111215, ex:edit1, -)
+</pre>
+</div>
+
+<p>Even though the production <code class="content"><a class="grammarRef" href="#prod-invalidationExpression">invalidationExpression</a></code> allows for expressions <span class="name">wasInvalidatedBy(e2, -, -)</span> and <span class="name">wasInvalidatedBy(-; e2, -, -)</span>, these expressions are not valid in PROV-N, since
+since at least one of <a href="http://www.w3.org/TR/prov-dm/#invalidation.id"><span class="attribute">id</span></a>, <a href="http://www.w3.org/TR/prov-dm/#invalidation.activity"><span class="attribute">activity</span></a>, <a href="http://www.w3.org/TR/prov-dm/#invalidation.time"><span class="attribute">time</span></a>, and <a href="http://www.w3.org/TR/prov-dm/#invalidation.attributes"><span class="attribute">attributes</span></a> <em class="rfc2119" title="must">must</em> be present.</p>
+
+
+
+</div></div>
+
+
+
+<!--
+<section id="expression-startByActivity">
+<h4>Start by Activity</h4>
+
+<div class="grammar">
+<span class="nonterminal">startByActivityExpression</span> ::=
+<span class="name">wasStartedByActivity</span>
+<span class="name">(</span>
+<span class="optional">( <span class="nonterminal">identifier</span> | <span class="name">-</span> ) <span class="name">,</span> </span>
+<span class="nonterminal">aIdentifier</span>
+<span class="name">,</span>
+<span class="nonterminal">aIdentifier</span>
+<span class="nonterminal">optional-attribute-values</span>
+<span class="name">)</span>
+<br>
+</div>
+
+<div class="anexample">
+<pre class="codeexample">
+wasStartedByActivity(s,ex:a1, ex:a2, [ex:param1="a", ex:param2="b"])
+ </pre>
+<p> Here <span class="name">s</span> is the optional start-by-activity identifier, <span class="name">ex:a1</span> is the identifier of the starting activity,
+ <span class="name">ex:a2</span> is the identifier of the activity that started <span class="name">ex:a1</span>,
+and <span class="name"> [ex:param1="a", ex:param2="b"]</span> are optional attributes. </p>
+The remaining examples show cases where some of the optionals are omitted.
+
+ <pre class="codeexample">
+wasStartedByActivity(ex:a1, ex:a2)
+wasStartedByActivity(ex:a1, ex:a2, [ex:param1="a", ex:param2="b"])
+wasStartedByActivity(s,ex:a1, ex:a2)
+wasStartedByActivity(-,ex:a1, ex:a2)
+wasStartedByActivity(-,ex:a1, ex:a2, [ex:param1="a", ex:param2="b"])
+</pre>
+</div>
+</section>
+-->
+
+</div>
+
+<div id="component2" class="section">
+<h3><span class="secno">3.2 </span>Component 2: Derivations</h3>
+<div id="Derivation-Relation" class="section">
+<h4><span class="secno">3.2.1 </span>Derivation</h4>
+
+<!--
+<div class='grammar'>
+<span class="nonterminal">derivationExpression</span> ::=
+<span class="name">wasDerivedFrom</span>
+<span class="name">(</span>
+<span class="optional">( <span class="nonterminal">identifier</span> | <span class="name">-</span> ) <span class="name">,</span> </span>
+<span class="nonterminal">eIdentifier</span>
+<span class="name">,</span>
+<span class="nonterminal">eIdentifier</span>
+<span class="optional">
+<span class="name">,</span>
+( <span class="nonterminal">aIdentifier</span> | <span class="name">-</span> )
+<span class="name">,</span>
+( <span class="nonterminal">gIdentifier</span> | <span class="name">-</span> )
+<span class="name">,</span>
+( <span class="nonterminal">uIdentifier</span> | <span class="name">-</span> )
+</span>
+<span class="nonterminal">optional-attribute-values</span>
+<span class="name">)</span>
+</div>
+-->
+<table class="grammar">
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-derivationExpression" name="prod-derivationExpression"></a>[<span class="prodNo">17</span>] </td> <td><code class="production prod">derivationExpression</code></td> <td> ::= </td> <td><code class="content">"wasDerivedFrom" "(" <span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier</a></span> ( "," <span class="prod"><a class="grammarRef" href="#prod-aIdentifierOrMarker">aIdentifierOrMarker</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-gIdentifierOrMarker">gIdentifierOrMarker</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-uIdentifierOrMarker">uIdentifierOrMarker</a></span> )? <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td> </tr> </tbody>
+</table>
+
+<p>The following table summarizes how each constituent of a PROV-DM Derivation maps to a non-terminal.</p>
+<div style="text-align: left; ">
+<table class="thinborder" style="margin-left: auto; margin-right: auto;">
+<tbody><tr><td><b>Derivation</b></td><td><b>Non-Terminal</b></td></tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#derivation.id"><span class="attribute" id="derivation.id">id</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#derivation.generatedEntity"><span class="attribute" id="derivation.generatedEntity">generatedEntity</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#derivation.usedEntity"><span class="attribute" id="derivation.usedEntity">usedEntity</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#derivation.activity"><span class="attribute" id="derivation.activity">activity</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-aIdentifierOrMarker">aIdentifierOrMarker</a></code></td></tr>
+
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#derivation.generation"><span class="attribute" id="derivation.generation">generation</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-gIdentifierOrMarker">gIdentifierOrMarker</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#derivation.usage"><span class="attribute" id="derivation.usage">usage</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-uIdentifierOrMarker">uIdentifierOrMarker</a></code></td></tr>
+
+
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#derivation.attributes"><span class="attribute" id="derivation.attributes">attributes</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></code></td></tr>
+</tbody></table>
+</div>
+
+
+
+
+
+
+<div class="anexample" id="anexample-derivation" data-count="17"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-derivation">Example 17</a></div>
+ <pre class="codeexample">wasDerivedFrom(d, e2, e1, a, g2, u1, [ex:comment="a righteous derivation"])
+ </pre>
+<p> Here
+ <span class="name">d</span> is the optional derivation identifier,
+ <span class="name">e2</span> is the identifier for the entity being derived,
+ <span class="name">e1</span> is the identifier of the entity from which <span class="name">e2</span> is derived,
+ <span class="name">a</span> is the optional identifier of the activity which used/generated the entities,
+ <span class="name">g2</span> is the optional identifier of the generation,
+ <span class="name">u1</span> is the optional identifier of the usage,
+ and <span class="name">[ex:comment="a righteous derivation"]</span> are optional attributes. </p>
+The remaining examples show cases where some of the optionals are omitted.
+
+
+<pre class="codeexample">wasDerivedFrom(e2, e1)
+wasDerivedFrom(e2, e1, a, g2, u1)
+wasDerivedFrom(e2, e1, -, g2, u1)
+wasDerivedFrom(e2, e1, a, -, u1)
+wasDerivedFrom(e2, e1, a, g2, -)
+wasDerivedFrom(e2, e1, a, -, -)
+wasDerivedFrom(e2, e1, -, -, u1)
+wasDerivedFrom(e2, e1, -, -, -)
+wasDerivedFrom(d, e2, e1, a, g2, u1)
+wasDerivedFrom(-, e2, e1, a, g2, u1)
+</pre>
+</div>
+
+</div>
+<div id="expression-Revision" class="section">
+<h4><span class="secno">3.2.2 </span>Revision</h4>
+
+
+
+
+<div class="anexample" id="example_18" data-count="18"><div class="anexampleTitle"><a class="internalDFN" href="#example_18">Example 18</a></div>
+ <pre class="codeexample">wasDerivedFrom(d; e2, e1, a, g2, u1,
+ [prov:type='prov:Revision',
+ ex:comment="a righteous derivation"])
+ </pre>
+<p>Here, the derivation from
+<a href="#anexample-derivation" class="anexample-ref"><span>Example 17</span></a>
+is extended with a <span class="name">prov:type</span> attribute and value <span class="name">prov:Revision</span>.
+</p></div>
+
+
+</div> <!-- end revision -->
+<div id="expression-quotation" class="section">
+<h4><span class="secno">3.2.3 </span>Quotation</h4>
+
+
+
+
+
+<div class="anexample" id="example_19" data-count="19"><div class="anexampleTitle"><a class="internalDFN" href="#example_19">Example 19</a></div>
+ <pre class="codeexample">wasDerivedFrom(quoteId1; ex:blockQuote,ex:blog, ex:act1, ex:g, ex:u,
+ [ prov:type='prov:Quotation' ])
+ </pre>
+
+<p>Here, the derivation is provided with a <span class="name">prov:type</span> attribute and value <span class="name">prov:Quotation</span>.
+</p></div>
+
+
+</div> <!-- end quotation -->
+
+
+<div id="expression-original-source" class="section">
+<h4><span class="secno">3.2.4 </span>Primary Source</h4>
+
+
+
+
+<div class="anexample" id="example_20" data-count="20"><div class="anexampleTitle"><a class="internalDFN" href="#example_20">Example 20</a></div>
+ <pre class="codeexample">wasDerivedFrom(src1; ex:e1, ex:e2, ex:act, ex:g, ex:u,
+ [ prove:type='prov:PrimarySource' ])
+</pre>
+<p>Here, the derivation is provided with a <span class="name">prov:type</span> attribute and value <span class="name">prov:PrimarySource</span>.
+
+</p></div>
+
+
+</div> <!-- end primary source -->
+
+</div>
+
+
+<div id="component3" class="section">
+<h3><span class="secno">3.3 </span>Component 3: Agents, Responsibility, and Influence</h3>
+<div id="expression-Agent" class="section">
+<h4><span class="secno">3.3.1 </span>Agent</h4>
+
+<!--
+<div class='grammar'>
+<span class="nonterminal">agentExpression</span> ::=
+<span class="name">agent</span>
+<span class="name">(</span>
+<span class="nonterminal">identifier</span>
+<span class="nonterminal">optional-attribute-values</span>
+<span class="name">)</span>
+</div>
+</div>
+-->
+
+<table class="grammar">
+
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-agentExpression" name="prod-agentExpression"></a>[<span class="prodNo">18</span>] </td> <td><code class="production prod">agentExpression</code></td> <td> ::= </td> <td><code class="content">"agent" "(" <span class="prod"><a class="grammarRef" href="#prod-identifier">identifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td> </tr> </tbody>
+
+</table>
+
+<p>The following table summarizes how each constituent of a PROV-DM Agent maps to a non-terminal.</p>
+<div style="text-align: left; ">
+<table class="thinborder" style="margin-left: auto; margin-right: auto;">
+<tbody><tr><td><b>Agent</b></td><td><b>Non-Terminal</b></td></tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#agent.id"><span class="attribute" id="agent.id">id</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-identifier">identifier</a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#agent.attributes"><span class="attribute" id="agent.attributes">attributes</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></code></td></tr>
+</tbody></table>
+</div>
+
+
+
+<div class="anexample" id="example_21" data-count="21"><div class="anexampleTitle"><a class="internalDFN" href="#example_21">Example 21</a></div>
+<pre class="codeexample">agent(ag4, [ prov:type="prov:Person", ex:name="David" ])
+</pre>
+<p>Here <span class="name">ag</span> is the agent identifier, and
+ <span class="name">[ prov:type="prov:Person", ex:name="David" ]</span> are optional attributes. </p>
+In the next example, the optional attributes are omitted.
+
+<pre class="codeexample">agent(ag4)
+</pre>
+</div>
+
+
+</div>
+<div id="expression-attribution" class="section">
+<h4><span class="secno">3.3.2 </span>Attribution</h4>
+
+<!--
+<div class="grammar">
+<span class="nonterminal">attributionExpression</span> ::=
+<span class="name">wasAttributedTo</span>
+<span class="name">(</span>
+<span class="optional">( <span class="nonterminal">identifier</span> | <span class="name">-</span> ) <span class="name">,</span> </span>
+<span class="nonterminal">eIdentifier</span>
+<span class="name">,</span>
+<span class="nonterminal">agIdentifier</span>
+<span class="nonterminal">optional-attribute-values</span>
+<span class="name">)</span>
+</div>
+-->
+
+
+<table class="grammar">
+
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-attributionExpression" name="prod-attributionExpression"></a>[<span class="prodNo">19</span>] </td> <td><code class="production prod">attributionExpression</code></td> <td> ::= </td> <td><code class="content">"wasAttributedTo" "(" <span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-agIdentifier">agIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td> </tr> </tbody>
+
+</table>
+
+
+<p>The following table summarizes how each constituent of a PROV-DM Attribution maps to a non-terminal.</p>
+<div style="text-align: left; ">
+<table class="thinborder" style="margin-left: auto; margin-right: auto;">
+<tbody><tr><td><b>Attribution</b></td><td><b>Non-Terminal</b></td></tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#attribution.id"><span class="attribute" id="attribution.id">id</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#attribution.entity"><span class="attribute" id="attribution.entity">entity</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-identifier">eIdentifier</a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#attribution.agent"><span class="attribute" id="attribution.agent">agent</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-agIdentifier">agIdentifier</a></code></td></tr>
+
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#attribution.attributes"><span class="attribute" id="attribution.attributes">attributes</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></code></td></tr>
+</tbody></table>
+</div>
+
+
+
+<div class="anexample" id="example_22" data-count="22"><div class="anexampleTitle"><a class="internalDFN" href="#example_22">Example 22</a></div>
+
+<pre class="codeexample">wasAttributedTo(id; e, ag, [ex:license='cc:attributionURL' ])
+ </pre>
+<p> Here <span class="name">id</span> is the optional attribution identifier, <span class="name">e</span> is an entity identifier,
+ <span class="name">ag</span> is the identifier of the agent to whom the entity is abscribed,
+and <span class="name">[ex:license='cc:attributionURL' ]</span> are optional attributes. </p>
+The remaining examples show cases where some of the optionals are omitted.
+
+<pre class="codeexample">wasAttributedTo(e, ag)
+wasAttributedTo(e, ag, [ex:license='cc:attributionURL' ])
+</pre>
+</div>
+
+</div> <!-- end attribution -->
+
+
+<div id="expression-Association" class="section">
+<h4><span class="secno">3.3.3 </span>Association</h4>
+
+<!--
+<div class='grammar'>
+<span class="nonterminal">associationExpression</span> ::=
+<span class="name">wasAssociatedWith</span>
+<span class="name">(</span>
+<span class="optional">( <span class="nonterminal">identifier</span> | <span class="name">-</span> ) <span class="name">;</span> </span>
+<span class="nonterminal">aIdentifier</span>
+<span class="name">,</span>
+( <span class="nonterminal">agIdentifier</span> | <span class="name">-</span> ) (
+<span class="name">,</span>
+( <span class="nonterminal">eIdentifier</span> | <span class="name">-</span> ))?
+<span class="nonterminal">optional-attribute-values</span>
+<span class="name">)</span>
+</div>
+-->
+
+<table class="grammar">
+
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-associationExpression" name="prod-associationExpression"></a>[<span class="prodNo">20</span>] </td> <td><code class="production prod">associationExpression</code></td> <td> ::= </td> <td><code class="content">"wasAssociatedWith" "(" <span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-aIdentifier">aIdentifier</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-agIdentifierOrMarker">agIdentifierOrMarker</a></span> ( "," <span class="prod"><a class="grammarRef" href="#prod-eIdentifierOrMarker">eIdentifierOrMarker</a></span> )? <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td> </tr> </tbody>
+
+</table>
+
+
+<p>The following table summarizes how each constituent of a PROV-DM Association maps to a non-terminal.</p>
+<div style="text-align: left; ">
+<table class="thinborder" style="margin-left: auto; margin-right: auto;">
+<tbody><tr><td><b>Association</b></td><td><b>Non-Terminal</b></td></tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#association.id"><span class="attribute" id="association.id">id</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#association.activity"><span class="attribute" id="association.activity">activity</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-aIdentifier">aIdentifier</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#association.agent"><span class="attribute" id="association.agent">agent</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-agIdentifierOrMarker">agIdentifierOrMarker</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#association.plan"><span class="attribute" id="association.plan">plan</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifierOrMarker">eIdentifierOrMarker</a></code></td></tr>
+
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#association.attributes"><span class="attribute" id="association.attributes">attributes</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></code></td></tr>
+</tbody></table>
+</div>
+
+
+<div class="anexample" id="example_23" data-count="23"><div class="anexampleTitle"><a class="internalDFN" href="#example_23">Example 23</a></div>
+<pre class="codeexample">wasAssociatedWith(ex:agas; ex:a1, ex:ag1, ex:e1, [ex:param1="a", ex:param2="b"])
+ </pre>
+
+<p> Here <span class="name">ex:agas</span> is the optional attribution identifier,
+ <span class="name">ex:a1</span> is an activity identifier,
+ <span class="name">ex:ag1</span> is the optional identifier of the agent associated to the activity,
+ <span class="name">ex:e1</span> is the optional identifier of the plan used by the agent in the context of the activity,
+ and <span class="name"> [ex:param1="a", ex:param2="b"]</span> are optional attributes. </p>
+The remaining examples show cases where some of the optionals are omitted.
+
+
+
+<pre class="codeexample">wasAssociatedWith(ex:a1, -, ex:e1)
+wasAssociatedWith(ex:a1, ex:ag1)
+wasAssociatedWith(ex:a1, ex:ag1, ex:e1)
+wasAssociatedWith(ex:a1, ex:ag1, ex:e1, [ex:param1="a", ex:param2="b"])
+wasAssociatedWith(a; ex:a1, -, ex:e1)
+</pre>
+</div>
+
+<p><strong>Note:</strong>The production <code class="content"><a class="grammarRef" href="#prod-associationExpression">associationExpression</a></code> allows for expressions <span class="name">wasAssociatedWith(a, -, -)</span> and <span class="name">wasAssociatiedWith(-; a, -, -)</span>. However, these expressions are not valid in PROV-N,
+since
+at least one of <a href="http://www.w3.org/TR/prov-dm/#association.id"><span class="attribute">id</span></a>, <a href="http://www.w3.org/TR/prov-dm/#association.agent"><span class="attribute">agent</span></a>, <a href="http://www.w3.org/TR/prov-dm/#association.plan"><span class="attribute">plan</span></a>, and <a href="http://www.w3.org/TR/prov-dm/#association.attributes"><span class="attribute">attributes</span></a> <em class="rfc2119" title="must">must</em> be present.</p>
+
+</div>
+<div id="expression-delegation" class="section">
+<h4><span class="secno">3.3.4 </span>Delegation</h4>
+
+<!--
+<div class='grammar'>
+<span class="nonterminal">responsibilityExpression</span> ::=
+<span class="name">actedOnBehalfOf</span>
+<span class="name">(</span>
+<span class="optional">( <span class="nonterminal">identifier</span> | <span class="name">-</span> ) <span class="name">;</span> </span>
+<span class="nonterminal">agIdentifier</span>
+<span class="name">,</span>
+<span class="nonterminal">agIdentifier</span> (
+<span class="name">,</span>
+( <span class="nonterminal">aIdentifier</span> | <span class="name">-</span> ))?
+<span class="nonterminal">optional-attribute-values</span>
+<span class="name">)</span>
+</div>
+-->
+
+<table class="grammar">
+
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-delegationExpression" name="prod-delegationExpression"></a>[<span class="prodNo">21</span>] </td> <td><code class="production prod">delegationExpression</code></td> <td> ::= </td> <td><code class="content">"actedOnBehalfOf" "(" <span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-agIdentifier">agIdentifier</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-agIdentifier">agIdentifier</a></span> ( "," <span class="prod"><a class="grammarRef" href="#prod-aIdentifierOrMarker">aIdentifierOrMarker</a></span> )? <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td> </tr> </tbody>
+
+</table>
+
+<p>The following table summarizes how each constituent of a PROV-DM Delegation maps to a non-terminal.</p>
+<div style="text-align: left; ">
+<table class="thinborder" style="margin-left: auto; margin-right: auto;">
+<tbody><tr><td><b>Delegation</b></td><td><b>Non-Terminal</b></td></tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#delegation.id"><span class="attribute" id="delegation.id">id</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#delegation.delegate"><span class="attribute" id="delegation.delegate">delegate</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-agIdentifier">agIdentifier</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#delegation.responsible"><span class="attribute" id="delegation.responsible">responsible</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-agIdentifier">agIdentifier</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#delegation.activity"><span class="attribute" id="delegation.activity">activity</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-aIdentifierOrMarker">aIdentifierOrMarker</a></code></td></tr>
+
+
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#delegation.attributes"><span class="attribute" id="delegation.attributes">attributes</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></code></td></tr>
+</tbody></table>
+</div>
+
+
+
+<div class="anexample" id="example_24" data-count="24"><div class="anexampleTitle"><a class="internalDFN" href="#example_24">Example 24</a></div>
+
+ <pre class="codeexample">actedOnBehalfOf(del1; ag2, ag1, a, [prov:type="contract"])
+ </pre>
+<p> Here <span class="name">del1</span> is the optional delegation identifier,
+ <span class="name">ag2</span> is the identifier for the delegate agent,
+ <span class="name">ag1</span> is the identifier of the responsible agent,
+ <span class="name">a</span> is the optional identifier of the activity for which the delegation link holds,
+ and <span class="name">[prov:type="contract"]</span> are optional attributes. </p>
+The remaining examples show cases where some of the optionals are omitted.
+
+
+<pre class="codeexample">actedOnBehalfOf(ag1, ag2)
+actedOnBehalfOf(ag1, ag2, a)
+actedOnBehalfOf(ag1, ag2, -, [prov:type="delegation"])
+actedOnBehalfOf(ag2, ag3, a, [prov:type="contract"])
+actedOnBehalfOf(r; ag2, ag3, a, [prov:type="contract"])
+</pre>
+</div>
+
+
+</div>
+
+<div id="expression-influence" class="section">
+<h4><span class="secno">3.3.5 </span>Influence</h4>
+
+
+<table class="grammar">
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-influenceExpression" name="prod-influenceExpression"></a>[<span class="prodNo">22</span>] </td> <td><code class="production prod">influenceExpression</code></td> <td> ::= </td> <td><code class="content">"influence" "(" <span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td> </tr> </tbody>
+</table>
+
+
+<p>The following table summarizes how each constituent of a PROV-DM Influence maps to a non-terminal.</p>
+<div style="text-align: left; ">
+<table class="thinborder" style="margin-left: auto; margin-right: auto;">
+<tbody><tr><td><b>Trace</b></td><td><b>Non-Terminal</b></td></tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#trace.id"><span class="attribute" id="trace.id">id</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#trace.entity"><span class="attribute" id="trace.entity">entity</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#trace.ancestor"><span class="attribute" id="trace.ancestor">ancestor</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#trace.attributes"><span class="attribute" id="trace.attributes">attributes</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></code></td></tr>
+</tbody></table>
+</div>
+
+
+<div class="anexample" id="example_25" data-count="25"><div class="anexampleTitle"><a class="internalDFN" href="#example_25">Example 25</a></div>
+ <pre class="codeexample">influence(id,e2,e1,[ex:param="a"])
+ </pre>
+<p> Here
+ <span class="name">id</span> is the optional trace identifier,
+ <span class="name">e2</span> is an entity identifier,
+ <span class="name">e1</span> is the identifier for an ancestor entity that <span class="name">e2</span> depends on,
+ and <span class="name">[ex:param="a"]</span> is the optional set of attributes. </p>
+The remaining examples show cases where some of the optionals are omitted.
+
+
+ <pre class="codeexample">influence(e2,e1)
+influence(e2,e1,[ex:param="a"])
+influence(id; e2,e1)
+</pre>
+</div>
+
+</div>
+
+</div>
+
+<div id="component4" class="section">
+<h3><span class="secno">3.4 </span>Component 4: Bundles</h3>
+
+<div id="expression-bundle-declaration" class="section">
+<h4><span class="secno">3.4.1 </span>Bundle Declaration</h4>
+
+<table class="grammar">
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-namedBundle" name="prod-namedBundle"></a>[<span class="prodNo">23</span>] </td> <td><code class="production prod">namedBundle</code></td> <td> ::= </td> <td><code class="content">"bundle" <span class="prod"><a class="grammarRef" href="#prod-identifier">identifier</a></span> (<span class="prod"><a class="grammarRef" href="#prod-namespaceDeclarations">namespaceDeclarations</a></span>)? (<span class="prod"><a class="grammarRef" href="#prod-expression">expression</a></span>)* "endBundle"</code></td> </tr> </tbody>
+</table>
+
+<div class="anexample" id="example_26" data-count="26"><div class="anexampleTitle"><a class="internalDFN" href="#example_26">Example 26</a></div>
+ <pre class="codeexample">bundle ex:author-view
+ agent(ex:Paolo, [ prov:type='prov:Person' ])
+ agent(ex:Simon, [ prov:type='prov:Person' ])
+ ...
+endBundle
+ </pre>
+<p> Here <span class="name">ex:author-view</span> is the name of the bundle.
+</p></div>
+
+</div>
+</div>
+
+<div id="component5" class="section">
+<h3><span class="secno">3.5 </span>Component 5: Alternate Entities</h3>
+<div id="expression-alternate" class="section">
+<h4><span class="secno">3.5.1 </span>Alternate</h4>
+
+<!--
+<div class='grammar'>
+ <span class="nonterminal">alternateExpression</span> ::=
+ <span class="name">alternateOf</span>
+<span class="name">(</span>
+<span class="nonterminal">eIdentifier</span>
+<span class="name">,</span>
+<span class="nonterminal">eIdentifier</span>
+<span class="name">)</span>
+</div>
+-->
+
+<table class="grammar">
+
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-alternateExpression" name="prod-alternateExpression"></a>[<span class="prodNo">24</span>] </td> <td><code class="production prod">alternateExpression</code></td> <td> ::= </td> <td><code class="content">"alternateOf" "(" <span class="prod"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier</a></span> ")"</code></td> </tr> </tbody>
+
+</table>
+
+
+<p>The following table summarizes how each constituent of a PROV-DM Alternate maps to a non-terminal.</p>
+<div style="text-align: left; ">
+<table class="thinborder" style="margin-left: auto; margin-right: auto;">
+<tbody><tr><td><b>Alternate</b></td><td><b>Non-Terminal</b></td></tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
+
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#alternate.alternate1"><span class="attribute" id="alternate.alternate1">alternate1</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier</a></code></td></tr>
+
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#alternate.alternate2"><span class="attribute" id="alternate.alternate2">alternate2</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier</a></code></td></tr>
+
+</tbody></table>
+</div>
+
+<div class="anexample" id="example_27" data-count="27"><div class="anexampleTitle"><a class="internalDFN" href="#example_27">Example 27</a></div>
+<pre class="codeexample">alternateOf(tr:WD-prov-dm-20111215,ex:alternate-20111215)
+</pre>
+ Here <span class="name">tr:WD-prov-dm-20111215</span> is alternate for <span class="name">ex:alternate-20111215</span>.
+</div>
+
+
+</div>
+<div id="expression-specialization" class="section">
+<h4><span class="secno">3.5.2 </span>Specialization</h4>
+
+
+<!--
+<div class='grammar'>
+ <span class="nonterminal">specializationExpression</span> ::=
+ <span class="name">specializationOf</span>
+<span class="name">(</span>
+<span class="nonterminal">eIdentifier</span>
+<span class="name">,</span>
+<span class="nonterminal">eIdentifier</span>
+<span class="name">)</span>
+</div>
+-->
+
+<table class="grammar">
+
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-specializationExpression" name="prod-specializationExpression"></a>[<span class="prodNo">25</span>] </td> <td><code class="production prod">specializationExpression</code></td> <td> ::= </td> <td><code class="content">"specializationOf" "(" <span class="prod"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier</a></span> ")"</code></td> </tr> </tbody>
+
+</table>
+
+<p>The following table summarizes how each constituent of a PROV-DM Specialization maps to a non-terminal.</p>
+<div style="text-align: left; ">
+<table class="thinborder" style="margin-left: auto; margin-right: auto;">
+<tbody><tr><td><b>Specialization</b></td><td><b>Non-Terminal</b></td></tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
+
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#specialization.specificEntity"><span class="attribute" id="specialization.specificEntity">specificEntity</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier</a></code></td></tr>
+
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#specialization.generalEntity"><span class="attribute" id="specialization.generalEntity">generalEntity</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier</a></code></td></tr>
+
+</tbody></table>
+</div>
+
+
+<div class="anexample" id="example_28" data-count="28"><div class="anexampleTitle"><a class="internalDFN" href="#example_28">Example 28</a></div>
+<pre class="codeexample">specializationOf(tr:WD-prov-dm-20111215,tr:prov-dm)
+</pre>
+ Here <span class="name">tr:WD-prov-dm-20111215</span> is a specialization of <span class="name">tr:prov-dm</span>.
+</div>
+
+</div>
+
+
+
+<div id="expression-mention" class="section">
+<h4><span class="secno">3.5.3 </span>Mention</h4>
+
+<div class="note">
+<p>Note: This feature is "<a href="http://www.w3.org/2005/10/Process-20051014/tr#cfi">at risk</a>" and may be removed from this specification based on feedback. Please send feedback to public-prov-comments@w3.org.</p>
+
+
+<p>The "Mention" construct might be removed from PROV if implementation experience reveals problems with supporting this construct.</p>
+</div>
+
+
+
+<table class="grammar">
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-mentionExpression" name="prod-mentionExpression"></a>[<span class="prodNo">26</span>] </td> <td><code class="production prod">mentionExpression</code></td> <td> ::= </td> <td><code class="content">"mentionOf" "(" <span class="prod"><a class="grammarRef" href="#prod-identifier">identifier</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-identifier">identifier</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-bIdentifier">bIdentifier</a></span> ")"</code></td> </tr> </tbody>
+</table>
+
+
+<p>The following table summarizes how each constituent of a PROV-DM Mention maps to a non-terminal.</p>
+<div style="text-align: left; ">
+<table class="thinborder" style="margin-left: auto; margin-right: auto;">
+<tbody><tr><td><b>Mention</b></td><td><b>Non-Terminal</b></td></tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
+
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#mention.specificEntity"><span class="attribute" id="mention.specificEntity">specificEntity</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier</a></code></td></tr>
+
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#mention.generalEntity"><span class="attribute" id="mention.generalEntity">generalEntity</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#mention.bundle"><span class="attribute" id="mention.bundle">bundle</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-bIdentifier">bIdentifier</a></code></td></tr>
+
+</tbody></table>
+</div>
+
+
+<div class="anexample" id="example_29" data-count="29"><div class="anexampleTitle"><a class="internalDFN" href="#example_29">Example 29</a></div>
+<pre class="codeexample"> mention(ex:report1_as_in_b1, ex:report1, ex:b1)
+</pre>
+<p> Here
+ <span class="name">ex:report1_as_in_b1</span> is an entity identifier,
+ <span class="name">ex:report1</span> is an entity identifier,
+ <span class="name">ex:b1</span> is the identifier for a bundle
+</p></div>
+
+
+
+</div>
+
+
+
+
+</div>
+
+
+
+<div id="component6" class="section">
+<h3><span class="secno">3.6 </span>Component 6: Collections</h3>
+
+<!-- In the productions in this section, nonterminals <a href="#prod-keyEntitySet">keyEntitySet</span> and <span class="nonterminal">keySet</span> are defined as follows. -->
+
+<!--
+<div class="grammar">
+<span class="nonterminal">keyValuePairs</span> ::=
+<span class="name">(</span>
+ <span class="nonterminal">literal</span>
+ <span class="name">,</span>
+<span class="nonterminal">eidentifier</span>
+ <span class="name">)</span>
+|
+<span class="name">(</span>
+ <span class="nonterminal">literal</span>
+ <span class="name">,</span>
+<span class="nonterminal">eidentifier</span>
+<span class="name">)</span>
+ <span class="name">,</span>
+<span class="nonterminal">keyValuePairs</span>
+</div>
+
+ <div class="grammar">
+<span class="nonterminal">keySet</span> ::=
+ <span class="nonterminal">literal</span>
+|
+ <span class="nonterminal">literal</span>
+ <span class="name">,</span>
+<span class="nonterminal">keySet</span>
+</div>
+-->
+
+
+<div id="expression-collection-membership" class="section">
+<h4><span class="secno">3.6.1 </span>Membership</h4>
+
+<!--
+<div class="grammar">
+ <span class="nonterminal">membershipExpression</span> ::=
+<span class="name">isMemberOf</span>
+ <span class="name">(</span>
+ <span class="optional"><span class="nonterminal">identifier</span>
+ <span class="name">,</span></span>
+<span class="nonterminal">cIdentifier</span>
+ <span class="name">,</span>
+ <span class="name">{</span>
+ <span class="nonterminal">keyValuePairs</span>
+ <span class="name">}</span>
+<span class="nonterminal">optional-attribute-values</span>
+ <span class="name">)</span>
+ <br>
+</div>
+-->
+
+<table class="grammar">
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-membershipExpression" name="prod-membershipExpression"></a>[<span class="prodNo">27</span>] </td> <td><code class="production prod">membershipExpression</code></td> <td> ::= </td> <td><code class="content">"memberOf" "(" <span class="prod"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></span> <span class="prod"><a class="grammarRef" href="#prod-cIdentifier">cIdentifier</a></span> "," <span class="prod"><a class="grammarRef" href="#prod-entitySet">entitySet</a></span> <span class="prod"><a class="grammarRef" href="#prod-complete">complete</a></span> <span class="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></span> ")"</code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-complete" name="prod-complete"></a>[<span class="prodNo">28</span>] </td> <td><code class="production prod">complete</code></td> <td> ::= </td> <td><code class="content">( "," ( "true" | "false" | "-" ) )?</code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-entitySet" name="prod-entitySet"></a>[<span class="prodNo">29</span>] </td> <td><code class="production prod">entitySet</code></td> <td> ::= </td> <td><code class="content">"{" (<span class="prod"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier</a></span>)* "}"</code></td> </tr> </tbody>
+</table>
+
+
+<p>The following table summarizes how each constituent of a PROV-DM Membership maps to a non-terminal.</p>
+<div style="text-align: left; ">
+<table class="thinborder" style="margin-left: auto; margin-right: auto;">
+<tbody><tr><td><b>Collection Membership</b></td><td><b>Non-Terminal</b></td></tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#membership.id"><span class="attribute" id="membership.id">id</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalIdentifier">optionalIdentifier</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#membership.collection"><span class="attribute" id="membership.collection">collection</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-cIdentifier">cIdentifier</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#membership.entity-set"><span class="attribute" id="membership.entity-set">entity-set</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-entitySet">entitySet</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#membership.complete"><span class="attribute" id="membership.complete">complete</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-complete">complete</a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#membership.attributes"><span class="attribute" id="membership.attributes">attributes</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></code></td></tr>
+</tbody></table>
+</div>
+
+
+
+
+<div class="anexample" id="example_30" data-count="30"><div class="anexampleTitle"><a class="internalDFN" href="#example_30">Example 30</a></div>
+ <pre class="codeexample"> memberOf(mId, c, {e1, e2, e3}, []) // Collection membership
+ </pre>
+<p> Here
+ <span class="name">mId</span> is the optional membership identifier,
+ <span class="name">c</span> is the identifier for the collection whose membership is stated,
+ <span class="name"> {e1, e2, e3}</span> is the entity-set indicating the members of
+ <span class="name">c</span>,
+ and <span class="name">[]</span> is the optional (empty) set of attributes. </p>
+In the remaining examples, some of the optionals are omitted.
+
+<pre class="codeexample">memberOf(c3, {e1})
+memberOf(c3, {e1,e2}) // default "complete" flag is false
+memberOf(c3, {e1,e2}, false)
+memberOf(c3, {e1,e2}, true)
+memberOf(c3, ,[])
+memberOf(c3, ,true, [])
+</pre>
+</div>
+
+</div>
+
+
+</div> <!-- end collections-->
+
+
+
+
+<!--
+
+<section id="component6">
+<h3>Component 6: Annotations (OBSOLETE, TO DISAPPEAR)</h3>
+ <section id="expression-note">
+<h4>Note</h4>
+
+<div class='grammar'>
+<span class="nonterminal">noteExpression</span> ::=
+<span class="name">note</span>
+<span class="name">(</span>
+<span class="nonterminal">identifier</span>
+<span class="nonterminal">optional-attribute-values</span>
+<span class="name">)</span>
+</div>
+</div>
+
+<div class="anexample">
+<pre class="codeexample">
+note(ann1; [ex:color="blue", ex:screenX=20, ex:screenY=30])
+</pre>
+</div>
+
+ </section>
+
+<section id="expression-annotation">
+<h4>Annotation</h4>
+
+<div class='grammar'>
+<span class="nonterminal">annotationExpression</span> ::=
+<span class="name">hasAnnotation</span>
+<span class="name">(</span>
+<span class="nonterminal">identifier</span>
+<span class="name">,</span>
+<span class="nonterminal">nIdentifier</span>
+<span class="name">)</span>
+</div>
+
+
+<div class="anexample">
+<pre class="codeexample">
+hasAnnotation(tr:WD-prov-dm-20111215,ex2:n1)
+</pre>
+ Here
+ <span class="name">ex2:n1</span> is the identifier for a note of the entity identified by
+ <span class="name">(tr:WD-prov-dm-20111215</span>.
+</div>
+
+
+</section>
+
+
+
+
+</section>
+
+-->
+
+<div id="subexpressions" class="section">
+<h3><span class="secno">3.7 </span>Further Expressions</h3>
+
+This section defines further expressions of PROV-N.
+
+
+
+
+<div id="expression-identifier" class="section">
+<h4><span class="secno">3.7.1 </span>Identifier</h4>
+
+<p>Various kinds of identifiers are used in productions.</p>
+
+<table class="grammar">
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-eIdentifier" name="prod-eIdentifier"></a>[<span class="prodNo">30</span>] </td> <td><code class="production prod">eIdentifier</code></td> <td> ::= </td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-identifier">identifier</a></span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-aIdentifier" name="prod-aIdentifier"></a>[<span class="prodNo">31</span>] </td> <td><code class="production prod">aIdentifier</code></td> <td> ::= </td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-identifier">identifier</a></span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-agIdentifier" name="prod-agIdentifier"></a>[<span class="prodNo">32</span>] </td> <td><code class="production prod">agIdentifier</code></td> <td> ::= </td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-identifier">identifier</a></span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-gIdentifier" name="prod-gIdentifier"></a>[<span class="prodNo">33</span>] </td> <td><code class="production prod">gIdentifier</code></td> <td> ::= </td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-identifier">identifier</a></span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-uIdentifier" name="prod-uIdentifier"></a>[<span class="prodNo">34</span>] </td> <td><code class="production prod">uIdentifier</code></td> <td> ::= </td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-identifier">identifier</a></span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-cIdentifier" name="prod-cIdentifier"></a>[<span class="prodNo">36</span>] </td> <td><code class="production prod">cIdentifier</code></td> <td> ::= </td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-identifier">identifier</a></span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-dIdentifier" name="prod-dIdentifier"></a>[<span class="prodNo">35</span>] </td> <td><code class="production prod">dIdentifier</code></td> <td> ::= </td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-identifier">identifier</a></span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-bIdentifier" name="prod-bIdentifier"></a>[<span class="prodNo">37</span>] </td> <td><code class="production prod">bIdentifier</code></td> <td> ::= </td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-identifier">identifier</a></span></code></td> </tr> </tbody>
+
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-eIdentifierOrMarker" name="prod-eIdentifierOrMarker"></a>[<span class="prodNo">38</span>] </td> <td><code class="production prod">eIdentifierOrMarker</code></td> <td> ::= </td> <td><code class="content">( <span class="prod"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier</a></span> | "-" )</code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-aIdentifierOrMarker" name="prod-aIdentifierOrMarker"></a>[<span class="prodNo">39</span>] </td> <td><code class="production prod">aIdentifierOrMarker</code></td> <td> ::= </td> <td><code class="content">( <span class="prod"><a class="grammarRef" href="#prod-aIdentifier">aIdentifier</a></span> | "-" )</code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-agIdentifierOrMarker" name="prod-agIdentifierOrMarker"></a>[<span class="prodNo">40</span>] </td> <td><code class="production prod">agIdentifierOrMarker</code></td> <td> ::= </td> <td><code class="content">( <span class="prod"><a class="grammarRef" href="#prod-agIdentifier">agIdentifier</a></span> | "-" )</code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-gIdentifierOrMarker" name="prod-gIdentifierOrMarker"></a>[<span class="prodNo">41</span>] </td> <td><code class="production prod">gIdentifierOrMarker</code></td> <td> ::= </td> <td><code class="content">( <span class="prod"><a class="grammarRef" href="#prod-gIdentifier">gIdentifier</a></span> | "-" )</code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-uIdentifierOrMarker" name="prod-uIdentifierOrMarker"></a>[<span class="prodNo">42</span>] </td> <td><code class="production prod">uIdentifierOrMarker</code></td> <td> ::= </td> <td><code class="content">( <span class="prod"><a class="grammarRef" href="#prod-uIdentifier">uIdentifier</a></span> | "-" )</code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-identifier" name="prod-identifier"></a>[<span class="prodNo">43</span>] </td> <td><code class="production prod">identifier</code></td> <td> ::= </td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-QUALIFIED_NAME">QUALIFIED_NAME</a></span></code></td> </tr> </tbody>
+</table>
+
+
+<p>
+A <dfn id="dfn-qualifiedName">qualified name</dfn> is a name subject to <a>namespace</a> interpretation. It consists of a <a>namespace</a>, denoted by an optional prefix, and a local name.
+The PROV data model stipulates that a qualified name can be mapped into an IRI
+ by concatenating the IRI associated with the prefix and the local part.
+</p><p>A qualified name's prefix is <em class="rfc2119" title="optional">optional</em>. If a prefix occurs in a
+ qualified name, it refers to a <a>namespace</a> declared in a namespace declaration. In the absence of prefix, the qualified name
+ refers to the <a title="default namespace declaration">default namespace</a>.</p>
+
+<!--
+<div class='grammar'>
+<span class="nonterminal">eIdentifier</span> ::= <span class="nonterminal">identifier</span><br/>
+<span class="nonterminal">aIdentifier</span> ::= <span class="nonterminal">identifier</span><br/>
+<span class="nonterminal">agIdentifier</span> ::= <span class="nonterminal">identifier</span><br/>
+<span class="nonterminal">gIdentifier</span> ::= <span class="nonterminal">identifier</span><br/>
+
+<span class="nonterminal">identifier</span> ::= <span class="nonterminal">QUALIFIED_NAME</span><br/>
+<span class="nonterminal">eIdentifier</span> ::= <span class="nonterminal">identifier</span> <em>(intended to denote an entity)</em><br/>
+<span class="nonterminal">aIdentifier</span> ::= <span class="nonterminal">identifier</span> <em>(intended to denote an activity)</em><br/>
+<span class="nonterminal">agIdentifier</span> ::= <span class="nonterminal">identifier</span> <em>(intended to denote an agent)</em><br/>
+<span class="nonterminal">gIdentifier</span>::= <span class="nonterminal">identifier</span> <em>(intended to denote a generation)</em><br/>
+<span class="nonterminal">uIdentifier</span>::= <span class="nonterminal">identifier</span> <em>(intended to denote a usage)</em><br/>
+<span class="nonterminal">nIdentifier</span>::= <span class="nonterminal">identifier</span> <em>(intended to denote a note)</em><br/>
+<span class="nonterminal">cIdentifier</span>::= <span class="nonterminal">identifier</span> <em>(intended to denote a collection)</em><br/>
+</div>
+-->
+
+
+<p>A PROV qualified name <code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME">QUALIFIED_NAME</a></code> has a more permissive syntax then XML's <code class="content"><a href="http://www.w3.org/TR/2009/REC-xml-names-20091208/#NT-QName">QName</a></code> [<cite><a class="bibref" rel="biblioentry" href="#bib-XML-NAMES">XML-NAMES</a></cite>]
+and SPARQL <code class="content"><a href="http://www.w3.org/TR/2008/REC-rdf-sparql-query-20080115/#rPrefixedName">PrefixedName</a></code> [<cite><a class="bibref" rel="biblioentry" href="#bib-RDF-SPARQL-QUERY">RDF-SPARQL-QUERY</a></cite>]. It is a PROV requirement that the concatenation of the namespace with the local part results in a valid IRI [<cite><a class="bibref" rel="biblioentry" href="#bib-IRI">IRI</a></cite>]. Given that
+',' (comma),
+';' (semi-colon),
+'=' (equal),
+'(' (left bracket),
+')' (right bracket),
+'[' (left square bracket),
+']' (right square bracket) are used by the PROV notation as delimiters, they are not allowed in local parts. Instead, they can be %-escaped or incorporated in the IRI denoted by a prefix.
+</p>
+
+
+<p>Qualified names <code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME">QUALIFIED_NAME</a></code> consist of a prefix and a local part. Prefixes follow the production <code class="content"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_PREFIX">PN_PREFIX</a></code> defined by SPARQL [<cite><a class="bibref" rel="biblioentry" href="#bib-RDF-SPARQL-QUERY">RDF-SPARQL-QUERY</a></cite>]. Local parts have to be conformant with <code class="content"><a class="grammarRef" href="#prod-PN_LOCAL">PN_LOCAL</a></code>, which extends the original SPARQL <code class="content"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_LOCAL">PN_LOCAL</a></code> definition by allowing further characters and %-escaped charaters (see <code class="content"><a class="grammarRef" href="#prod-PN_CHARS_OTHERS">PN_CHARS_OTHERS</a></code>).</p>
+
+
+<table class="grammar">
+<tbody class="term"> <tr valign="baseline"> <td><a id="prod-QUALIFIED_NAME" name="prod-QUALIFIED_NAME"></a>[<span class="prodNo">59</span>] </td> <td><<code class="production term">QUALIFIED_NAME</code>></td> <td> ::= </td> <td><code class="content">( <span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_LOCAL">PN_PREFIX</a></span> ":" )? <span class="prod"><a class="grammarRef" href="#prod-PN_LOCAL">PN_LOCAL</a></span><br> | <span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_LOCAL">PN_PREFIX</a></span> ":"</code></td> </tr> </tbody>
+<tbody class="term"> <tr valign="baseline"> <td><a id="prod-PN_LOCAL" name="prod-PN_LOCAL"></a>[<span class="prodNo">60</span>] </td> <td><<code class="production term">PN_LOCAL</code>></td> <td> ::= </td> <td><code class="content">( <span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_CHARS_U">PN_CHARS_U</a></span> | [0-9] | <span class="prod"><a class="grammarRef" href="#prod-PN_CHARS_OTHERS">PN_CHARS_OTHERS</a></span> ) ( ( <span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_CHARS">PN_CHARS</a></span> | "." | <span class="prod"><a class="grammarRef" href="#prod-PN_CHARS_OTHERS">PN_CHARS_OTHERS</a></span> )* ( <span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_CHARS">PN_CHARS</a></span> | <span class="prod"><a class="grammarRef" href="#prod-PN_CHARS_OTHERS">PN_CHARS_OTHERS</a></span> ) )?</code></td> </tr> </tbody>
+<tbody class="term"> <tr valign="baseline"> <td><a id="prod-PN_CHARS_OTHERS" name="prod-PN_CHARS_OTHERS"></a>[<span class="prodNo">61</span>] </td> <td><<code class="production term">PN_CHARS_OTHERS</code>></td> <td> ::= </td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-PERCENT">PERCENT</a></span><br> | "/"<br> | "@"<br> | "~"<br> | "&"<br> | "+"<br> | "?"<br> | "#"<br> | "$"</code></td> </tr> </tbody>
+<tbody class="term"> <tr valign="baseline"> <td><a id="prod-PERCENT" name="prod-PERCENT"></a>[<span class="prodNo">62</span>] </td> <td><<code class="production term">PERCENT</code>></td> <td> ::= </td> <td><code class="content">"%" <span class="prod"><a class="grammarRef" href="#prod-HEX">HEX</a></span> <span class="prod"><a class="grammarRef" href="#prod-HEX">HEX</a></span></code></td> </tr> </tbody>
+<tbody class="term"> <tr valign="baseline"> <td><a id="prod-HEX" name="prod-HEX"></a>[<span class="prodNo">63</span>] </td> <td><<code class="production term">HEX</code>></td> <td> ::= </td> <td><code class="content">[0-9]<br> | [A-F]<br> | [a-f]</code></td> </tr> </tbody>
+
+</table>
+
+
+
+<div class="anexample" id="anexample-qualified-name" data-count="31"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-qualified-name">Example 31</a></div>
+<p>Examples of articles on the BBC Web site seen as entities.</p>
+<pre class="codeexample">bundle
+ prefix bbc <http://www.bbc.co.uk/>
+ prefix bbcNews <http://www.bbc.co.uk/news/>
+
+ entity(bbc:) // bbc site itself
+ entity(bbc:news/) // bbc news
+ entity(bbc:news/world-asia-17507976) // a given news article
+
+ entity(bbcNews:) // an alternative way of referring to the bbc news site
+
+endBundle
+</pre>
+</div>
+
+
+<div class="anexample" id="anexample-qualified-name2" data-count="32"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-qualified-name2">Example 32</a></div>
+<p>Examples of entities with declared and default namespace.</p>
+<pre class="codeexample">bundle
+ default <http://example.org/2/>
+ prefix ex <http://example.org/1/>
+
+ entity(ex:a) // corresponds to IRI http://example.org/1/a
+ entity(ex:a/) // corresponds to IRI http://example.org/1/a/
+ entity(ex:a/b) // corresponds to IRI http://example.org/1/a/b
+ entity(b) // corresponds to IRI http://example.org/2/b
+ entity(ex:1234) // corresponds to IRI http://example.org/2/1234
+ entity(4567) // corresponds to IRI http://example.org/2/4567
+endBundle
+</pre>
+</div>
+
+
+<p><b>Note:</b>The productions for <code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME">qualifiedName</a></code> and <code class="content"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_PREFIX">prefix</a></code> are conflicting. In the context of a <code class="content"><a class="grammarRef" href="#prod-namespaceDeclaration">namespaceDeclaration</a></code>, a parser should give precedence to the production for <code class="content"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_PREFIX">prefix</a></code>.
+</p>
+
+
+</div>
+
+<div id="expression-attribute" class="section">
+<h4><span class="secno">3.7.2 </span>Attribute</h4>
+
+<!--
+<div class='grammar'>
+<span class="nonterminal">attribute</span> ::= <span class="nonterminal">qualifiedName</span><br/>
+</div>
+-->
+
+<table class="grammar">
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-attribute" name="prod-attribute"></a>[<span class="prodNo">44</span>] </td> <td><code class="production prod">attribute</code></td> <td> ::= </td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-QUALIFIED_NAME">QUALIFIED_NAME</a></span></code></td> </tr> </tbody>
+</table>
+
+
+<p>The reserved attributes in the PROV namespace are the following.</p>
+
+<ol>
+<li> <span class="name">prov:label</span>
+</li><li> <span class="name">prov:location</span>
+</li><li> <span class="name">prov:role</span>
+</li><li> <span class="name">prov:type</span>
+</li><li> <span class="name">prov:value</span>
+</li></ol>
+
+
+</div>
+
+
+
+
+
+<div id="expression-literal" class="section">
+<h4><span class="secno">3.7.3 </span>Literal</h4>
+
+<!--
+<div class='grammar'>
+<span class="nonterminal">Literal</span> ::= <span class="nonterminal">typedLiteral</span> | <span class="nonterminal">convenienceNotation</span> <br/>
+<span class="nonterminal">typedLiteral</span> ::= <span class="nonterminal">quotedString</span> <span class="name">%%</span> <span class="nonterminal">datatype</span><br/>
+<span class="nonterminal">datatype</span> ::= <span class="nonterminal">qualifiedName</span> <em> listed in Table <a href="#permitted-datatypes">permitted-datatypes</a></em><br/>
+<span class="nonterminal">convenienceNotation</span> ::= <span class="nonterminal">stringLiteral</span> | <span class="nonterminal">intLiteral</span><br/>
+<span class="nonterminal">stringLiteral</span> ::= <span class="nonterminal">quotedString</span><br/>
+<span class="nonterminal">quotedString</span> ::= <em>a finite sequence of characters in which " (#x22) and \ (#x5C) occur only in pairs of the form \" (#x5C, #x22) and \\ (#x5C,
+#x5C), enclosed in a pair of " (#x22) characters</em><br/>
+<span class="nonterminal">intLiteral</span> ::= <em>a finite-length non-empty sequence of decimal digits (#x30-#x39) with an optional leading negative sign (-)</em>
+</div>
+-->
+
+<table class="grammar">
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-literal" name="prod-literal"></a>[<span class="prodNo">45</span>] </td> <td><code class="production prod">literal</code></td> <td> ::= </td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-typedLiteral">typedLiteral</a></span><br> | <span class="prod"><a class="grammarRef" href="#prod-convenienceNotation">convenienceNotation</a></span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-typedLiteral" name="prod-typedLiteral"></a>[<span class="prodNo">46</span>] </td> <td><code class="production prod">typedLiteral</code></td> <td> ::= </td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-STRING_LITERAL">STRING_LITERAL</a></span> "%%" <span class="prod"><a class="grammarRef" href="#prod-datatype">datatype</a></span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-datatype" name="prod-datatype"></a>[<span class="prodNo">47</span>] </td> <td><code class="production prod">datatype</code></td> <td> ::= </td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-QUALIFIED_NAME">QUALIFIED_NAME</a></span></code></td> </tr> </tbody>
+<tbody><tr valign="baseline"><td></td><td></td><td></td></tr></tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-convenienceNotation" name="prod-convenienceNotation"></a>[<span class="prodNo">48</span>] </td> <td><code class="production prod">convenienceNotation</code></td> <td> ::= </td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-STRING_LITERAL">STRING_LITERAL</a></span> (<span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rLANGTAG">LANGTAG</a></span>)?<br> | <span class="prod"><a class="grammarRef" href="#prod-INT_LITERAL">INT_LITERAL</a></span><br> | <span class="prod"><a class="grammarRef" href="#prod-QUALIFIED_NAME_LITERAL">QUALIFIED_NAME_LITERAL</a></span></code></td> </tr> </tbody>
+<tbody class="term"> <tr valign="baseline"> <td><a id="prod-STRING_LITERAL" name="prod-STRING_LITERAL"></a>[<span class="prodNo">64</span>] </td> <td><<code class="production term">STRING_LITERAL</code>></td> <td> ::= </td> <td><code class="content"><span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rSTRING_LITERAL2">STRING_LITERAL2</a></span><br> | <span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rSTRING_LITERAL_LONG2">STRING_LITERAL_LONG2</a></span></code></td> </tr> </tbody>
+<tbody class="term"> <tr valign="baseline"> <td><a id="prod-INT_LITERAL" name="prod-INT_LITERAL"></a>[<span class="prodNo">66</span>] </td> <td><<code class="production term">INT_LITERAL</code>></td> <td> ::= </td> <td><code class="content">("-")? (<span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span>)+</code></td> </tr> </tbody>
+<tbody class="term"> <tr valign="baseline"> <td><a id="prod-QUALIFIED_NAME_LITERAL" name="prod-QUALIFIED_NAME_LITERAL"></a>[<span class="prodNo">67</span>] </td> <td><<code class="production term">QUALIFIED_NAME_LITERAL</code>></td> <td> ::= </td> <td><code class="content">"'" <span class="prod"><a class="grammarRef" href="#prod-QUALIFIED_NAME">QUALIFIED_NAME</a></span> "'"</code></td> </tr> </tbody>
+</table>
+
+<p>In production <code class="content"><a class="grammarRef" href="#prod-datatype">datatype</a></code>, the <code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME">QUALIFIED_NAME</a></code> is used to denote a <a href="http://www.w3.org/TR/prov-dm/#term-value">PROV data type</a> [<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-DM">PROV-DM</a></cite>].
+
+
+</p><p>The non terminals
+<code class="content"><a class="grammarRef" href="#prod-STRING_LITERAL">STRING_LITERAL</a></code>,
+<code class="content"><a class="grammarRef" href="#prod-INT_LITERAL">INT_LITERAL</a></code>, and
+<code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME_LITERAL">QUALIFIED_NAME_LITERAL</a></code>
+are syntactic sugar for quoted strings with datatype
+<code class="content"><a href="http://www.w3.org/TR/xmlschema11-2/#string"><span class="name">xsd:string</span></a></code>,
+<code class="content"><a href="http://www.w3.org/TR/xmlschema11-2/#int"><span class="name">xsd:int</span></a></code>, and
+<code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME">prov:QUALIFIED_NAME</a></code>
+respectively.
+</p>
+
+<p> In particular, a Literal may be an IRI-typed string (with datatype <span class="name">xsd:anyURI</span>); such IRI has no specific interpretation in the context of PROV.</p>
+
+
+<p><b>Note:</b>The productions for <code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME">prov:QUALIFIED_NAME</a></code> and
+<code class="content"><a class="grammarRef" href="#prod-INT_LITERAL">INT_LITERAL</a></code> are conflicting. In the context of a
+<code class="content"><a class="grammarRef" href="#prod-literal">literal</a></code>, a parser should give precedence to the production for
+<code class="content"><a class="grammarRef" href="#prod-INT_LITERAL">INT_LITERAL</a></code>.
+</p>
+
+<div class="anexample" id="anexample-value" data-count="33"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-value">Example 33</a></div>
+<p>
+The following examples respectively are the string "abc", the string (in French) "bonjour", the integer number 1, and the IRI "http://example.org/foo".
+</p><pre class="codeexample"> "abc"
+ "bonjour"@fr
+ "1" %% xsd:integer
+ "http://example.org/foo" %% xsd:anyURI
+</pre>
+<p>The following example shows a value of type <span class="name">prov:QUALIFIED_NAME</span> (see
+<span class="name"><a href="#prod-QUALIFIED_NAME">prov:QUALIFIED_NAME</a></span>).
+The prefix <span class="name">ex</span> <em class="rfc2119" title="must">must</em> be bound to a <a>namespace</a> declared in a <a>namespace declaration</a>.</p>
+<pre class="codeexample">
+ "ex:value" %% prov:QUALIFIED_NAME
+</pre>
+Alternatively, the same value can be expressed using the following convenience notation.
+<pre class="codeexample">
+ 'ex:value'
+</pre>
+
+</div>
+
+
+
+<div id="expression-types" class="section">
+<h5><span class="secno">3.7.3.1 </span>Reserved Type Values</h5>
+
+<p>The reserved type values in the PROV namespace are the following.</p>
+
+<ol>
+<li> <span class="name">prov:Bundle</span>
+</li><li> <span class="name">prov:Collection</span>
+</li><li> <span class="name">prov:EmptyCollection</span>
+</li><li> <span class="name">prov:Organization</span>
+</li><li> <span class="name">prov:Person</span>
+</li><li> <span class="name">prov:Plan</span>
+</li><li> <span class="name">prov:PrimarySource</span>
+</li><li> <span class="name">prov:Quotation</span>
+</li><li> <span class="name">prov:Revision</span>
+</li><li> <span class="name">prov:SoftwareAgent</span>
+</li></ol>
+
+<div class="anexample" id="anexample-types" data-count="34"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-types">Example 34</a></div>
+<p>The agent <span class="name">ag</span> is a person (type: <span class="name">prov:Person</span>), whereas the entity
+<span class="name">pl</span> is a plan (type: <span class="name">prov:Plan</span>).</p>
+<pre class="codeexample">agent(ag, [ prov:type='prov:Person' ])
+entity(pl, [ prov:type='prov:Plan' ])
+</pre>
+</div>
+
+
+</div>
+
+<div id="expression-Time" class="section">
+<h5><span class="secno">3.7.3.2 </span>Time Values</h5>
+
+<p><dfn id="dfn-time">Time instants</dfn> are defined according to xsd:dateTime [<cite><a class="bibref" rel="biblioentry" href="#bib-XMLSCHEMA11-2">XMLSCHEMA11-2</a></cite>].</p>
+
+<table class="grammar">
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-time" name="prod-time"></a>[<span class="prodNo">49</span>] </td> <td><code class="production prod">time</code></td> <td> ::= </td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-ISODATETIME">ISODATETIME</a></span></code></td> </tr> </tbody>
+<tbody class="term"> <tr valign="baseline"> <td><a id="prod-DIGIT" name="prod-DIGIT"></a>[<span class="prodNo">68</span>] </td> <td><<code class="production term">DIGIT</code>></td> <td> ::= </td> <td><code class="content">[0-9]</code></td> </tr> </tbody>
+<tbody class="term"> <tr valign="baseline"> <td><a id="prod-ISODATETIME" name="prod-ISODATETIME"></a>[<span class="prodNo">69</span>] </td> <td><<code class="production term">ISODATETIME</code>></td> <td> ::= </td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> "-" <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> "-" <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> "T" <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> ":" <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> ":" <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> ( "." <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> ( <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> (<span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span>)? )? )? ( "Z" | <span class="prod"><a class="grammarRef" href="#prod-TIMEZONEOFFSET">TIMEZONEOFFSET</a></span> )?</code></td> </tr> </tbody>
+<tbody class="term"> <tr valign="baseline"> <td><a id="prod-TIMEZONEOFFSET" name="prod-TIMEZONEOFFSET"></a>[<span class="prodNo">70</span>] </td> <td><<code class="production term">TIMEZONEOFFSET</code>></td> <td> ::= </td> <td><code class="content">( "+" | "-" ) <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> ":" <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span> <span class="prod"><a class="grammarRef" href="#prod-DIGIT">DIGIT</a></span></code></td> </tr> </tbody>
+</table>
+
+
+<div class="anexample" id="anexample-time" data-count="35"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-time">Example 35</a></div>
+
+<p>The third argument in the following usage expression is a time instance, namely 4pm on 2011-11-16.</p>
+<pre class="codeexample">used(ex:act2, ar3:0111, 2011-11-16T16:00:00)
+</pre>
+</div>
+
+
+
+
+</div>
+
+
+</div>
+
+
+
+
+
+<div id="expression-NamespaceDeclaration" class="section">
+<h4><span class="secno">3.7.4 </span>Namespace Declaration</h4>
+
+
+<table class="grammar">
+
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-namespaceDeclarations" name="prod-namespaceDeclarations"></a>[<span class="prodNo">50</span>] </td> <td><code class="production prod">namespaceDeclarations</code></td> <td> ::= </td> <td><code class="content">( <span class="prod"><a class="grammarRef" href="#prod-defaultNamespaceDeclaration">defaultNamespaceDeclaration</a></span> | <span class="prod"><a class="grammarRef" href="#prod-namespaceDeclaration">namespaceDeclaration</a></span> ) (<span class="prod"><a class="grammarRef" href="#prod-namespaceDeclaration">namespaceDeclaration</a></span>)*</code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-namespaceDeclaration" name="prod-namespaceDeclaration"></a>[<span class="prodNo">51</span>] </td> <td><code class="production prod">namespaceDeclaration</code></td> <td> ::= </td> <td><code class="content">"prefix" <span class="prod"><a class="grammarRef" href="#prod-QUALIFIED_NAME">QUALIFIED_NAME</a></span> <span class="prod"><a class="grammarRef" href="#prod-namespace">namespace</a></span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-namespace" name="prod-namespace"></a>[<span class="prodNo">53</span>] </td> <td><code class="production prod">namespace</code></td> <td> ::= </td> <td><code class="content"><span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rIRI_REF">IRI_REF</a></span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-defaultNamespaceDeclaration" name="prod-defaultNamespaceDeclaration"></a>[<span class="prodNo">52</span>] </td> <td><code class="production prod">defaultNamespaceDeclaration</code></td> <td> ::= </td> <td><code class="content">"default" <span class="prod"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rIRI_REF">IRI_REF</a></span></code></td> </tr> </tbody>
+
+</table>
+
+<p>A <a class="grammarRef" href="#prod-namespaceDeclaration">namespaceDeclaration</a> consists of a binding between a prefix and a namespace. Every qualified name with this prefix in the scope of this declaration refers to this namespace. The scope of a namespace declaration is the <a class="grammarRef" href="#prod-namedBundle">namedBundle</a> or <a class="grammarRef" href="#prod-bundle">toplevel bundle</a> in which it directly occurs.</p>
+
+
+
+
+<p>In PROV-N, the following prefixes are reserved:
+</p><ul>
+<li> <span class="name">prov</span> denotes the PROV namespace with URI <span class="name">http://www.w3.org/ns/prov#</span></li>
+<li> <span class="name">xsd</span> denotes the XML Schema namespace with URI <span class="name">http://www.w3.org/2001/XMLSchema#</span>.
+</li>
+</ul>
+<p>A PROV-N document <em class="rfc2119" title="must not">must not</em> redeclare prefixes <span class="name">prov</span> and <span class="name">xsd</span>.</p>
+
+<div class="anexample" id="anexample-namespace" data-count="36"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-namespace">Example 36</a></div>
+<p>The following example declares three namespaces, one default, and two with explicit prefixes <span class="name">ex1</span> and <span class="name">ex2</span>.</p>
+<pre class="codeexample">bundle
+ default <http://example.org/0/>
+ prefix ex1 <http://example.org/1/>
+ prefix ex2 <http://example.org/2/>
+...
+endBundle
+</pre>
+</div>
+
+
+
+</div>
+
+
+
+
+
+
+
+
+</div>
+</div>
+
+
+
+
+
+<div id="toplevelBundle" class="section">
+<!--OddPage--><h2><span class="secno">4. </span>Toplevel Bundle</h2>
+
+<p>A <dfn id="dfn-toplevel-bundle">toplevel bundle</dfn> is a house-keeping construct of PROV-N capable of packaging up PROV-N <a title="expression">expressions</a> and namespace declarations. A toplevel bundle forms a self-contained package of provenance descriptions for the purpose of <em>exchanging</em> them. A toplevel bundle may be used
+ to package up PROV-N <a title="record">expressions</a> in response to a request for the provenance of something ([<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-AQ">PROV-AQ</a></cite>]).</p>
+
+<p> Given its status of house keeping construct for the purpose of exchanging provenance expressions, a toplevel bundle is not defined as a PROV-N expression (production <code class="content"><a class="grammarRef" href="#prod-expression">expression</a></code>).</p>
+
+
+<p>A toplevel bundle, written <span class="name">bundle decls exprs bundles endBundle</span> in PROV-N, contains:
+</p><ul>
+<li><em>namespaceDeclarations</em>: a set <span class="name">decls</span> of namespace declarations, declaring namespaces and associated prefixes, which can be used in <a title="attribute">attributes</a> and <a title="identifier">identifiers</a> occurring inside <span class="name">exprs</span>;</li>
+<li><em>expressions</em>: a non-empty set of expressions <span class="name">exprs</span>;</li>
+<li><em>namedBundles</em>: a set of <a href="#expression-bundle-declaration">bundle declarations</a> <span class="name">bundles</span>;</li>
+</ul>
+
+<p>A toplevel bundle's text matches the <code class="content"><a class="grammarRef" href="#prod-bundle">bundle</a> production.</code></p>
+
+<table class="grammar">
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-bundle" name="prod-bundle"></a>[<span class="prodNo">1</span>] </td> <td><code class="production prod">bundle</code></td> <td> ::= </td> <td><code class="content">"bundle" (<span class="prod"><a class="grammarRef" href="#prod-namespaceDeclarations">namespaceDeclarations</a></span>)? (<span class="prod"><a class="grammarRef" href="#prod-expression">expression</a></span>)* (<span class="prod"><a class="grammarRef" href="#prod-namedBundle">namedBundle</a></span>)* "endBundle"</code></td> </tr> </tbody>
+</table>
+
+
+
+<div class="anexample" id="example_37" data-count="37"><div class="anexampleTitle"><a class="internalDFN" href="#example_37">Example 37</a></div>
+<p>
+The following container contains expressions related to the provenance of entity
+<span class="name">e2</span>.
+</p>
+<pre class="codeexample">bundle
+ default <http://anotherexample.org/>
+ prefix ex <http://example.org/>
+
+ entity(e2, [ prov:type="File", ex:path="/shared/crime.txt", ex:creator="Alice",
+ ex:content="There was a lot of crime in London last month."])
+ activity(a1, 2011-11-16T16:05:00, -,[prov:type="edit"])
+ wasGeneratedBy(e2, a1, -, [ex:fct="save"])
+ wasAssociatedWith(a1, ag2, -, [prov:role="author"])
+ agent(ag2, [ prov:type='prov:Person' , ex:name="Bob" ])
+
+endBundle
+</pre>
+<p>This container could for instance be returned as the result of a query to a provenance store for the provenance of entity <span class="name">e2</span> [<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-AQ">PROV-AQ</a></cite>].
+</p>
+</div>
+
+
+
+</div>
+
+<!--
+<section id="account">
+<h3>Account</h3>
+
+<p>The PROV data model has introduced a notion of account by which a set of provenance descriptions can be bundled up and named. The PROV data model <em>assumes</em> the existence of mechanisms to implement accounts, but such mechanisms remain outside its scope. It is suggested that specific serializations may offer solutions to name bundles of descriptions. </p>
+
+<p>Given that the primary motivation for PROV-N is to provide a notation aimed at human consumption, it is therefore appropriate to introduce a notation for accounts, which would include an account name and a bundle of expressions.</p>
+
+
+
+<p>An account, written <span class="name">account(id, exprs)</span> in PROV-N, contains:</p>
+<ul>
+<li><em>id</em>: an identifier that identifies this account;</li>
+<li><em>expressions</em>: a set <span class="name">exprs</span> of expressions;</li>
+</ul>
+
+<p>In PROV-N, an account's text matches the <span class="nonterminal">accountExpression</span> production of the grammar.</p>
+
+<div class='grammar'>
+<span class="nonterminal">accountExpression</span> ::=
+<span class="name">account</span>
+<span class="name">(</span>
+<span class="nonterminal">identifier</span>
+<span class="name">,</span>
+<span class="plus">
+<span class="nonterminal">expression</span> </span>
+<span class="name">)</span>
+</div>
+
+<p>It is also useful to package up one or more account expressions in an toplevel bundle, for interchange purpose. Hence, <span class="nonterminal">expressionContainer</span> is revised as follows. </p>
+
+<div class='grammar'>
+<span class="nonterminal">expressionContainer</span> ::=
+<span class="name">container</span>
+<span class="nonterminal">namespaceDeclarations</span>
+<span class="plus"> <span class="nonterminal">expression</span> </span>
+<span class="name">endContainer</span> <br/>
+| <span class="name">container</span>
+<span class="nonterminal">namespaceDeclarations</span>
+<span class="plus"> <span class="nonterminal">accountExpression</span> </span>
+<span class="name">endContainer</span>
+</div>
+
+
+
+<div class="anexample">
+<p>
+The following container </p>
+<pre class="codeexample">
+container
+ prefix ex <http://example.org/>
+
+ account(ex:acc1,...)
+ account(ex:acc2,...)
+endContainer
+</pre>
+<p> illustrates how two accounts with identifiers <span class="name">ex:acc1</span> and <span class="name">ex:acc2</span> can be returned in a PROV-N serialization of the provenance of
+something.
+</p>
+</div>
+
+
+<div class="anexample">
+<p>
+The following container </p>
+<pre class="codeexample">
+container
+ prefix ex <http://example.org/>
+ ...
+
+ account(ex:acc1,
+ entity(tr:WD-prov-dm-20111018, [ prov:type="pr:RecsWD" %% xsd:QName ])
+ entity(tr:WD-prov-dm-20111215, [ prov:type="pr:RecsWD" %% xsd:QName ])
+ ...
+ wasAssociatedWith(ex:pub2, w3:Consortium, pr:rec-advance))
+
+ account(ex:acc2,
+ entity(ex:acc1, [prov:type="prov:Account" %% xsd:QName ])
+ wasAttributedTo(ex1:acc1, w3:Consortium))
+
+endContainer
+</pre>
+<p> illustrates a first account, with identifier <span class="name">ex:acc1</span>, containing expressions describing the provenance of the technical report <span class="name">tr:WD-prov-dm-20111215</span>, and a second account <span class="name">ex:acc2</span>, describing the provenance of the first. In account <span class="name">ex:acc2</span>, <span class="name">ex:acc1</span> is the identifier of an entity of type <span class="name">prov:Account</span>.
+</p>
+</div>
+
+
+</section>
+
+-->
+
+<div id="media-type" class="section">
+<!--OddPage--><h2><span class="secno">5. </span>Media Type</h2>
+
+<p>
+The media type of PROV-N is <span class="name">text/prov-n</span>. The content encoding of PROV-N content is UTF-8.
+</p>
+
+<div class="note">
+<p>
+See <a href="http://www.w3.org/2002/06/registering-mediatype">http://www.w3.org/2002/06/registering-mediatype</a> for Register an Internet Media Type for a <acronym title="World Wide Web Consortium">W3C</acronym> Spec.</p>
+Following text adapted from <a href="http://www.w3.org/TeamSubmission/turtle/#sec-mediaReg">turtle</a>.
+</div>
+
+
+ <dl>
+ <dt>Contact:</dt>
+ <dd>Ivan Herman</dd>
+ <dt>See also:</dt>
+ <dd><a href="http://www.w3.org/2002/06/registering-mediatype">How to Register a Media Type for a <acronym title="World Wide Web Consortium">W3C</acronym> Specification</a></dd>
+ <dd><a href="http://www.w3.org/2001/tag/2002/0129-mime">Internet Media Type registration, consistency of use</a><br>TAG Finding 3 June 2002 (Revised 4 September 2002)</dd>
+ </dl>
+ <p>The Internet Media Type / MIME Type for PROV-N is "text/prov-n".</p>
+ <p>It is recommended that PROV-N files have the extension ".pn" (all lowercase) on all platforms.</p>
+ <p>It is recommended that PROV-N files stored on Macintosh HFS file systems be given a file type of "TEXT".</p>
+ <p>This information that follows has been <a href="TBD">submitted to the IESG</a> for review, approval, and registration with IANA.</p>
+ <dl>
+ <dt>Type name:</dt>
+ <dd>text</dd>
+ <dt>Subtype name:</dt>
+ <dd>prov-n</dd>
+ <dt>Required parameters:</dt>
+ <dd>None</dd>
+ <dt>Optional parameters:</dt>
+ <dd><tt>charset</tt> — this parameter is required when transferring non-ASCII data. If present, the value of <tt>charset</tt> is always <tt>UTF-8</tt>.</dd>
+ <dt>Encoding considerations:</dt>
+ <dd>The syntax of PROV-N is expressed over code points in Unicode [<a href="#UNICODE">UNICODE</a>]. The encoding is always UTF-8 [<a href="#rfc3629">RFC3629</a>].</dd>
+ <dd>Unicode code points may also be expressed using an \uXXXX (U+0 to U+FFFF) or \UXXXXXXXX syntax (for U+10000 onwards) where X is a hexadecimal digit [0-9A-F]</dd>
+ <dt>Security considerations:</dt>
+ <dd>PROV-N is a general-purpose language for describing the provenance of things; applications may evaluate given data to infer more descriptions or to dereference URIs, invoking the security considerations of the scheme for that URI. Note in particular, the privacy issues in [<cite><a class="bibref" rel="biblioentry" href="#bib-RFC3023">RFC3023</a></cite>] section 10 for HTTP URIs. Data obtained from an inaccurate or malicious data source may lead to inaccurate or misleading conclusions, as well as the dereferencing of unintended URIs. Care must be taken to align the trust in consulted resources with the sensitivity of the intended use of the data; inferences of potential medical treatments would likely require different trust than inferences for trip planning.</dd>
+ <dd>PROV-N is used to express arbitrary application data; security considerations will vary by domain of use. Security tools and protocols applicable to text (e.g. PGP encryption, MD5 sum validation, password-protected compression) may also be used on PROV-N documents. Security/privacy protocols must be imposed which reflect the sensitivity of the embedded information.</dd>
+ <dd>PROV-N can express data which is presented to the user, for example, label attributes. Application rendering strings retrieved from untrusted PROV-N documents must ensure that malignant strings may not be used to mislead the reader. The security considerations in the media type registration for XML ([<cite><a class="bibref" rel="biblioentry" href="#bib-RFC3023">RFC3023</a></cite>] section 10) provide additional guidance around the expression of arbitrary data and markup.</dd>
+ <dd>PROV-N uses qualified names mappeable to IRIs as term identifiers. Applications interpreting data expressed in PROV-N should address the security issues of
+ <a class="norm" href="http://www.ietf.org/rfc/rfc3987.txt">Internationalized Resource Identifiers (IRIs)</a> [<cite><a class="bibref" rel="biblioentry" href="#bib-RFC3987">RFC3987</a></cite>] Section 8, as well as
+ <a class="norm" href="http://www.ietf.org/rfc/rfc3986.txt">Uniform Resource Identifier (URI): Generic Syntax</a> [<cite><a class="bibref" rel="biblioentry" href="#bib-RFC3986">RFC3986</a></cite>] Section 7.</dd>
+ <dd>Multiple IRIs may have the same appearance. Characters in different scripts may
+look similar (a Cyrillic "о" may appear similar to a Latin "o"). A character followed
+by combining characters may have the same visual representation as another character
+(LATIN SMALL LETTER E followed by COMBINING ACUTE ACCENT has the same visual representation
+as LATIN SMALL LETTER E WITH ACUTE).
+<!-- (<code>foo:resum鼯code> and <code>fоо:resumé</code>)-->
+Any person or application that is writing or interpreting data in PROV-N must take care to use the IRI that matches the intended semantics, and avoid IRIs that make look similar.
+Further information about matching of similar characters can be found
+in <a class="inform" href="http://www.unicode.org/reports/tr36/">Unicode Security
+Considerations</a> [<cite><a class="bibref" rel="biblioentry" href="#bib-UNISEC">UNISEC</a></cite>] and
+<a class="norm" href="http://www.ietf.org/rfc/rfc3987.txt">Internationalized Resource
+Identifiers (IRIs)</a> [<cite><a class="bibref" rel="biblioentry" href="#bib-RFC3987">RFC3987</a></cite>] Section 8.
+</dd>
+
+ <dt>Interoperability considerations:</dt>
+ <dd>There are no known interoperability issues.</dd>
+ <dt>Published specification:</dt>
+ <dd>This specification.</dd>
+ <dt>Applications which use this media type:</dt>
+ <dd>No widely deployed applications are known to use this media type. It may be used by some web services and clients consuming their data.</dd>
+ <dt>Additional information:</dt>
+ <dt>Magic number(s):</dt>
+ <dd>PROV-N documents may have the strings 'bundle' near the beginning of the document.</dd>
+ <dt>File extension(s):</dt>
+ <dd>".pn"</dd>
+ <dt>Base URI:</dt>
+ <dd>None</dd>
+ <dt>Macintosh file type code(s):</dt>
+ <dd>"TEXT"</dd>
+ <dt>Person & email address to contact for further information:</dt>
+ <dd>Ivan Herman, ivan@w3.org</dd>
+ <dt>Intended usage:</dt>
+ <dd>COMMON</dd>
+ <dt>Restrictions on usage:</dt>
+ <dd>None</dd>
+ <dt>Author/Change controller:</dt>
+ <dd>The PROV-N specification is the product of Luc Moreau and Paolo Missier. A <acronym title="World Wide Web Consortium">W3C</acronym> Working Group may assume maintenance of this document; <acronym title="World Wide Web Consortium">W3C</acronym> reserves change control over this specifications.</dd>
+ </dl>
+
+</div>
+
+
+
+
+
+
+
+<div class="appendix section" id="acknowledgements">
+ <!--OddPage--><h2><span class="secno">A. </span>Acknowledgements</h2>
+ <p>
+
+This document has been produced by the PROV Working Group, and its contents reflect extensive discussion within the Working Group as a whole.
+ </p>
+
+<p>
+Members of the PROV Working Group at the time of publication of this document were:
+
+Ilkay Altintas (Invited expert),
+Reza B'Far (Oracle Corporation),
+Khalid Belhajjame (University of Manchester),
+James Cheney (University of Edinburgh, School of Informatics),
+Sam Coppens (IBBT),
+David Corsar (University of Aberdeen, Computing Science),
+Stephen Cresswell (The National Archives),
+Tom De Nies (IBBT),
+Helena Deus (DERI Galway at the National University of Ireland, Galway, Ireland),
+Simon Dobson (Invited expert),
+Martin Doerr (Foundation for Research and Technology - Hellas(FORTH)),
+Kai Eckert (Invited expert),
+Jean-Pierre EVAIN (European Broadcasting Union, EBU-UER),
+James Frew (Invited expert),
+Irini Fundulaki (Foundation for Research and Technology - Hellas(FORTH)),
+Daniel Garijo (Universidad Politécnica de Madrid),
+Yolanda Gil (Invited expert),
+Ryan Golden (Oracle Corporation),
+Paul Groth (Vrije Universiteit),
+Olaf Hartig (Invited expert),
+David Hau (National Cancer Institute, NCI),
+Sandro Hawke (<acronym title="World Wide Web Consortium">W3C</acronym>/<acronym title="Massachusetts Institute of Technology">MIT</acronym>),
+Jörn Hees (German Research Center for Artificial Intelligence (DFKI) Gmbh),
+Ivan Herman, (<acronym title="World Wide Web Consortium">W3C</acronym>/<acronym title="European Research Consortium for Informatics and Mathematics">ERCIM</acronym>),
+Ralph Hodgson (TopQuadrant),
+Hook Hua (Invited expert),
+Trung Dong Huynh (University of Southampton),
+Graham Klyne (University of Oxford),
+Michael Lang (Revelytix, Inc.),
+Timothy Lebo (Rensselaer Polytechnic Institute),
+James McCusker (Rensselaer Polytechnic Institute),
+Deborah McGuinness (Rensselaer Polytechnic Institute),
+Simon Miles (Invited expert),
+Paolo Missier (School of Computing Science, Newcastle university),
+Luc Moreau (University of Southampton),
+James Myers (Rensselaer Polytechnic Institute),
+Vinh Nguyen (Wright State University),
+Edoardo Pignotti (University of Aberdeen, Computing Science),
+Paulo da Silva Pinheiro (Rensselaer Polytechnic Institute),
+Carl Reed (Open Geospatial Consortium),
+Adam Retter (Invited Expert),
+Christine Runnegar (Invited expert),
+Satya Sahoo (Invited expert),
+David Schaengold (Revelytix, Inc.),
+Daniel Schutzer (FSTC, Financial Services Technology Consortium),
+Yogesh Simmhan (Invited expert),
+Stian Soiland-Reyes (University of Manchester),
+Eric Stephan (Pacific Northwest National Laboratory),
+Linda Stewart (The National Archives),
+Ed Summers (Library of Congress),
+Maria Theodoridou (Foundation for Research and Technology - Hellas(FORTH)),
+Ted Thibodeau (OpenLink Software Inc.),
+Curt Tilmes (National Aeronautics and Space Administration),
+Craig Trim (IBM Corporation),
+Stephan Zednik (Rensselaer Polytechnic Institute),
+Jun Zhao (University of Oxford),
+Yuting Zhao (University of Aberdeen, Computing Science).
+</p>
+
+ </div>
+
+
+
+<div id="references" class="appendix section"><!--OddPage--><h2><span class="secno">B. </span>References</h2><div id="normative-references" class="section"><h3><span class="secno">B.1 </span>Normative references</h3><dl class="bibliography"><dt id="bib-IRI">[IRI]</dt><dd>M. Duerst, M. Suignard. <a href="http://www.ietf.org/rfc/rfc3987.txt"><cite>Internationalized Resource Identifiers (IRI).</cite></a> January 2005. Internet RFC 3987. URL: <a href="http://www.ietf.org/rfc/rfc3986.txt">http://www.ietf.org/rfc/rfc3987.txt</a>
+</dd><dt id="bib-RDF-SPARQL-QUERY">[RDF-SPARQL-QUERY]</dt><dd>Andy Seaborne; Eric Prud'hommeaux. <a href="http://www.w3.org/TR/2008/REC-rdf-sparql-query-20080115"><cite>SPARQL Query Language for RDF.</cite></a> 15 January 2008. W3C Recommendation. URL: <a href="http://www.w3.org/TR/2008/REC-rdf-sparql-query-20080115">http://www.w3.org/TR/2008/REC-rdf-sparql-query-20080115</a>
+</dd><dt id="bib-RFC2119">[RFC2119]</dt><dd>S. Bradner. <a href="http://www.ietf.org/rfc/rfc2119.txt"><cite>Key words for use in RFCs to Indicate Requirement Levels.</cite></a> March 1997. Internet RFC 2119. URL: <a href="http://www.ietf.org/rfc/rfc2119.txt">http://www.ietf.org/rfc/rfc2119.txt</a>
+</dd><dt id="bib-RFC3023">[RFC3023]</dt><dd>M. Murata; S. St.Laurent; D. Kohn. <a href="http://www.ietf.org/rfc/rfc3023.txt"><cite>XML Media Types</cite></a> January 2001. Internet RFC 3023. URL: <a href="http://www.ietf.org/rfc/rfc3023.txt">http://www.ietf.org/rfc/rfc3023.txt</a>
+</dd><dt id="bib-RFC3986">[RFC3986]</dt><dd>T. Berners-Lee; R. Fielding; L. Masinter. <a href="http://www.ietf.org/rfc/rfc3986.txt"><cite>Uniform Resource Identifier (URI): Generic Syntax.</cite></a> January 2005. Internet RFC 3986. URL: <a href="http://www.ietf.org/rfc/rfc3986.txt">http://www.ietf.org/rfc/rfc3986.txt</a>
+</dd><dt id="bib-RFC3987">[RFC3987]</dt><dd>M. Dürst; M. Suignard. <a href="http://www.ietf.org/rfc/rfc3987.txt"><cite>Internationalized Resource Identifiers (IRIs).</cite></a> January 2005. Internet RFC 3987. URL: <a href="http://www.ietf.org/rfc/rfc3987.txt">http://www.ietf.org/rfc/rfc3987.txt</a>
+</dd><dt id="bib-URI">[URI]</dt><dd>T. Berners-Lee; R. Fielding; L. Masinter. <a href="http://www.ietf.org/rfc/rfc3986.txt"><cite>Uniform Resource Identifiers (URI): generic syntax.</cite></a> January 2005. Internet RFC 3986. URL: <a href="http://www.ietf.org/rfc/rfc3986.txt">http://www.ietf.org/rfc/rfc3986.txt</a>
+</dd><dt id="bib-XML-NAMES">[XML-NAMES]</dt><dd>Richard Tobin; et al. <a href="http://www.w3.org/TR/2009/REC-xml-names-20091208/"><cite>Namespaces in XML 1.0 (Third Edition).</cite></a> 8 December 2009. W3C Recommendation. URL: <a href="http://www.w3.org/TR/2009/REC-xml-names-20091208/">http://www.w3.org/TR/2009/REC-xml-names-20091208/</a>
+</dd><dt id="bib-XMLSCHEMA11-2">[XMLSCHEMA11-2]</dt><dd>Henry S. Thompson; et al. <a href="http://www.w3.org/TR/2012/REC-xmlschema11-2-20120405/"><cite>W3C XML Schema Definition Language (XSD) 1.1 Part 2: Datatypes.</cite></a> 5 April 2012. W3C Recommendation URL: <a href="http://www.w3.org/TR/2012/REC-xmlschema11-2-20120405/">http://www.w3.org/TR/2012/REC-xmlschema11-2-20120405/</a>
+</dd></dl></div><div id="informative-references" class="section"><h3><span class="secno">B.2 </span>Informative references</h3><dl class="bibliography"><dt id="bib-PROV-AQ">[PROV-AQ]</dt><dd>Graham Klyne and Paul Groth (eds.) Luc Moreau, Olaf Hartig, Yogesh Simmhan, James Meyers, Timothy Lebo, Khalid Belhajjame, and Simon Miles <a href="http://www.w3.org/TR/prov-aq/"><cite>Provenance Access and Query</cite></a>. 2011, Working Draft. URL: <a href="http://www.w3.org/TR/prov-aq/">http://www.w3.org/TR/prov-aq/</a>
+</dd><dt id="bib-PROV-CONSTRAINTS">[PROV-CONSTRAINTS]</dt><dd>James Cheney, Paolo Missier, and Luc Moreau (eds.)<a href="http://www.w3.org/TR/prov-constraints/"><cite>Constraints of the Prov Data Model</cite></a>. 2012, Working Draft. URL: <a href="http://www.w3.org/TR/prov-constraints/">http://www.w3.org/TR/prov-constraints/</a>
+</dd><dt id="bib-PROV-DM">[PROV-DM]</dt><dd>Luc Moreau and Paolo Missier (eds.) Khalid Belhajjame, Reza B'Far, Stephen Cresswell, Yolanda Gil, Paul Groth, Graham Klyne, Jim McCusker, Simon Miles, James Myers, Satya Sahoo, and Curt Tilmes<a href="http://www.w3.org/TR/prov-dm/"><cite>PROV-DM: The PROV Data Model</cite></a>. 2012, Working Draft. URL: <a href="http://www.w3.org/TR/prov-dm/">http://www.w3.org/TR/prov-dm/</a>
+</dd><dt id="bib-PROV-RDF">[PROV-RDF]</dt><dd>James Cheney<a href="http://www.w3.org/2011/prov/wiki/ProvRDF"><cite>PROV-RDF Mapping </cite></a>2012, Working in Progress. URL: <a href="http://www.w3.org/2011/prov/wiki/ProvRDF">http://www.w3.org/2011/prov/wiki/ProvRDF</a>
+</dd><dt id="bib-PROV-SEM">[PROV-SEM]</dt><dd>James Cheney <a href="http://www.w3.org/2011/prov/wiki/FormalSemanticsStrawman"><cite>Formal Semantics Strawman</cite></a>. 2011, Work in progress. URL: <a href="http://www.w3.org/2011/prov/wiki/FormalSemanticsStrawman">http://www.w3.org/2011/prov/wiki/FormalSemanticsStrawman</a>
+</dd><dt id="bib-PROV-XML">[PROV-XML]</dt><dd>James Cheney<a href="http://www.w3.org/2011/prov/wiki/ProvXML"><cite>PROV-XML Mapping </cite></a>2012, Working in Progress. URL: <a href="http://www.w3.org/2011/prov/wiki/ProvXML">http://www.w3.org/2011/prov/wiki/ProvXML</a>
+</dd><dt id="bib-UNISEC">[UNISEC]</dt><dd> Mark Davis and Michel Suignard. <a href="http://www.unicode.org/reports/tr36/"><cite>Unicode Security Considerations<cite></cite></cite></a>. 4 August 2010. URL: <a href="http://www.unicode.org/reports/tr36/" http:="" www.unicode.org="" reports="" tr36="" <="" a="">
+</a></dd></dl></div></div></body></html>