--- a/model/diff-n.html Fri Jul 13 11:00:39 2012 +0100
+++ b/model/diff-n.html Fri Jul 13 11:05:53 2012 +0100
@@ -14,6 +14,7 @@
<style type="text/css">
.note { font-size:small; margin-left:50px }
+ <span class="insert">
table.thinborder {
border-width: 1px;
border-spacing: 0px;
@@ -35,7 +36,16 @@
border-color: gray;
-moz-border-radius: ;
}
-</style>
+</span></style>
+
+
+
+
+
+
+
+
+
@@ -358,6 +368,10 @@
margin-bottom: 0;
}
+
+
+
+
/* --- EXAMPLES --- */
pre.example {
border-top: 1px solid #ff4500;
@@ -516,8 +530,760 @@
pre.sh_sourceCode .sh_paren { color: red; }
pre.sh_sourceCode .sh_attribute { color: #006400; }
-</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>
- <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-10-july-2012"><acronym title="World Wide Web Consortium">W3C</acronym> Editor's Draft <span class="delete">29 June</span><span class="insert">10 July</span> 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>
+
+
+
+</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;
+}
+
+<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;
+ margin: 1em 0em 0em;
+ border: 1px solid #f00;
+ background: #fff;
+}
+
+.syntax[id]::before {
+ content: "Syntax:</span> " attr(id);
+ width: 380px; /* How can we compute the length of "Constraint: " attr(id) */
+}
+
+
+<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;
+ font-weight: bold;
+ border: 1px solid #f00;
+ background: #fff;
+ padding: 3px 1em;
+}
+
+<span class="delete">.syntax</span><span class="insert">.unamedconstraint</span> {
+ padding: 1em;
+ margin: 1em 0em 0em;
+ border: 1px solid <span class="delete">#f00;</span><span class="insert">#00f;</span>
+ background: #fff;
+}<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;
+ 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:</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: 95%;
+}
+.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) */
+}
+
+
+.interpretation::before {
+ content: "Interpretation";
+ display: block;
+ width: 150px;
+ 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;</span>
+}
+
+<span class="delete">.definition {
+ padding: 1em;
+ margin: 1em 0em 0em;
+ border: 1px solid #777;
+ background: #fff;
+}
+
+.definition[id]::before</span><span class="insert">.structural-forward::before</span> {
+ content: <span class="delete">"Definition: " attr(id);
+ width: 380px;
+}
+
+
+.definition::before {
+ content: "Definition";
+ display: block;
+ width: 150px;
+ 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;</span>
+}
+
+
+<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;</span><span class="insert">color: black;</span>
+}
+
+<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 {
+ 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: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;
+}
+
+
+
+</span>
+
+</style><link href="http://www.w3.org/StyleSheets/TR/W3C-WD" 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="w3c-working-draft-24-july-2012"><acronym title="World Wide Web Consortium">W3C</acronym> Working Draft <span class="delete">03 May</span><span class="insert">24 July</span> 2012</h2>
+<dl><dt>This<span class="insert"> version:</span></dt><dd><a href="http://www.w3.org/TR/2012/WD-prov-n-20120724/"><span class="insert">http://www.w3.org/TR/2012/WD-prov-n-20120724/</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>
+<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>
<dt><span class="insert">Authors:</span></dt><dd><a href="http://homepages.inf.ed.ac.uk/jcheney/"><span class="insert">James Cheney</span></a><span class="insert">, University of Edinburgh</span></dd>
<dd><a href="http://soiland-reyes.com/stian/"><span class="insert">Stian Soiland-Reyes</span></a><span class="insert">, University of Manchester</span></dd>
@@ -525,39 +1291,42 @@
<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
+<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 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</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</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.
-PROV-DM is organized in six components, respectively dealing with:
+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) 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.
+(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>
+
<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 <span class="delete">review, before the implementation phase.</span><span class="insert">review.</span></p>
-
-<p>This specification identifies one <a href="http://www.w3.org/2005/10/Process-20051014/tr#cfi">feature at risk</a>:<span class="insert"> the expression</span> <a href="#expression-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="last-call"><span class="insert">Last Call</span></h4>
+<p><span class="insert">
+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.</span></p>
+
+<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">: the expression Mention </span><a href="#expression-mention"><span class="insert">(section 3.5.3)</span></a><span class="insert"> might be removed from PROV if implementation experience reveals problems with supporting this construct.</span></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
@@ -585,7 +1354,24 @@
<li>Readers seeking to implement other PROV serializations
should focus on PROV-DM and PROV-CONSTRAINTS. <span class="delete">PROV-O, PROV-N, PROV-XML</span><span class="insert">PROV-O and PROV-N</span> offer examples of mapping to <span class="delete">RDF,</span><span class="insert">RDF and</span> text,<span class="delete"> and XML,</span> 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 <span class="delete">target audience</span><span class="insert">Target Audience</span></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="#main-productions" class="tocxref"><span class="secno"><span class="insert">2.3 </span></span><span class="insert">Main Productions</span></a></li><li class="tocline"><a href="#prov-n-optionals" class="tocxref"><span class="secno"><span class="delete">2.3</span><span class="insert">2.4</span> </span>Optional terms in expressions</a></li><li class="tocline"><a href="#prov-n-standard-terms" class="tocxref"><span class="secno"><span class="delete">2.4</span><span class="insert">2.5</span> </span>Identifiers and attributes</a></li><li class="tocline"><a href="#comments" class="tocxref"><span class="secno"><span class="delete">2.5</span><span class="insert">2.6</span> </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-constructor" class="tocxref"><span class="secno">3.4.1 </span>Bundle <span class="delete">Declaration</span><span class="insert">Constructor</span></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="#extensibility" class="tocxref"><span class="secno"><span class="insert">5. </span></span><span class="insert">Extensibility</span></a></li><li class="tocline"><a href="#media-type" class="tocxref"><span class="secno"><span class="delete">5.</span><span class="insert">6.</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 class="delete">First Public Working Draft</span>
+
+<p>This <span class="delete">is the first public release of the PROV-N
+document. Following feedback, the Working Group has decided to
+reorganize the PROV-DM document substantially, separating the data model,
+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 a <span class="delete">First Public</span><span class="insert">Last Call</span> Working Draft. This document is intended to become a <acronym title="World Wide Web Consortium">W3C</acronym> Recommendation. If you wish to make comments regarding this document, please send them to <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>).<span class="insert"> The Last Call period ends 18 September 2012.</span> All feedback is welcome.</p><p>Publication as a Working 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><span class="insert">This is a Last Call Working Draft and thus the Working Group has determined that this document has satisfied the relevant technical requirements and is sufficiently stable to advance through the Technical Recommendation process.</span></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 <span class="delete">target audience</span><span class="insert">Target Audience</span></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="#main-productions" class="tocxref"><span class="secno"><span class="insert">2.3 </span></span><span class="insert">Main Productions</span></a></li><li class="tocline"><a href="#prov-n-optionals" class="tocxref"><span class="secno"><span class="delete">2.3</span><span class="insert">2.4</span> </span>Optional terms in expressions</a></li><li class="tocline"><a href="#prov-n-standard-terms" class="tocxref"><span class="secno"><span class="delete">2.4</span><span class="insert">2.5</span> </span>Identifiers and attributes</a></li><li class="tocline"><a href="#comments" class="tocxref"><span class="secno"><span class="insert">2.6 </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-primary-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-constructor" class="tocxref"><span class="secno">3.4.1 </span><span class="delete">Alternate</span><span class="insert">Bundle Constructor</span></a></li><li class="tocline"><a href="#expression-bundle-type" class="tocxref"><span class="secno">3.4.2 </span><span class="delete">Specialization</span><span class="insert">Bundle Type</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" class="tocxref"><span class="secno">3.6.1 </span><span class="delete">Note</span><span class="insert">Collection</span></a></li><li class="tocline"><a href="#expression-collection-membership" class="tocxref"><span class="secno">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><li class="tocline"><a href="#semantic-rules-summary" class="tocxref"><span class="secno"><span class="insert">3.7.5 </span></span><span class="insert">Summary of additional semantic rules</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="insert">Toplevel Bundle</span></a></li><li class="tocline"><a href="#extensibility" class="tocxref"><span class="secno">5. </span><span class="delete">Account</span><span class="insert">Extensibility</span></a></li><li class="tocline"><a href="#media-type" class="tocxref"><span class="secno">6. </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>
+
+
+
+
+
+
@@ -597,7 +1383,7 @@
<div id="introduction" class="section">
<h2><span class="secno">1. </span>Introduction</h2>
-<p> Provenance is a record that describes the people,
+<p> Provenance is<span class="delete"> defined as</span> 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
@@ -611,7 +1397,7 @@
-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:
+With these two requirements in mind, this document introduces PROV-N, <span class="insert">the PROV notation, </span>a syntax<span class="delete"> notation</span> 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.
@@ -631,8 +1417,8 @@
<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
-<code><a class="grammarRef" href="#prod-bundle">bundle</a></code>.</li>
+<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 <span class="delete">container</span>
+<code><a class="grammarRef" href="#prod-bundle"><span class="insert">bundle</span></a></code>.</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 <code><a class="grammarRef" href="#prod-expression">expression</a></code> nonterminal a useful entry point into the grammar.</li>
</ul>
@@ -641,20 +1427,23 @@
<div id="structure-of-this-document" class="section">
<h3><span class="secno">1.2 </span>Structure of this Document</h3>
-<p>This document <span class="insert">is </span>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="#extensibility"><span class="insert">Section 5</span></a><span class="insert"> defines the extensibility mechanism for the PROV-N notation.</span></p>
-
-<p><a href="#media-type">Section <span class="delete">5</span><span class="insert">6</span></a> defines media type for the PROV-N notation.</p>
+<p>This document <span class="delete">defines a grammar using the Extended Backus-Naur Form (EBNF) notation. Its productions correspond to PROV data model types and relations.
+</span><span class="insert">is structured as follows.
+
+</span></p><span class="delete">
+It is structured as follows.
+
+</span><p><a href="#general-conventions">Section 2</a> provides <span class="delete">the design rationale for the PROV Notation.</span>
+
+<span class="delete">Section 3</span><span class="delete"> defines the notation for the Extended Backus-Naur Form (EBNF) grammar used in this specification.</span><span class="insert">general consideration about the PROV-N grammar.</span></p>
+
+<p><a href="#prov-n-expressions">Section <span class="delete">4</span><span class="insert">3</span></a> presents the grammar of all expressions of the language grouped according to the PROV data model components.</p>
+
+<p><a href="#toplevelBundle">Section <span class="delete">5</span><span class="insert">4</span></a> defines the grammar of <span class="delete">containers,</span><span class="insert">toplevel bundles,</span> a house-keeping construct of PROV-N capable of packaging up PROV-N expressions and namespace declarations.</p>
+
+<p><a href="#extensibility">Section <span class="delete">6</span><span class="insert">5</span></a> defines the <span class="delete">grammar of accounts.</span><span class="insert">extensibility mechanism for the PROV-N notation.</span></p>
+
+<p><a href="#media-type">Section <span class="delete">7</span><span class="insert">6</span></a> defines media type for the PROV-N notation.</p>
</div>
@@ -680,9 +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><b>prefix</b></a></td><td><b>namespace uri</b></td> <td><b>definition</b></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"><span class="delete">4.7.1</span><span class="insert">3.7.4</span></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>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>
@@ -716,16 +1506,20 @@
<p>
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_3"><div class="anexampleTitle"><a class="internalDFN" href="#example_3">Example <span class="delete">1</span><span class="insert">3</span></a></div>
+</p>
+<div class="anexample" id="example_3"><div class="anexampleTitle"><a class="internalDFN" href="#example_3"><span class="insert">Example 3</span></a></div>
<p>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.
</p><pre class="codeexample">wasDerivedFrom(e2, e1)
</pre>
</div>
-<div class="anexample" id="example_4"><div class="anexampleTitle"><a class="internalDFN" href="#example_4">Example <span class="delete">2</span><span class="insert">4</span></a></div>
-<span class="delete">In the</span><p><span class="insert">The</span> following <span class="delete">expressions,</span><span class="insert">expression expands the above derivation relation by providing
-additional elements</span> the optional activity <span class="name">a</span><span class="delete"> along with</span><span class="insert">,</span> the generation<span class="delete"> and usage identifiers</span> <span class="name">g2</span><span class="insert">,</span> and<span class="insert"> the usage</span> <span class="name">u1</span>:
-</p><pre class="codeexample">wasDerivedFrom(e2, e1, a, g2, u1)
+<span class="delete">
+In the</span><div class="anexample" id="example_4"><div class="anexampleTitle"><a class="internalDFN" href="#example_4"><span class="insert">Example 4</span></a></div>
+<p><span class="insert">The</span> following <span class="delete">expressions,</span><span class="insert">expression expands the above derivation relation by providing
+additional elements</span> the optional activity <span class="name">a</span><span class="delete"> along with</span><span class="insert">,</span> the generation <span class="name"><span class="insert">g2</span></span><span class="insert">, </span>and <span class="insert">the </span>usage <span class="delete">identifiers, and timestamps have been added to further qualify the derivation:
+</span><span class="name"><span class="insert">u1</span></span><span class="insert">:
+</span></p><pre class="codeexample">wasDerivedFrom(e2, e1, a, g2, u1)<span class="delete">
+activity(a2, 2011-11-16T16:00:00, 2011-11-16T16:00:01)</span>
</pre>
</div>
@@ -777,22 +1571,25 @@
</p><ul>
<li>
<span class="delete">E</span>
- <code class="grammarRef"><span class="insert">expr</span></code>: matches <span class="delete">term satisfying rule</span><span class="insert">production</span> for <span class="insert">nonterminal </span>symbol <span class="delete">E.</span><code class="grammarRef"><span class="insert">expr</span></code>
-</li>
-
-
-<li>
- <code class="grammarRef"><span class="insert">TERMINAL</span></code><span class="insert">: matches production for terminal symbol </span><code class="grammarRef"><span class="insert">TERMINAL</span></code>
-</li>
-
-<li>
-<span class="delete">abc</span>
- <code class="grammarRef"><span class="insert">"abc"</span></code>: matches the literal string inside the single quotes.
+ <code class="grammarRef"><span class="insert">expr</span></code>: matches <span class="delete">term satisfying rule</span><span class="insert">production</span> for <span class="insert">nonterminal </span>symbol <span class="delete">E.
+</span>
+
+
+<span class="delete">abc</span><span class="delete">: matches the literal string inside the single quotes.</span><code class="grammarRef"><span class="insert">expr</span></code>
</li>
<li>
+ <code class="grammarRef"><span class="insert">TERMINAL</span></code><span class="insert">: matches production for terminal symbol </span><code class="grammarRef"><span class="insert">TERMINAL</span></code>
+</li>
+
+<li>
+ <code class="grammarRef"><span class="insert">"abc"</span></code><span class="insert">: matches the literal string inside the single quotes.
+</span></li>
+
+
+<li>
<code class="grammarRef"><span class="insert">(term)?</span></code><span class="insert">: optional, matches </span><em>term</em><span class="delete">: optional </span><span class="delete">term</span><span class="delete">, matches </span><span class="delete">term</span> or nothing.
</li>
@@ -824,41 +1621,70 @@
<p><span class="insert">Two productions are entry points to the grammar.</span></p>
-<p>The <span class="delete">grammar is centered on nonterminals for various types of </span><span class="insert">production </span><code class="grammarRef"><a class="grammarRef" href="#prod-expression">expression</a><span class="delete">. The main production is introduced here below as it reflects the rationale</span></code><span class="insert">
-provides the structure</span> for the <span class="delete">design</span><em><span class="insert">core expressions</span></em> of <span class="delete">the entire grammar. Note that parser developers may use the top level
-</span><span class="delete">bundle</span><span class="delete"> nonterminal as a starting point instead.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-</span><span class="insert">PROV-N.
+<p>The <span class="delete">grammar</span><span class="insert">production </span><code class="grammarRef"><a class="grammarRef" href="#prod-expression"><span class="insert">expression</span></a></code><span class="insert">
+provides the structure for the </span><em><span class="insert">core expressions</span></em><span class="insert"> of PROV-N.
</span></p><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="insert">| </span><span class="prod"><a class="grammarRef" href="#prod-extensibilityExpression"><span class="insert">extensibilityExpression</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> )</code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-expression" name="prod-expression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">2</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">expression</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-entityExpression"><span class="insert">entityExpression</span></a></span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-activityExpression"><span class="insert">activityExpression</span></a></span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-generationExpression"><span class="insert">generationExpression</span></a></span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-usageExpression"><span class="insert">usageExpression</span></a></span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-startExpression"><span class="insert">startExpression</span></a></span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-endExpression"><span class="insert">endExpression</span></a></span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-invalidationExpression"><span class="insert">invalidationExpression</span></a></span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-communicationExpression"><span class="insert">communicationExpression</span></a></span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-agentExpression"><span class="insert">agentExpression</span></a></span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-associationExpression"><span class="insert">associationExpression</span></a></span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-attributionExpression"><span class="insert">attributionExpression</span></a></span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-delegationExpression"><span class="insert">delegationExpression</span></a></span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-derivationExpression"><span class="insert">derivationExpression</span></a></span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-influenceExpression"><span class="insert">influenceExpression</span></a></span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-alternateExpression"><span class="insert">alternateExpression</span></a></span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-specializationExpression"><span class="insert">specializationExpression</span></a></span><span class="insert"> | </span><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-extensibilityExpression"><span class="insert">extensibilityExpression</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>
-<p>Each <span class="insert">of the symbols included in </span><code>expression<span class="delete"> non-terminal </span></code><span class="insert"> above, i.e., </span><code><a class="grammarRef" href="#prod-entityExpression"><span class="insert">entityExpression</span></a></code><span class="insert">, </span><code><a class="grammarRef" href="#prod-activityExpression"><span class="insert">activityExpression</span></a></code><span class="insert"> etc., corresponds to one concept (e.g., Entity, Activity, etc.) of the PROV data model.</span></p>
+<p><span class="insert">Each of the symbols included in </span><code><span class="insert">expression</span></code><span class="insert"> above, i.e., </span><code><a class="grammarRef" href="#prod-entityExpression"><span class="insert">entityExpression</span></a></code><span class="insert">, </span><code><a class="grammarRef" href="#prod-activityExpression"><span class="insert">activityExpression</span></a></code><span class="insert"> etc., corresponds to one concept (e.g., Entity, Activity, etc.) of the PROV data model.</span></p>
<p><span class="insert">Alternatively, the production rule </span><code><a href="#prod-bundle"><span class="grammarRef"><span class="insert">bundle</span></span></a></code><span class="insert">
-provides the overall structure of PROV-N descriptions. It is a wrapper for
- a set of expressions, such that the text for an element matches the corresponding </span><code><a class="grammarRef" href="#prod-expression">expression</a><span class="delete">, i.e., </span><span class="delete">entityExpression</span><span class="delete">,</span></code><span class="insert"> production,</span> <span class="delete">activityExpression</span><span class="delete"> etc., corresponds to one element (entity, activity, etc.) of the PROV data model.
-</span><span class="delete">A PROV-N document consists of a collection of </span><span class="delete">expressions</span><span class="delete">, wrapped in a </span><span class="delete">toplevel bundle</span><span class="delete"> with</span><span class="insert">and</span> some namespace <span class="delete">declarations, such that the text for an element matches the corresponding </span><span class="delete">expression</span><span class="delete"> production of the grammar.</span><span class="insert">declarations.</span></p>
+provides the overall structure of PROV-N descriptions. It</span> is <span class="delete">centered on nonterminals </span><span class="insert">a wrapper </span>for<span class="delete"> various types</span><span class="insert">
+ a set</span> of <span class="insert">expressions, such that the text for an element matches the corresponding </span><code><a class="grammarRef" href="#prod-expression">expression<span class="delete">. 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 </span><span class="delete">container</span></a></code><span class="insert"> production,</span> <span class="delete">nonterminal as a starting point instead.
+
+</span>
+
+<span class="delete">expression</span>
+<span class="delete"> ::=</span>
+
+<span class="delete">entityExpression</span><span class="delete">
+| </span><span class="delete">activityExpression</span><span class="delete">
+| </span><span class="delete">generationExpression</span><span class="delete">
+| </span><span class="delete">usageExpression</span>
+<span class="delete">
+ | </span><span class="delete">startExpression</span><span class="delete">
+| </span><span class="delete">endExpression</span><span class="delete">
+| </span><span class="delete">invalidationExpression</span><span class="delete">
+| </span><span class="delete">communicationExpression</span><span class="delete">
+| </span><span class="delete">startByActivityExpression</span>
+<span class="delete">
+
+ | </span><span class="delete">agentExpression</span><span class="delete">
+| </span><span class="delete">attributionExpression</span><span class="delete">
+| </span><span class="delete">associationExpression</span><span class="delete">
+| </span><span class="delete">responsibilityExpression</span>
+<span class="delete">
+
+ | </span><span class="delete">derivationExpression</span><span class="delete">
+| </span><span class="delete">revisionExpression</span><span class="delete">
+| </span><span class="delete">quotationExpression</span> <span class="delete">
+ | </span><span class="delete">hadOriginalSourceExpression</span><span class="delete">
+| </span><span class="delete">traceExpression</span>
+<span class="delete">
+
+ | </span><span class="delete">alternateExpression</span><span class="delete">
+| </span><span class="delete">specializationExpression</span>
+<span class="delete">
+
+
+ | </span><span class="delete">noteExpression</span><span class="delete">
+| </span><span class="delete">annotationExpression</span>
+
+
+
+<span class="delete">
+
+Each expression non-terminal </span><span class="delete">expression</span><span class="delete">, i.e., </span><span class="delete">entityExpression</span><span class="delete">, </span><span class="delete">activityExpression</span><span class="delete"> etc., corresponds to one element (entity, activity, etc.) of the PROV data model.
+</span><span class="delete">A PROV-N document consists of a collection of </span><span class="delete">expressions</span><span class="delete">, wrapped in an </span><span class="delete">expression container</span><span class="delete"> with</span><span class="insert">and</span> some namespace <span class="delete">declarations, such that the text for an element matches the corresponding </span><span class="delete">expression</span><span class="delete"> production of the grammar.
+
+</span><span class="insert">declarations.</span></p>
</div>
@@ -868,50 +1694,35 @@
Some terms in an expression may be optional. For example:
-<span class="delete">Example 3</span>
-<span class="delete">wasDerivedFrom(e2, e1, a, g2, u1)
+<div class="anexample" id="example_5"><div class="anexampleTitle"><a class="internalDFN" href="#example_5"><span class="insert">Example 5</span></a></div>
+<pre class="codeexample">wasDerivedFrom(e2, e1, a, g2, u1)
wasDerivedFrom(e2, e1)
-</span><span class="delete">
+</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.
-</span>
-
-<span class="delete">Example 4</span>
-<span class="delete">activity(a2, 2011-11-16T16:00:00, 2011-11-16T16:00:01)
-activity(a1)
-</span><span class="delete">
-The start and end times for Activity </span><span class="delete">a1</span><span class="delete"> are optional. They are specified in the first expression, but not in the second.
-</span>
-
-<span class="delete">The general rule for optionals is that, if </span><span class="delete">none</span><span class="delete"> of the optionals are used in the expression, then they are simply omitted, resulting in a simpler expression as in the examples above.</span><span class="delete">
-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><span class="delete">'-'</span><span class="delete"> is used for this purpose.</span>
-
-<div class="anexample" id="example_5"><div class="anexampleTitle"><a class="internalDFN" href="#example_5">Example 5</a></div>
-<pre class="codeexample"><span class="insert">wasDerivedFrom(e2, e1, a, g2, u1)
-wasDerivedFrom(e2, e1)
-</span></pre><span class="insert">
-In a derivation expression, the activity, generation, and usage are optional terms. They are specified in the first derivation, but not in the second.
-</span></div>
+</div>
<div class="anexample" id="example_6"><div class="anexampleTitle"><a class="internalDFN" href="#example_6"><span class="insert">Example 6</span></a></div>
-<pre class="codeexample"><span class="insert">activity(a2, 2011-11-16T16:00:00, 2011-11-16T16:00:01)
+<pre class="codeexample">activity(a2, 2011-11-16T16:00:00, 2011-11-16T16:00:01)
activity(a1)
-</span></pre><span class="insert">
-The start and end times for Activity </span><span class="name"><span class="insert">a1</span></span><span class="insert"> are optional. They are specified in the first expression, but not in the second.
-</span></div>
-
-<p><span class="insert">The general rule for optionals is that, if </span><em><span class="insert">none</span></em><span class="insert"> of the optionals are used in the expression, then they are simply omitted, resulting in a simpler expression as in the examples above.</span></p><span class="insert">
-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><span class="name"><span class="insert">'-'</span></span><span class="insert"> is used for this purpose.
-
-</span><div class="anexample" id="example_7"><div class="anexampleTitle"><a class="internalDFN" href="#example_7"><span class="insert">Example 7</span></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.
+</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 class="delete">-</span><span class="insert">'-'</span></span> is used for this purpose.
+
+<div class="anexample" id="example_7"><div class="anexampleTitle"><a class="internalDFN" href="#example_7"><span class="insert">Example 7</span></a></div>
+<p>In the first expression below, all optionals are specified. However in the <span class="delete">second,</span><span class="insert">second and third,</span> only <span class="delete">the last </span>one <span class="insert">optional </span>is specified, forcing the use of the marker for the missing terms.<span class="delete"> In the last, no marker is necessary because all </span><span class="delete">remaining</span><span class="delete"> optionals after </span><span class="delete">a</span><span class="delete"> are missing.
+
+</span>
</p><pre class="codeexample">wasDerivedFrom(e2, e1, a, g2, u1)
wasDerivedFrom(e2, e1, -, -, u1)
-wasDerivedFrom(e2, e1, a, -, -)
+wasDerivedFrom(e2, e1, <span class="delete">a)</span><span class="insert">a, -, -)</span>
</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_8"><div class="anexampleTitle"><a class="internalDFN" href="#example_8">Example <span class="delete">6</span><span class="insert">8</span></a></div>
+<div class="anexample" id="example_8"><div class="anexampleTitle"><a class="internalDFN" href="#example_8"><span class="insert">Example 8</span></a></div>
<pre class="codeexample">activity(a1)
activity(a1, -, -)
</pre>
@@ -924,24 +1735,29 @@
<h3><span class="secno"><span class="delete">2.4</span><span class="insert">2.5</span> </span>Identifiers and attributes</h3>
<p><span class="insert">Almost all expressions defined in the grammar include an identifier (see </span><a href="#expression-identifier"><span class="insert">Section 3.7.1</span></a><span class="insert"> for the full syntax of identifiers). </span>Most expressions<span class="delete"> defined</span><span class="insert">
-can aslo include a set of attribute-value pairs, delimited by square brackets. Identifiers are optional except for Entities, Activites, and Agents. Identifiers are always the first term</span> in <span class="delete">the grammar include the use of two terms: an identifier and</span><span class="insert">any expression. Optional identifiers </span><em class="rfc2119" title="must"><span class="insert">must</span></em><span class="insert"> be separated using</span> a <span class="delete">set of attribute-value pairs, delimited by square brackets. Identifiers</span><span class="insert">semi-colon ';', but where the identifiers</span> are <span class="delete">optional except for Entities, Activites, and Agents. Identifiers are always the first term in any expression. By convention, optional identifiers are separated using</span><span class="insert">required,</span> a <span class="delete">semi-colon ';'.</span><span class="insert">regular comma ',' </span><em class="rfc2119" title="must"><span class="insert">must</span></em><span class="insert"> be used.</span> This makes it possible to completely omit an optional identifier with no ambiguity arising. Also, if the set of attribute-value pairs is present, it is always the last term in any expression.</p>
-
-<div class="anexample" id="example_9"><div class="anexampleTitle"><a class="internalDFN" href="#example_9">Example <span class="delete">7</span><span class="insert">9</span></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.<span class="insert"> This is equivalent to the first expression. </span></p>
+can aslo include a set of attribute-value pairs, delimited by square brackets. Identifiers are optional except for Entities, Activites, and Agents. Identifiers are always the first term</span> in <span class="delete">the grammar include the use</span><span class="insert">any expression. Optional identifiers </span><em class="rfc2119" title="must"><span class="insert">must</span></em><span class="insert"> be separated using a semi-colon ';', but where the identifiers are required, a regular comma ',' </span><em class="rfc2119" title="must"><span class="insert">must</span></em><span class="insert"> be used. This makes it possible to completely omit an optional identifier with no ambiguity arising. Also, if the set</span> of <span class="delete">two terms:</span><span class="insert">attribute-value pairs is present, it is always the last term in any expression.</span></p>
+
+<div class="anexample" id="example_9"><div class="anexampleTitle"><a class="internalDFN" href="#example_9"><span class="insert">Example 9</span></a></div>
+<p><span class="insert">Derivation has</span> an <span class="insert">optional identifier. In the first expression, the </span>identifier <span class="delete">for the predicate, and a set of attribute-value pairs, delimited by square brackets. Both are optional (unless specified otherwise). By convention, the</span><span class="insert">is not available, while it is explicit in the second. The third example shows that one can optionally indicate the missing</span> identifier <span class="delete">is the first term in any expression, and the set of attribute-value pairs is the last. </span><span class="delete">
+Consistent with the convention on optional terms, the '</span><span class="insert">using the </span><span class="name">-</span><span class="delete">' marker can be used when the identifier</span><span class="insert"> marker. This</span> is <span class="delete">not available. Additionally, the grammar rules are defined in such a way that the optional identifier can be omitted altogether with no ambiguity arising.
+
+</span>
+<span class="delete">Derivation has an optional identifier. In</span><span class="insert">equivalent to</span> the first <span class="delete">expression, the identifier is not available. It is explicit in the second, and marked by a </span><span class="delete">-</span><span class="delete"> in the third.</span><span class="insert">expression. </span></p>
<pre class="codeexample">wasDerivedFrom(e2, e1)
-wasDerivedFrom(d; e2, e1)
-wasDerivedFrom(-; e2, e1)
+<span class="delete">wasDerivedFrom(d,</span><span class="insert">wasDerivedFrom(d;</span> e2, e1)
+<span class="delete">wasDerivedFrom(-,</span><span class="insert">wasDerivedFrom(-;</span> e2, e1)
</pre>
</div>
-Lack of attributes can be equivalently expressed by omitting the list, or by using an empty list.
-
-
-
-<div class="anexample" id="example_10"><div class="anexampleTitle"><a class="internalDFN" href="#example_10">Example <span class="delete">8</span><span class="insert">10</span></a></div>
-<p>The first and second <span class="delete">activities</span><span class="insert">activity expressions</span> have no <span class="delete">attributes.</span><span class="insert">attributes, and are equivalent.</span>
-
-The third activity <span class="insert"> expression </span>has two attributes.
+<span class="delete">A distinction is made between expressions with no attributes, and expressions that include</span><span class="insert">Lack of attributes can be equivalently expressed by omitting the list, or by using</span> an empty <span class="delete">list of attributes.
+</span><span class="insert">list.
+
+
+
+</span><div class="anexample" id="example_10"><div class="anexampleTitle"><a class="internalDFN" href="#example_10"><span class="insert">Example 10</span></a></div>
+<p>The first <span class="insert">and second </span>activity <span class="delete">does not</span><span class="insert">expressions</span> have <span class="delete">any attributes. </span><span class="insert">no attributes, and are equivalent.
+
+</span>The <span class="delete">second has an empty list of attributes. The </span>third activity <span class="insert"> expression </span>has two attributes.
</p><pre class="codeexample"><span class="delete">activity(ex:a10)
activity(ex:a10,</span><span class="insert">activity(ex:a1)
activity(ex:a1,</span> [])
@@ -952,16 +1768,16 @@
</div>
<div id="comments" class="section">
-<h3><span class="secno"><span class="delete">2.5</span><span class="insert">2.6</span> </span>Comments</h3>
+<h3><span class="secno"><span class="insert">2.6 </span></span><span class="insert">Comments</span></h3><span class="insert">
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 <span class="delete">cooments</span><span class="insert">comments</span> 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>
+</span><ul>
+<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 comments 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>
</div>
@@ -970,7 +1786,9 @@
<div id="prov-n-expressions" class="section">
<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>
+<p>This section introduces grammar productions for each expression, followed by small examples <span class="insert">of expressions </span>illustrating the <span class="delete">use of</span><span class="insert">grammar. Strings conforming to the grammar are valid</span> expressions in <span class="delete">PROV-N. Strings conforming to the grammar are valid expressions in </span>the PROV-N language.
+
+</p>
<div id="component1" class="section">
<h3><span class="secno">3.1 </span>Component 1: Entities and Activities</h3>
@@ -984,33 +1802,58 @@
</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>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-entityExpression" name="prod-entityExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">3</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">entityExpression</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"entity" "(" </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>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-optionalAttributeValuePairs" name="prod-optionalAttributeValuePairs"></a><span class="insert">[</span><span class="prodNo"><span class="insert">4</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">optionalAttributeValuePairs</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-attributeValuePairs"><span class="insert">attributeValuePairs</span></a></span><span class="insert"> "]" )?</span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-attributeValuePairs" name="prod-attributeValuePairs"></a><span class="insert">[</span><span class="prodNo"><span class="insert">5</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">attributeValuePairs</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-attributeValuePair"><span class="insert">attributeValuePair</span></a></span><span class="insert"> ( "," </span><span class="prod"><a class="grammarRef" href="#prod-attributeValuePair"><span class="insert">attributeValuePair</span></a></span><span class="insert"> )* )</span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-attributeValuePair" name="prod-attributeValuePair"></a><span class="insert">[</span><span class="prodNo"><span class="insert">6</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">attributeValuePair</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="prod"><a class="grammarRef" href="#prod-attribute"><span class="insert">attribute</span></a></span><span class="insert"> "=" </span><span class="prod"><a class="grammarRef" href="#prod-literal"><span class="insert">literal</span></a></span></code></td> </tr> </tbody>
</table>
-<p>The following table summarizes how each constituent of a PROV-DM Entity maps to a <span class="delete">non-terminal.</span><span class="insert">PROV-N syntax element.</span></p>
+<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Entity maps to a PROV-N syntax element.</span></p>
+<span class="delete">entityExpression</span><span class="delete"> ::=
+</span><span class="delete">entity</span>
+<span class="delete">(</span>
+
<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>
+<tbody><tr><td><b><span class="insert">Entity</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/#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>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#entity.id"><span class="attribute" id="entity.id"><span class="insert">id</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-identifier">identifier
+<span class="delete">optional-attribute-values</span>
+<span class="delete">)</span>
+
+<span class="delete">optional-attribute-values</span><span class="delete"> ::=
+</span><span class="delete">,</span>
+<span class="delete">[</span>
+<span class="delete">attribute-values</span>
+<span class="delete">]</span>
+
+<span class="delete">attribute-values</span><span class="delete"> ::=
+</span><span class="delete">attribute-value</span><span class="delete">
+| </span><span class="delete">attribute-value</span> <span class="delete">,</span> <span class="delete">attribute-values</span>
+
+<span class="delete">attribute-value</span><span class="delete"> ::=
+</span><span class="delete">attribute</span>
+<span class="delete">=</span>
+<span class="delete">Literal</span>
+</a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#entity.attributes"><span class="attribute" id="entity.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_11"><div class="anexampleTitle"><a class="internalDFN" href="#example_11">Example <span class="delete">9</span><span class="insert">11</span></a></div>
+
+<div class="anexample" id="example_11"><div class="anexampleTitle"><a class="internalDFN" href="#example_11"><span class="insert">Example 11</span></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.
+ Here <span class="name">tr:WD-prov-dm-20111215</span> is the <span class="delete">optional </span>entity identifier, and <span class="name">[ prov:type="document" ]</span> groups the optional <span class="delete">attributes </span><span class="insert">attributes, only one in this example, </span>with their values.
<pre class="codeexample">
entity(tr:WD-prov-dm-20111215)
</pre>
-Here, the optional attributes are absent.
+<span class="delete">Here</span><span class="insert">Here,</span> the optional attributes are <span class="delete">not used.</span><span class="insert">absent.</span>
</div>
@@ -1021,35 +1864,50 @@
+
+
+
<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>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-activityExpression" name="prod-activityExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">7</span></span><span class="insert">] </span></td> <td><code class="production prod">activityExpression<span class="delete"> ::=
+</span><span class="delete">activity</span>
+</code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"activity" "(" </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-timeOrMarker"><span class="insert">timeOrMarker</span></a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-timeOrMarker"><span class="insert">timeOrMarker</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-timeOrMarker" name="prod-timeOrMarker"></a><span class="insert">[</span><span class="prodNo"><span class="insert">8</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">timeOrMarker</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-time"><span class="insert">time</span></a></span><span class="insert"> | "-" )</span></code></td> </tr> </tbody>
</table>
-<p>The following table summarizes how each constituent of a PROV-DM Activity maps to a <span class="delete">non-terminal.</span><span class="insert">PROV-N syntax element.</span></p>
+<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Activity maps to a PROV-N syntax element.</span></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>
+<tbody><tr><td><b><span class="insert">Activity</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/#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>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#activity.id"><span class="attribute" id="activity.id"><span class="insert">id</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-identifier">identifier
+<span class="delete">,</span><span class="delete">
+(</span><span class="delete">time</span><span class="delete"> | </span><span class="delete">-</span><span class="delete"> )
+</span><span class="delete">,</span><span class="delete">
+(</span><span class="delete">time</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/#activity.startTime"><span class="attribute" id="activity.startTime"><span class="insert">startTime</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-timeOrMarker"><span class="insert">timeOrMarker</span></a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#activity.endTime"><span class="attribute" id="activity.endTime"><span class="insert">endTime</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-timeOrMarker"><span class="insert">timeOrMarker</span></a></code></td></tr>
+
+
+
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#activity.attributes"><span class="attribute" id="activity.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_12"><div class="anexampleTitle"><a class="internalDFN" href="#example_12">Example <span class="delete">10</span><span class="insert">12</span></a></div>
+
+
+
+<div class="anexample" id="example_12"><div class="anexampleTitle"><a class="internalDFN" href="#example_12"><span class="insert">Example 12</span></a></div>
<pre class="codeexample">activity(ex:a10, 2011-11-16T16:00:00, 2011-11-16T16:00:01, [prov:type="createFile"])
</pre>
-<p>Here <span class="name">ex:a10</span> is the activity identifier, <span class="name">2011-11-16T16:00:00</span> and <span class="name">2011-11-16T16:00:01</span> are the optional start and end times for the activity, and <span class="name">[prov:type="createFile"]</span> are optional attributes. </p>
+<p>Here <span class="name">ex:a10</span> is the<span class="delete"> optional </span> 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, -, -)
@@ -1071,49 +1929,69 @@
+
+
+
<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>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-generationExpression" name="prod-generationExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">9</span></span><span class="insert">] </span></td> <td><code class="production prod">generationExpression<span class="delete"> ::=
+</span><span class="delete">wasGeneratedBy</span>
+</code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"wasGeneratedBy" "(" </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-aIdentifierOrMarker"><span class="insert">aIdentifierOrMarker</span></a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-timeOrMarker"><span class="insert">timeOrMarker</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-optionalIdentifier" name="prod-optionalIdentifier"></a><span class="insert">[</span><span class="prodNo"><span class="insert">10</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">optionalIdentifier</span></code></td> <td><span class="insert"> ::= </span></td> <td><code class="content">( <span class="prod"><a class="grammarRef" href="#prod-identifierOrMarker"><span class="insert">identifierOrMarker</span></a></span><span class="insert"> ";" )?</span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-identifierOrMarker" name="prod-identifierOrMarker"></a><span class="insert">[</span><span class="prodNo"><span class="insert">11</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">identifierOrMarker</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-identifier">identifier</a></span> | <span class="delete">-</span><span class="insert">"-"</span> ) <span class="delete">,</span>
+</code></td> </tr> </tbody>
</table>
-<p>The following table summarizes how each constituent of a PROV-DM Generation maps to a <span class="delete">non-terminal.</span><span class="insert">PROV-N syntax element.</span></p>
+<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Generation maps to a PROV-N syntax element.</span></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>
+<tbody><tr><td><b><span class="insert">Generation</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/#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>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#generation.id"><span class="attribute" id="generation.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/#generation.entity"><span class="attribute" id="generation.entity"><span class="insert">entity</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></a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#generation.activity"><span class="attribute" id="generation.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/#generation.time"><span class="attribute" id="generation.time">time</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></td><td><code class="content"><a class="grammarRef" href="#prod-timeOrMarker"><span class="insert">timeOrMarker</span></a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#generation.attributes"><span class="attribute" id="generation.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_13"><div class="anexampleTitle"><a class="internalDFN" href="#example_13">Example <span class="delete">11</span><span class="insert">13</span></a></div>
-
-<pre class="codeexample">wasGeneratedBy(ex:g1; tr:WD-prov-dm-20111215, ex:edit1, 2011-11-16T16:00:00, [ex:fct="save"])
+
+<div class="anexample" id="example_13"><div class="anexampleTitle"><a class="internalDFN" href="#example_13"><span class="insert">Example 13</span></a></div>
+
+
+
+<pre class="codeexample"><span class="delete">wasGeneratedBy(ex:g1,</span><span class="insert">wasGeneratedBy(ex:g1;</span> 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, <span class="delete">tr:WD-prov-dm-20111215)
-wasGeneratedBy(e, ex:edit1,</span><span class="insert">-)
-wasGeneratedBy(e2, a1,</span> 2011-11-16T16:00:00)
+<pre class="codeexample"><span class="delete">wasGeneratedBy(tr:WD-prov-dm-20111215, ex:edit1,</span><span class="insert">wasGeneratedBy(e2, a1,</span> -)
+<span class="delete">wasGeneratedBy(tr:WD-prov-dm-20111215, ex:edit1,</span><span class="insert">wasGeneratedBy(e2, a1,</span> 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)
+wasGeneratedBy(e2, <span class="delete">-, -, </span>[ex:fct="save"])
+<span class="delete">wasGeneratedBy(ex:g1, tr:WD-prov-dm-20111215, ex:edit1, -)
+wasGeneratedBy(-, tr:WD-prov-dm-20111215, ex:edit1, -)</span><span class="insert">wasGeneratedBy(ex:g1; e)
+wasGeneratedBy(ex:g1; e, a, tr:WD-prov-dm-20111215)</span>
</pre>
</div>
-<p><strong><span class="insert">Note:</span></strong> 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>
+<p><span class="delete">Even though the production </span><span class="insert">Additional semantic rules (</span><a href="#semantic-rules-summary"><span class="insert">Section 3.7.5</span></a><span class="insert">) apply to </span><code class="content"><a class="grammarRef" href="#prod-generationExpression">generationExpression<span class="delete"> allows for expressions </span><span class="delete">wasGeneratedBy(e2, -, -)</span><span class="delete"> and </span><span class="delete">wasGeneratedBy(-, e2, -, -)</span><span class="delete">, these expressions are not valid in PROV-N, since
+at least one of </span><span class="delete">activity</span><span class="delete">, </span><span class="delete">time</span><span class="delete">, or </span><span class="delete">attributes</span> <span class="delete">must</span><span class="delete"> be present.</span></a></code><span class="insert">.</span></p>
+
+
+
+
@@ -1125,231 +2003,319 @@
+
+
+
<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="delete">"," </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>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-usageExpression" name="prod-usageExpression"></a><span class="insert">[</span><span class="prodNo"><span class="insert">12</span></span><span class="insert">] </span></td> <td><code class="production prod">usageExpression<span class="delete"> ::=
+</span><span class="delete">used</span>
+</code></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><span class="insert">"used" "(" </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>
+<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-timeOrMarker"><span class="insert">timeOrMarker</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>The following table summarizes how each constituent of a PROV-DM Usage maps to a <span class="delete">non-terminal.</span><span class="insert">PROV-N syntax element.</span></p>
+<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Usage maps to a PROV-N syntax element.</span></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>
+<tbody><tr><td><b><span class="insert">Usage</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/#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>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#usage.id"><span class="attribute" id="usage.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/#usage.activity"><span class="attribute" id="usage.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">eIdentifier</span>
+<span class="delete">,</span><span class="delete"> ( </span></a></code></td></tr><tr><td><a href="http://www.w3.org/TR/prov-dm/#usage.entity"><span class="attribute" id="usage.entity"><span class="insert">entity</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/#usage.time"><span class="attribute" id="usage.time">time</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></td><td><code class="content"><a class="grammarRef" href="#prod-timeOrMarker"><span class="insert">timeOrMarker</span></a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#usage.attributes"><span class="attribute" id="usage.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_14"><div class="anexampleTitle"><a class="internalDFN" href="#example_14">Example <span class="delete">12</span><span class="insert">14</span></a></div>
+
+
+
+<div class="anexample" id="example_14"><div class="anexampleTitle"><a class="internalDFN" href="#example_14"><span class="insert">Example 14</span></a></div>
-<pre class="codeexample">used(ex:u1; ex:act2, ar3:0111, 2011-11-16T16:00:00, [ex:fct="load"])
+<pre class="codeexample"><span class="delete">used(ex:u1,</span><span class="insert">used(ex:u1;</span> 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)
+ <pre class="codeexample"><span class="insert">used(ex:act2)
+</span>used(ex:act2, ar3:0111, <span class="insert">2011-11-16T16:00:00)
used(a1,e1, -, [ex:fct="load"])
-used(ex:u1; ex:act2, ar3:0111, -)
-</pre>
+used(ex:u1; ex:act2, ar3:0111, </span>-)
+<span class="delete">used(ex:act2, ar3:0111, 2011-11-16T16:00:00)
+used(a1,e1, -, [ex:fct="load"])
+used(ex:u1, ex:act2, ar3:0111, -)
+used(-, ex:act2, ar3:0111, -)
+</span></pre>
</div>
-<p><strong><span class="insert">Note:</span></strong> 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(-; <span class="delete">e2,</span><span class="insert">a2,</span> -, -)</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>
+
+
+<p><span class="insert">Additional semantic rules (</span><a href="#semantic-rules-summary"><span class="insert">Section 3.7.5</span></a><span class="insert">) apply to </span><code class="content"><a class="grammarRef" href="#prod-usageExpression"><span class="insert">usageExpression</span></a></code><span class="insert">.</span></p>
+
</div>
+
<div id="expression-wasInformedBy" class="section">
-<h4><span class="secno">3.1.5 </span>Communication</h4>
+<h4><span class="secno">3.1.5 </span><span class="insert">Communication</span></h4>
<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>
+<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>
-<p>The following table summarizes how each constituent of a PROV-DM Communication maps to a <span class="delete">non-terminal.</span><span class="insert">PROV-N syntax element.</span></p>
+<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Communication maps to a PROV-N syntax element.</span></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>
+<tbody><tr><td><b><span class="insert">Communication</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/#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>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#communication.id"><span class="attribute" id="communication.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/#communication.informed"><span class="attribute" id="communication.informed"><span class="insert">informed</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/#communication.informant"><span class="attribute" id="communication.informant"><span class="insert">informant</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/#communication.attributes"><span class="attribute" id="communication.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_15"><div class="anexampleTitle"><a class="internalDFN" href="#example_15">Example <span class="delete">13</span><span class="insert">15</span></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>
+<div class="anexample" id="example_15"><div class="anexampleTitle"><a class="internalDFN" href="#example_15"><span class="insert">Example 15</span></a></div>
+<pre class="codeexample"><span class="insert">wasInformedBy(ex:inf1; ex:a1, ex:a2, [ex:param1="a", ex:param2="b"])
+</span></pre>
+<p><span class="insert"> Here </span><span class="name"><span class="insert">ex:inf1</span></span><span class="insert"> is the optional communication identifier, </span><span class="name"><span class="insert">ex:a1</span></span><span class="insert"> is the identifier of the informed activity,
+ </span><span class="name"><span class="insert">ex:a2</span></span><span class="insert"> is the identifier of the informant activity,
+and </span><span class="name"><span class="insert">[ex:param1="a", ex:param2="b"]</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">wasInformedBy(ex:a1, ex:a2)
+</span><pre class="codeexample"><span class="insert">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>
+</span></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 <span class="delete">non-terminal.</span><span class="insert">PROV-N syntax element.</span></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_16"><div class="anexampleTitle"><a class="internalDFN" href="#example_16">Example <span class="delete">14</span><span class="insert">16</span></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 class="insert">-, </span>-)</span> and <span class="name">wasStartedBy(-; e2,<span class="insert"> -,</span> -, -)</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 <span class="delete">present.</span><span class="insert">present (as per [</span><cite><a class="bibref" rel="biblioentry" href="#bib-PROV-DM"><span class="insert">PROV-DM</span></a></cite><span class="insert">]).</span></p>
-
-</div>
-
-<div id="expression-End" class="section">
-<h4><span class="secno">3.1.7 </span>End</h4>
+<h4><span class="secno"><span class="insert">3.1.6 </span></span>Start</h4>
+
+
<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>
+<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>
+<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-aIdentifierOrMarker"><span class="insert">aIdentifierOrMarker</span></a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-timeOrMarker"><span class="insert">timeOrMarker</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>The following table summarizes how each constituent of a PROV-DM End maps to a <span class="delete">non-terminal.</span><span class="insert">PROV-N syntax element.</span></p>
+<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Start maps to a PROV-N syntax element.</span></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>
+<tbody><tr><td><b><span class="insert">Start</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/#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>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#start.id"><span class="attribute" id="start.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/#start.activity"><span class="attribute" id="start.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">eIdentifier</span><span class="delete"> | </span><span class="delete">-</span><span class="delete"> )
+</span><span class="delete">,</span><span class="delete"> ( </span></a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#start.trigger"><span class="attribute" id="start.trigger"><span class="insert">trigger</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/#start.starter"><span class="attribute" id="start.starter"><span class="insert">starter</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/#start.time"><span class="attribute" id="start.time">time</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></td><td><code class="content"><a class="grammarRef" href="#prod-timeOrMarker"><span class="insert">timeOrMarker</span></a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#start.attributes"><span class="attribute" id="start.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_17"><div class="anexampleTitle"><a class="internalDFN" href="#example_17">Example <span class="delete">15</span><span class="insert">17</span></a></div>
-
- <pre class="codeexample">wasEndedBy(s; ex:act2, ex:trigger,ex:act3, 2011-11-16T16:00:00, [ex:param="a"])
+
+
+
+<div class="anexample" id="example_16"><div class="anexampleTitle"><a class="internalDFN" href="#example_16"><span class="insert">Example 16</span></a></div>
+
+ <pre class="codeexample"><span class="delete">wasStartedBy(s,</span><span class="insert">wasStartedBy(s;</span> ex:act2, <span class="delete">ar3:0111,</span><span class="insert">ex:trigger, ex:act1,</span> 2011-11-16T16:00:00, [ex:param="a"])
</pre>
-<p> Here <span class="name">s</span> is the optional start identifier,
+ <p>Here <span class="name">s</span> is the optional start identifier, <span class="name">ex:act2</span> is the identifier of the <span class="delete">starting</span><span class="insert">started</span> activity,
+ <span class="name"><span class="delete">ar3:0111</span><span class="insert">ex:trigger</span></span> is the <span class="insert">optional </span>identifier <span class="delete">of</span><span class="insert">for</span> the entity that triggered the activity start,
+ <span class="name"><span class="insert">ex:act1</span></span><span class="insert"> is the optional identifier for the activity that generated the (possibly unspecified) entity </span><span class="name"><span class="insert">ex:trigger</span></span><span class="insert">,</span>
+ <span class="name">2011-11-16T16:00:00</span> is the optional <span class="delete">usage</span><span class="insert">start</span> 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, <span class="delete">ar3:0111,</span><span class="insert">-, ex:act1,</span> -)
+wasStartedBy(ex:act2, <span class="delete">ar3:0111,</span><span class="insert">-, ex:act1,</span> 2011-11-16T16:00:00)
+wasStartedBy(ex:act2, -, <span class="insert">-, </span>2011-11-16T16:00:00)
+wasStartedBy(ex:act2, <span class="delete">-, -)
+wasStartedBy(ex:act2, -, -, </span>[ex:param="a"])
+<span class="delete">wasStartedBy(s,</span><span class="insert">wasStartedBy(s;</span> ex:act2, <span class="delete">ar3:0111,</span><span class="insert">e, ex:act1,</span> 2011-11-16T16:00:00)
+<span class="delete">wasStartedBy(-, ex:act2, ar3:0111, 2011-11-16T16:00:00)
+</span></pre>
+</div>
+
+
+
+
+<p><span class="delete">Note:</span><span class="delete"> Even though the production </span><span class="insert">Additional semantic rules (</span><a href="#semantic-rules-summary"><span class="insert">Section 3.7.5</span></a><span class="insert">) apply to </span><code class="content"><a class="grammarRef" href="#prod-startExpression">startExpression<span class="delete"> allows for expressions </span><span class="delete">wasStartedBy(e2, -, -)</span><span class="delete"> and </span><span class="delete">wasStartedBy(-, e2, -, -)</span><span class="delete">, these expressions are not valid in PROV-N,
+since
+at least one of </span><span class="delete">trigger</span><span class="delete">, </span><span class="delete">time</span><span class="delete">, or </span><span class="delete">attributes</span> <span class="delete">must</span><span class="delete"> be present.</span></a></code><span class="insert">.</span></p>
+
+
+
+
+
+</div>
+
+<div id="expression-End" class="section">
+<h4><span class="secno"><span class="delete">3.1.6</span><span class="insert">3.1.7</span> </span>End</h4>
+
+
+
+
+
+
+<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">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>
+<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-aIdentifierOrMarker"><span class="insert">aIdentifierOrMarker</span></a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-timeOrMarker"><span class="insert">timeOrMarker</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 End maps to a PROV-N syntax element.</span></p>
+<div style="text-align: left; ">
+<table class="thinborder" style="margin-left: auto; margin-right: auto;">
+<tbody><tr><td><b><span class="insert">End</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/#end.id"><span class="attribute" id="end.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/#end.activity"><span class="attribute" id="end.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">eIdentifier</span><span class="delete"> | </span><span class="delete">-</span><span class="delete"> )
+</span><span class="delete">,</span><span class="delete"> ( </span></a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#end.trigger"><span class="attribute" id="end.trigger"><span class="insert">trigger</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/#end.ender"><span class="attribute" id="end.ender"><span class="insert">ender</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/#end.time"><span class="attribute" id="end.time">time</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></td><td><code class="content"><a class="grammarRef" href="#prod-timeOrMarker"><span class="insert">timeOrMarker</span></a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#end.attributes"><span class="attribute" id="end.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_17"><div class="anexampleTitle"><a class="internalDFN" href="#example_17"><span class="insert">Example 17</span></a></div>
+
+ <pre class="codeexample"><span class="delete">wasEndedBy(s,</span><span class="insert">wasEndedBy(s;</span> ex:act2, <span class="delete">ex:trigger, </span><span class="insert">ex:trigger,ex:act3, </span>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"><span class="insert">ex:act3</span></span><span class="insert"> is the optional identifier for the activity that generated the (possibly unspecified) entity </span><span class="name"><span class="insert">e</span></span><span class="insert">,</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>
+<pre class="codeexample">wasEndedBy(ex:act2, ex:trigger, <span class="insert">-, </span>-)
+wasEndedBy(ex:act2, ex:trigger, <span class="insert">-, </span>2011-11-16T16:00:00)
+wasEndedBy(ex:act2, -, <span class="insert">-, </span>2011-11-16T16:00:00)
+wasEndedBy(ex:act2, -, <span class="insert">-, </span>2011-11-16T16:00:00, [ex:param="a"])
+<span class="delete">wasEndedBy(e,ex:act2,</span><span class="insert">wasEndedBy(e; ex:act2)
+wasEndedBy(e; ex:act2, ex:trigger,</span> -, <span class="delete">-)
+wasEndedBy(e, ex:act2, ex:trigger, </span>2011-11-16T16:00:00)
+<span class="delete">wasEndedBy(-, ex:act2, ex:trigger, 2011-11-16T16:00:00)
+</span></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 class="insert">-, </span>-)</span> and <span class="name">wasEndedBy(-; e2,<span class="insert"> -,</span> -, -)</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>
+
+
+
+<p><span class="delete">Note:</span><span class="delete">Even though the production </span><span class="insert">Additional semantic rules (</span><a href="#semantic-rules-summary"><span class="insert">Section 3.7.5</span></a><span class="insert">) apply to </span><code class="content"><a class="grammarRef" href="#prod-endExpression">endExpression<span class="delete"> allows for expressions </span><span class="delete">wasEndedBy(e2, -, -)</span><span class="delete"> and </span><span class="delete">wasEndedBy(-, e2, -, -)</span><span class="delete">, these expressions are not valid in PROV-N,
+since
+at least one of </span><span class="delete">trigger</span><span class="delete">, </span><span class="delete">time</span><span class="delete">, and </span><span class="delete">attributes</span> <span class="delete">must</span><span class="delete"> be present.</span></a></code><span class="insert">.</span></p>
+
+
+
+
</div>
+
+
<div id="expression-Invalidation" class="section">
-<h4><span class="secno">3.1.8 </span>Invalidation</h4>
+<h4><span class="secno"><span class="delete">3.1.7</span><span class="insert">3.1.8</span> </span>Invalidation</h4>
<div class="withPn">
+
+
+
<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>
+<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>
+<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-timeOrMarker"><span class="insert">timeOrMarker</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>The following table summarizes how each constituent of a PROV-DM Invalidation maps to a <span class="delete">non-terminal.</span><span class="insert">PROV-N syntax element.</span></p>
+<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Invalidation maps to a PROV-N syntax element.</span></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>
+<tbody><tr><td><b><span class="insert">Invalidation</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/#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>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#invalidation.id"><span class="attribute" id="invalidation.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/#invalidation.entity"><span class="attribute" id="invalidation.entity"><span class="insert">entity</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></a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#invalidation.activity"><span class="attribute" id="invalidation.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/#invalidation.time"><span class="attribute" id="invalidation.time">time</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></td><td><code class="content"><a class="grammarRef" href="#prod-timeOrMarker"><span class="insert">timeOrMarker</span></a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#invalidation.attributes"><span class="attribute" id="invalidation.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_18"><div class="anexampleTitle"><a class="internalDFN" href="#example_18">Example <span class="delete">16</span><span class="insert">18</span></a></div>
-
-<pre class="codeexample">wasInvalidatedBy(ex:i1; tr:WD-prov-dm-20111215, ex:edit1, 2011-11-16T16:00:00, [ex:fct="save"])
+
+<div class="anexample" id="example_18"><div class="anexampleTitle"><a class="internalDFN" href="#example_18"><span class="insert">Example 18</span></a></div>
+
+
+
+<pre class="codeexample"><span class="delete">wasInvalidatedBy(ex:i1,</span><span class="insert">wasInvalidatedBy(ex:i1;</span> 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>
@@ -1359,17 +2325,32 @@
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, -)
+<span class="delete">wasInvalidatedBy(ex:i1,</span><span class="insert">wasInvalidatedBy(ex:i1;</span> tr:WD-prov-dm-20111215, ex:edit1, -)
+<span class="delete">wasInvalidatedBy(-, tr:WD-prov-dm-20111215,</span><span class="insert">wasInvalidatedBy(tr:WD-prov-dm-20111215,</span> ex:edit1, -)
</pre>
+
+
+<span class="delete">Even though the production </span><span class="delete">invalidationExpression</span><span class="delete"> allows for expressions </span><span class="delete">wasInvalidatedBy(e2, -, -)</span><span class="delete"> and </span><span class="delete">wasInvalidatedBy(-, e2, -, -)</span><span class="delete">, these expressions are not valid in PROV-N, since
+at least one of </span><span class="delete">activity</span><span class="delete">, </span><span class="delete">time</span><span class="delete">, or </span><span class="delete">attributes</span> <span class="delete">must</span><span class="delete"> be present.</span>
+
+
</div>
-<p><strong><span class="insert">Note:</span></strong> 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>
+
+
+<span class="delete">3.1.8 </span><span class="delete">Communication</span>
+
+
+<span class="delete">communicationExpression</span><span class="delete"> ::=
+</span><span class="delete">wasInformedBy</span>
+<p><span class="insert">Additional semantic rules </span>(
+<span class="delete">( </span><span class="delete">identifier</span><span class="delete"> | </span><span class="delete">-</span> <a href="#semantic-rules-summary"><span class="insert">Section 3.7.5</span></a>) <span class="delete">,</span>
+<span class="delete">aIdentifier</span>
+<span class="delete">,</span>
+<span class="delete">aIdentifier</span>
+<span class="delete">optional-attribute-values</span>
+<span class="delete">)</span>
+<span class="insert">apply to </span><code class="content"><a class="grammarRef" href="#prod-invalidationExpression"><span class="insert">invalidationExpression</span></a></code><span class="insert">.</span></p>
@@ -1377,38 +2358,100 @@
</div>
+
+<span class="delete">wasInformedBy(ex:inf1, ex:a1, ex:a2, [ex:param1="a", ex:param2="b"])
+</span>
+<span class="delete"> Here </span><span class="delete">ex:inf1</span><span class="delete"> is the optional communication identifier, </span><span class="delete">ex:a1</span><span class="delete"> is the identifier of the informed activity,
+ </span><span class="delete">ex:a2</span><span class="delete"> is the identifier of the informant 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">wasInformedBy(ex:a1, ex:a2)
+wasInformedBy(ex:a1, ex:a2, [ex:param1="a", ex:param2="b"])
+wasInformedBy(i, ex:a1, ex:a2)
+wasInformedBy(i, ex:a1, ex:a2, [ex:param1="a", ex:param2="b"])
+wasInformedBy(-, ex:a1, ex:a2)
+wasInformedBy(-, ex:a1, ex:a2, [ex:param1="a", ex:param2="b"])
+</span>
+</div>
+
+
+
+
+
+
+</div>
+
+
+<span class="delete">3.1.9 </span><span class="delete">Start by Activity</span>
+
+
+<span class="delete">startByActivityExpression</span><span class="delete"> ::=
+</span><span class="delete">wasStartedByActivity</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">aIdentifier</span>
+<span class="delete">optional-attribute-values</span>
+<span class="delete">)</span>
+
+
+
+
+<span class="delete">wasStartedByActivity(s,ex:a1, ex:a2, [ex:param1="a", ex:param2="b"])
+ </span>
+<span class="delete"> Here </span><span class="delete">s</span><span class="delete"> is the optional start-by-activity identifier, </span><span class="delete">ex:a1</span><span class="delete"> is the identifier of the starting activity,
+ </span><span class="delete">ex:a2</span><span class="delete"> is the identifier of the activity that started </span><span class="delete">ex:a1</span><span class="delete">,
+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">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"])
+</span>
+
+
+
+
+
<div id="component2" class="section">
-<h3><span class="secno">3.2 </span>Component 2: Derivations</h3>
+<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>Derivation</h4>
+<h4><span class="secno">3.2.1 </span><span class="delete">Agent</span><span class="insert">Derivation</span></h4>
+
+
+<span class="delete">agentExpression</span><span class="delete"> ::=</span>
<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>
+<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>The following table summarizes how each constituent of a PROV-DM Derivation maps to a <span class="delete">non-terminal.</span><span class="insert">PROV-N syntax element.</span></p>
+<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Derivation maps to a PROV-N syntax element.</span></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>
+<tbody><tr><td><b><span class="insert">Derivation</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/#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>
+<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"><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>
+
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#derivation.generation"><span class="attribute" id="derivation.generation"><span class="insert">generation</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-gIdentifierOrMarker"><span class="insert">gIdentifierOrMarker</span></a></code></td></tr>
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#derivation.usage"><span class="attribute" id="derivation.usage"><span class="insert">usage</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-uIdentifierOrMarker"><span class="insert">uIdentifierOrMarker</span></a></code></td></tr>
+
+
+
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#derivation.attributes"><span class="attribute" id="derivation.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>
@@ -1417,21 +2460,21 @@
-<div class="anexample" id="anexample-derivation"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-derivation">Example <span class="delete">17</span><span class="insert">19</span></a></div>
- <pre class="codeexample"><span class="delete">wasDerivedFrom(d,</span><span class="insert">wasDerivedFrom(d;</span> e2, e1, a, g2, u1, [ex:comment="a righteous derivation"])
- </pre>
-<p> Here
- <span class="name">d</span> is the optional derivation identifier,
- <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>
+<div class="anexample" id="anexample-derivation"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-derivation"><span class="insert">Example 19</span></a></div>
+ <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)
@@ -1439,341 +2482,684 @@
wasDerivedFrom(e2, e1, a, -, -)
wasDerivedFrom(e2, e1, -, -, u1)
wasDerivedFrom(e2, e1, -, -, -)
-<span class="delete">wasDerivedFrom(d,</span><span class="insert">wasDerivedFrom(d;</span> e2, e1, a, g2, u1)
-<span class="delete">wasDerivedFrom(-,</span><span class="insert">wasDerivedFrom(-;</span> e2, e1, a, g2, u1)
-</pre>
+wasDerivedFrom(d; e2, e1, a, g2, u1)
+wasDerivedFrom(-; e2, e1, a, g2, u1)
+</span></pre>
</div>
</div>
<div id="expression-Revision" class="section">
-<h4><span class="secno">3.2.2 </span>Revision</h4>
-
-
-
-
-<div class="anexample" id="example_20"><div class="anexampleTitle"><a class="internalDFN" href="#example_20">Example <span class="delete">18</span><span class="insert">20</span></a></div>
- <pre class="codeexample">wasDerivedFrom(d; e2, e1, a, g2, u1,
+<h4><span class="secno"><span class="insert">3.2.2 </span></span><span class="insert">Revision</span></h4>
+
+<p id="provn-type-Revision"><span class="insert">
+PROV-N provides no dedicated syntax for Revision. Instead, a Revision </span><em class="rfc2119" title="must"><span class="insert">must</span></em><span class="insert"> be expressed as a</span>
+<code class="content"><a class="grammarRef" href="#prod-derivationExpression"><span class="insert">derivationExpression</span></a></code><span class="insert"> with attribute </span><code><span class="insert">prov:type='prov:Revision'</span></code><span class="insert">.</span></p>
+
+
+
+<div class="anexample" id="example_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(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 <span class="delete">17</span><span class="insert">19</span></span></a>
-is extended with a <span class="name">prov:type</span> attribute and value <span class="name">prov:Revision</span>.<span class="insert"> The expression </span><code><span class="insert">'prov:Revision'</span></code><span class="insert"> is </span><code class="content"><a class="grammarRef" href="#prod-convenienceNotation"><span class="insert">convenienceNotation</span></a></code><span class="insert"> to denote a </span><code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME"><span class="insert">QUALIFIED_NAME</span></a></code><span class="insert"> literal (See </span><a href="#expression-literal"><span class="insert">Section 3.7.3. Literal</span></a><span class="insert">).</span>
-</p></div>
+ </span></pre>
+<p><span class="insert">Here, the derivation from
+</span><a href="#anexample-derivation" class="anexample-ref"><span><span class="insert">Example 19</span></span></a><span class="insert">
+is extended with a </span><span class="name"><span class="delete">agent</span>
+<span class="insert">prov:type</span></span><span class="insert"> attribute and value </span><span class="name"><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="insert">prov:Revision</span></span><span class="insert">. The expression </span><code><span class="insert">'prov:Revision'</span></code> is <span class="delete">the agent identifier, and
+ </span><span class="delete">[ prov:type="prov:Person", ex:name="David" ]</span><span class="delete"> are optional attributes. </span><code class="content"><a class="grammarRef" href="#prod-convenienceNotation"><span class="insert">convenienceNotation</span></a></code><span class="insert"> to denote a </span><code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME"><span class="insert">QUALIFIED_NAME</span></a></code><span class="insert"> literal (See </span><a href="#expression-literal"><span class="insert">Section 3.7.3. Literal</span></a><span class="insert">).
+</span></p><span class="delete">
+In the next example, the optional attributes are omitted.
+
+</span><span class="delete">agent(ag4)
+</span>
+</div>
+
+
+</div>
+
+<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>
+
+
+
+
+
+<div id="expression-quotation" class="section">
+<h4><span class="secno">3.2.3 </span><span class="delete">Association</span><span class="insert">Quotation</span></h4>
+
+
+<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</span><p id="provn-type-Quotation"><span class="insert">
+PROV-N provides no dedicated syntax</span> for <span class="delete">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="insert">Quotation. Instead, a Quotation</span> <em class="rfc2119" title="must">must</em> be<span class="delete"> present.</span><span class="insert"> expressed as a
+</span><code class="content"><a class="grammarRef" href="#prod-derivationExpression"><span class="insert">derivationExpression</span></a></code><span class="insert"> with attribute </span><code><span class="insert">prov:type='prov:Quotation'</span></code><span class="insert">.</span></p>
+
+
+
+
+
+
+
+<div class="anexample" id="example_21"><div class="anexampleTitle"><a class="internalDFN" href="#example_21"><span class="insert">Example 21</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-quotation" class="section">
-<h4><span class="secno">3.2.3 </span>Quotation</h4>
-
-
-
-
-
-<div class="anexample" id="example_21"><div class="anexampleTitle"><a class="internalDFN" href="#example_21">Example <span class="delete">19</span><span class="insert">21</span></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>
-
-
-<div id="expression-original-source" class="section">
-<h4><span class="secno">3.2.4 </span>Primary Source</h4>
-
-
-
-
-<div class="anexample" id="example_22"><div class="anexampleTitle"><a class="internalDFN" href="#example_22">Example <span class="delete">20</span><span class="insert">22</span></a></div>
- <pre class="codeexample">wasDerivedFrom(src1; ex:e1, ex:e2, ex:act, ex:g, ex:u,
- [ <span class="delete">prove:type='prov:PrimarySource'</span><span class="insert">prov:type='prov:PrimarySource'</span> ])
-</pre>
-<p>Here, the derivation is provided with a <span class="name">prov:type</span> attribute and value <span class="name">prov:PrimarySource</span>.
+
+
+<div id="expression-primary-source" class="section">
+<h4><span class="secno">3.2.4 </span><span class="delete">Responsibility</span><span class="insert">Primary Source</span></h4>
+
+
+<span class="delete">responsibilityExpression</span><span class="delete"> ::=</span>
+
+
+<p id="provn-type-Primary-Source"><span class="insert">
+PROV-N provides no dedicated syntax for PrimarySource. Instead, a PrimarySource </span><em class="rfc2119" title="must"><span class="insert">must</span></em><span class="insert"> be expressed as a</span>
+<code class="content"><a class="grammarRef" href="#prod-derivationExpression"><span class="insert">derivationExpression</span></a></code><span class="insert"> with attribute </span><code><span class="insert">prov:type='prov:Primary-Source'</span></code><span class="insert">.</span></p>
+
+
+<div class="anexample" id="example_22"><div class="anexampleTitle"><a class="internalDFN" href="#example_22"><span class="insert">Example 22</span></a></div>
+ <pre class="codeexample"><span class="insert">wasDerivedFrom(src1; ex:e1, ex:e2, ex:act, ex:g, ex:u,
+ [ prov:type='prov:PrimarySource' ])
+</span></pre>
+<p><span class="insert">Here, the derivation is provided with a </span><span class="name"><span class="delete">actedOnBehalfOf</span>
+<span class="insert">prov:type</span></span><span class="insert"> attribute and value </span><span class="name"><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="insert">prov:PrimarySource</span></span><span class="insert">.
-</p></div>
-
-
-</div>
+</span></p><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>
+</div>
+
</div>
+
+
+</div>
+
<div id="component3" class="section">
-<h3><span class="secno">3.3 </span>Component 3: Agents, Responsibility, and Influence</h3>
+<h3><span class="secno">3.3 </span>Component 3: <span class="delete">Derivations</span><span class="insert">Agents, Responsibility, and Influence</span></h3>
<div id="expression-Agent" class="section">
-<h4><span class="secno">3.3.1 </span>Agent</h4>
+<h4><span class="secno">3.3.1 </span><span class="delete">Derivation</span><span class="insert">Agent</span></h4>
+
+
+<span class="delete">derivationExpression</span><span class="delete"> ::=</span>
<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>
+<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"><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>The following table summarizes how each constituent of a PROV-DM Agent maps to a <span class="delete">non-terminal.</span><span class="insert">PROV-N syntax element.</span></p>
+<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Agent maps to a PROV-N syntax element.</span></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>
+<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">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>
+<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_23"><div class="anexampleTitle"><a class="internalDFN" href="#example_23">Example <span class="delete">21</span><span class="insert">23</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>
+<p><span class="insert">
+PROV-N provides no dedicated syntax for Person, Organization, SoftwareAgent. Instead, a Person, an Organization, or a SoftwareAgent </span><em class="rfc2119" title="must"><span class="insert">must</span></em><span class="insert"> be expressed as an
+</span><code class="content"><a class="grammarRef" href="#prod-agentExpression"><span class="insert">agentExpression</span></a></code><span class="insert"> with attribute</span>
+<span id="provn-type-Person" <code=""><span class="insert">prov:type='prov:Person'</span></span><span class="insert">,
+</span><span id="provn-type-Organization" <code=""><span class="insert">prov:type='prov:Organization</span></span><span class="insert">, or
+</span><span id="provn-type-SoftwareAgent" <code=""><span class="insert">prov:type='prov:SoftwareAgent'</span></span><span class="insert">, respectively.</span></p>
+
+
+<div class="anexample" id="example_23"><div class="anexampleTitle"><a class="internalDFN" href="#example_23"><span class="insert">Example 23</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="delete">wasDerivedFrom</span>
+<span class="insert">ag</span></span><span class="insert"> is the agent identifier, and
+ </span><span class="name"><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">,</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><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.
-<pre class="codeexample">agent(ag4)
-</pre>
+</span><pre class="codeexample"><span class="insert">agent(ag4)
+</span></pre>
</div>
-</div>
+
+ </div>
<div id="expression-attribution" class="section">
-<h4><span class="secno">3.3.2 </span>Attribution</h4>
+<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="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>
+<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"><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>The following table summarizes how each constituent of a PROV-DM Attribution maps to a <span class="delete">non-terminal.</span><span class="insert">PROV-N syntax element.</span></p>
+<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Attribution maps to a PROV-N syntax element.</span></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>
+<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">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>
+<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_24"><div class="anexampleTitle"><a class="internalDFN" href="#example_24">Example <span class="delete">22</span><span class="insert">24</span></a></div>
-
-<pre class="codeexample">wasAttributedTo(id; e, ag, [ex:license='cc:attributionURL' ])
+<div class="anexample" id="example_24"><div class="anexampleTitle"><a class="internalDFN" href="#example_24"><span class="insert">Example 24</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">wasAttributedTo(id; e, ag, [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">[ex:license='cc:attributionURL' ]</span> are optional attributes. </p>
+<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.
-<pre class="codeexample">wasAttributedTo(e, ag)
+</span><pre class="codeexample"><span class="insert">wasAttributedTo(e, ag)
wasAttributedTo(e, ag, [ex:license='cc:attributionURL' ])
-</pre>
+</span></pre>
</div>
</div>
<div id="expression-Association" class="section">
-<h4><span class="secno">3.3.3 </span>Association</h4>
+<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="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="insert">( </span>"," <span class="prod"><a class="grammarRef" href="#prod-agIdentifierOrMarker">agIdentifierOrMarker</a></span><span class="delete"> (</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>
+<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"><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>The following table summarizes how each constituent of a PROV-DM Association maps to a <span class="delete">non-terminal.</span><span class="insert">PROV-N syntax element.</span></p>
+<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Association maps to a PROV-N syntax element.</span></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>
+<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">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>
+<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_25"><div class="anexampleTitle"><a class="internalDFN" href="#example_25">Example <span class="delete">23</span><span class="insert">25</span></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>
+<p id="provn-type-Plan"><span class="insert">
+PROV-N provides no dedicated syntax for Plan. Instead, a Plan </span><em class="rfc2119" title="must"><span class="insert">must</span></em><span class="insert"> be expressed as an
+</span><code class="content"><a class="grammarRef" href="#prod-entityExpression"><span class="insert">entityExpression</span></a></code><span class="insert"> with attribute </span><code><span class="insert">prov:type='prov:Plan'</span></code><span class="insert">.</span></p>
+
+
+<div class="anexample" id="example_25"><div class="anexampleTitle"><a class="internalDFN" href="#example_25"><span class="insert">Example 25</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">d</span><span class="insert">ex:agas</span></span> is the optional <span class="delete">derivation</span><span class="insert">attribution identifier,
+ </span><span class="name"><span class="insert">ex:a1</span></span><span class="insert"> is an activity identifier,
+ </span><span class="name"><span class="insert">ex:ag1</span></span><span class="insert"> is the optional identifier of the agent associated to the activity,
+ </span><span class="name"><span class="insert">ex:e1</span></span><span class="insert"> is the optional identifier of the plan used by the agent in the context of the activity,
+ and </span><span class="name"><span class="insert"> [ex:param1="a", ex:param2="b"]</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">wasAssociatedWith(ex:a1, -, ex:e1)
+</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)
-</pre>
+</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">wasAssociatedWith(-;</span> 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>
+
+<p><span class="insert">Additional semantic rules (</span><a href="#semantic-rules-summary"><span class="insert">Section 3.7.5</span></a><span class="insert">) apply to </span><code class="content"><a class="grammarRef" href="#prod-associationExpression"><span class="insert">associationExpression</span></a></code><span class="insert">.</span></p>
+
+
</div>
<div id="expression-delegation" class="section">
-<h4><span class="secno">3.3.4 </span>Delegation</h4>
+<h4><span class="secno"><span class="insert">3.3.4 </span></span><span class="insert">Delegation</span></h4>
<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>
+<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="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>The following table summarizes how each constituent of a PROV-DM Delegation maps to a <span class="delete">non-terminal.</span><span class="insert">PROV-N syntax element.</span></p>
+<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Delegation maps to a PROV-N syntax element.</span></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>
+<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">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>
+<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_26"><div class="anexampleTitle"><a class="internalDFN" href="#example_26">Example <span class="delete">24</span><span class="insert">26</span></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>
+<div class="anexample" id="example_26"><div class="anexampleTitle"><a class="internalDFN" href="#example_26"><span class="insert">Example 26</span></a></div>
+
+ <pre class="codeexample"><span class="insert">actedOnBehalfOf(del1; ag2, ag1, a, [prov:type="contract"])
+ </span></pre>
+<p><span class="insert"> Here </span><span class="name"><span class="insert">del1</span></span><span class="insert"> is the optional delegation identifier,
+ </span><span class="name"><span class="insert">ag2</span></span><span class="insert"> is the identifier for the delegate agent,
+ </span><span class="name"><span class="insert">ag1</span></span><span class="insert"> is the identifier of the 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,
+ and </span><span class="name"><span class="insert">[prov:type="contract"]</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">actedOnBehalfOf(ag1, ag2)
+</span><pre class="codeexample"><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"])
-</pre>
+</span></pre>
</div>
</div>
<div id="expression-influence" class="section">
-<h4><span class="secno">3.3.5 </span>Influence</h4>
+<h4><span class="secno"><span class="insert">3.3.5 </span></span><span class="insert">Influence</span></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"><span class="delete">"influence"</span><span class="insert">"wasInfluencedBy"</span> "(" <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>
+<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">"wasInfluencedBy" "(" </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="prod"><a class="grammarRef" href="#prod-optionalAttributeValuePairs"><span class="insert">optionalAttributeValuePairs</span></a></span><span class="insert"> ")"</span></code></td> </tr> </tbody>
</table>
-<p>The following table summarizes how each constituent of a PROV-DM Influence maps to a <span class="delete">non-terminal.</span><span class="insert">PROV-N syntax element.</span></p>
+<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Influence maps to a PROV-N syntax element.</span></p>
<div style="text-align: left; ">
<table class="thinborder" style="margin-left: auto; margin-right: auto;">
-<tbody><tr><td><b>Influence</b></td><td><b>Non-Terminal</b></td></tr>
+<tbody><tr><td><b><span class="insert">Influence</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/#influence.id"><span class="attribute" id="influence.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/#influence.influencee"><span class="attribute" id="influence.influencee">influencee</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/#influence.influencer"><span class="attribute" id="influence.influencer">influencer</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/#influence.attributes"><span class="attribute" id="influence.attributes">attributes</span></a></td><td><code class="content"><a class="grammarRef" href="#prod-optionalAttributeValuePairs">optionalAttributeValuePairs</a></code></td></tr>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#influence.id"><span class="attribute" id="influence.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/#influence.influencee"><span class="attribute" id="influence.influencee"><span class="insert">influencee</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/#influence.influencer"><span class="attribute" id="influence.influencer"><span class="insert">influencer</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/#influence.attributes"><span class="attribute" id="influence.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_27"><div class="anexampleTitle"><a class="internalDFN" href="#example_27">Example <span class="delete">25</span><span class="insert">27</span></a></div>
- <pre class="codeexample"><span class="delete">influence(id,e2,e1,[ex:param="a"])</span><span class="insert">wasInfluencedBy(id;e2,e1,[ex:param="a"])</span>
- </pre>
-<p> Here
- <span class="name">id</span> is the optional influence identifier,
- <span class="name">e2</span> is an entity identifier,
+<div class="anexample" id="example_27"><div class="anexampleTitle"><a class="internalDFN" href="#example_27"><span class="insert">Example 27</span></a></div>
+ <pre class="codeexample"><span class="insert">wasInfluencedBy(id;e2,e1,[ex:param="a"])
+ </span></pre>
+<p><span class="insert"> Here
+ </span><span class="name"><span class="insert">id</span></span><span class="insert"> is the optional influence</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"> ::=
+</span><span class="delete">wasRevisionOf</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">,</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">optional-attribute-values</span>
+<span class="delete">)</span>
+
+
+
+
+ <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="delete">
+The remaining examples show cases where some of the optionals are omitted.
+
+
+ </span><span class="delete">wasRevisionOf(tr:WD-prov-dm-20111215, tr:WD-prov-dm-20111018, -)
+wasRevisionOf(tr:WD-prov-dm-20111215, tr:WD-prov-dm-20111018, w3:Consortium)
+wasRevisionOf(id,tr:WD-prov-dm-20111215, tr:WD-prov-dm-20111018, w3:Consortium)
+wasRevisionOf(tr:WD-prov-dm-20111215, tr:WD-prov-dm-20111018, -)
+wasRevisionOf(id,tr:WD-prov-dm-20111215, tr:WD-prov-dm-20111018, -)
+wasRevisionOf(-,tr:WD-prov-dm-20111215, tr:WD-prov-dm-20111018, -)
+</span>
+
+
+
+
+
+<span class="delete">3.3.3 </span><span class="delete">Quotation</span>
+
+
+<span class="delete">quotationExpression</span><span class="delete"> ::=
+</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>
+<span class="delete">eIdentifier</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">agIdentifier</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">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.
+
+
+ </span><span class="delete">wasQuotedFrom(ex:blockQuote,ex:blog)
+wasQuotedFrom(ex:blockQuote,ex:blog,ex:Luc,ex:Paul)
+wasQuotedFrom(ex:blockQuote,ex:blog,-,ex:Paul)
+wasQuotedFrom(ex:blockQuote,ex:blog,ex:Luc,ex:Paul,[])
+wasQuotedFrom(ex:blockQuote,ex:blog, -, -)
+wasQuotedFrom(id,ex:blockQuote,ex:blog,ex:Luc,ex:Paul)
+wasQuotedFrom(-,ex:blockQuote,ex:blog,ex:Luc,-)
+
+</span>
+
+
+
+
+
+
+<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>
+<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="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>
+
+
+
+
+<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>
+<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="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> <span class="delete">depends on,</span><span class="insert">is influenced by,</span>
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"><span class="delete">influence(e2,e1)
-influence(e2,e1,[ex:param="a"])
-influence(id;</span><span class="insert">wasInfluencedBy(e2,e1)
+ <pre class="codeexample"><span class="delete">tracedTo(e2,e1)
+tracedTo(e2,e1,[ex:param="a"])
+tracedTo(-,e2,e1)</span><span class="insert">wasInfluencedBy(e2,e1)
wasInfluencedBy(e2,e1,[ex:param="a"])
-wasInfluencedBy(id;</span> e2,e1)
+wasInfluencedBy(id; e2,e1)</span>
</pre>
</div>
</div>
+
</div>
+
<div id="component4" class="section">
-<h3><span class="secno">3.4 </span>Component 4: Bundles</h3>
+<h3><span class="secno">3.4 </span>Component 4: <span class="delete">Alternate Entities</span><span class="insert">Bundles</span></h3>
+
+
<div id="expression-bundle-constructor" class="section">
-<h4><span class="secno">3.4.1 </span>Bundle <span class="delete">Declaration</span><span class="insert">Constructor</span></h4>
+<h4><span class="secno">3.4.1 </span><span class="insert">Bundle Constructor</span></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>
+<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>
<p><span class="insert">Named bundles cannot be nested because </span><code><a class="grammarRef" href="#prod-namedBundle"><span class="insert">namedBundle</span></a></code><span class="insert"> is not an </span><code><a class="grammarRef" href="#prod-expression"><span class="insert">expression</span></a></code><span class="insert">, and therefore cannot occurs inside another </span><code><a class="grammarRef" href="#prod-namedBundle"><span class="insert">namedBundle</span></a></code><span class="insert">.</span></p>
<p><span class="insert">Named bundles are self-contained: each identifier occuring in a named bundle, including the bundle identifier itself, </span><em class="rfc2119" title="must"><span class="insert">must</span></em><span class="insert"> be interpreted with respect to the namespace declarations of that bundle. In other words, for every identifier with a prefix </span><code><span class="insert">p</span></code><span class="insert"> within a named bundle, there </span><em class="rfc2119" title="must"><span class="insert">must</span></em><span class="insert"> be a namespace declaration for </span><code><span class="insert">p</span></code><span class="insert"> in this named bundled; for every identifier without prefix, there </span><em class="rfc2119" title="must"><span class="insert">must</span></em><span class="insert"> be a default namespace declaration in this named bundled.</span></p>
-<div class="anexample" id="example_28"><div class="anexampleTitle"><a class="internalDFN" href="#example_28">Example <span class="delete">26</span><span class="insert">28</span></a></div>
- <pre class="codeexample">bundle ex:author-view<span class="insert">
- prefix ex <http://example.org/></span>
+<div class="anexample" id="example_28"><div class="anexampleTitle"><a class="internalDFN" href="#example_28"><span class="insert">Example 28</span></a></div>
+ <pre class="codeexample"><span class="insert">bundle ex:author-view
+ prefix ex <http://example.org/>
agent(ex:Paolo, [ prov:type='prov:Person' ])
agent(ex:Simon, [ prov:type='prov:Person' ])
- <span class="delete">...</span><span class="insert">//...</span>
+ //...
endBundle
- </pre>
-<p> Here <span class="name">ex:author-view</span> is the name of the bundle.
-
-</p>
+ </span></pre>
+<p><span class="insert"> Here </span><span class="name"><span class="insert">ex:author-view</span></span><span class="insert"> is the name of the bundle.
+</span></p>
@@ -1781,38 +3167,57 @@
</div>
</div>
+
+<div id="expression-bundle-type" class="section">
+<h4><span class="secno"><span class="insert">3.4.2 </span></span><span class="insert">Bundle Type</span></h4>
+
+<p id="provn-type-Bundle"><span class="insert">
+When described, a Bundle </span><em class="rfc2119" title="must"><span class="insert">must</span></em><span class="insert"> be expressed as an
+</span><code class="content"><a class="grammarRef" href="#prod-entityExpression"><span class="insert">entityExpression</span></a></code><span class="insert"> with attribute </span><code><span class="insert">prov:type='prov:Bundle'</span></code><span class="insert">.</span></p>
+
+</div>
</div>
<div id="component5" class="section">
-<h3><span class="secno">3.5 </span>Component 5: Alternate Entities</h3>
+<h3><span class="secno"><span class="insert">3.5 </span></span><span class="insert">Component 5: Alternate Entities</span></h3>
<div id="expression-alternate" class="section">
-<h4><span class="secno">3.5.1 </span>Alternate</h4>
+<h4><span class="secno"><span class="insert">3.5.1 </span></span>Alternate</h4>
+
+
+
<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>
+<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
+<span class="delete">,</span>
+</a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier
+<span class="delete">)</span>
+</a></span><span class="insert"> ")"</span></code></td> </tr> </tbody>
</table>
-<p>The following table summarizes how each constituent of a PROV-DM Alternate maps to a <span class="delete">non-terminal.</span><span class="insert">PROV-N syntax element.</span></p>
+<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Alternate maps to a PROV-N syntax element.</span></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>
+<tbody><tr><td><b><span class="insert">Alternate</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/#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>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#alternate.alternate1"><span class="attribute" id="alternate.alternate1"><span class="insert">alternate1</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/#alternate.alternate2"><span class="attribute" id="alternate.alternate2"><span class="insert">alternate2</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifier"><span class="insert">eIdentifier</span></a></code></td></tr>
</tbody></table>
</div>
-<div class="anexample" id="example_29"><div class="anexampleTitle"><a class="internalDFN" href="#example_29">Example <span class="delete">27</span><span class="insert">29</span></a></div>
+<div class="anexample" id="example_29"><div class="anexampleTitle"><a class="internalDFN" href="#example_29"><span class="insert">Example 29</span></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>.
@@ -1821,34 +3226,46 @@
</div>
<div id="expression-specialization" class="section">
-<h4><span class="secno">3.5.2 </span>Specialization</h4>
+<h4><span class="secno"><span class="delete">3.4.2</span><span class="insert">3.5.2</span> </span>Specialization</h4>
+
+
+
<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>
+<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
+<span class="delete">,</span>
+</a></span><span class="insert"> "," </span><span class="prod"><a class="grammarRef" href="#prod-eIdentifier">eIdentifier
+<span class="delete">)</span>
+</a></span><span class="insert"> ")"</span></code></td> </tr> </tbody>
</table>
-<p>The following table summarizes how each constituent of a PROV-DM Specialization maps to a <span class="delete">non-terminal.</span><span class="insert">PROV-N syntax element.</span></p>
+<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Specialization maps to a PROV-N syntax element.</span></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>
+<tbody><tr><td><b><span class="insert">Specialization</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/#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>
+<tr><td><a href="http://www.w3.org/TR/prov-dm/#specialization.specificEntity"><span class="attribute" id="specialization.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/#specialization.generalEntity"><span class="attribute" id="specialization.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>
</tbody></table>
</div>
-<div class="anexample" id="example_30"><div class="anexampleTitle"><a class="internalDFN" href="#example_30">Example <span class="delete">28</span><span class="insert">30</span></a></div>
+
+
+<div class="anexample" id="example_30"><div class="anexampleTitle"><a class="internalDFN" href="#example_30"><span class="insert">Example 30</span></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>.
@@ -1859,52 +3276,156 @@
<div id="expression-mention" class="section">
-<h4><span class="secno">3.5.3 </span>Mention</h4>
+<h4><span class="secno"><span class="insert">3.5.3 </span></span><span class="insert">Mention</span></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 expression Mention might be removed from PROV if implementation experience reveals problems with supporting this construct.</p>
+<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 expression Mention might be removed from PROV if implementation experience reveals problems with supporting this construct.</span></p>
</div>
+
+<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">
+
+In the productions in this section, nonterminals </span><span class="delete">keyValuePairs</span><span class="delete"> and </span><span class="delete">keySet</span><span class="delete"> are defined as follows.
+
+</span>
+<span class="delete">keyValuePairs</span><span class="delete"> ::=
+</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">
+|
+</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">,</span>
+<span class="delete">keyValuePairs</span>
+
+
+
+<span class="delete">keySet</span><span class="delete"> ::=
+ </span><span class="delete">literal</span><span class="delete">
+|
+ </span><span class="delete">literal</span>
+ <span class="delete">,</span>
+<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="prodNo">26</span>] </td> <td><code class="production prod">mentionExpression</code></td> <td> ::= </td> <td><code class="content">"mentionOf" "(" <span class="prod"><span class="delete">identifier</span><a class="grammarRef" href="#prod-eIdentifier"><span class="insert">eIdentifier</span></a></span> "," <span class="prod"><span class="delete">identifier</span><a class="grammarRef" href="#prod-eIdentifier"><span class="insert">eIdentifier</span></a></span> "," <span class="prod"><a class="grammarRef" href="#prod-bIdentifier">bIdentifier</a></span> ")"</code></td> </tr> </tbody>
+<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-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-bIdentifier"><span class="insert">bIdentifier</span></a></span><span class="insert"> ")"</span></code></td> </tr> </tbody>
</table>
-<p>The following table summarizes how each constituent of a PROV-DM Mention maps to a <span class="delete">non-terminal.</span><span class="insert">PROV-N syntax element.</span></p>
+<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Mention maps to a PROV-N syntax element.</span></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>
+<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/#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>
+<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>
-<div class="anexample" id="example_31"><div class="anexampleTitle"><a class="internalDFN" href="#example_31">Example <span class="delete">29</span><span class="insert">31</span></a></div>
-<pre class="codeexample"> mention(ex:report1_as_in_b1, ex:report1, ex:b1)
-</pre>
+
+<span class="delete">3.5.1 </span><span class="delete">Insertion</span>
+
+
+ <span class="delete">derivationByInsertionFromExpression</span><span class="delete"> ::=
+</span><span class="delete">derivedByInsertionFrom</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">keyValuePairs</span>
+ <span class="delete">}</span>
+<span class="delete">optional-attribute-values</span>
+ <span class="delete">)</span>
+<div class="anexample" id="example_31"><div class="anexampleTitle"><a class="internalDFN" href="#example_31"><span class="insert">Example 31</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">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>
+
+ <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.
+
+ </span><span class="delete"> derivedByInsertionFrom(c1, c, {("k1", v1), ("k2", v2)})
+ derivedByInsertionFrom(c1, c, {("k1", v1)})
+ derivedByInsertionFrom(c1, c, {("k1", v1), ("k2", v2)}, [])
+</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>
+
@@ -1912,78 +3433,159 @@
</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: Collections</h3>
-
-
-
-
-
+<h3><span class="secno">3.6 </span>Component 6: <span class="delete">Annotations</span><span class="insert">Collections</span></h3>
+
+
+
+
+<div id="expression-collection" class="section">
+<h4><span class="secno">3.6.1 </span><span class="delete">Note</span><span class="insert">Collection</span></h4>
+
+
+<span class="delete">noteExpression</span><span class="delete"> ::=</span>
+
+
+<p><span class="insert">
+PROV-N provides no dedicated syntax for Collection and EmptyCollection. Instead, a Collection or an EmptyCollection </span><em class="rfc2119" title="must"><span class="insert">must</span></em><span class="insert"> be expressed as an
+</span><code class="content"><a class="grammarRef" href="#prod-entityExpression"><span class="insert">entityExpression</span></a></code><span class="insert"> with attribute</span>
+<span class="delete">note</span>
+<span class="delete">(</span>
+<span class="delete">identifier</span>
+<span class="delete">optional-attribute-values</span>
+<span class="delete">)</span><span id="provn-type-Collection"><code><span class="insert">prov:type='prov:Collection'</span></code></span><span class="insert">, or
+</span><span id="provn-type-EmptyCollection"><code><span class="insert">prov:type='prov:EmptyCollection'</span></code></span><span class="insert">, respectively.</span></p>
+</div>
+
+
+
+<span class="delete">note(ann1,[ex:color="blue", ex:screenX=20, ex:screenY=30])
+</span>
+
+
+
<div id="expression-collection-membership" class="section">
-<h4><span class="secno">3.6.1 </span>Membership</h4>
+<h4><span class="secno">3.6.2 </span><span class="delete">Annotation</span><span class="insert">Membership</span></h4>
+
+
+<span class="delete">annotationExpression</span><span class="delete"> ::=
+</span>
<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"><span class="delete">"memberOf"</span><span class="insert">"hadMembers"</span> "(" <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>
+<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">"hadMember" "(" </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-eIdentifier"><span class="insert">eIdentifier</span></a></span><span class="insert"> ")"</span></code></td> </tr> </tbody>
</table>
-<p>The following table summarizes how each constituent of a PROV-DM Membership maps to a <span class="delete">non-terminal.</span><span class="insert">PROV-N syntax element.</span></p>
+<p><span class="insert">The following table summarizes how each constituent of a PROV-DM Membership maps to a PROV-N syntax element.</span></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>
+<tbody><tr><td><b><span class="insert">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.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>
+
+<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.member"><span class="attribute" id="membership.member"><span class="insert">member</span></span></a></td><td><code class="content"><a class="grammarRef" href="#prod-eIdentifier"><span class="insert">eIdentifier</span></a></code></td></tr>
+
+
</tbody></table>
</div>
-<div class="anexample" id="example_32"><div class="anexampleTitle"><a class="internalDFN" href="#example_32">Example <span class="delete">30</span><span class="insert">32</span></a></div>
- <pre class="codeexample"> <span class="delete">memberOf(mId,</span><span class="insert">hadMembers(mId,</span> c, {e1, e2, e3}, <span class="delete">[])</span><span class="insert">true, [prov:label="A beautiful collection"])</span> // 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>,
- <span class="name"><span class="insert">true</span></span><span class="insert"> is the complete flag indicating that the collection member is believed to be closed,
- </span>and <span class="name"><span class="delete">[]</span><span class="insert">[prov:label="A beautiful collection"]</span></span> is the optional <span class="delete">(empty) </span>set of attributes. </p>
-
-
-<p>
-In the remaining examples, some of the optionals are omitted.
-
-</p><pre class="codeexample"><span class="delete">memberOf(c3,</span><span class="insert">hadMembers(c3,</span> {e1})
-<span class="delete">memberOf(c3,</span><span class="insert">hadMembers(c3,</span> {e1,e2})<span class="delete"> // default "complete" flag is false
-memberOf(c3,</span><span class="insert">
-hadMembers(c3,</span> {e1,e2}, false)
-<span class="delete">memberOf(c3,</span><span class="insert">hadMembers(c3,</span> {e1,e2}, true)
-<span class="delete">memberOf(c3, ,[])
-memberOf(c3, ,true,</span><span class="insert">hadMembers(c3, {},</span> [])
-<span class="insert">hadMembers(c3, {}, true, []) // c3 is effectively of type EmptyCollection
-</span></pre>
-</div>
+<div class="anexample" id="example_32"><div class="anexampleTitle"><a class="internalDFN" href="#example_32"><span class="insert">Example 32</span></a></div>
+ <pre class="codeexample"><span class="insert"> hadMember(c, e1) // c contained e1
+ hadMember(c, e2) // c contained e2
+ </span></pre>
+<p><span class="insert"> Here
+ </span><span class="name"><span class="delete">hasAnnotation</span>
+<span class="delete">(</span>
+<span class="delete">identifier</span>
+<span class="delete">,</span>
+<span class="delete">nIdentifier</span>
+<span class="delete">)</span>
+
+
+
+
+<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="insert">c</span></span> is the identifier for <span class="delete">a note of the entity identified by</span><span class="insert">the collection whose membership is stated, and</span>
+ <span class="name"><span class="delete">(tr:WD-prov-dm-20111215</span><span class="delete">.
+</span><span class="insert">e1</span></span><span class="insert"> and </span><span class="name"><span class="insert">e2</span></span><span class="insert"> are the entities that are members of collection c
+
+
+</span></p></div>
+
+
+
</div>
-</div>
+
+
+
+</div>
+
+
+
+
@@ -1996,38 +3598,69 @@
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>
+<h4><span class="secno">3.7.1 </span><span class="delete">Namespace Declaration</span>
+
+
+
+<span class="delete">namespaceDeclarations</span><span class="delete"> ::=
+ | </span><span class="delete">defaultNamespaceDeclaration</span><span class="delete"> | </span><span class="delete">namespaceDeclaration</span> <span class="delete">namespaceDeclaration</span>
+<span class="delete">namespaceDeclaration</span><span class="delete"> ::=
+</span><span class="delete">prefix</span> <span class="delete">prefix</span> <span class="delete">IRI</span>
+<span class="delete">defaultNamespaceDeclaration</span><span class="delete"> ::=
+ </span><span class="delete">default</span> <span class="delete">IRI</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/>
+...
+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="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"><span class="delete">36</span><span class="insert">35</span></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-bIdentifier" name="prod-bIdentifier"></a>[<span class="prodNo"><span class="delete">35</span><span class="insert">36</span></span>] </td> <td><code class="production prod"><span class="delete">dIdentifier</span><span class="insert">bIdentifier</span></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">37</span>] </td> <td><code class="production prod"><span class="delete">bIdentifier</span><span class="insert">eIdentifierOrMarker</span></code></td> <td> ::= </td> <td><code class="content"><span class="insert">( </span><span class="prod"><span class="delete">identifier</span><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="prodNo">38</span>] </td> <td><code class="production prod"><span class="delete">eIdentifierOrMarker</span><span class="insert">aIdentifierOrMarker</span></code></td> <td> ::= </td> <td><code class="content">( <span class="prod"><span class="delete">eIdentifier</span><a class="grammarRef" href="#prod-aIdentifier"><span class="insert">aIdentifier</span></a></span> | "-" )</code></td> </tr> </tbody>
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-agIdentifierOrMarker" name="prod-agIdentifierOrMarker"></a>[<span class="prodNo">39</span>] </td> <td><code class="production prod"><span class="delete">aIdentifierOrMarker</span><span class="insert">agIdentifierOrMarker</span></code></td> <td> ::= </td> <td><code class="content">( <span class="prod"><span class="delete">aIdentifier</span><a class="grammarRef" href="#prod-agIdentifier"><span class="insert">agIdentifier</span></a></span> | "-" )</code></td> </tr> </tbody>
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-gIdentifierOrMarker" name="prod-gIdentifierOrMarker"></a>[<span class="prodNo">40</span>] </td> <td><code class="production prod"><span class="delete">agIdentifierOrMarker</span><span class="insert">gIdentifierOrMarker</span></code></td> <td> ::= </td> <td><code class="content">( <span class="prod"><span class="delete">agIdentifier</span><a class="grammarRef" href="#prod-gIdentifier"><span class="insert">gIdentifier</span></a></span> | "-" )</code></td> </tr> </tbody>
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-uIdentifierOrMarker" name="prod-uIdentifierOrMarker"></a>[<span class="prodNo">41</span>] </td> <td><code class="production prod"><span class="delete">gIdentifierOrMarker</span><span class="insert">uIdentifierOrMarker</span></code></td> <td> ::= </td> <td><code class="content">( <span class="prod"><span class="delete">gIdentifier</span><a class="grammarRef" href="#prod-uIdentifier"><span class="insert">uIdentifier</span></a></span> | "-" )</code></td> </tr> </tbody>
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-identifier" name="prod-identifier"></a>[<span class="prodNo">42<span class="delete">] </span> <span class="delete">uIdentifierOrMarker</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">43</span></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>
+<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">28</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">29</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">30</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">31</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">32</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">33</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-bIdentifier" name="prod-bIdentifier"></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">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">35</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">36</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">37</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">38</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">39</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">40</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.
-The PROV data model stipulates that a qualified name can be mapped into an IRI
+The PROV data model stipulates that a qualified name can be mapped <span class="delete">into</span><span class="insert">to</span> an IRI
by concatenating the IRI associated with the prefix and the local part.
<span class="insert"> This section provides the exact details of this procedure for qualified names defined by PROV-N. </span></p>
@@ -2036,11 +3669,31 @@
<span class="delete">refers</span><span class="insert">belongs</span> to the <a title="default namespace declaration">default namespace</a>.</p>
-
-
-<p>A <span class="delete">PROV</span><span class="insert">PROV-N</span> qualified name<span class="insert"> (production</span> <code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME">QUALIFIED_NAME</a></code><span class="insert">)</span> 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>].<span class="delete"> It is</span><span class="insert">
-A </span><code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME"><span class="insert">QUALIFIED_NAME</span></a></code><span class="insert"> consists of</span> a <span class="insert">prefix and a local part. Prefixes follow the production </span><code class="content"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_PREFIX"><span class="insert">PN_PREFIX</span></a></code><span class="insert"> defined by SPARQL [</span><cite><a class="bibref" rel="biblioentry" href="#bib-RDF-SPARQL-QUERY"><span class="insert">RDF-SPARQL-QUERY</span></a></cite><span class="insert">]. Local parts have to be conformant with </span><code class="content"><a class="grammarRef" href="#prod-PN_LOCAL"><span class="insert">PN_LOCAL</span></a></code><span class="insert">, which extends the original SPARQL </span><code class="content"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_LOCAL"><span class="insert">PN_LOCAL</span></a></code><span class="insert"> definition
+<span class="delete">identifier</span><span class="delete"> ::= </span><span class="delete">qualifiedName</span>
+<span class="delete">eIdentifier</span><span class="delete"> ::= </span><span class="delete">identifier</span> <span class="delete">(intended to denote an entity)</span>
+<span class="delete">aIdentifier</span><span class="delete"> ::= </span><span class="delete">identifier</span> <span class="delete">(intended to denote an activity)</span>
+<span class="delete">agIdentifier</span><span class="delete"> ::= </span><span class="delete">identifier</span> <span class="delete">(intended to denote an agent)</span>
+<span class="delete">gIdentifier</span><span class="delete">::= </span><span class="delete">identifier</span> <span class="delete">(intended to denote</span>
+
+
+
+
+<p><span class="insert">A PROV-N qualified name (production </span><code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME"><span class="insert">QUALIFIED_NAME</span></a></code><span class="insert">) has</span> a <span class="delete">generation)</span>
+<span class="delete">uIdentifier</span><span class="delete">::= </span><span class="delete">identifier</span> <span class="delete">(intended to denote a usage)</span>
+<span class="delete">nIdentifier</span><span class="delete">::= </span><span class="delete">identifier</span> <span class="delete">(intended to denote a note)</span>
+<span class="delete">cIdentifier</span><span class="delete">::= </span><span class="delete">identifier</span> <span class="delete">(intended to denote a collection)</span>
+
+
+<span class="delete">qualifiedName</span><span class="delete"> ::=
+</span>
+<span class="delete">prefix</span> <span class="delete">:</span>
+ <span class="delete">localPart</span><span class="delete"> | </span><span class="delete">:</span> <span class="delete">localPart</span>
+<span class="delete">prefix</span><span class="delete"> ::= </span><span class="delete">a name without colon compatible with the </span><span class="delete">NC_NAME</span><span class="delete"> production</span><span class="insert">more permissive syntax then XML's </span><code class="content"><a href="http://www.w3.org/TR/2009/REC-xml-names-20091208/#NT-QName"><span class="insert">QName</span></a></code> [<cite><a class="bibref" rel="biblioentry" href="#bib-XML-NAMES">XML-NAMES</a></cite>]
+<span class="delete">localPart</span><span class="delete"> ::= </span><span class="delete">a name compatible with the
+</span><span class="delete">reference</span><span class="delete"> production</span><span class="insert">
+and SPARQL </span><code class="content"><a href="http://www.w3.org/TR/2008/REC-rdf-sparql-query-20080115/#rPrefixedName"><span class="insert">PrefixedName</span></a></code> [<cite><span class="delete">RDFA-CORE</span><a class="bibref" rel="biblioentry" href="#bib-RDF-SPARQL-QUERY"><span class="insert">RDF-SPARQL-QUERY</span></a></cite><span class="delete">]</span>
+<span class="insert">].
+A </span><code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME"><span class="insert">QUALIFIED_NAME</span></a></code><span class="insert"> consists of a prefix and a local part. Prefixes follow the production </span><code class="content"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_PREFIX"><span class="insert">PN_PREFIX</span></a></code><span class="insert"> defined by SPARQL [</span><cite><a class="bibref" rel="biblioentry" href="#bib-RDF-SPARQL-QUERY"><span class="insert">RDF-SPARQL-QUERY</span></a></cite><span class="insert">]. Local parts have to be conformant with </span><code class="content"><a class="grammarRef" href="#prod-PN_LOCAL"><span class="insert">PN_LOCAL</span></a></code><span class="insert">, which extends the original SPARQL </span><code class="content"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_LOCAL"><span class="insert">PN_LOCAL</span></a></code><span class="insert"> definition
by allowing further characters (see </span><code class="content"><a class="grammarRef" href="#prod-PN_CHARS_OTHERS"><span class="insert">PN_CHARS_OTHERS</span></a></code><span class="insert">):</span></p>
<ul>
<li><span class="insert"> an extra set of characters commonly encountered in IRIs;
@@ -2058,44 +3711,35 @@
')' (right bracket),
',' (comma),
':' (colon),
-';' (semi-colon),
+';' (semi-colon),
'"' (double quote),
'[' (left square bracket),
-']' (right square bracket) are used by the </span>PROV <span class="delete">requirement that the concatenation of the namespace with the</span><span class="insert">notation as delimiters, they are not allowed in</span> local <span class="delete">part results</span><span class="insert">parts.
-Instead, those characters permitted</span> in<span class="insert"> SPARQL
-</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">, are also allowed in </span><code class="content"><a class="grammarRef" href="#prod-PN_LOCAL"><span class="insert">PN_LOCAL</span></a></code><span class="insert"> if they are escaped by the '\' (backslash character) as per production </span><code class="content"><a class="grammarRef" href="#prod-PN_CHARS_ESC"><span class="insert">PN_CHARS_ESC</span></a></code><span class="insert">. Furthermore, '.' (dot), ':' (colon), '-' (hyphen) can also be \-escaped.</span></p>
-
-
-
-<p><span class="insert">A PROV-N qualified name </span><code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME"><span class="insert">QUALIFIED_NAME</span></a></code><span class="insert"> can be mapped to</span> a valid IRI [<cite><a class="bibref" rel="biblioentry" href="#bib-IRI">IRI</a></cite><span class="delete">]. Given that
-',' (comma),
-';' (semi-colon),
-'=' (equal),
-'(' (left bracket),
-')' (right bracket),
-'[' (left square bracket),
-']' (right square bracket) are used</span><span class="insert">]</span> by <span class="delete">the PROV notation as delimiters, they are not allowed in</span><span class="insert">concatenating the namespace denoted its</span> local <span class="delete">parts. Instead, they can be %-escaped or incorporated in the IRI denoted by a prefix.
-</span>
-
-
-<span class="delete">Qualified names </span><span class="delete">QUALIFIED_NAME</span><span class="delete"> consist of a prefix and a local part. Prefixes follow the production</span><span class="insert">name</span> <code class="content"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_PREFIX">PN_PREFIX</a></code> <span class="delete">defined by SPARQL [</span><span class="delete">RDF-SPARQL-QUERY</span><span class="delete">]. Local parts have </span>to <span class="delete">be conformant with</span><span class="insert">the local name</span> <code class="content"><a class="grammarRef" href="#prod-PN_LOCAL">PN_LOCAL</a></code>, <span class="delete">which extends the original SPARQL </span><span class="delete">PN_LOCAL</span><span class="delete"> definition</span><span class="insert">whose \-escaped characters have been unescaped</span> by <span class="delete">allowing further characters and %-escaped charaters (see </span><span class="delete">PN_CHARS_OTHERS</span><span class="delete">).</span><span class="insert">dropping the character '\' (backslash).</span></p>
+']' (right square bracket) are used by the PROV notation as delimiters, they are not allowed in local parts.
+Instead, among those characters, those that are permitted in SPARQL
+</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"> are also allowed in </span><code class="content"><a class="grammarRef" href="#prod-PN_LOCAL"><span class="insert">PN_LOCAL</span></a></code><span class="insert"> if they are escaped by the '\' (backslash character) as per production </span><code class="content"><a class="grammarRef" href="#prod-PN_CHARS_ESC"><span class="insert">PN_CHARS_ESC</span></a></code><span class="insert">. Furthermore, '.' (dot), ':' (colon), '-' (hyphen) can also be \-escaped.</span></p>
+
+
+
+<p>A <span class="delete">PROV</span><span class="insert">PROV-N</span> qualified name <span class="delete">has a more permissive syntax then XML's </span><span class="delete">QName</span><span class="delete"> [</span><span class="delete">XML-NAMES</span><span class="delete">] since it allows any syntax for its local part provided that the concatenation with the namespace results in</span><code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME"><span class="insert">QUALIFIED_NAME</span></a></code><span class="insert"> can be mapped to</span> a valid IRI [<cite><a class="bibref" rel="biblioentry" href="#bib-IRI">IRI</a></cite><span class="delete">]. </span><span class="insert">] by concatenating the namespace denoted its local name </span><code class="content"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_PREFIX"><span class="insert">PN_PREFIX</span></a></code><span class="insert"> to the local name </span><code class="content"><a class="grammarRef" href="#prod-PN_LOCAL"><span class="insert">PN_LOCAL</span></a></code><span class="insert">, whose \-escaped characters have been unescaped by dropping the character '\' (backslash).</span></p>
+
+
<table class="grammar">
-<tbody class="term"> <tr valign="baseline"> <td><a id="prod-QUALIFIED_NAME" name="prod-QUALIFIED_NAME"></a>[<span class="prodNo"><span class="delete">59</span><span class="insert">62</span></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_PREFIX">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_PREFIX">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"><span class="delete">60</span><span class="insert">63</span></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"><span class="delete">61</span><span class="insert">64</span></span>] </td> <td><<code class="production term">PN_CHARS_OTHERS</code>></td> <td> ::= </td> <td><code class="content"><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><br><span class="insert"> | "$"</span><br><span class="insert"> | "!"</span><br><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-PERCENT">PERCENT</a></span><br> | <span class="delete">"/"</span><span class="delete"> | "@"</span><span class="delete"> | "~"</span><span class="delete"> | "&"</span><span class="delete"> | "+"</span><span class="delete"> | "?"</span><span class="delete"> | "#"</span><span class="delete"> | "$"</span><span class="prod"><a class="grammarRef" href="#prod-PN_CHARS_ESC"><span class="insert">PN_CHARS_ESC</span></a></span></code></td> </tr> </tbody>
-<tbody class="term"> <tr valign="baseline"> <td><a id="prod-PN_CHARS_ESC" name="prod-PN_CHARS_ESC"></a>[<span class="prodNo"><span class="delete">62</span><span class="insert">65</span></span><span class="insert">] </span></td> <td><span class="insert"><</span><code class="production term"><span class="insert">PN_CHARS_ESC</span></code><span class="insert">></span></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><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">66</span></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"><span class="delete">63</span><span class="insert">67</span></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>
+<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">61</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_PREFIX"><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_PREFIX"><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">62</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">63</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="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><br><span class="insert"> | "$"</span><br><span class="insert"> | "!"</span><br><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-PERCENT"><span class="insert">PERCENT</span></a></span><br><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-PN_CHARS_ESC"><span class="insert">PN_CHARS_ESC</span></a></span></code></td> </tr> </tbody>
+<tbody class="term"> <tr valign="baseline"> <td><a id="prod-PN_CHARS_ESC" name="prod-PN_CHARS_ESC"></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">PN_CHARS_ESC</span></code><span class="insert">></span></td> <td><span class="insert"> ::= </span></td> <td><code class="content"><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">65</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">66</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"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-qualified-name">Example <span class="delete">31</span><span class="insert">33</span></a></div>
+<div class="anexample" id="anexample-qualified-name"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-qualified-name"><span class="insert">Example 33</span></a></div>
<p>Examples of articles on the BBC Web site seen as entities.</p>
-<pre class="codeexample">bundle
+<pre class="codeexample"><span class="delete">container</span><span class="insert">bundle</span>
prefix bbc <http://www.bbc.co.uk/>
prefix bbcNews <http://www.bbc.co.uk/news/>
@@ -2105,14 +3749,16 @@
entity(bbcNews:) // an alternative way of referring to the bbc news site
-endBundle
+<span class="delete">end</span><span class="insert">endBundle</span>
</pre>
</div>
-<div class="anexample" id="anexample-qualified-name2"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-qualified-name2">Example <span class="delete">32</span><span class="insert">34</span></a></div>
+
+
+<div class="anexample" id="anexample-qualified-name2"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-qualified-name2"><span class="insert">Example 34</span></a></div>
<p>Examples of entities with declared and default namespace.</p>
-<pre class="codeexample">bundle
+<pre class="codeexample"><span class="delete">container</span><span class="insert">bundle</span>
default <http://example.org/2/>
prefix ex <http://example.org/1/>
@@ -2121,14 +3767,17 @@
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 <span class="delete">http://example.org/2/1234</span><span class="insert">http://example.org/1/1234</span>
- entity(4567) // corresponds to IRI http://example.org/2/4567<span class="insert">
+ entity(4567) // corresponds to IRI http://example.org/2/4567<span class="delete">
+end</span><span class="insert">
entity(c/) // corresponds to IRI http://example.org/2/c/
entity(ex:/) // corresponds to IRI http://example.org/1//
-endBundle
-</span></pre>
+endBundle</span>
+</pre>
</div>
+
+
<div class="anexample" id="anexample-qualified-name3"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-qualified-name3"><span class="insert">Example 35</span></a></div>
<p><span class="insert">Examples of \-escaped characters.</span></p>
<pre class="codeexample"><span class="insert">bundle
@@ -2140,29 +3789,38 @@
entity(ex:?fred\=fish%20soup) // corresponds to IRI http://example.org/?fred=fish%20soup
used(-;a1,e1,-) // identifier not specified for usage
- used(\-;a1,e1,-) // usage identifier corresponds to http://example.org/default-</span>
+ used(\-;a1,e1,-) // usage identifier corresponds to http://example.org/default-
endBundle
-</pre>
+</span></pre>
</div>
-<p><b>Note:</b>The productions for<span class="insert"> the terminals</span> <code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME"><span class="delete">qualifiedName</span><span class="insert">QUALIFIED_NAME</span></a></code> and <code class="content"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_PREFIX"><span class="delete">prefix</span><span class="insert">PN_PREFIX</span></a></code> are conflicting.<span class="insert">
+<p><b>Note:</b>The productions for <span class="delete">qualifiedName</span><span class="insert">the terminals </span><code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME"><span class="insert">QUALIFIED_NAME</span></a></code> and <span class="delete">prefix</span> <code class="content"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_PREFIX"><span class="insert">PN_PREFIX</span></a></code> are conflicting.<span class="insert">
Indeed,</span> <span class="insert">for a tokenizer operating independently of the parse tree, </span><code><span class="insert">abc</span></code><span class="insert"> matches both
</span><code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME"><span class="insert">QUALIFIED_NAME</span></a></code><span class="insert"> and
</span><code class="content"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_PREFIX"><span class="insert">PN_PREFIX</span></a></code><span class="insert">.
- </span>In the context of a <code class="content"><a class="grammarRef" href="#prod-namespaceDeclaration">namespaceDeclaration</a></code>, a <span class="delete">parser</span><span class="insert">tokenizer</span> should give<span class="delete"> precedence</span><span class="insert"> preference</span> to the production<span class="delete"> for</span> <code class="content"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_PREFIX"><span class="delete">prefix</span><span class="insert">PN_PREFIX</span></a></code>.
+ </span>In the context of a <code class="content"><a class="grammarRef" href="#prod-namespaceDeclaration">namespaceDeclaration</a></code>, a <span class="delete">parser</span><span class="insert">tokenizer</span> should give<span class="delete"> precedence</span><span class="insert"> preference</span> to the production <span class="delete">for </span><span class="delete">prefix</span><code class="content"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_PREFIX"><span class="insert">PN_PREFIX</span></a></code>.
</p>
+<span class="delete">We need to explicitly disallow '</span><span class="delete">-</span><span class="delete">' as first and only character of local part. Instead, it should be encoded as </span><span class="delete">pct-encoded</span><span class="delete"> [</span><span class="delete">RFC3987</span><span class="delete">].
+</span>
+
</div>
<div id="expression-attribute" class="section">
-<h4><span class="secno">3.7.2 </span>Attribute</h4>
+<h4><span class="secno"><span class="delete">3.7.3</span><span class="insert">3.7.2</span> </span>Attribute</h4>
+
+
+
<table class="grammar">
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-attribute" name="prod-attribute"></a>[<span class="prodNo"><span class="delete">44</span><span class="insert">43</span></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>
+<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">41</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>
</table>
@@ -2186,53 +3844,84 @@
<div id="expression-literal" class="section">
-<h4><span class="secno">3.7.3 </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>
<table class="grammar">
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-literal" name="prod-literal"></a>[<span class="prodNo"><span class="delete">45</span><span class="insert">44</span></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"><span class="delete">46</span><span class="insert">45</span></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"><span class="delete">47</span><span class="insert">46</span></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 class="prod"> <tr valign="baseline"> <td><a id="prod-literal" name="prod-literal"></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">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">43</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">44</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="prodNo"><span class="delete">48</span><span class="insert">47</span></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"><span class="delete">64</span><span class="insert">68</span></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"><span class="delete">66</span><span class="insert">70</span></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"><span class="delete">67</span><span class="insert">71</span></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>
+<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">45</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">67</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">69</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">70</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>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>
+<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"> | </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></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://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>
+<code class="content"><a class="grammarRef" href="#prod-STRING_LITERAL"><span class="insert">STRING_LITERAL</span></a></code><span class="insert">,
+</span><code class="content"><a class="grammarRef" href="#prod-INT_LITERAL"><span class="insert">INT_LITERAL</span></a></code><span class="insert">,</span> and
+<span class="delete">intLiteral</span><code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME_LITERAL"><span class="insert">QUALIFIED_NAME_LITERAL</span></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><span class="delete"> and </span></code><span class="insert">,
+</span><code class="content"><a href="http://www.w3.org/TR/xmlschema11-2/#int"><span class="name">xsd:int</span></a></code>, <span class="insert">and
+</span><code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME"><span class="insert">prov:QUALIFIED_NAME</span></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 <span class="insert">terminals </span><code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME"><span class="delete">prov:QUALIFIED_NAME</span><span class="insert">QUALIFIED_NAME</span></a></code> and
-<code class="content"><a class="grammarRef" href="#prod-INT_LITERAL">INT_LITERAL</a></code> are conflicting.<span class="delete"> In the context</span><span class="insert">
-Indeed, for a tokenizer operating independently</span> of <span class="delete">a
-</span><span class="delete">literal</span><span class="delete">, a parser should give precedence to the production for
-</span><span class="insert">the parse tree, </span><code><span class="insert">1234</span></code><span class="insert"> matches both </span><code class="content"><a class="grammarRef" href="#prod-INT_LITERAL">INT_LITERAL</a></code><span class="insert"> and </span><code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME"><span class="insert">QUALIFIED_NAME</span></a></code><span class="insert"> (local name without prefix). In the context of
+<span class="delete">Permitted datatypes in literals</span>
+<span class="delete">xsd:decimal</span> <span class="delete">xsd:double</span> <span class="delete">xsd:dateTime</span>
+<span class="delete">xsd:integer</span> <span class="delete">xsd:float</span>
+<span class="delete">xsd:nonNegativeInteger</span> <span class="delete">xsd:string</span> <span class="delete">rdf:XMLLiteral</span>
+<span class="delete">xsd:nonPositiveInteger</span><span class="delete">xsd:normalizedString</span>
+<span class="delete">xsd:positiveInteger</span> <span class="delete">xsd:token</span>
+<span class="delete">xsd:negativeInteger</span> <span class="delete">xsd:language</span>
+<span class="delete">xsd:long</span> <span class="delete">xsd:Name</span>
+<span class="delete">xsd:int</span> <span class="delete">xsd:NCName</span>
+<span class="delete">xsd:short</span> <span class="delete">xsd:NMTOKEN</span>
+<span class="delete">xsd:byte</span> <span class="delete">xsd:boolean</span>
+<span class="delete">xsd:unsignedLong</span> <span class="delete">xsd:hexBinary</span>
+<span class="delete">xsd:unsignedInt</span> <span class="delete">xsd:base64Binary</span>
+<span class="delete">xsd:unsignedShort</span><span class="delete">xsd:anyURI</span>
+<span class="delete">xsd:unsignedByte</span> <span class="delete">xsd:QName</span>
+
+
+
+
+
+<p><b>Note:</b>The productions for <span class="delete">qualifiedName</span><span class="insert">terminals </span><code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME"><span class="insert">QUALIFIED_NAME</span></a></code> and <span class="delete">intLiteral</span>
+<code class="content"><a class="grammarRef" href="#prod-INT_LITERAL"><span class="insert">INT_LITERAL</span></a></code> are conflicting.<span class="insert">
+Indeed, for a tokenizer operating independently of the parse tree, </span><code><span class="insert">1234</span></code><span class="insert"> matches both </span><code class="content"><a class="grammarRef" href="#prod-INT_LITERAL"><span class="insert">INT_LITERAL</span></a></code><span class="insert"> and </span><code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME"><span class="insert">QUALIFIED_NAME</span></a></code><span class="insert"> (local name without prefix). In the context of
a </span><code class="content"><a class="grammarRef" href="#prod-convenienceNotation"><span class="insert">convenienceNotation</span></a></code><span class="insert">, a tokenizer should give preference to the production
-</span><code class="content"><a class="grammarRef" href="#prod-INT_LITERAL"><span class="insert">INT_LITERAL</span></a></code>.
-</p>
+</span><code class="content"><a class="grammarRef" href="#prod-INT_LITERAL"><span class="insert">INT_LITERAL</span></a></code><span class="insert">.
+</span></p>
<div class="anexample" id="anexample-convenience"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-convenience"><span class="insert">Example 36</span></a></div>
<p><span class="insert">
The following examples illustrate convenience notations.</span></p>
<p><span class="insert">The two following expressions are strings; if </span><code class="content"><a class="grammarRef" href="#prod-datatype"><span class="insert">datatype</span></a></code><span class="insert"> is not specified, it is </span><code><span class="insert">xsd:string</span></code><span class="insert">.</span></p>
-<pre class="codeexample"><span class="insert"> "abc" %% xsd:string
+<pre class="codeexample"> <span class="delete">In the context</span><span class="insert">"abc" %% xsd:string
"abc"
</span></pre>
@@ -2244,60 +3933,68 @@
-1234
</span></pre>
-<p><span class="insert">The two following expressions are qualified names. Values of type qualified name can be conveniently expressed within single quotes.</span></p>
-<pre class="codeexample"><span class="insert"> "ex:value" %% prov:QUALIFIED_NAME
- 'ex:value'
-</span></pre>
-</div>
-
-<div class="anexample" id="anexample-value"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-value">Example <span class="delete">33</span><span class="insert">37</span></a></div>
-<p>
+<p><span class="insert">The two following expressions are qualified names. Values</span> of <span class="delete">a </span><span class="delete">Literal</span><span class="delete">, a parser should give precedence to the production for </span><span class="delete">intLiteral</span><span class="delete">.
+</span><span class="insert">type qualified name can be conveniently expressed within single quotes.</span></p>
+
+<span class="delete">
+Wouldn't it be useful to introduce a literal for a qualified name?
+Currenlty, we have to write:
+</span><span class="delete">prov:type="ex:Programmer"</span>
+<pre class="codeexample"> <span class="insert">"ex:value" </span>%% <span class="delete">xsd:QName</span><span class="insert">prov:QUALIFIED_NAME
+ 'ex:value'</span>
+</pre>
+<span class="delete">to indicate that ex:Programmer should be interpreted as qualified name (QName).
+Instead, we could have a notation such as
+</span><span class="delete">prov:type='ex:Programmer'</span></div>
+
+<div class="anexample" id="anexample-value"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-value"><span class="insert">Example 37</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".
-</p><pre class="codeexample"> "abc"
+</span></p><pre class="codeexample"><span class="insert"> "abc"
"bonjour"@fr
"1" %% xsd:integer
- "http://example.org/foo" %% xsd:anyURI
+ "http://example.org/foo" %% xsd:anyURI</span>
</pre>
-<span class="delete">The following example shows a value of type </span><span class="delete">prov:QUALIFIED_NAME</span><span class="delete"> (see
-</span><span class="delete">prov:QUALIFIED_NAME</span><span class="delete">).
-The prefix </span><span class="delete">ex</span> <span class="delete">must</span><span class="delete"> be bound to a </span><span class="delete">namespace</span><span class="delete"> declared in a </span><span class="delete">namespace declaration</span><span class="delete">.</span>
-<span class="delete">
- "ex:value" %% prov:QUALIFIED_NAME
-</span><span class="delete">
-Alternatively, the same value can be expressed using the following convenience notation.
-</span><span class="delete">
- 'ex:value'
-</span>
+
</div>
+
+
+
<div id="expression-types" class="section">
-<h5><span class="secno">3.7.3.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.<span class="insert">
Their meaning is defined [</span><cite><a class="bibref" rel="biblioentry" href="#bib-PROV-DM"><span class="insert">PROV-DM</span></a></cite><span class="insert">] (see </span><a href="http://www.w3.org/TR/prov-dm/#term-attribute-type"><span class="insert">Section 5.7.2.4: prov:type</span></a><span class="insert">).
</span></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> <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: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></ol>
-
-<div class="anexample" id="anexample-types"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-types">Example <span class="delete">34</span><span class="insert">38</span></a></div>
-<p>The agent <span class="name">ag</span> is a person (type: <span class="name">prov:Person</span>), whereas the entity
+</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>
+</ol>
+
+<div class="anexample" id="anexample-types"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-types"><span class="insert">Example 38</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">agent(ag, [ prov:type='prov:Person' ])
-entity(pl, [ prov:type='prov:Plan' ])
+<pre class="codeexample"><span class="delete">agent(ag,[prov:type="prov:Person" %% xsd:QName])
+entity(pl,[prov:type="prov:Plan" %% xsd:QName])</span><span class="insert">agent(ag, [ prov:type='prov:Person' ])
+entity(pl, [ prov:type='prov:Plan' ])</span>
</pre>
</div>
@@ -2305,19 +4002,16 @@
</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>
+<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="prodNo"><span class="delete">49</span><span class="insert">48</span></span>] </td> <td><code class="production prod">time</code></td> <td> ::= </td> <td><code class="content"><span class="prod"><span class="delete">ISODATETIME</span>
- <span class="delete">[</span><span class="delete">68</span><span class="delete">] </span> <span class="delete"><</span><span class="delete">DIGIT</span><span class="delete">></span> <span class="delete"> ::= </span> <span class="delete">[0-9]</span>
- <span class="delete">[</span><span class="delete">69</span><span class="delete">] </span> <span class="delete"><</span><span class="delete">ISODATETIME</span><span class="delete">></span> <span class="delete"> ::= </span> <span class="delete">DIGIT</span> <span class="delete">DIGIT</span> <span class="delete">DIGIT</span> <span class="delete">DIGIT</span><span class="delete"> "-" </span><span class="delete">DIGIT</span> <span class="delete">DIGIT</span><span class="delete"> "-" </span><span class="delete">DIGIT</span> <span class="delete">DIGIT</span><span class="delete"> "T" </span><span class="delete">DIGIT</span> <span class="delete">DIGIT</span><span class="delete"> ":" </span><span class="delete">DIGIT</span> <span class="delete">DIGIT</span><span class="delete"> ":" </span><span class="delete">DIGIT</span> <span class="delete">DIGIT</span><span class="delete"> ( "." </span><span class="delete">DIGIT</span><span class="delete"> ( </span><span class="delete">DIGIT</span><span class="delete"> (</span><span class="delete">DIGIT</span><span class="delete">)? )? )? ( "Z" | </span><span class="delete">TIMEZONEOFFSET</span><span class="delete"> )?</span>
- <span class="delete">[</span><span class="delete">70</span><span class="delete">] </span> <span class="delete"><</span><span class="delete">TIMEZONEOFFSET</span><span class="delete">></span> <span class="delete"> ::= </span> <span class="delete">( "+" | "-" ) </span><span class="delete">DIGIT</span> <span class="delete">DIGIT</span><span class="delete"> ":" </span><span class="delete">DIGIT</span> <span class="delete">DIGIT</span><a class="grammarRef" href="http://www.w3.org/TR/xmlschema11-2/#nt-dateTimeRep"><span class="insert">DATETIME</span></a></span></code></td> </tr> </tbody>
+<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">46</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="http://www.w3.org/TR/xmlschema11-2/#nt-dateTimeRep"><span class="insert">DATETIME</span></a></span></code></td> </tr> </tbody>
</table>
-<div class="anexample" id="anexample-time"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-time">Example <span class="delete">35</span><span class="insert">39</span></a></div>
+<div class="anexample" id="anexample-time"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-time"><span class="insert">Example 39</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)
@@ -2336,63 +4030,60 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
<div id="expression-NamespaceDeclaration" class="section">
-<h4><span class="secno">3.7.4 </span>Namespace Declaration</h4>
+<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="prodNo"><span class="delete">50</span><span class="insert">49</span></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"><span class="delete">51</span><span class="insert">50</span></span>] </td> <td><code class="production prod">namespaceDeclaration</code></td> <td> ::= </td> <td><code class="content">"prefix" <span class="prod"><span class="delete">QUALIFIED_NAME</span><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_PREFIX"><span class="insert">PN_PREFIX</span></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-defaultNamespaceDeclaration" name="prod-defaultNamespaceDeclaration"></a>[<span class="prodNo"><span class="delete">53</span><span class="insert">51</span></span>] </td> <td><code class="production prod"><span class="delete">namespace</span><span class="insert">defaultNamespaceDeclaration</span></code></td> <td> ::= </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">IRI_REF</a></span></code></td> </tr> </tbody>
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-namespace" name="prod-namespace"></a>[<span class="prodNo">52</span>] </td> <td><code class="production prod"><span class="delete">defaultNamespaceDeclaration</span><span class="insert">namespace</span></code></td> <td> ::= </td> <td><code class="content"><span class="delete">"default" </span><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-namespaceDeclarations" name="prod-namespaceDeclarations"></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">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">48</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="http://www.w3.org/TR/rdf-sparql-query/#rPN_PREFIX"><span class="insert">PN_PREFIX</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">49</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>
+<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">50</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>
</table>
-<p>A <code><a class="grammarRef" href="#prod-namespaceDeclaration">namespaceDeclaration</a></code> consists of a binding between a prefix and a namespace. Every qualified name with this prefix in the scope of this declaration <span class="delete">refers</span><span class="insert">belongs</span> to this namespace. <span class="insert">
+<p><span class="insert">A </span><code><a class="grammarRef" href="#prod-namespaceDeclaration"><span class="insert">namespaceDeclaration</span></a></code><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 belongs to this namespace.
A </span><code><a class="grammarRef" href="#prod-defaultNamespaceDeclaration"><span class="insert">defaultNamespaceDeclaration</span></a></code><span class="insert"> consists of a namespace. Every qualified name without prefix in the scope of this declaration belongs to this namespace. Scope of a declaration is specified as follows:</span></p>
<ul>
-<li>
-The scope of a namespace declaration <span class="delete">is the </span><span class="insert">directly occurring in a </span><code><a class="grammarRef" href="#prod-namedBundle">namedBundle</a><span class="delete"> or </span></code><span class="insert"> is the </span><code><a class="grammarRef" href="#prod-namedBundle"><span class="insert">namedBundle</span></a></code><span class="insert"> itself;</span></li>
+<li><span class="insert">
+The scope of a namespace declaration directly occurring in a </span><code><a class="grammarRef" href="#prod-namedBundle"><span class="insert">namedBundle</span></a></code><span class="insert"> is the </span><code><a class="grammarRef" href="#prod-namedBundle"><span class="insert">namedBundle</span></a></code><span class="insert"> itself;</span></li>
<li><span class="insert">
-the scope of a namespace declaration directly occurring in a </span><code><a class="grammarRef" href="#prod-bundle">toplevel bundle</a><span class="delete"> in which</span></code><span class="insert"> is the </span><code><a class="grammarRef" href="#prod-bundle"><span class="insert">toplevel bundle</span></a></code><span class="insert"> itself, except and </span><code><a class="grammarRef" href="#prod-namedBundle"><span class="insert">namedBundle</span></a></code> it <span class="delete">directly occurs.</span><span class="insert">may contain.</span></li>
+the scope of a namespace declaration directly occurring in a </span><code><a class="grammarRef" href="#prod-bundle"><span class="insert">toplevel bundle</span></a></code><span class="insert"> is the </span><code><a class="grammarRef" href="#prod-bundle"><span class="insert">toplevel bundle</span></a></code><span class="insert"> itself, except and </span><code><a class="grammarRef" href="#prod-namedBundle"><span class="insert">namedBundle</span></a></code><span class="insert"> it may contain.</span></li>
</ul>
<p><span class="insert">A set of namespace declarations </span><code><a class="grammarRef" href="#prod-namespaceDeclarations"><span class="insert">namespaceDeclarations</span></a></code> <em class="rfc2119" title="must not"><span class="insert">must not</span></em><span class="insert"> re-declare the same prefix.</span></p>
-
-
-
-
-
-<p><span class="delete">In PROV-N, the following</span><span class="insert">A namespace declaration </span><code><a class="grammarRef" href="#prod-namespaceDeclaration"><span class="insert">namespaceDeclaration</span></a></code> <em class="rfc2119" title="must not"><span class="insert">must not</span></em><span class="insert"> declare</span> prefixes <span class="delete">are reserved:
-</span>
- <span class="name">prov</span><span class="delete"> denotes the PROV namespace with URI </span><span class="delete">http://www.w3.org/ns/prov#</span>
- <span class="insert"> and </span><span class="name">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="insert">(see </span><a href="#namespace-table"><span class="insert">Table 1</span></a><span class="insert"> for their IRI).</span></p>
-
-
-
-
-
-<div class="anexample" id="anexample-namespace"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-namespace">Example <span class="delete">36</span><span class="insert">40</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">bundle
+<p><span class="insert">A namespace declaration </span><code><a class="grammarRef" href="#prod-namespaceDeclaration"><span class="insert">namespaceDeclaration</span></a></code> <em class="rfc2119" title="must not"><span class="insert">must not</span></em><span class="insert"> declare 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"> (see </span><a href="#namespace-table"><span class="insert">Table 1</span></a><span class="insert"> for their IRI).</span></p>
+
+
+
+<div class="anexample" id="anexample-namespace"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-namespace"><span class="insert">Example 40</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
-</pre>
+</span></pre>
</div>
-
-
-
-
<div class="anexample" id="anexample-namespace-scope"><div class="anexampleTitle"><a class="internalDFN" href="#anexample-namespace-scope"><span class="insert">Example 41</span></a></div>
<p><span class="insert">In the following example, a toplevel bundle declares a default namespace and the occurrence of
</span><code><span class="insert">e001</span></code><span class="insert"> directly occurring in the toplevel bundle refers to that namespace.
@@ -2420,23 +4111,71 @@
-
-
-
+<div id="semantic-rules-summary" class="section">
+<h4><span class="secno"><span class="insert">3.7.5 </span></span><span class="insert">Summary of additional semantic rules</span></h4><span class="insert">
+
+Some of the grammar productions allow for expressions that are syntactically correct, and yet according to [</span><cite><a class="bibref" rel="biblioentry" href="#bib-PROV-DM"><span class="insert">PROV-DM</span></a></cite><span class="insert">] they are not acceptable, because additional semantic rules are defined for those expressions.
+ The following table provides a summary of such expressions along with examples of syntactically correct but unacceptable forms, and the additional semantic rules.</span><p></p>
+
+<div style="text-align: left;">
+<table class="thinborder" style="margin-left: auto; margin-right: auto;">
+<caption id="validity-rules-table"><span class="insert">Summary of additional semantic rules for grammar productions</span></caption>
+<tbody><tr><td><a href="#dfn-production" class="internalDFN"><b><span class="insert">Production</span></b></a></td>
+ <td><b><span class="insert">Examples of syntactically correct expressions</span></b></td>
+ <td><b><span class="insert">Additional semantic rule</span></b></td>
+</tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
+<tr><td><a class="grammarRef" href="#prod-generationExpression"><span class="insert">Generation expression</span></a></td>
+ <td><span class="name"><span class="insert">wasGeneratedBy(e2, -, -)</span></span><br><span class="name"><span class="insert">wasGeneratedBy(-; e2, -, -)</span></span></td>
+ <td><span class="insert">At least one of </span><a href="http://www.w3.org/TR/prov-dm/#generation.id"><span class="attribute"><span class="insert">id</span></span></a><span class="insert">, </span><a href="http://www.w3.org/TR/prov-dm/#generation.activity"><span class="attribute"><span class="insert">activity</span></span></a><span class="insert">, </span><a href="http://www.w3.org/TR/prov-dm/#generation.time"><span class="attribute"><span class="insert">time</span></span></a><span class="insert">, and </span><a href="http://www.w3.org/TR/prov-dm/#generation.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></td>
+</tr>
+<tr><td><a class="grammarRef" href="#prod-usageExpression"><span class="insert">Usage expression</span></a></td>
+<td><span class="name"><span class="insert">used(a2, -, -)</span></span><br><span class="name"><span class="insert">used(-; a2, -, -)</span></span></td>
+<td><span class="insert">At least one of </span><a href="http://www.w3.org/TR/prov-dm/#usage.id"><span class="attribute"><span class="insert">id</span></span></a><span class="insert">, </span><a href="http://www.w3.org/TR/prov-dm/#usage.entity"><span class="attribute"><span class="insert">entity</span></span></a><span class="insert">, </span><a href="http://www.w3.org/TR/prov-dm/#usage.time"><span class="attribute"><span class="insert">time</span></span></a><span class="insert">, and </span><a href="http://www.w3.org/TR/prov-dm/#usage.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></td>
+</tr><tr>
+<td><a class="grammarRef" href="#prod-startExpression"><span class="insert">Start expression</span></a></td>
+<td> <span class="name"><span class="insert">wasStartedBy(e2, -, -, -)</span></span><br><span class="name"><span class="insert">wasStartedBy(-; e2, -, -, -)</span></span></td>
+<td><span class="insert">At least one of </span><a href="http://www.w3.org/TR/prov-dm/#start.id"><span class="attribute"><span class="insert">id</span></span></a><span class="insert">, </span><a href="http://www.w3.org/TR/prov-dm/#start.trigger"><span class="attribute"><span class="insert">trigger</span></span></a><span class="insert">, </span><a href="http://www.w3.org/TR/prov-dm/#start.starter"><span class="attribute"><span class="insert">starter</span></span></a><span class="insert">, </span><a href="http://www.w3.org/TR/prov-dm/#start.time"><span class="attribute"><span class="insert">time</span></span></a><span class="insert">, and </span><a href="http://www.w3.org/TR/prov-dm/#start.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></td>
+</tr><tr>
+
+</tr><tr>
+<td><a class="grammarRef" href="#prod-endExpression"><span class="insert">End expression</span></a></td>
+<td><span class="name"><span class="insert">wasEndedBy(e2, -, -, -)</span></span><br><span class="name"><span class="insert">wasEndedBy(-; e2, -, -, -)</span></span></td>
+<td><span class="insert">At least one of </span><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"><span class="insert">trigger</span></span></a><span class="insert">, </span><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"><span class="insert">time</span></span></a><span class="insert">, and </span><a href="http://www.w3.org/TR/prov-dm/#end.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></td>
+</tr>
+
+<tr>
+<td><a class="grammarRef" href="#prod-invalidationExpression"><span class="insert">Invalidation expression</span></a></td>
+<td><span class="name"><span class="insert">wasInvalidatedBy(e2, -, -)</span></span> <br><span class="name"><span class="insert">wasInvalidatedBy(-; e2, -, -)</span></span></td>
+<td><span class="insert">At least one of </span><a href="http://www.w3.org/TR/prov-dm/#invalidation.id"><span class="attribute"><span class="insert">id</span></span></a><span class="insert">, </span><a href="http://www.w3.org/TR/prov-dm/#invalidation.activity"><span class="attribute"><span class="insert">activity</span></span></a><span class="insert">, </span><a href="http://www.w3.org/TR/prov-dm/#invalidation.time"><span class="attribute"><span class="insert">time</span></span></a><span class="insert">, and </span><a href="http://www.w3.org/TR/prov-dm/#invalidation.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></td>
+</tr>
+
+<tr>
+<td><a class="grammarRef" href="#prod-associationExpression"><span class="insert">Association expression</span></a></td>
+<td><span class="name"><span class="insert">wasAssociatedWith(a, -, -)</span></span> <br><span class="name"><span class="insert">wasAssociatedWith(-; a, -, -)</span></span></td>
+<td><span class="insert">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></td>
+</tr>
+
+</tbody></table>
</div>
</div>
+</div>
+
+
+</div>
+
<div id="toplevelBundle" class="section">
-<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
+<h2><span class="secno">4. </span><span class="delete">Expression Container</span><span class="insert">Toplevel Bundle</span></h2>
+
+<p><span class="delete">An </span><span class="delete">expression container</span><span class="insert">A </span><dfn id="dfn-toplevel-bundle"><span class="insert">toplevel bundle</span></dfn> is a house-keeping construct of PROV-N capable of packaging up PROV-N <a title="expression">expressions</a> and namespace declarations. <span class="delete">An expression container</span><span class="insert">A toplevel bundle</span> forms a self-contained package of provenance descriptions for the purpose of <em>exchanging</em> them. <span class="delete">An expression container</span><span class="insert">A toplevel bundle</span> 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> Given its status of house keeping construct for the purpose of exchanging provenance expressions, <span class="delete">an</span><span class="insert">a toplevel bundle is not defined as a PROV-N</span> expression <span class="delete">container is not defined as a PROV-N </span><span class="insert">(production </span><code class="content"><a class="grammarRef" href="#prod-expression">expression<span class="delete"> (</span><span class="delete">production </span><span class="delete">expression</span></a></code>).</p>
@@ -2445,41 +4184,48 @@
-<p>A toplevel <span class="delete">bundle, written </span><span class="insert">bundle's text matches the </span><code class="content"><a class="grammarRef" href="#prod-bundle">bundle<span class="delete"> decls exprs bundles endBundle</span><span class="delete"> in PROV-N,</span></a></code><span class="insert"> production.</span></p>
+<p><span class="delete">An </span><span class="insert">A toplevel bundle's text matches the </span><code class="content"><a class="grammarRef" href="#prod-bundle"><span class="insert">bundle</span></a></code><span class="insert"> production.</span></p>
<table class="grammar">
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-bundle" name="prod-bundle"></a><span class="insert">[</span><span class="prodNo"><span class="insert">1</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">bundle</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-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">)* (</span><span class="prod"><a class="grammarRef" href="#prod-namedBundle"><span class="insert">namedBundle</span></a></span><span class="insert">)* "endBundle"</span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-bundle" name="prod-bundle"></a><span class="insert">[</span><span class="prodNo"><span class="insert">1</span></span><span class="insert">] </span></td> <td><code class="production prod"><span class="insert">bundle</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-namespaceDeclarations"><span class="insert">namespaceDeclarations</span></a></span><span class="insert">)? (</span><span class="prod"><a class="grammarRef" href="#prod-expression">expression<span class="delete"> container, written </span><span class="delete">container decls exprs endContainer</span><span class="delete"> in PROV-N,</span></a></span><span class="insert">)* (</span><span class="prod"><a class="grammarRef" href="#prod-namedBundle"><span class="insert">namedBundle</span></a></span><span class="insert">)* "endBundle"</span></code></td> </tr> </tbody>
</table>
<p><span class="insert">A toplevel bundle</span> contains:
</p><ul>
<li><em>namespaceDeclarations</em>: a set <span class="delete">decls</span> of namespace <span class="delete">declarations,</span><span class="insert">declarations </span><code><a class="grammarRef" href="#prod-namespaceDeclarations"><span class="insert">namespaceDeclarations</span></a></code><span class="insert">,</span> 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 <span class="delete">non-empty </span>set of expressions <span class="delete">exprs</span><span class="insert">matching </span><code><a class="grammarRef" href="#prod-expression"><span class="insert">expression</span></a></code>;</li>
-<li><em>namedBundles</em>: a set of <span class="delete">bundle declarations</span> <span class="delete">bundles</span><span class="delete">;</span>
-
-
-<span class="delete">A toplevel bundle's text matches the </span><span class="delete">bundle</span><span class="delete"> production.</span>
-
-
- <span class="delete">[</span><span class="delete">1</span><span class="delete">] </span> <span class="delete">bundle</span> <span class="delete"> ::= </span> <span class="delete">"bundle" (</span><span class="delete">namespaceDeclarations</span><span class="delete">)? (</span><span class="delete">expression</span><span class="delete">)* (</span>
-<code><a class="grammarRef" href="#prod-namedBundle">namedBundle</a><span class="delete">)* "endBundle"</span>
-</code><span class="insert">.</span></li>
+<li><em>expressions</em>: a <span class="delete">non-empty </span>set of expressions <span class="delete">exprs</span><span class="insert">matching </span><code><a class="grammarRef" href="#prod-expression"><span class="insert">expression</span></a></code><span class="insert">;</span></li>
+<li><em><span class="insert">namedBundles</span></em><span class="insert">: a set of
+</span><code><a class="grammarRef" href="#prod-namedBundle"><span class="insert">namedBundle</span></a></code>.</li>
</ul>
-<p><span class="insert">Thus, named bundles can occur inside a toplevel bundle.
-Named bundles are self-contained: each identifier occuring in a named bundle, including the bundle identifier itself, </span><em class="rfc2119" title="must"><span class="insert">must</span></em><span class="insert"> be interpreted with respect to the namespace declarations of that named bundle. In other words, named bundles do not inherit namespaces declarations from the toplevel bundle.
+
+
+<p><span class="delete">An expression container's text matches the </span><span class="delete">expressionContainer</span><span class="delete"> production.</span><span class="insert">Thus, named bundles can occur inside a toplevel bundle.
+Named bundles are self-contained: each identifier occuring in a named bundle, including the named bundle's identifier itself, </span><em class="rfc2119" title="must"><span class="insert">must</span></em><span class="insert"> be interpreted with respect to the namespace declarations of that named bundle. In other words, named bundles </span><em class="rfc2119" title="should"><span class="insert">should</span></em><span class="insert"> not inherit namespaces declarations from the toplevel bundle.
</span></p>
-<div class="anexample" id="example_42"><div class="anexampleTitle"><a class="internalDFN" href="#example_42">Example <span class="delete">37</span><span class="insert">42</span></a></div>
+<span class="delete">expressionContainer</span><span class="delete"> ::=
+</span><span class="delete">container</span>
+<span class="delete">namespaceDeclarations</span>
+ <span class="delete">expression</span>
+<span class="delete">endContainer</span>
+
+
+
+
+<div class="anexample" id="example_42"><div class="anexampleTitle"><a class="internalDFN" href="#example_42"><span class="insert">Example 42</span></a></div>
+
+
+
<p>
The following <span class="delete">container</span><span class="insert">bundle</span> contains expressions related to the provenance of entity
<span class="name">e2</span>.
</p>
-<pre class="codeexample">bundle
- default <http://anotherexample.org/>
+<pre class="codeexample"><span class="delete">container</span><span class="insert">bundle
+ default <http://anotherexample.org/></span>
prefix ex <http://example.org/>
entity(e2, [ prov:type="File", ex:path="/shared/crime.txt", ex:creator="Alice",
@@ -2487,9 +4233,9 @@
activity(a1, 2011-11-16T16:05:00, <span class="delete">-,[prov:type="edit"])</span><span class="insert">-, [prov:type="edit"])</span>
wasGeneratedBy(e2, a1, -, [ex:fct="save"])
wasAssociatedWith(a1, ag2, -, [prov:role="author"])
- agent(ag2, [ <span class="delete">prov:type='prov:Person' ,</span><span class="insert">prov:type='prov:Person',</span> ex:name="Bob" ])
-
-endBundle
+ agent(ag2, [ <span class="delete">prov:type="prov:Person" %% xsd:QName,</span><span class="insert">prov:type='prov:Person',</span> ex:name="Bob" ])
+
+<span class="delete">endContainer</span><span class="insert">endBundle</span>
</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>
@@ -2499,14 +4245,10 @@
</div>
-
-
-
-
<div id="extensibility" class="section">
-<h2><span class="secno">5. </span><span class="insert">Extensibility</span></h2>
-
-<p><span class="insert">The PROV data model is extensible by means of attributes </span><span class="name"><span class="insert">prov:type</span></span><span class="insert"> and </span><span class="name"><span class="insert">prov:role</span></span><span class="insert"> allowing subtyping of expressions. For some applications, novel syntax may also be convenient. Hence, the normative requirements are as follow.
+<h2><span class="secno">5. </span><span class="delete">Account</span><span class="insert">Extensibility</span></h2>
+
+<p>The PROV data model <span class="delete">has introduced</span><span class="insert">is extensible by means of attributes </span><span class="name"><span class="insert">prov:type</span></span><span class="insert"> and </span><span class="name"><span class="insert">prov:role</span></span><span class="insert"> allowing subtyping of expressions. For some applications, novel syntax may also be convenient. Hence, the normative requirements are as follow.
</span></p><ul>
<li><span class="insert"> PROV-N compliant parsers </span><em class="rfc2119" title="must"><span class="insert">must</span></em><span class="insert"> be able to parse expressions matching the </span><code class="content"><a class="grammarRef" href="#prod-extensibilityExpression"><span class="insert">extensibilityExpression</span></a></code><span class="insert"> production defined below.
</span></li><li><span class="insert"> As PROV provides no definition for these expressions, PROV compliant implementations
@@ -2517,36 +4259,74 @@
<table class="grammar">
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-extensibilityExpression" name="prod-extensibilityExpression"></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">extensibilityExpression</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><span class="insert"> "(" </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-extensibilityArgument"><span class="insert">extensibilityArgument</span></a></span><span class="insert"> ( "," </span><span class="prod"><a class="grammarRef" href="#prod-extensibilityArgument"><span class="insert">extensibilityArgument</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-extensibilityArgument" name="prod-extensibilityArgument"></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">extensibilityArgument</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-identifierOrMarker"><span class="insert">identifierOrMarker</span></a></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><span class="prod"><a class="grammarRef" href="#prod-time"><span class="insert">time</span></a></span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-extensibilityExpression"><span class="insert">extensibilityExpression</span></a></span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-extensibilityTuple"><span class="insert">extensibilityTuple</span></a></span><span class="insert"> )</span></code></td> </tr> </tbody>
-<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-extensibilityTuple" name="prod-extensibilityTuple"></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">extensibilityTuple</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-extensibilityArgument"><span class="insert">extensibilityArgument</span></a></span><span class="insert"> ( "," </span><span class="prod"><a class="grammarRef" href="#prod-extensibilityArgument"><span class="insert">extensibilityArgument</span></a></span><span class="insert"> )* "}"</span><br><span class="insert"> | "(" </span><span class="prod"><a class="grammarRef" href="#prod-extensibilityArgument"><span class="insert">extensibilityArgument</span></a></span><span class="insert"> ( "," </span><span class="prod"><a class="grammarRef" href="#prod-extensibilityArgument"><span class="insert">extensibilityArgument</span></a></span><span class="insert"> )* ")"</span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-extensibilityExpression" name="prod-extensibilityExpression"></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">extensibilityExpression</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><span class="insert"> "(" </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-extensibilityArgument"><span class="insert">extensibilityArgument</span></a></span><span class="insert"> ( "," </span><span class="prod"><a class="grammarRef" href="#prod-extensibilityArgument"><span class="insert">extensibilityArgument</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-extensibilityArgument" name="prod-extensibilityArgument"></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">extensibilityArgument</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-identifierOrMarker"><span class="insert">identifierOrMarker</span></a></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><span class="prod"><a class="grammarRef" href="#prod-time"><span class="insert">time</span></a></span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-extensibilityExpression"><span class="insert">extensibilityExpression</span></a></span><span class="insert"> | </span><span class="prod"><a class="grammarRef" href="#prod-extensibilityTuple"><span class="insert">extensibilityTuple</span></a></span><span class="insert"> )</span></code></td> </tr> </tbody>
+<tbody class="prod"> <tr valign="baseline"> <td><a id="prod-extensibilityTuple" name="prod-extensibilityTuple"></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">extensibilityTuple</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-extensibilityArgument"><span class="insert">extensibilityArgument</span></a></span><span class="insert"> ( "," </span><span class="prod"><a class="grammarRef" href="#prod-extensibilityArgument"><span class="insert">extensibilityArgument</span></a></span><span class="insert"> )* "}"</span><br><span class="insert"> | "(" </span><span class="prod"><a class="grammarRef" href="#prod-extensibilityArgument"><span class="insert">extensibilityArgument</span></a></span><span class="insert"> ( "," </span><span class="prod"><a class="grammarRef" href="#prod-extensibilityArgument"><span class="insert">extensibilityArgument</span></a></span><span class="insert"> )* ")"</span></code></td> </tr> </tbody>
</table>
<p><span class="insert">Expressions compatible with the
-</span><code class="content"><a class="grammarRef" href="#prod-extensibilityExpression"><span class="insert">extensibilityExpression</span></a></code><span class="insert"> production follow a general form of functional syntax, in which the predicate </span><em class="rfc2119" title="must"><span class="insert">must</span></em><span class="insert"> be a
-</span><code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME"><span class="insert">qualifiedName</span></a></code><span class="insert">
+</span><code class="content"><a class="grammarRef" href="#prod-extensibilityExpression"><span class="insert">extensibilityExpression</span></a></code><span class="insert"> production follow</span> a <span class="delete">notion</span><span class="insert">general form</span> of <span class="delete">account by</span><span class="insert">functional syntax, in</span> which <span class="insert">the predicate </span><em class="rfc2119" title="must"><span class="insert">must</span></em><span class="insert"> be </span>a<span class="delete"> set</span>
+<code class="content"><a class="grammarRef" href="#prod-QUALIFIED_NAME"><span class="insert">qualifiedName</span></a></code><span class="insert">
with a non-empty </span><code class="content"><a class="grammarRef" href="http://www.w3.org/TR/rdf-sparql-query/#rPN_PREFIX"><span class="insert">prefix</span></a></code><span class="insert">.</span></p>
<div class="anexample" id="example_43"><div class="anexampleTitle"><a class="internalDFN" href="#example_43"><span class="insert">Example 43</span></a></div>
<p>
-<a href="#component6"><span class="insert">Collections</span></a><span class="insert"> are sets of entities, whose membership can be expressed using the </span><span class="name"><span class="insert">hadMembers</span></span><span class="insert"> relation. The following example shows how one can express membership for an extension of Collections, namely sets of key-value pairs. The notation is a variation of that used for Collections membership, in which the elements of the set are pairs. The name of the relation is qualified with the extension-specific namespace </span><span class="name"><span class="insert">http://example.org/dictionaries</span></span><span class="insert">.
+<a href="#component6"><span class="insert">Collections</span></a><span class="insert"> are sets</span> of <span class="delete">provenance descriptions</span><span class="insert">entities, whose membership</span> can be <span class="delete">bundled up and named.</span><span class="insert">expressed using the </span><span class="name"><span class="insert">hadMember</span></span><span class="insert"> relation.</span> The <span class="delete">PROV data model </span><span class="delete">assumes</span><span class="delete"> the existence</span><span class="insert">following example shows how one can express membership for an extension</span> of <span class="delete">mechanisms</span><span class="insert">Collections, namely sets of key-value pairs. The notation is a variation of that used for Collections membership, allowing multiple member elements</span> to <span class="delete">implement accounts, but such mechanisms remain outside its scope.</span><span class="insert">be declared, and in which the elements are pairs. The name of the relation is qualified with the extension-specific namespace </span><span class="name"><span class="insert">http://example.org/dictionaries</span></span><span class="insert">.
</span></p>
-<pre class="codeexample"><span class="insert"> prefix dictExt <http://example.org/dictionaries>
+<pre class="codeexample"> <span class="delete">It</span><span class="insert">prefix dictExt <http://example.org/dictionaries>
dictExt:hadMembers(mId; d, {("k1",e1), ("k2",e2), ("k3",e3)}, [])
</span></pre><span class="insert">
-Note that the generic </span><code class="content"><a class="grammarRef" href="#prod-extensibilityExpression"><span class="insert">extensibilityExpression</span></a></code><span class="insert"> production above allows for alternative notations to be used for expressing membership, if the designers of the extensions so desire. Here is an alternate syntax that is consistent with the productions:
-</span><pre class="codeexample"><span class="insert"> prefix dictExt <http://example.org/dictionaries>
- dictExt:hadMembers(mid; d, dictExt:set(dictExt:pair("k1",e1), dictExt:pair("k2",e2), dictExt:pair("k3",e3)),
- [dictExt:uniqueKeys="true"])
-</span></pre>
+Note that the generic </span><code class="content"><a class="grammarRef" href="#prod-extensibilityExpression"><span class="insert">extensibilityExpression</span></a></code><span class="insert"> production above allows for alternative notations to be used for expressing membership, if the designers of the extensions so desire. Here</span> is <span class="delete">suggested</span><span class="insert">an alternate syntax</span> that <span class="delete">specific serializations may offer solutions to name bundles of descriptions. </span>
+
+<span class="delete">Given that the primary motivation for PROV-N </span>is <span class="delete">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.</span>
+
+
+
+<span class="delete">An account, written </span><span class="delete">account(id, exprs)</span><span class="delete"> in PROV-N, contains:</span>
+
+<span class="delete">id</span><span class="delete">: an identifier</span><span class="insert">consistent with the productions:
+</span><pre class="codeexample"> <span class="delete">that identifies this account;</span>
+<span class="delete">expressions</span><span class="delete">: a set </span><span class="delete">exprs</span><span class="delete"> of expressions;</span>
+
+
+<span class="delete">In PROV-N, an account's text matches the </span><span class="delete">accountExpression</span><span class="delete"> production of the grammar.</span>
+
+
+<span class="delete">accountExpression</span><span class="delete"> ::=
+</span><span class="delete">account</span><span class="insert">prefix dictExt <http://example.org/dictionaries>
+ dictExt:hadMembers(mid; d, dictExt:set(dictExt:pair("k1",e1),
+ dictExt:pair("k2",e2),
+ dictExt:pair("k3",e3)),
+ [dictExt:uniqueKeys="true"])</span>
+<span class="delete">(</span>
+<span class="delete">identifier</span>
+<span class="delete">,</span>
+
+<span class="delete">expression</span>
+<span class="delete">)</span>
+</pre>
</div>
+<span class="delete">It is also useful to package up one or more account expressions in an expression container, for interchange purpose. Hence, </span><span class="delete">expressionContainer</span><span class="delete"> is revised as follows. </span>
+
+
+<span class="delete">expressionContainer</span><span class="delete"> ::=
+</span><span class="delete">container</span>
+<span class="delete">namespaceDeclarations</span>
+ <span class="delete">expression</span>
+<span class="delete">endContainer</span> <span class="delete">
+| </span><span class="delete">container</span>
+<span class="delete">namespaceDeclarations</span>
+ <span class="delete">accountExpression</span>
+<span class="delete">endContainer</span>
+
+
@@ -2554,52 +4334,94 @@
+
+<span class="delete">
+The following container </span>
+<span class="delete">container
+ prefix ex <http://example.org/>
+
+ account(ex:acc1,...)
+ account(ex:acc2,...)
+endContainer
+</span>
+<span class="delete"> illustrates how two accounts with identifiers </span><span class="delete">ex:acc1</span><span class="delete"> and </span><span class="delete">ex:acc2</span><span class="delete"> can be returned in a PROV-N serialization of the provenance of
+something.
+</span>
+
+
+
+
+<span class="delete">
+The following container </span>
+<span class="delete">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
+</span>
+<span class="delete"> illustrates a first account, with identifier </span><span class="delete">ex:acc1</span><span class="delete">, containing expressions describing the provenance of the technical report </span><span class="delete">tr:WD-prov-dm-20111215</span><span class="delete">, and a second account </span><span class="delete">ex:acc2</span><span class="delete">, describing the provenance of the first. In account </span><span class="delete">ex:acc2</span><span class="delete">, </span><span class="delete">ex:acc1</span><span class="delete"> is the identifier of an entity of type </span><span class="delete">prov:Account</span><span class="delete">.
+</span>
+
+
+
+
+
<div id="media-type" class="section">
-<h2><span class="secno"><span class="insert">6.</span> </span>Media Type</h2>
+<h2><span class="secno">6. </span>Media Type</h2>
<p>
The media type of PROV-N is <span class="name"><span class="delete">text/prov-n</span><span class="insert">text/provenance-notation</span></span>. The content encoding of PROV-N content is UTF-8.
</p>
-<span class="delete">
-See </span><span class="delete">http://www.w3.org/2002/06/registering-mediatype</span><span class="delete"> for Register an Internet Media Type for a </span><span class="delete">W3C</span><span class="delete"> Spec.</span><span class="delete">
-Following text adapted from </span><span class="delete">turtle</span><span class="delete">.
-</span>
+
+
<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>
+ <dt><span class="insert">Contact:</span></dt>
+ <dd><span class="insert">Ivan Herman</span></dd>
+ <dt>See <span class="insert">also:</span></dt>
+ <dd><a href="http://www.w3.org/2002/06/registering-mediatype"><span class="delete">http://www.w3.org/2002/06/registering-mediatype</span><span class="delete"> for</span><span class="insert">How to</span> Register <span class="delete">an Internet</span><span class="insert">a</span> Media Type for a <acronym title="World Wide Web Consortium">W3C</acronym> <span class="delete">Spec.</span><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>The Internet Media Type / MIME Type for PROV-N is <span class="delete">"text/prov-n".</span><span class="insert">"text/provenance-notation".</span></p>
- <p>It is recommended that PROV-N files have the extension <span class="delete">".pn"</span><span class="insert">".provn"</span> (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>
+ <p><span class="insert">The Internet Media Type / MIME Type for PROV-N is "text/provenance-notation".</span></p>
+
+ <p><span class="insert">It is recommended that PROV-N files have the extension ".provn" (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>Type name:</dt>
- <dd>text</dd>
- <dt>Subtype name:</dt>
- <dd><span class="delete">prov-n</span><span class="insert">provenance-notation</span></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 [<cite><a class="bibref" rel="biblioentry" href="#bib-UNICODE5">UNICODE5</a></cite>]. The encoding is always UTF-8 [<cite><a class="bibref" rel="biblioentry" href="#bib-UTF-8">UTF-8</a></cite>].</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 <span class="insert">the provenance of </span>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 <span class="insert">is a language for describing the provenance of things, and therefore a PROV-N document is metadata for other resources. Untrusted PROV-N documents may mislead its consumers by indicating that a third-party resource has a reputable lineage, when it has not. Provenance of PROV-N document should be sought. </span></dd>
- <dd><span class="insert">PROV-N </span>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
+ <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">provenance-notation</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 mandatory. 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><cite><a class="bibref" rel="biblioentry" href="#bib-UNICODE5"><span class="insert">UNICODE5</span></a></cite><span class="insert">]. The encoding is always UTF-8 [</span><cite><a class="bibref" rel="biblioentry" href="#bib-UTF-8"><span class="insert">UTF-8</span></a></cite><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.</span></dd>
+ <dd><span class="insert">PROV-N is used to express the provenance of 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, by means of 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 is a language for describing the provenance of things, and therefore a PROV-N document is metadata for other resources. Untrusted PROV-N documents may mislead its consumers by indicating that a third-party resource has a reputable lineage, when it has not. Provenance of PROV-N document should be sought. </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
@@ -2607,36 +4429,36 @@
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>
+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>Interoperability considerations:</dt>
- <dd>There are no known interoperability issues.</dd>
- <dt>Published specification:</dt>
- <dd><span class="delete">This specification.</span><span class="insert">PROV-N: The Provenance Notation, Moreau, Missier, (eds), Cheney, Soiland-Reyes
+ <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">PROV-N: The Provenance Notation, Moreau, Missier, (eds), Cheney, Soiland-Reyes
</span><a href="http://www.w3.org/TR/prov-n/"><span class="insert">http://www.w3.org/TR/prov-n/</span></a></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><span class="delete">".pn"</span><span class="insert">".provn"</span></dd>
- <dt>Base URI:</dt>
- <dd><span class="delete">None</span><span class="insert">There are no constructs in the PROV-N Syntax to change the Base IRI.</span></dd>
- <dt>Macintosh file type code(s):</dt>
- <dd>"TEXT"</dd>
- <dt>Person & email address to contact for further information:</dt>
- <dd><span class="delete">Ivan Herman, ivan@w3.org</span><span class="insert">public-prov-comments@w3.org</span></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 <span class="delete">Luc Moreau and Paolo Missier. A</span><span class="insert">the World Wide Web Consortium's PROV Working Group. The</span> <acronym title="World Wide Web Consortium">W3C</acronym> <span class="delete">Working Group may assume maintenance of</span><span class="insert">has change control over</span> this <span class="delete">document; </span><span class="delete">W3C</span><span class="delete"> reserves change control over this specifications.</span><span class="insert">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">".provn"</span></dd>
+ <dt><span class="insert">Base URI:</span></dt>
+ <dd><span class="insert">There are no constructs in the PROV-N Syntax to change the Base IRI.</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">public-prov-comments@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 the World Wide Web Consortium's PROV Working Group. The </span><acronym title="World Wide Web Consortium"><span class="insert">W3C</span></acronym><span class="insert"> has change control over this specification.</span></dd>
</dl>
</div>
@@ -2647,14 +4469,24 @@
+
+
+
+
+
+
+
<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.
+ </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.
- </p>
-
-<p>
+ </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),
@@ -2678,9 +4510,9 @@
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>),
+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, (<acronym title="World Wide Web Consortium">W3C</acronym>/<acronym title="European Research Consortium for Informatics and Mathematics">ERCIM</acronym>),
+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),
@@ -2714,30 +4546,31 @@
Stephan Zednik (Rensselaer Polytechnic Institute),
Jun Zhao (University of Oxford),
Yuting Zhao (University of Aberdeen, Computing Science).
-</p>
+</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-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><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">[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-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-UTF-8">[UTF-8]</dt><dd>F. Yergeau. <a href="http://www.ietf.org/rfc/rfc3629.txt"><cite>UTF-8, a transformation format of ISO 10646</cite></a>. IETF RFC 3629. November 2003. URL: <a href="http://www.ietf.org/rfc/rfc3629.txt">http://www.ietf.org/rfc/rfc3629.txt</a>
+</dd><dt id="bib-UTF-8"><span class="insert">[UTF-8]</span></dt><dd><span class="insert">F. Yergeau. </span><a href="http://www.ietf.org/rfc/rfc3629.txt"><cite><span class="insert">UTF-8, a transformation format of ISO 10646</span></cite></a><span class="insert">. IETF RFC 3629. November 2003. URL: </span><a href="http://www.ietf.org/rfc/rfc3629.txt"><span class="insert">http://www.ietf.org/rfc/rfc3629.txt</span></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-XML11"><span class="insert">[XML11]</span></dt><dd><span class="insert">Eve Maler; et al. </span><a href="http://www.w3.org/TR/2006/REC-xml11-20060816"><cite><span class="insert">Extensible Markup Language (XML) 1.1 (Second Edition).</span></cite></a><span class="insert"> 16 August 2006. W3C Recommendation. URL: </span><a href="http://www.w3.org/TR/2006/REC-xml11-20060816"><span class="insert">http://www.w3.org/TR/2006/REC-xml11-20060816</span></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><span class="delete">[XMLSCHEMA-2]</span><dt id="bib-XML11"><span class="insert">[XML11]</span></dt><dd><span class="delete">Paul V. Biron; Ashok Malhotra. </span><span class="insert">Eve Maler; et al. </span><a href="http://www.w3.org/TR/2006/REC-xml11-20060816"><cite><span class="insert">Extensible Markup Language (XML) 1.1 (Second Edition).</span></cite></a><span class="insert"> 16 August 2006. W3C Recommendation. URL: </span><a href="http://www.w3.org/TR/2006/REC-xml11-20060816"><span class="insert">http://www.w3.org/TR/2006/REC-xml11-20060816</span></a>
+</dd><dt id="bib-XMLSCHEMA11-2"><span class="insert">[XMLSCHEMA11-2]</span></dt><dd><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><dt id="bib-UNICODE5">[UNICODE5]</dt><dd>The Unicode Consortium. <a href="http://www.unicode.org/versions/Unicode5.1.0/"><cite>The Unicode Standard, Version 5.1.0.</cite></a> Addison-Wesley. 2007. ISBN 0-321-48091-0. URL: <a href="http://www.unicode.org/versions/Unicode5.1.0/">http://www.unicode.org/versions/Unicode5.1.0/</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>
+</dd><dt id="bib-UNICODE5"><span class="insert">[UNICODE5]</span></dt><dd><span class="insert">The Unicode Consortium. </span><a href="http://www.unicode.org/versions/Unicode5.1.0/"><cite><span class="insert">The Unicode Standard, Version 5.1.0.</span></cite></a><span class="insert"> Addison-Wesley. 2007. ISBN 0-321-48091-0. URL: </span><a href="http://www.unicode.org/versions/Unicode5.1.0/"><span class="insert">http://www.unicode.org/versions/Unicode5.1.0/</span></a>
+</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/"><span class="insert">http://www.unicode.org/reports/tr36/</span></a>
</dd></dl></div></div></body></html>
--- a/model/diff.html Fri Jul 13 11:00:39 2012 +0100
+++ b/model/diff.html Fri Jul 13 11:05:53 2012 +0100
@@ -1,3 +1,4 @@
+
<!DOCTYPE html PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN' 'http://www.w3.org/TR/html4/loose.dtd'>
<html lang="en" dir="ltr">
<head><style type="text/css"><!--
@@ -12,9 +13,13 @@
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+
+
+
<style type="text/css">
.note { font-size:small; margin-left:50px }
+ <span class="insert">
.diamond {
font-weight: normal;
@@ -44,7 +49,18 @@
border-color: gray;
-moz-border-radius: ;
}
-</style>
+</span></style>
+
+
+
+
+
+
+
+
+
+
+
@@ -518,31 +534,31 @@
/* 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><span class="delete">
+pre.sh_sourceCode .sh_attribute { color: #006400; }<span class="delete">
+
+
/* --- EDITORIAL NOTES --- */
.component1-color {
background-color: rgba(255,42,42,0.2);
+}</span>
+
+<span class="delete">.component2-color {
+ background-color: rgba(0,68,170,0.2);
}
.component3-color {
- background-color: rgba(0,68,170,0.2);
-}
-
-.component2-color {
background-color: rgba(0,170,0,0.2);
}
.component4-color {
- background-color: rgba(244,105,14,0.2);
+ background-color: rgba(204,255,0,0.2);
+}
+
+.component5-color {
+ background-color: rgba(11,40,40,0.2);
}
.component6-color {
- background-color: rgba(11,40,40,0.2);
-}
-
-.component5-color {
- background-color: rgba(204,255,0,0.2);
+ background-color: rgba(244,105,14,0.2);
}
.pending {
@@ -808,26 +824,12 @@
padding: 3px 1em;
}
-/*
-generating this through java script now.
-
-.anexample[data-count]::before {
- content: "Example " attr(data-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;
@@ -842,23 +844,27 @@
background-color: #f9f9f9;
}
-.anexampleTitle {
+.conceptexample:before {
+ content: "Example:";
font-family: sans-serif;
font-size: 1.6ex;
font-weight: bold;
}
-
-.anexampleTitle {
- 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;
}
-
-.diamond {
+.pnExpression {
font-weight: normal;
- font-size:100%;
- font-family: sans-serif;
+ font-size:120%;
+ font-family: monospace;
}
@@ -928,7 +934,6 @@
font-family: monospace;
content: ")";
}
-
div[class="grammar"] span[class="group"]:before {
font-weight: normal;
font-size:130%;
@@ -957,32 +962,18 @@
content: "Structural constraint: ";
font-weight: bold;
}
-
-.essential {
- font-weight: bold;
-}
-
-.provType::before {
-}
-
-.pnExpression {
- font-weight: normal;
- font-size:120%;
- font-family: monospace;
-}
-</span><link href="./extra-dm.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>
- <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-DM: The PROV Data Model</h1><h2 id="subtitle">Final review before Last Call Vote (WD6) (<a href="diff.html">Diffs since last release</a>)</h2><h2 id="w3c-editor-s-draft-09-july-2012"><acronym title="World Wide Web Consortium">W3C</acronym> Editor's Draft <span class="delete">28 June</span><span class="insert">09 July</span> 2012</h2><dl><dt>This version:</dt><dd><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-dm.html">http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-dm.html</a></dd><dt>Latest published version:</dt><dd><a href="http://www.w3.org/TR/prov-dm/">http://www.w3.org/TR/prov-dm/</a></dd><dt>Latest editor's draft:</dt><dd><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-dm.html">http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-dm.html</a></dd><dt>Previous version:</dt><dd><a href="http://www.w3.org/TR/2012/WD-prov-dm-20120503/">http://www.w3.org/TR/2012/WD-prov-dm-20120503/</a></dd><dt>Editors:</dt><dd><a href="http://www.ecs.soton.ac.uk/~lavm/">Luc Moreau</a>, University of Southampton</dd>
+</span></style><link href="./extra-dm.css" rel="stylesheet" type="text/css" charset="utf-8"><link href="http://www.w3.org/StyleSheets/TR/W3C-WD" 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-DM: The PROV Data Model</h1><h2 id="w3c-working-draft-24-july-2012"><acronym title="World Wide Web Consortium">W3C</acronym> Working Draft <span class="delete">03 May</span><span class="insert">24 July</span> 2012</h2><dl><dt>This version:</dt><dd><span class="delete">http://www.w3.org/TR/2012/WD-prov-dm-20120503/</span><a href="http://www.w3.org/TR/2012/WD-prov-dm-20120724/"><span class="insert">http://www.w3.org/TR/2012/WD-prov-dm-20120724/</span></a></dd><dt>Latest published version:</dt><dd><a href="http://www.w3.org/TR/prov-dm/">http://www.w3.org/TR/prov-dm/</a></dd><dt>Latest editor's draft:</dt><dd><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-dm.html">http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-dm.html</a></dd><dt>Previous version:</dt><dd><span class="delete">http://www.w3.org/TR/2012/WD-prov-dm-20120202/</span><a href="http://www.w3.org/TR/2012/WD-prov-dm-20120503/"><span class="insert">http://www.w3.org/TR/2012/WD-prov-dm-20120503/</span></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>
-<dt>Authors:</dt><dd><a href="http://semanticweb.org/wiki/Khalid_Belhajjame">Khalid Belhajjame</a>, University of Manchester</dd>
+<dt><span class="delete">Contributors:</span><span class="insert">Authors:</span></dt><dd><a href="http://semanticweb.org/wiki/Khalid_Belhajjame">Khalid Belhajjame</a>, University of Manchester</dd>
<dd><span>Reza B'Far</span>, Oracle Corporation</dd>
<dd><a href="http://homepages.inf.ed.ac.uk/jcheney/"><span class="insert">James Cheney</span></a><span class="insert">, University of Edinburgh</span></dd>
<dd><span><span class="insert">Sam Coppens</span></span><span class="insert">, IBBT - Ghent University</span></dd>
-<dd><span>Stephen Cresswell</span>, legislation.gov.uk
-<span class="delete">Sam Coppens</span><span class="delete">, IBBT - Ghent University</span></dd>
+<dd><span>Stephen Cresswell</span>, legislation.gov.uk</dd>
<dd><a href="http://www.isi.edu/~gil/">Yolanda Gil</a>, Invited Expert</dd>
<dd><a href="http://www.few.vu.nl/~pgroth/">Paul Groth</a>, VU University of Amsterdam</dd>
<dd><span>Graham Klyne</span>, University of Oxford</dd>
-<dd><a href="http://tw.rpi.edu/instances/TimLebo">Timothy Lebo</a>, Rensselaer Polytechnic Institute</dd>
+<dd><a href="http://tw.rpi.edu/instances/TimLebo"><span class="insert">Timothy Lebo</span></a><span class="insert">, Rensselaer Polytechnic Institute</span></dd>
<dd><a href="http://tw.rpi.edu/web/person/JamesMcCusker">Jim McCusker</a>, Rensselaer Polytechnic Institute</dd>
<dd><a href="http://www.inf.kcl.ac.uk/staff/simonm/">Simon Miles</a>, Invited Expert</dd>
<dd><a href="http://www.rpi.edu/research/ccni/">James Myers</a>, Rensselaer Polytechnic Institute</dd>
@@ -992,74 +983,80 @@
<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
+<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 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</span> is <span class="delete">a</span><span class="insert">the conceptual</span> data model <span class="insert">that forms a 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.</span><span class="insert">(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:
+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) 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;<span class="insert">
-(5) properties to link entities that refer to the same thing;</span> and,<span class="delete">
-(5) properties to link entities that refer to the same thing;</span>
-(6) collections forming a logical structure for its 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 of</span><span class="insert">(4) a notion of bundle, a mechanism to support provenance of provenance;
+(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"> and,
+(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>
<p>This document introduces the provenance concepts found in
PROV and defines PROV-DM types and
-relations. PROV data model is domain-agnostic, but is equipped with
+relations. <span class="insert">The </span>PROV data model is domain-agnostic, but is equipped with
extensibility points allowing domain-specific information to be included. </p>
<p>Two further documents complete the specification of PROV-DM.
First, a companion document specifies the set of constraints that
-provenance should follow. Second,
+provenance<span class="delete"> descriptions</span> should follow. Second,
a separate document describes a provenance notation for expressing
instances of provenance for human consumption; this notation is used in examples in
this document. </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 <span class="delete">review, before the</span><span class="insert">review.</span></p>
-
-<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</span> implementation <span class="delete">phase.</span><span class="insert">experience reveals problems with supporting this construct.</span></p>
-
-
-
-<h4 id="please-comment-by-2012-09-13--date-tbc">Please Comment By <span class="insert">2012-09-13 </span>(date <span class="delete">TBD)</span><span class="insert">TBC)</span></h4>
-<p>The PROV Working group seeks public feedback on this Working Draft.
-The end date of the Last Call review period is <span class="delete">TBD,</span><b><span class="insert">2012-09-13 (TBC)</span></b><span class="insert">,</span> and we would appreciate comments by that date to public-prov-comments@w3.org
-</p>
+<h4 id="last-call"><span class="insert">Last Call</span></h4>
+<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.</span></p>
+
+<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">: Mention (</span><a href="#term-mention"><span class="insert">Section 5.5.3</span></a><span class="insert">) might be removed from PROV if implementation experience reveals problems with supporting this construct.</span></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 (this document);</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;</li>
-<li> PROV-O, the PROV ontology, an OWL2 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>
+<li> <span class="delete">PROV-DM,</span><a href="http://www.w3.org/TR/prov-dm/"><span class="insert">PROV-DM</span></a><span class="insert">,</span> the PROV data model for provenance (this document);</li>
+<li> <span class="delete">PROV-CONSTRAINTS,</span><a href="http://www.w3.org/TR/prov-constraints/"><span class="insert">PROV-CONSTRAINTS</span></a><span class="insert">,</span> a set of constraints applying to the PROV data <span class="delete">model;</span><span class="insert">model [</span><cite><a class="bibref" rel="biblioentry" href="#bib-PROV-CONSTRAINTS"><span class="insert">PROV-CONSTRAINTS</span></a></cite><span class="insert">];</span></li>
+<li> <span class="delete">PROV-N,</span><a href="http://www.w3.org/TR/prov-n/"><span class="insert">PROV-N</span></a><span class="insert">,</span> a notation for provenance aimed at human <span class="delete">consumption;</span><span class="insert">consumption [</span><cite><a class="bibref" rel="biblioentry" href="#bib-PROV-N"><span class="insert">PROV-N</span></a></cite><span class="insert">];</span></li>
+<li> <span class="delete">PROV-O,</span><a href="http://www.w3.org/TR/prov-o/"><span class="insert">PROV-O</span></a><span class="insert">,</span> the PROV ontology, an <span class="delete">OWL-RL</span><span class="insert">OWL2</span> ontology allowing the mapping of PROV to <span class="delete">RDF;</span><span class="insert">RDF [</span><cite><a class="bibref" rel="biblioentry" href="#bib-PROV-O"><span class="insert">PROV-O</span></a></cite><span class="insert">];</span></li>
+<li> <span class="delete">PROV-AQ,</span><a href="http://www.w3.org/TR/prov-aq/"><span class="insert">PROV-AQ</span></a><span class="insert">,</span> the mechanisms for accessing and querying <span class="delete">provenance;</span><span class="insert">provenance [</span><cite><a class="bibref" rel="biblioentry" href="#bib-PROV-AQ"><span class="insert">PROV-AQ</span></a></cite><span class="insert">];</span> </li>
+<li> <span class="delete">PROV-PRIMER,</span><a href="http://www.w3.org/TR/prov-primer/"><span class="insert">PROV-PRIMER</span></a><span class="insert">,</span> a primer for the PROV data <span class="delete">model;</span><span class="insert">model [</span><cite><a class="bibref" rel="biblioentry" href="#bib-PROV-PRIMER"><span class="insert">PROV-PRIMER</span></a></cite><span class="insert">].</span></li>
</ul>
-<h4 id="how-to-read-the-prov-family-of-specifications">How to read the PROV Family of Specifications</h4>
+<h4 id="how-to-read-the-prov-family-of-specifications"><span class="insert">How to read the PROV Family of Specifications</span></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 <span class="delete">OWL-RL</span><span class="insert">OWL2</span> 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><span class="delete"> PROV-SEM, a formal semantics for the</span><span class="insert">The primer is the entry point to</span> PROV <span class="delete">data model;</span>
+<span class="delete"> PROV-XML,</span><span class="insert">offering</span> an <span class="delete">XML schema for the PROV data</span><span class="insert">introduction to the provenance</span> model.</li>
+
+<span class="delete">How to read the PROV Family of Specifications</span>
+
+<li>The <span class="delete">primer is the entry point</span><span class="insert">Linked Data and Semantic Web community should focus on PROV-O defining PROV classes and properties specified in an OWL2 ontology. For further details, PROV-DM and PROV-CONSTRAINTS specify the constraints applicable</span> to <span class="delete">PROV offering an introduction to the provenance model.</span>
+<span class="delete">The Linked Data</span><span class="insert">the data model,</span> and <span class="delete">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 </span>its interpretation. <span class="delete">PROV-SEM provides a mathematical semantics.</span>
+<span class="delete">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.</span></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>
+should focus on PROV-DM and PROV-CONSTRAINTS. <span class="delete">PROV-O, PROV-N, PROV-XML</span><span class="insert">PROV-O and PROV-N</span> offer examples of mapping to <span class="delete">RDF,</span><span class="insert">RDF and</span> text,<span class="delete"> and XML,</span> 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<br>
-</a><ul class="toc"><li class="tocline"><a href="#structure-of-this-document" class="tocxref"><span class="secno">1.1 </span>Structure of this Document</a></li><li class="tocline"><a href="#conventions" class="tocxref"><span class="secno">1.2 </span>Notational Conventions</a></li><li class="tocline"><a href="#namespaces" class="tocxref"><span class="secno"><span class="insert">1.3 </span></span><span class="insert">Namespaces</span></a></li></ul></li><li class="tocline"><a href="#section-prov-overview" class="tocxref"><span class="secno">2. </span>PROV Overview</a><ul class="toc"><li class="tocline"><a href="#core-structures" class="tocxref"><span class="secno">2.1 </span>PROV Core Structures</a><ul class="toc"><li class="tocline"><a href="#section-entity-activity" class="tocxref"><span class="secno">2.1.1 </span>Entity and Activity</a></li><li class="tocline"><a href="#section-derivation" class="tocxref"><span class="secno">2.1.2 </span>Derivation</a></li><li class="tocline"><a href="#section-agents-attribution-association-delegation" class="tocxref"><span class="secno">2.1.3 </span>Agents and Responsibility</a></li></ul></li><li class="tocline"><a href="#section-extended-structures" class="tocxref"><span class="secno">2.2 </span>PROV Extended Structures</a><ul class="toc"><li class="tocline"><a href="#section-prov-extended-mechanisms" class="tocxref"><span class="secno">2.2.1 </span>Mechanisms to Define Extended Structures</a><ul class="toc"><li class="tocline"><a href="#section-prov-extended-approach-subtyping" class="tocxref"><span class="secno">2.2.1.1 </span>Subtyping</a></li><li class="tocline"><a href="#section-prov-extended-approach-expanded-relation" class="tocxref"><span class="secno">2.2.1.2 </span>Expanded Relations</a></li><li class="tocline"><a href="#section-prov-extended-approach-optional-identification" class="tocxref"><span class="secno">2.2.1.3 </span>Optional Identification</a></li><li class="tocline"><a href="#section-prov-extended-approach-further-relations" class="tocxref"><span class="secno">2.2.1.4 </span>Further Relations</a></li></ul></li><li class="tocline"><a href="#section-provenance-of-provnance" class="tocxref"><span class="secno">2.2.2 </span>Provenance of Provenance</a></li><li class="tocline"><a href="#section-collections" class="tocxref"><span class="secno">2.2.3 </span>Collections</a></li></ul></li><li class="tocline"><a href="#section-overview-components" class="tocxref"><span class="secno">2.3 </span>Modular Organization</a></li></ul></li><li class="tocline"><a href="#prov-notation" class="tocxref"><span class="secno">3. </span>The Provenance Notation</a></li><li class="tocline"><a href="#prov-dm-example" class="tocxref"><span class="secno">4. </span>Illustration of PROV-DM by an Example</a><ul class="toc"><li class="tocline"><a href="#section-example-one" class="tocxref"><span class="secno">4.1 </span>Example: The Authors View</a></li><li class="tocline"><a href="#section-example-two" class="tocxref"><span class="secno">4.2 </span>Example: The Process View</a></li><li class="tocline"><a href="#section-example-c" class="tocxref"><span class="secno">4.3 </span>Example: Attribution of Provenance</a></li></ul></li><li class="tocline"><a href="#data-model-components" class="tocxref"><span class="secno">5. </span>PROV-DM Types and Relations</a><ul class="toc"><li class="tocline"><a href="#component1" class="tocxref"><span class="secno">5.1 </span>Component 1: Entities and Activities</a><ul class="toc"><li class="tocline"><a href="#term-entity" class="tocxref"><span class="secno">5.1.1 </span>Entity</a></li><li class="tocline"><a href="#term-Activity" class="tocxref"><span class="secno">5.1.2 </span>Activity</a></li><li class="tocline"><a href="#term-Generation" class="tocxref"><span class="secno">5.1.3 </span>Generation</a></li><li class="tocline"><a href="#term-Usage" class="tocxref"><span class="secno">5.1.4 </span>Usage</a></li><li class="tocline"><a href="#term-Communication" class="tocxref"><span class="secno">5.1.5 </span>Communication</a></li><li class="tocline"><a href="#term-Start" class="tocxref"><span class="secno">5.1.6 </span>Start</a></li><li class="tocline"><a href="#term-End" class="tocxref"><span class="secno">5.1.7 </span>End</a></li><li class="tocline"><a href="#term-Invalidation" class="tocxref"><span class="secno">5.1.8 </span>Invalidation</a></li></ul></li><li class="tocline"><a href="#component2" class="tocxref"><span class="secno">5.2 </span>Component 2: Derivations</a><ul class="toc"><li class="tocline"><a href="#term-Derivation" class="tocxref"><span class="secno">5.2.1 </span>Derivation</a></li><li class="tocline"><a href="#term-revision" class="tocxref"><span class="secno">5.2.2 </span>Revision</a></li><li class="tocline"><a href="#term-quotation" class="tocxref"><span class="secno">5.2.3 </span>Quotation</a></li><li class="tocline"><a href="#term-primary-source" class="tocxref"><span class="secno">5.2.4 </span>Primary Source</a></li></ul></li><li class="tocline"><a href="#component3" class="tocxref"><span class="secno">5.3 </span>Component 3: Agents, Responsibility, and Influence</a><ul class="toc"><li class="tocline"><a href="#term-agent" class="tocxref"><span class="secno">5.3.1 </span>Agent</a></li><li class="tocline"><a href="#term-attribution" class="tocxref"><span class="secno">5.3.2 </span>Attribution</a></li><li class="tocline"><a href="#term-Association" class="tocxref"><span class="secno">5.3.3 </span>Association</a></li><li class="tocline"><a href="#term-delegation" class="tocxref"><span class="secno">5.3.4 </span>Delegation</a></li><li class="tocline"><a href="#term-influence" class="tocxref"><span class="secno">5.3.5 </span>Influence</a></li></ul></li><li class="tocline"><a href="#component4" class="tocxref"><span class="secno">5.4 </span>Component 4: Bundles</a><ul class="toc"><li class="tocline"><a href="#term-bundle" class="tocxref"><span class="secno">5.4.1 </span>Bundle constructor</a></li><li class="tocline"><a href="#term-bundle-entity" class="tocxref"><span class="secno">5.4.2 </span>Bundle Type</a></li></ul></li><li class="tocline"><a href="#component5" class="tocxref"><span class="secno">5.5 </span>Component 5: Alternate Entities</a><ul class="toc"><li class="tocline"><a href="#term-specialization" class="tocxref"><span class="secno">5.5.1 </span>Specialization</a></li><li class="tocline"><a href="#term-alternate" class="tocxref"><span class="secno">5.5.2 </span>Alternate</a></li><li class="tocline"><a href="#term-mention" class="tocxref"><span class="secno">5.5.3 </span>Mention</a></li></ul></li><li class="tocline"><a href="#component6" class="tocxref"><span class="secno">5.6 </span>Component 6: Collections</a><ul class="toc"><li class="tocline"><a href="#term-collection" class="tocxref"><span class="secno">5.6.1 </span>Collection</a></li><li class="tocline"><a href="#term-collection-membership" class="tocxref"><span class="secno">5.6.2 </span>Collection <span class="delete">Memberhsip</span><span class="insert">Membership</span></a></li></ul></li><li class="tocline"><a href="#second-class-elements" class="tocxref"><span class="secno">5.7 </span>Further Elements of PROV-DM</a><ul class="toc"><li class="tocline"><a href="#term-identifier" class="tocxref"><span class="secno">5.7.1 </span>Identifier</a></li><li class="tocline"><a href="#term-attribute" class="tocxref"><span class="secno">5.7.2 </span>Attribute</a><ul class="toc"><li class="tocline"><a href="#term-attribute-label" class="tocxref"><span class="secno">5.7.2.1 </span>prov:label</a></li><li class="tocline"><a href="#term-attribute-location" class="tocxref"><span class="secno">5.7.2.2 </span>prov:location</a></li><li class="tocline"><a href="#term-attribute-role" class="tocxref"><span class="secno">5.7.2.3 </span>prov:role</a></li><li class="tocline"><a href="#term-attribute-type" class="tocxref"><span class="secno">5.7.2.4 </span>prov:type</a></li><li class="tocline"><a href="#term-attribute-value" class="tocxref"><span class="secno">5.7.2.5 </span>prov:value</a></li></ul></li><li class="tocline"><a href="#term-value" class="tocxref"><span class="secno">5.7.3 </span>Value</a></li><li class="tocline"><a href="#term-NamespaceDeclaration" class="tocxref"><span class="secno">5.7.4 </span>Namespace Declaration</a></li><li class="tocline"><a href="#term-qualified-name" class="tocxref"><span class="secno">5.7.5 </span>Qualified Name</a></li></ul></li></ul></li><li class="tocline"><a href="#extensibility-section" class="tocxref"><span class="secno">6. </span>PROV-DM Extensibility Points</a></li><li class="tocline"><a href="#valid-provenance" class="tocxref"><span class="secno">7. </span>Creating Valid Provenance</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 class="delete">Fourth Public Working Draft</span>
+<p>This <span class="delete">is the fourth public release of the PROV-DM document. Following feedback, the Working Group has decided to reorganize this document substantially, separating the data model from its contraints and the notation used to illustrate it. The PROV-DM release is synchronized with the release of the PROV-O, PROV-PRIMER, PROV-N, and PROV-CONSTRAINTS documents. We are now clarifying the entry path to the PROV family of specifications.</span>
+<span class="delete">This </span>document was published by the <a href="http://www.w3.org/2011/prov/">Provenance Working Group</a> as a<span class="insert"> Last Call</span> Working Draft. This document is intended to become a <acronym title="World Wide Web Consortium">W3C</acronym> Recommendation. If you wish to make comments regarding this document, please send them to <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>).<span class="insert"> The Last Call period ends 18 September 2012.</span> All feedback is welcome.</p><p>Publication as a Working 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><span class="insert">This is a Last Call Working Draft and thus the Working Group has determined that this document has satisfied the relevant technical requirements and is sufficiently stable to advance through the Technical Recommendation process.</span></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<br>
+</a><ul class="toc"><li class="tocline"><a href="#structure-of-this-document" class="tocxref"><span class="secno">1.1 </span>Structure of this Document</a></li><li class="tocline"><a href="#conventions" class="tocxref"><span class="secno">1.2 </span>Notational Conventions</a></li><li class="tocline"><a href="#namespaces" class="tocxref"><span class="secno"><span class="insert">1.3 </span></span><span class="insert">Namespaces</span></a></li></ul></li><li class="tocline"><a href="#section-prov-overview" class="tocxref"><span class="secno">2. </span>PROV <span class="delete">Starting Points</span><span class="insert">Overview</span></a><ul class="toc"><li class="tocline"><a href="#core-structures" class="tocxref"><span class="secno"><span class="insert">2.1 </span></span><span class="insert">PROV Core Structures</span></a><ul class="toc"><li class="tocline"><a href="#section-entity-activity" class="tocxref"><span class="secno"><span class="delete">2.1</span><span class="insert">2.1.1</span> </span>Entity and Activity</a></li><li class="tocline"><a href="#section-derivation" class="tocxref"><span class="secno"><span class="delete">2.2 </span><span class="delete">Generation, Usage, </span><span class="insert">2.1.2 </span></span>Derivation</a></li><li class="tocline"><a href="#section-agents-attribution-association-delegation" class="tocxref"><span class="secno"><span class="delete">2.3 </span><span class="delete">Agents, Attribution, Association,</span><span class="insert">2.1.3 </span></span><span class="insert">Agents</span> and Responsibility<span class="delete">2.4 </span><span class="delete">Further Entities: Collections and Accounts</span><span class="delete">2.5 </span><span class="delete">Simplified Overview Diagram</span><span class="delete">2.6 </span><span class="delete">PROV-N: The Provenance Notation</span></a></li></ul></li><li class="tocline"><a href="#section-extended-structures" class="tocxref"><span class="secno"><span class="insert">2.2 </span></span><span class="insert">PROV Extended Structures</span></a><ul class="toc"><li class="tocline"><a href="#section-prov-extended-mechanisms" class="tocxref"><span class="secno"><span class="insert">2.2.1 </span></span><span class="insert">Mechanisms to Define Extended Structures</span></a><ul class="toc"><li class="tocline"><a href="#section-prov-extended-approach-subtyping" class="tocxref"><span class="secno"><span class="insert">2.2.1.1 </span></span><span class="insert">Subtyping</span></a></li><li class="tocline"><a href="#section-prov-extended-approach-expanded-relation" class="tocxref"><span class="secno"><span class="insert">2.2.1.2 </span></span><span class="insert">Expanded Relations</span></a></li><li class="tocline"><a href="#section-prov-extended-approach-optional-identification" class="tocxref"><span class="secno"><span class="insert">2.2.1.3 </span></span><span class="insert">Optional Identification</span></a></li><li class="tocline"><a href="#section-prov-extended-approach-further-relations" class="tocxref"><span class="secno"><span class="insert">2.2.1.4 </span></span><span class="insert">Further Relations</span></a></li></ul></li><li class="tocline"><a href="#section-provenance-of-provnance" class="tocxref"><span class="secno"><span class="insert">2.2.2 </span></span><span class="insert">Provenance of Provenance</span></a></li><li class="tocline"><a href="#section-collections" class="tocxref"><span class="secno"><span class="insert">2.2.3 </span></span><span class="insert">Collections</span></a></li></ul></li><li class="tocline"><a href="#section-overview-components" class="tocxref"><span class="secno"><span class="insert">2.3 </span></span><span class="insert">Modular Organization</span></a></li></ul></li><li class="tocline"><a href="#prov-notation" class="tocxref"><span class="secno"><span class="insert">3. </span></span><span class="insert">The Provenance Notation</span></a></li><li class="tocline"><a href="#prov-dm-example" class="tocxref"><span class="secno"><span class="delete">3.</span><span class="insert">4.</span> </span>Illustration of PROV-DM by an Example</a><ul class="toc"><li class="tocline"><a href="#section-example-one" class="tocxref"><span class="secno"><span class="delete">3.1 </span><span class="insert">4.1 </span></span><span class="insert">Example: </span>The Authors View</a></li><li class="tocline"><a href="#section-example-two" class="tocxref"><span class="secno"><span class="delete">3.2 </span><span class="insert">4.2 </span></span><span class="insert">Example: </span>The Process View</a></li><li class="tocline"><a href="#section-example-c" class="tocxref"><span class="secno"><span class="delete">3.3 </span><span class="insert">4.3 </span></span><span class="insert">Example: </span>Attribution of Provenance</a></li></ul></li><li class="tocline"><a href="#data-model-components" class="tocxref"><span class="secno"><span class="delete">4.</span><span class="insert">5.</span> </span>PROV-DM Types and Relations</a><ul class="toc"><li class="tocline"><a href="#component1" class="tocxref"><span class="secno"><span class="delete">4.1</span><span class="insert">5.1</span> </span>Component 1: Entities and Activities</a><ul class="toc"><li class="tocline"><a href="#term-entity" class="tocxref"><span class="secno"><span class="delete">4.1.1</span><span class="insert">5.1.1</span> </span>Entity</a></li><li class="tocline"><a href="#term-Activity" class="tocxref"><span class="secno"><span class="delete">4.1.2</span><span class="insert">5.1.2</span> </span>Activity</a></li><li class="tocline"><a href="#term-Generation" class="tocxref"><span class="secno"><span class="delete">4.1.3</span><span class="insert">5.1.3</span> </span>Generation</a></li><li class="tocline"><a href="#term-Usage" class="tocxref"><span class="secno"><span class="delete">4.1.4</span><span class="insert">5.1.4</span> </span>Usage</a></li><li class="tocline"><a href="#term-Communication" class="tocxref"><span class="secno"><span class="insert">5.1.5 </span></span><span class="insert">Communication</span></a></li><li class="tocline"><a href="#term-Start" class="tocxref"><span class="secno"><span class="delete">4.1.5</span><span class="insert">5.1.6</span> </span>Start</a></li><li class="tocline"><a href="#term-End" class="tocxref"><span class="secno"><span class="delete">4.1.6</span><span class="insert">5.1.7</span> </span>End</a></li><li class="tocline"><a href="#term-Invalidation" class="tocxref"><span class="secno"><span class="delete">4.1.7</span><span class="insert">5.1.8</span> </span>Invalidation<span class="delete">4.1.8 </span><span class="delete">Communication</span><span class="delete">4.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"><span class="delete">4.2</span><span class="insert">5.2</span> </span>Component 2: <span class="delete">Agents and Responsibility</span><span class="insert">Derivations</span></a><ul class="toc"><li class="tocline"><a href="#term-Derivation" class="tocxref"><span class="secno"><span class="delete">4.2.1 </span><span class="delete">Agent</span><span class="insert">5.2.1 </span></span><span class="insert">Derivation</span></a></li><li class="tocline"><a href="#term-revision" class="tocxref"><span class="secno"><span class="delete">4.2.2 </span><span class="delete">Attribution</span><span class="insert">5.2.2 </span></span><span class="insert">Revision</span></a></li><li class="tocline"><a href="#term-quotation" class="tocxref"><span class="secno"><span class="delete">4.2.3 </span><span class="delete">Association</span><span class="insert">5.2.3 </span></span><span class="insert">Quotation</span></a></li><li class="tocline"><a href="#term-primary-source" class="tocxref"><span class="secno"><span class="delete">4.2.4 </span><span class="delete">Responsibility</span><span class="insert">5.2.4 </span></span><span class="insert">Primary Source</span></a></li></ul></li><li class="tocline"><a href="#component3" class="tocxref"><span class="secno"><span class="delete">4.3</span><span class="insert">5.3</span> </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="#term-agent" class="tocxref"><span class="secno"><span class="delete">4.3.1 </span><span class="delete">Derivation</span><span class="insert">5.3.1 </span></span><span class="insert">Agent</span></a></li><li class="tocline"><a href="#term-attribution" class="tocxref"><span class="secno"><span class="delete">4.3.2 </span><span class="delete">Revision</span><span class="insert">5.3.2 </span></span><span class="insert">Attribution</span></a></li><li class="tocline"><a href="#term-Association" class="tocxref"><span class="secno"><span class="delete">4.3.3 </span><span class="delete">Quotation</span><span class="insert">5.3.3 </span></span><span class="insert">Association</span></a></li><li class="tocline"><a href="#term-delegation" class="tocxref"><span class="secno"><span class="delete">4.3.4 </span><span class="delete">Original Source</span><span class="insert">5.3.4 </span></span><span class="insert">Delegation</span></a></li><li class="tocline"><a href="#term-influence" class="tocxref"><span class="secno"><span class="delete">4.3.5 </span><span class="delete">Trace</span><span class="insert">5.3.5 </span></span><span class="insert">Influence</span></a></li></ul></li><li class="tocline"><a href="#component4" class="tocxref"><span class="secno"><span class="delete">4.4</span><span class="insert">5.4</span> </span>Component 4: <span class="delete">Alternate Entities</span><span class="insert">Bundles</span></a><ul class="toc"><li class="tocline"><a href="#term-bundle" class="tocxref"><span class="secno"><span class="delete">4.4.1 </span><span class="delete">Specialization</span><span class="insert">5.4.1 </span></span><span class="insert">Bundle constructor</span></a></li><li class="tocline"><a href="#term-bundle-entity" class="tocxref"><span class="secno"><span class="delete">4.4.2 </span><span class="delete">Alternate</span><span class="insert">5.4.2 </span></span><span class="insert">Bundle Type</span></a></li></ul></li><li class="tocline"><a href="#component5" class="tocxref"><span class="secno"><span class="delete">4.5</span><span class="insert">5.5</span> </span>Component 5: <span class="delete">Collections</span><span class="insert">Alternate Entities</span></a><ul class="toc"><li class="tocline"><a href="#term-specialization" class="tocxref"><span class="secno"><span class="delete">4.5.1 </span><span class="delete">Collection</span><span class="insert">5.5.1 </span></span><span class="insert">Specialization</span></a></li><li class="tocline"><a href="#term-alternate" class="tocxref"><span class="secno"><span class="delete">4.5.2 </span><span class="delete">Dictionary</span><span class="insert">5.5.2 </span></span><span class="insert">Alternate</span></a></li><li class="tocline"><a href="#term-mention" class="tocxref"><span class="secno"><span class="delete">4.5.3 </span><span class="delete">Insertion</span><span class="delete">4.5.4 </span><span class="delete">Removal</span><span class="delete">4.5.5 </span><span class="delete">Membership</span><span class="insert">5.5.3 </span></span><span class="insert">Mention</span></a></li></ul></li><li class="tocline"><a href="#component6" class="tocxref"><span class="secno"><span class="delete">4.6</span><span class="insert">5.6</span> </span>Component 6: <span class="delete">Annotations</span><span class="insert">Collections</span></a><ul class="toc"><li class="tocline"><a href="#term-collection" class="tocxref"><span class="secno"><span class="delete">4.6.1 </span><span class="delete">Note</span><span class="insert">5.6.1 </span></span><span class="insert">Collection</span></a></li><li class="tocline"><a href="#term-membership" class="tocxref"><span class="secno"><span class="delete">4.6.2 </span><span class="delete">Annotation</span><span class="insert">5.6.2 </span></span><span class="insert">Membership</span></a></li></ul></li><li class="tocline"><a href="#second-class-elements" class="tocxref"><span class="secno"><span class="delete">4.7</span><span class="insert">5.7</span> </span>Further Elements of PROV-DM</a><ul class="toc"><span class="delete">4.7.1 </span><span class="delete">Namespace Declaration</span><span class="delete">4.7.2 </span><span class="delete">Qualified Name</span><li class="tocline"><a href="#term-identifier" class="tocxref"><span class="secno"><span class="delete">4.7.3</span><span class="insert">5.7.1</span> </span>Identifier</a></li><li class="tocline"><a href="#term-attribute" class="tocxref"><span class="secno"><span class="delete">4.7.4</span><span class="insert">5.7.2</span> </span>Attribute</a><ul class="toc"><li class="tocline"><a href="#term-attribute-label" class="tocxref"><span class="secno"><span class="delete">4.7.4.1</span><span class="insert">5.7.2.1</span> </span>prov:label</a></li><li class="tocline"><a href="#term-attribute-location" class="tocxref"><span class="secno"><span class="delete">4.7.4.2</span><span class="insert">5.7.2.2</span> </span>prov:location</a></li><li class="tocline"><a href="#term-attribute-role" class="tocxref"><span class="secno"><span class="delete">4.7.4.3</span><span class="insert">5.7.2.3</span> </span>prov:role</a></li><li class="tocline"><a href="#term-attribute-type" class="tocxref"><span class="secno"><span class="delete">4.7.4.4</span><span class="insert">5.7.2.4</span> </span>prov:type</a></li><li class="tocline"><a href="#term-attribute-value" class="tocxref"><span class="secno"><span class="delete">4.7.4.5</span><span class="insert">5.7.2.5</span> </span>prov:value</a></li></ul></li><li class="tocline"><a href="#term-value" class="tocxref"><span class="secno"><span class="delete">4.7.5</span><span class="insert">5.7.3</span> </span>Value</a></li><li class="tocline"><a href="#term-NamespaceDeclaration" class="tocxref"><span class="secno"><span class="insert">5.7.4 </span></span><span class="insert">Namespace Declaration</span></a></li><li class="tocline"><a href="#term-qualified-name" class="tocxref"><span class="secno"><span class="insert">5.7.5 </span></span><span class="insert">Qualified Name</span></a></li></ul></li></ul></li><li class="tocline"><a href="#extensibility-section" class="tocxref"><span class="secno"><span class="delete">5.</span><span class="insert">6.</span> </span>PROV-DM Extensibility Points</a></li><li class="tocline"><a href="#valid-provenance" class="tocxref"><span class="secno"><span class="delete">6.</span><span class="insert">7.</span> </span>Creating Valid Provenance</a></li><li class="tocline"><a href="#cross-references-to-prov-o-and-prov-n" class="tocxref"><span class="secno"><span class="insert">A. </span></span><span class="insert">Cross-References to PROV-O and PROV-N</span></a></li><li class="tocline"><a href="#acknowledgements" class="tocxref"><span class="secno"><span class="delete">A.</span><span class="insert">B.</span> </span>Acknowledgements</a></li><li class="tocline"><a href="#references" class="tocxref"><span class="secno"><span class="delete">B.</span><span class="insert">C.</span> </span>References</a><ul class="toc"><li class="tocline"><a href="#normative-references" class="tocxref"><span class="secno"><span class="delete">B.1</span><span class="insert">C.1</span> </span>Normative references</a></li><li class="tocline"><a href="#informative-references" class="tocxref"><span class="secno"><span class="delete">B.2</span><span class="insert">C.2</span> </span>Informative references</a></li></ul></li></ul></div>
@@ -1077,7 +1074,7 @@
</h2>
<p>
-For the purpose of this specification, <dfn id="dfn-provenance" class="internalDFN">provenance</dfn><sup><a class="internalDFN" href="#dfn-provenance"><span class="diamond"> ◊</span></a></sup> is defined as a record that describes the people,
+For the purpose of this specification, <dfn id="dfn-provenance" class="internalDFN">provenance</dfn><sup><a class="internalDFN" href="#dfn-provenance"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> is defined as a record that describes the people,
institutions, entities, and activities involved in producing,
influencing, or delivering a piece of data or a thing.
In particular, the provenance of information is crucial in deciding
@@ -1090,73 +1087,101 @@
<p>
-We present the PROV data model,
-a generic data model for provenance that allows domain and application specific representations of provenance to be translated into such a data model and <em>interchanged</em> between systems.
-Thus, heterogeneous systems can export their native provenance into such a core data model, and applications that need to make sense of provenance can then import it,
+We<span class="delete">
+consider a core</span><span class="insert"> present the PROV data model, PROV-DM,
+a generic</span> data model for provenance that allows domain and application specific representations of provenance to be translated into such a data model and <em>interchanged</em> between systems.
+Thus, heterogeneous systems can export their native provenance into such a core data model, and applications that need to make sense of provenance <span class="delete">in heterogeneous systems </span>can then import it,
process it, and reason over it.</p>
-<p>
-The PROV data model distinguishes <em>core structures</em> from
-<em>extended structures</em>: core structures form the essence of
-provenance information, and are commonly found in various
-domain-specific vocabularies that deal
-with provenance or similar kinds of information [<cite><a class="bibref" rel="biblioentry" href="#bib-Mappings">Mappings</a></cite>].
+
+
+<p><span class="delete">A set of specifications, referred to as the</span><span class="insert">
+The</span> PROV <span class="delete">family of specifications, define the</span><span class="insert">data model distinguishes </span><em><span class="insert">core structures</span></em><span class="insert"> from
+</span><em><span class="insert">extended structures</span></em><span class="insert">: core structures form the essence of
+provenance information, and are commonly found in</span> various<span class="delete"> aspects
+</span><span class="insert">
+domain-specific vocabularies </span>that <span class="delete">are necessary to achieve this vision in an interoperable
+way:</span>
+
+<span class="delete">A data model for provenance, which is presented in three documents:
+</span>
+<span class="delete"> PROV-DM (part I): the</span><span class="insert">deal
+with</span> provenance <span class="delete">data model, informally described (this document);
+</span><span class="delete"> PROV-CONSTRAINTS (part II): constraints underpinning the data model</span><span class="insert">or similar kinds of information</span> [<cite><span class="delete">PROV-CONSTRAINTS</span><a class="bibref" rel="biblioentry" href="#bib-Mappings"><span class="insert">Mappings</span></a></cite><span class="delete">];
+</span><span class="delete"> PROV-N (part III): a notation</span><span class="insert">].
Extended structures enhance and refine core
-structures with more expressive capabilities to cater for more
-advanced uses of provenance.
-The PROV data model, comprising both core and extended structures, is a domain-agnostic model, but with clear extensibility points allowing further domain-specific and
+structures with more expressive capabilities</span> to <span class="delete">express instances of that data model</span><span class="insert">cater</span> for <span class="delete">human consumption [</span><span class="delete">PROV-N</span><span class="delete">];
+</span>
+
+<span class="delete">PROV-O: the PROV ontology, an OWL-RL ontology allowing the mapping of PROV to RDF [</span><span class="delete">PROV-O</span><span class="delete">];</span>
+<span class="delete">PROV-AQ: the mechanisms for accessing and querying provenance [</span><span class="delete">PROV-AQ</span><span class="delete">];</span>
+<span class="delete">PROV-PRIMER: a primer for the PROV approach [</span><span class="delete">PROV-PRIMER</span><span class="delete">];</span>
+<span class="delete">PROV-SEM: semantics of the PROV-DM data model [</span><span class="delete">PROV-SEM</span><span class="delete">];</span>
+<span class="delete">PROV-XML: an XML schema for the PROV data model.</span>
+
+
+
+<span class="insert">more
+advanced uses of provenance.</span>
+The PROV data <span class="insert">model, comprising both core and extended structures, is a domain-agnostic model, but with clear extensibility points allowing further domain-specific and
application-specific extensions to be defined.
-</p>
-
-
-<p>
-The PROV data model has a modular design and is structured according to six components covering various facets of provenance:</p>
+</span></p>
+
+
+<p><span class="insert">
+The PROV data </span>model <span class="insert">has a modular design and </span>is <span class="delete">a domain-agnostic model, but with clear extensibility points allowing further domain-specific and
+application-specific extensions</span><span class="insert">structured according</span> to <span class="delete">be defined.
+The PROV data model is structured according to </span>six components covering various <span class="delete">aspects</span><span class="insert">facets</span> of provenance:</p>
<ul>
<li> component 1: entities and activities, and the time at which they were created, used, or ended;
-</li><li> component 2: derivations of entities from others;
-</li><li> component 3: agents bearing responsibility for entities that were generated and activities that happened;
-</li><li> component 4: bundles, a mechanism to support provenance of provenance;
-</li><li> component 5: properties to link entities that refer to a same thing;
-</li><li> component 6: collections forming a logical structure for its members.
+</li><li> component 2: <span class="delete">agents bearing responsibility for</span><span class="insert">derivations of</span> entities <span class="delete">that were generated and activities that happened;</span><span class="insert">from others;</span>
+</li><li> component 3: <span class="delete">derivations of</span><span class="insert">agents bearing responsibility for</span> entities <span class="delete">from others;</span><span class="insert">that were generated and activities that happened;</span>
+</li><li> component 4: <span class="delete">properties</span><span class="insert">bundles, a mechanism</span> to <span class="delete">link entities that refer to a same thing;</span><span class="insert">support provenance of provenance;</span>
+</li><li> component 5: <span class="delete">collections forming a logical structure for its members;</span><span class="insert">properties to link entities that refer to a same thing;</span>
+</li><li> component 6: <span class="delete">a simple annotation mechanism.</span><span class="insert">collections forming a logical structure for its members.</span>
</li></ul>
-<p>This specification presents the concepts of the PROV Data Model, and
+<p>This specification presents the <span class="delete">key </span>concepts of the PROV Data Model, and
provenance types and relations, without specific concern for how they are applied.
-With these, it becomes possible to write useful provenance, and publish or embed it alongside the data it relates to. </p>
-
-<p>However, if something about which provenance is expressed is subject to change, then it is challenging to express its provenance precisely (e.g. the data from which a daily weather report is derived changes from day to day).
-This is addressed in a companion
- specification [<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-CONSTRAINTS">PROV-CONSTRAINTS</a></cite>] by proposing formal constraints on
+With these, it becomes possible to write useful <span class="delete">provenance descriptions,</span><span class="insert">provenance,</span> and publish or embed <span class="delete">them along side</span><span class="insert">it alongside</span> the data <span class="delete">they relate</span><span class="insert">it relates</span> to. </p>
+
+<p>However, if something about which provenance is expressed is subject to change, then it is challenging to express its provenance precisely (e.g. the data from which a daily weather report is derived changes from day to day).<span class="insert">
+This is addressed in a companion</span>
+ <span class="delete">To address this challenge, a </span><span class="delete">refinement</span><span class="delete"> is proposed to enrich simple provenance, with extra descriptions that help qualify the specific subject of provenance and provenance itself, with attributes and temporal information, intended to satisfy a comprehensive set of constraints. These aspects are covered in the companion </span>specification [<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-CONSTRAINTS">PROV-CONSTRAINTS</a></cite><span class="delete">].</span><span class="insert">] by proposing formal constraints on
the way that provenance is related to the things it
describes (such as the use of attributes, temporal information and
specialization of entities), and additional conclusions that are valid
- to infer.
+ to infer.</span>
</p>
<div id="structure-of-this-document" class="section">
<h3><span class="secno">1.1 </span>Structure of this Document</h3>
-<p><a href="#section-prov-overview">Section 2</a> provides an overview of the PROV Data Model, distinguishing a core set of types and relations, commonly found in provenance, from extended structures catering for more specific uses. It also introduces a modular organization of the data model in components. </p>
-
-<p><a href="#prov-notation">Section 3</a> overviews the Provenance Notation used to illustrate examples of provenance.</p>
-
-
-<p><a href="#prov-dm-example">Section 4</a> illustrates how the PROV data model can be used
+<p><a href="#section-prov-overview">Section 2</a> provides<span class="insert"> an overview of the PROV Data Model,</span> <span class="delete">starting points for the PROV Data Model, listing a</span><span class="insert">distinguishing a core</span> set of types and relations, <span class="delete">which allows users to make initial provenance descriptions.</span><span class="insert">commonly found in provenance, from extended structures catering for more specific uses. It also introduces a modular organization of the data model in components. </span></p>
+
+<p><a href="#prov-notation"><span class="insert">Section 3</span></a><span class="insert"> overviews the Provenance Notation used to illustrate examples of provenance.</span></p>
+
+
+<p><a href="#prov-dm-example">Section <span class="delete">3</span><span class="insert">4</span></a> illustrates how the PROV data model can be used
to express the provenance of a report published on the Web.</p>
-<p><a href="#data-model-components">Section 5</a> provides the definitions of PROV concepts, structured according to six components.</p>
-
-
-
-<p><a href="#extensibility-section">Section 6</a> summarizes PROV-DM extensibility points.</p>
-
-<p><a href="#valid-provenance">Section 7</a> introduces the idea that constraints can be applied to the PROV data model to validate provenance; these are covered in the companion specification [<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-CONSTRAINTS">PROV-CONSTRAINTS</a></cite>].</p>
+
+
+<p><a href="#data-model-components">Section <span class="delete">4</span><span class="insert">5</span></a> provides the definitions of PROV concepts, structured according to six components.</p>
+
+
+
+
+
+<p><a href="#extensibility-section">Section <span class="delete">5</span><span class="insert">6</span></a> summarizes PROV-DM extensibility points.</p>
+
+<p><a href="#valid-provenance">Section <span class="delete">6</span><span class="insert">7</span></a> introduces the idea that constraints can be applied to the PROV data model to <span class="delete">refine provenance descriptions;</span><span class="insert">validate provenance;</span> these are covered in the companion specification [<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-CONSTRAINTS">PROV-CONSTRAINTS</a></cite>].</p>
</div>
@@ -1190,19 +1215,19 @@
The following namespaces prefixes are used throughout this document.
</p><div style="text-align: left;">
+
<table class="thinborder" style="margin-left: auto; margin-right: auto;">
-<caption id="namespace-table">Table 1: Prefix and Namespaces used in this specification</caption>
+<caption id="namespace-table" data-count="1"><span>Table <span class="delete">1: </span><span class="insert">1</span><sup><a class="internalDFN" href="#namespace-table"><span class="diamond"><span class="insert"> ◊:</span></span></a></sup> </span>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 <a class="section-ref" href="#term-NamespaceDeclaration"><span>Section 5.7.4</span></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>prov</a></td><td>http://www.w3.org/ns/prov#</td><td>The PROV namespace (see <a class="section-ref" href="#term-NamespaceDeclaration"><span>Section <span class="delete">4.7.1</span><span class="insert">5.7.4</span></span></a>)</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><a class="bibref" rel="biblioentry" href="#bib-XMLSCHEMA11-2"><span class="insert">XMLSCHEMA11-2</span></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>(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>
-<span class="delete">
- Examples throughout this document use the PROV-N Provenance
- Notation, briefly introduced in </span><span class="delete">Section 3</span><span class="delete"> and specified fully in a separate document [</span><span class="delete">PROV-N</span><span class="delete">].</span>
+
</div>
@@ -1212,38 +1237,267 @@
<div id="section-prov-overview" class="section">
-<h2><span class="secno">2. </span>PROV Overview</h2>
-
-<p>This section introduces provenance concepts with informal explanations and illustrative
-examples. PROV distinguishes <em>core structures</em>, forming the essence of provenance, from <em>extended structures</em> catering for more <span class="delete">advanced</span><span class="insert">specific</span> uses of provenance. Core and extended structures are respectively presented in <a href="#core-structures">Section 2.1</a> and <a href="#section-extended-structures">Section 2.2</a>. Furthermore, the PROV data model is organized according to components, which form thematic groupings of concepts (see <a href="#section-overview-components">Section 2.3</a>). A <em>provenance description</em> is an instance of a core and extended provenance structure described below.
+<h2><span class="secno">2. </span>PROV <span class="delete">Starting Points</span><span class="insert">Overview</span></h2>
+
+<p>
+This section introduces provenance concepts with informal <span class="delete">descriptions</span><span class="insert">explanations</span> and illustrative
+examples.<span class="insert"> PROV distinguishes</span> <span class="delete">Since PROV-DM</span><em><span class="insert">core structures</span></em><span class="insert">, forming the essence of provenance, from </span><em><span class="insert">extended structures</span></em><span class="insert"> catering for more specific uses of provenance. Core and extended structures are respectively presented in </span><a href="#core-structures"><span class="insert">Section 2.1</span></a><span class="insert"> and </span><a href="#section-extended-structures"><span class="insert">Section 2.2</span></a><span class="insert">. Furthermore, the PROV data model</span> is <span class="delete">a conceptual data
+model, </span><span class="insert">organized according to components, which form thematic groupings of concepts (see </span><a href="#section-overview-components">Section <span class="delete">2.5 maps the concepts to various types</span><span class="insert">2.3</span></a><span class="insert">). A </span><em><span class="insert">provenance description</span></em><span class="insert"> is an instance of a core</span> and <span class="delete">relations,
+which are illustrated graphically in
+a simplified UML diagram in </span><span class="delete">Figure 1</span><span class="delete">. Section 2.6
+then summarizes the PROV notation allowing instances of PROV-DM to be
+written down.</span><span class="insert">extended provenance structure described below.</span>
</p>
+
+
+
+
+
+
+
+
+
+
+
+
<div id="core-structures" class="section">
-<h3><span class="secno">2.1 </span>PROV Core Structures</h3>
-
-<p>At its core, provenance describes the use and production of
-<em>entities</em> by <em>activities</em>, which may be
-influenced in
-various ways by <em>agents</em>. These core types and their relationships
+<h3><span class="secno">2.1 </span><span class="delete">Entity</span><span class="insert">PROV Core Structures</span></h3>
+
+<p><span class="insert">At its core, provenance describes the use</span> and <span class="delete">Activity</span>
+
+
+<span class="delete">Things we want to describe the provenance of are called </span><span class="insert">production of
+</span><em>entities</em> <span class="insert">by </span><em><span class="insert">activities</span></em><span class="insert">, which may be
+influenced </span>in<span class="delete"> PROV. The term "things" encompasses a broad diversity of notions, including digital objects such as a file or web page,
+physical things such as a building or a printed book, or a car as well as abstract concepts</span><span class="insert">
+various ways by </span><em><span class="insert">agents</span></em><span class="insert">. These core types</span> and <span class="delete">ideas. </span><span class="insert">their relationships
are illustrated
by
-the UML diagram of <a href="#prov-core-structures-top">Figure 1</a>.</p>
+the UML diagram of </span><a href="#prov-core-structures-top"><span class="insert">Figure 1</span></a><span class="insert">.</span></p>
+
+
+<span class="delete">
+ An </span><span class="delete">entity</span><span class="delete"> is a physical, digital, conceptual, or other kind of thing; entities may be real or imaginary. </span>
<div style="text-align: center; ">
-
<span class="figure" id="prov-core-structures-top" style="max-width: 70%; ">
-
<img src="uml/essentials.png" alt="PROV Core Structures" style="max-width: 70%; "><br>
-<span class="figcaption" id="prov-core-structures">Figure 1: PROV Core Structures</span>
+<span class="figcaption" data-count="1" id="prov-core-structures"><span class="insert">Figure 1</span><sup><a class="internalDFN" href="#prov-core-structures"><span class="diamond"><span class="insert"> ◊:</span></span></a></sup><span class="insert"> PROV Core Structures</span></span>
</span>
</div>
-<p>The concepts found in the core of PROV are introduced in the rest of this section.
-They are summarized in <a href="#overview-types-and-relations">Table 2</a>, where they are categorized as
+
+
+
+<span class="delete">An entity may be the document at URI </span><span class="delete">http://www.bbc.co.uk/news/science-environment-17526723</span><span class="delete">, a file in a file system, a car, or an idea.</span>
+
+
+
+
+
+<span class="delete"> An </span><span class="delete">activity</span><span class="delete"> is something that occurs over a period of time and acts upon or with entities; it may include consuming, processing, transforming, modifying, relocating, using, generating, or being associated with entities. </span><span class="delete"> Activities that operate on digital entities may for example move, copy, or duplicate them.
+</span>
+
+
+
+
+<span class="delete">An activity may be the publishing of a document on the Web, sending a twitter message, extracting metadata embedded in a file, driving a car from Boston to Cambridge, assembling a data set based on a set of measurements, performing a statistical analysis over a data set, sorting news items according to some criteria, running a SPARQL query over a triple store, or editing a file.</span>
+
+
+
+
+
+<span class="delete">2.2 </span><span class="delete">Generation, Usage, Derivation</span>
+
+<span class="delete">Activities and entities are associated with each other in two different ways: activities utilize entities and activities produce entities. The act of utilizing or producing an entity may have a duration.
+ The term 'generation' refers to the completion of the act of producing; likewise, the term 'usage' refers to the beginning of the act of utilizing entities. Thus, we define the following notions of generation and usage. </span>
+
+
+
+ <span class="delete">Generation</span><span class="delete"> is the completion of production of a new entity by an activity. This entity did not exist before generation and becomes available for usage after this generation. </span>
+
+
+
+
+ <span class="delete">Usage</span><span class="delete"> is the beginning of utilizing an entity by an activity. Before usage, the activity had not begun to utilize this entity and could not have been affected by the entity. </span>
+
+
+
+
+
+<span class="delete">Examples of generation are the completed creation of a file by a
+program, the completed creation of a linked data set, and the completed
+publication of a new version of a document.
+</span>
+
+
+
+
+<span class="delete">Usage examples include a procedure beginning to consume an argument, a service starting to read a value on a port, a program beginning to read a configuration
+file, or the point at which an ingredient, such as eggs, is being added in a baking activity. Usage may entirely consume an entity (e.g. eggs are no longer available after being added to
+the mix); in contrast, the same entity may be used multiple times, possibly by different activities (e.g. a file on a file system can be read indefinitely).
+</span>
+
+
+<span class="delete">Activities utilize entities and producer entities. In some cases, utilizing an entity influences the creation of another in some way. This notion is captured by derivations, defined as follows.</span>
+
+
+<span class="delete"> A </span><span class="delete">derivation</span><span class="delete"> is a transformation of an entity into another, a construction of an entity into another, or an update of an entity, resulting in a new one.</span>
+
+
+
+
+<span class="delete">Examples of derivation include the transformation of a relational table into a
+linked data set, the transformation of a canvas into a painting, the transportation of a work of art from London to New York, and a physical transformation such as the melting of ice into water.</span>
+
+
+
+
+
+<span class="delete">2.3 </span><span class="delete">Agents, Attribution, Association, and Responsibility</span>
+
+<p>The <span class="delete">motivation for introducing agents</span><span class="insert">concepts found</span> in the <span class="delete">model is to express the agent's responsibility for activities that happened and entities that were generated. </span>
+
+
+<span class="delete">
+ An </span><span class="delete">agent</span><span class="delete"> is something that bears some form of responsibility for an activity taking place or for the existence of an entity. </span><span class="delete"> An agent </span><span class="delete">may</span><span class="delete"> be a particular type of entity. This means that the model can be
+ used to express provenance of the agents themselves.
+</span>
+
+
+
+
+
+
+
+<span class="delete">
+Software for checking the use of grammar</span><span class="insert">core of PROV are introduced</span> in <span class="delete">a document may be defined as an agent of a document preparation activity, and at the same time one can describe its provenance, including for instance the vendor and the version history.
+A site selling books on the Web, the services involved</span><span class="insert">the rest of this section.
+They are summarized</span> in<span class="delete"> the processing of orders, and the companies hosting them are also agents.
+</span>
+
+
+
+<span class="delete">Agents may adopt sets of actions or steps to achieve their goals. This is captured by the notion of plan. </span>
+
+
+<span class="delete">
+ A </span><span class="delete">plan</span><span class="delete"> is an entity that represents a set of actions or steps intended by one or more agents to achieve some goals. </span><span class="delete">
+There exist no
+prescriptive requirement on the nature of plans, their representation, the
+actions or steps they consist of, or their intended goals. Since plans may evolve over time,
+it may become necessary to track their provenance, so plans themselves are
+entities. Representing the plan explicitly in the provenance can be useful for various tasks: for example, to
+validate the execution as represented in the provenance record, to
+manage expectation failures, or to provide explanations.</span>
+
+
+<span class="delete">
+A plan can be a blog post tutorial for how to set up a web server, a list of instructions for a micro-processor execution, a cook's written recipe for a chocolate cake, or a workflow for a scientific experiment.
+</span>
+
+
+
+
+
+
+
+<span class="delete">Agents can be related to entities, activities, and other agents.</span>
+
+ <span class="delete">Attribution</span><span class="delete"> is the ascribing of an entity to an agent. </span>
+
+
+<span class="delete">A blog post can be attributed to an author, a mobile phone to its manufacturer.</span>
+
+
+<span class="delete">
+Agents are defined as having some kind of responsibility for activities. In some
+cases, those activities reflect the execution of a plan that was
+designed in advance to guide the execution. Thus,
+a plan may also be linked to an activity. </span>
+
+
+
+
+
+<span class="delete"> An activity </span><span class="delete">association</span><span class="delete"> is an assignment of responsibility to an agent for an activity, indicating that the agent had a role in the activity. It further allows for a plan to be specified, which is the plan intended by the agent to achieve some goals in the context of this activity. </span>
+
+
+
+<span class="delete">Examples of association between an activity and an agent are:
+</span>
+<span class="delete">creation of a web page under the guidance of a designer;</span>
+<span class="delete">various forms of participation in a panel discussion, including audience member, panelist, or panel chair;</span>
+<span class="delete">a public event, sponsored by a company, and hosted by a museum;</span>
+<span class="delete">an XSLT transform launched by a user based on an XSL style sheet (a plan).</span>
+
+
+
+
+
+ <span class="delete">Responsibility</span><span class="delete"> is the fact that an agent is accountable for the actions of a "subordinate" agent, in the context of an activity. </span><span class="delete"> The nature of this relation is intended to be broad, including delegation or contractual relation. </span>
+
+
+
+
+
+
+
+
+<span class="delete">A student publishing a web page describing an academic
+department could result in both the student and the department being
+agents associated with the activity, and it may not matter which
+student published a web page but it matters a lot that the department
+told the student to put up the web page.
+</span>
+
+
+
+
+<span class="delete">2.4 </span><span class="delete">Further Entities: Collections and Accounts</span>
+
+<span class="delete">There are two further types of entities, collections and accounts, which are now introduced. </span>
+
+
+<span class="delete"> A </span><span class="delete">collection</span><span class="delete"> is an entity that provides a structure to some constituents, which are themselves entities. These constituents are said to be </span><span class="delete">member of</span><span class="delete"> the collections. </span><span class="delete"> This concept allows for the provenance of the collection itself to be expressed in addition to that of the members. Many different types of collections exist, such as a </span><span class="delete">set</span><span class="delete">, </span><span class="delete">dictionaries</span><span class="delete">, or </span><span class="delete">lists</span><span class="delete">, all of which involve a membership relationship between the constituents and the collection. </span>
+
+
+<span class="delete">
+An example of collection is an archive of documents. Each document has its own provenance, but the archive itself also has some provenance: who maintained it, which documents it contained at which point in time, how it was assembled, etc.
+</span>
+
+
+
+
+<span class="delete">
+ An </span><span class="delete">account</span><span class="delete"> is an entity that contains a bundle of provenance descriptions. </span><span class="delete">Making an account an entity allows for provenance of provenance to be expressed.
+
+</span>
+<span class="delete">
+For users to decide whether they can place their trust in
+a resource, they may want to analyze the resource's provenance, but also determine
+who its provenance is attributed to, and when it was
+generated. In other words, users need to be able to determine the provenance of provenance.
+Hence, provenance is also
+regarded as an entity (of type Account), by which provenance of provenance can then be
+expressed.
+</span>
+
+
+
+
+
+
+
+
+<span class="delete">2.5 </span><span class="delete">Simplified Overview Diagram</span>
+
+<span class="delete">So far, we have introduced a series of concepts underpinning provenance. PROV-DM is a conceptual data model consisting of types and relations between these.</span> <a href="#overview-types-and-relations">Table 2</a><span class="delete"> shows how provenance concepts can be mapped</span><span class="insert">, where they are categorized as
type or relation.
- The first column lists concepts, the second column indicates whether a concept maps to a type or a relation, whereas the third column contains the corresponding <span class="delete">name.</span><span class="insert">name, as it appears in Figure 1.</span> Names of relations have a verbal form in the past tense to express what happened in the past, as opposed to what may or will happen. In the core of PROV, all relations are binary.
+ The first column lists concepts, the second column indicates whether a concept maps</span> to <span class="delete">types and relations</span><span class="insert">a type or a relation, whereas the third column contains the corresponding name, as it appears</span> in <span class="delete">PROV-DM: the first column lists concepts introduced in this section, the second column indicates whether a concept maps to a type or a relation, whereas the third column contains the corresponding name.</span><span class="insert">Figure 1.</span> Names of relations have a verbal form in the past tense to express what happened in the past, as opposed to what may or will happen.<span class="insert"> In the core of PROV, all relations are binary.</span>
</p>
@@ -1251,22 +1505,28 @@
+
+
+
<div style="text-align: left;">
+
<table class="thinborder" style="margin-left: auto; margin-right: auto;">
-<caption id="overview-types-and-relations">Table 2: Mapping of PROV core concepts to types and relations</caption>
-<tbody><tr><td><a><b>PROV Concepts</b></a></td><td><b>PROV-DM types or relations</b></td><td><b>Name</b></td><td><b>Overview</b></td></tr>
+<caption id="overview-types-and-relations" data-count="2"><span>Table <span class="delete">2: </span><span class="insert">2</span><sup><a class="internalDFN" href="#overview-types-and-relations"><span class="diamond"><span class="insert"> ◊:</span></span></a></sup> </span>Mapping of <span class="delete">Provenance</span><span class="insert">PROV core</span> concepts to types and relations</caption>
+
+<tbody><tr><td><a><b>PROV Concepts</b></a></td><td><b>PROV-DM types or relations</b></td><td><b>Name</b></td><td><b><span class="insert">Overview</span></b></td></tr>
<tr>
-<td><a href="#concept-entity" class="internalDFN">Entity</a></td><td rowspan="3" style="text-align: center;">PROV-DM Types</td><td><a title="dfn-Entity" href="#dfn-entity" class="internalDFN">Entity</a></td><td style="text-align: center;"><a class="section-ref" href="#section-entity-activity"><span>Section 2.1.1</span></a></td></tr>
-<tr><td><a href="#concept-activity" class="internalDFN">Activity</a></td><td><a title="dfn-Activity" href="#dfn-activity" class="internalDFN">Activity</a></td><td style="text-align: center;"><a class="section-ref" href="#section-entity-activity"><span>Section 2.1.1</span></a></td></tr>
-<tr><td><a href="#concept-agent" class="internalDFN">Agent</a></td><td><a title="dfn-agent" href="#dfn-agent" class="internalDFN">Agent</a></td><td style="text-align: center;"><a class="section-ref" href="#section-agents-attribution-association-delegation"><span>Section 2.1.3</span></a></td></tr>
+<td><a href="#concept-entity" class="internalDFN">Entity</a></td><td rowspan="3" style="text-align: center;">PROV-DM Types</td><td><a title="dfn-Entity" href="#dfn-entity" class="internalDFN"><span class="delete">entity</span><span class="insert">Entity</span></a></td><td style="text-align: center;"><a class="section-ref" href="#section-entity-activity"><span><span class="insert">Section 2.1.1</span></span></a></td></tr>
+<tr><td><a href="#concept-activity" class="internalDFN">Activity</a></td><td><a title="dfn-Activity" href="#dfn-activity" class="internalDFN"><span class="delete">activity</span><span class="insert">Activity</span></a></td><td style="text-align: center;"><a class="section-ref" href="#section-entity-activity"><span><span class="insert">Section 2.1.1</span></span></a></td></tr>
+<tr><td><a href="#concept-agent" class="internalDFN">Agent</a></td><td><a title="dfn-agent" href="#dfn-agent" class="internalDFN"><span class="delete">agent</span><span class="insert">Agent</span></a></td><td style="text-align: center;"><a class="section-ref" href="#section-agents-attribution-association-delegation"><span><span class="insert">Section 2.1.3</span></span></a></td></tr>
<tr>
-<td><a href="#concept-generation" class="internalDFN">Generation</a></td><td rowspan="7" style="text-align: center;">PROV-DM Relations</td><td><a title="wasGeneratedBy" href="#dfn-wasgeneratedby" class="internalDFN"><span class="delete">wasGeneratedBy</span><span class="insert">WasGeneratedBy</span></a></td><td style="text-align: center;"><a class="section-ref" href="#section-entity-activity"><span>Section 2.1.1</span></a></td></tr>
-<tr><td><a href="#concept-usage" class="internalDFN">Usage</a></td><td><a title="used" href="#dfn-used" class="internalDFN">Used</a></td><td style="text-align: center;"><a class="section-ref" href="#section-entity-activity"><span>Section 2.1.1</span></a></td></tr>
-<tr><td><a href="#concept-communication" class="internalDFN">Communication</a></td><td><a title="wasInformedBy" href="#dfn-wasinformedby" class="internalDFN">WasInformedBy</a></td><td style="text-align: center;"><a class="section-ref" href="#section-entity-activity"><span>Section 2.1.1</span></a></td></tr>
-<tr><td><a href="#concept-derivation" class="internalDFN">Derivation</a></td><td><a title="wasDerivedFrom" href="#dfn-wasderivedfrom" class="internalDFN">WasDerivedFrom</a></td><td style="text-align: center;"><a class="section-ref" href="#section-derivation"><span>Section 2.1.2</span></a></td></tr>
-<tr><td><a href="#concept-attribution" class="internalDFN">Attribution</a></td><td><a title="wasAttributedTo" href="#dfn-wasattributedto" class="internalDFN">WasAttributedTo</a></td><td style="text-align: center;"><a class="section-ref" href="#section-agents-attribution-association-delegation"><span>Section 2.1.3</span></a></td></tr>
-<tr><td><a href="#concept-activityAssociation" class="internalDFN">Association</a></td><td><a title="wasAssociatedWith" href="#dfn-wasassociatedwith" class="internalDFN">WasAssociatedWith</a></td><td style="text-align: center;"><a class="section-ref" href="#section-agents-attribution-association-delegation"><span>Section 2.1.3</span></a></td></tr>
-<tr><td><a href="#concept-delegation" class="internalDFN">Delegation</a></td><td><a title="actedOnBehalfOf" href="#dfn-actedonbehalfof" class="internalDFN">ActedOnBehalfOf</a></td><td style="text-align: center;"><a class="section-ref" href="#section-agents-attribution-association-delegation"><span>Section 2.1.3</span></a></td></tr>
+<td><a href="#concept-generation" class="internalDFN">Generation</a></td><td rowspan="7" style="text-align: center;">PROV-DM Relations</td><td><a title="wasGeneratedBy" href="#dfn-wasgeneratedby" class="internalDFN"><span class="delete">wasGeneratedBy</span><span class="insert">WasGeneratedBy</span></a></td><td style="text-align: center;"><a class="section-ref" href="#section-entity-activity"><span><span class="insert">Section 2.1.1</span></span></a></td></tr>
+<tr><td><a href="#concept-usage" class="internalDFN">Usage</a></td><td><a title="used" href="#dfn-used" class="internalDFN"><span class="delete">used</span><span class="insert">Used</span></a></td><td style="text-align: center;"><a class="section-ref" href="#section-entity-activity"><span><span class="insert">Section 2.1.1</span></span></a></td></tr>
+<tr><td><a href="#concept-communication" class="internalDFN"><span class="insert">Communication</span></a></td><td><a title="wasInformedBy" href="#dfn-wasinformedby" class="internalDFN"><span class="insert">WasInformedBy</span></a></td><td style="text-align: center;"><a class="section-ref" href="#section-entity-activity"><span><span class="insert">Section 2.1.1</span></span></a></td></tr>
+<tr><td><a href="#concept-derivation" class="internalDFN"><span class="insert">Derivation</span></a></td><td><a title="wasDerivedFrom" href="#dfn-wasderivedfrom" class="internalDFN"><span class="insert">WasDerivedFrom</span></a></td><td style="text-align: center;"><a class="section-ref" href="#section-derivation"><span><span class="insert">Section 2.1.2</span></span></a></td></tr>
+<tr><td><a href="#concept-attribution" class="internalDFN">Attribution</a></td><td><a title="wasAttributedTo" href="#dfn-wasattributedto" class="internalDFN"><span class="delete">wasAttributedTo</span><span class="insert">WasAttributedTo</span></a></td><td style="text-align: center;"><a class="section-ref" href="#section-agents-attribution-association-delegation"><span><span class="insert">Section 2.1.3</span></span></a></td></tr>
+<tr><td><a href="#concept-activityAssociation" class="internalDFN">Association</a></td><td><a title="wasAssociatedWith" href="#dfn-wasassociatedwith" class="internalDFN"><span class="delete">wasAssociatedWith</span><span class="insert">WasAssociatedWith</span></a></td><td style="text-align: center;"><a class="section-ref" href="#section-agents-attribution-association-delegation"><span><span class="insert">Section 2.1.3</span></span></a></td></tr>
+<tr><td><span class="delete">Responsibility</span><a href="#concept-delegation" class="internalDFN"><span class="insert">Delegation</span></a></td><td><a title="actedOnBehalfOf" href="#dfn-actedonbehalfof" class="internalDFN"><span class="delete">actedOnBehalfOf</span><span class="insert">ActedOnBehalfOf</span></a></td><td style="text-align: center;"><a class="section-ref" href="#section-agents-attribution-association-delegation"><span><span class="insert">Section 2.1.3</span></span></a></td></tr>
+<span class="delete">Derivation</span><span class="delete">wasDerivedFrom</span>
</tbody></table>
</div>
@@ -1290,65 +1550,73 @@
<div id="section-entity-activity" class="section">
-<h4><span class="secno">2.1.1 </span>Entity and Activity</h4>
-
-
-<p>In PROV, things we want to describe the provenance of are called <em>entities</em> and have some fixed <span class="delete">aspect.</span><span class="insert">aspects.</span> The term "things" encompasses a broad diversity of notions, including digital objects such as a file or web page,
+<h4><span class="secno"><span class="insert">2.1.1 </span></span><span class="insert">Entity and Activity</span></h4>
+
+
+<p><span class="insert">In PROV, things we want to describe the provenance of are called </span><em><span class="insert">entities</span></em><span class="insert"> and have some fixed aspects. The term "things" encompasses a broad diversity of notions, including digital objects such as a file or web page,
physical things such as a mountain, a building, a printed book, or a car as well as abstract concepts and ideas.
-</p>
+</span></p>
<p>
-<span class="glossary-ref">
- An <span class="dfn">entity</span> is a physical, digital, conceptual, or other kind of thing with some fixed aspects; entities may be real or imaginary. </span> [<a href="#term-entity">Detailed specification</a>]</p>
-
-
-
-<div class="anexample conceptexample" id="entity-example"><div class="anexampleTitle">Example 1<sup><a class="internalDFN" href="#entity-example"><span class="diamond"> ◊</span></a></sup></div>
-<p>An entity may be the document at URI <a href="http://www.bbc.co.uk/news/science-environment-17526723">http://www.bbc.co.uk/news/science-environment-17526723</a>, a file in a file system, a car, or an idea.</p>
+<span class="glossary-ref"><span class="insert">
+ An </span><span class="dfn"><span class="insert">entity</span></span><span class="insert"> is a physical, digital, conceptual, or other kind of thing with some fixed aspects; entities may be real or imaginary. </span></span><span class="insert"> [</span><a href="#term-entity"><span class="insert">Detailed specification</span></a><span class="insert">]</span></p>
+
+
+
+<div class="anexample conceptexample" id="entity-example"><div class="anexampleTitle"><span class="insert">Example 1</span><sup><a class="internalDFN" href="#entity-example"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
+<p><span class="insert">An entity may be the document at URI </span><a href="http://www.bbc.co.uk/news/science-environment-17526723"><span class="insert">http://www.bbc.co.uk/news/science-environment-17526723</span></a><span class="insert">, a file in a file system, a car, or an idea.</span></p>
</div>
<p>
-<span class="glossary-ref"> An <span class="dfn">activity</span> is something that occurs over a period of time and acts upon or with entities; it may include consuming, processing, transforming, modifying, relocating, using, or generating entities. </span> [<a href="#term-Activity">Detailed specification</a>]
+<span class="glossary-ref"><span class="insert"> An </span><span class="dfn"><span class="insert">activity</span></span><span class="insert"> is something that occurs over a period of time and acts upon or with entities; it may include consuming, processing, transforming, modifying, relocating, using, or generating entities. </span></span><span class="insert"> [</span><a href="#term-Activity"><span class="insert">Detailed specification</span></a><span class="insert">]
Just as entities cover a broad range of notions,
activities can cover a broad range of
notions:
information processing activities
may for example move, copy, or duplicate digital entities;
physical activities can include
- driving a car from Boston to <span class="delete">Cambridge.</span><span class="insert">Cambridge or printing a book.</span>
-</p>
-
-
-
-<div class="anexample conceptexample" id="activity-example"><div class="anexampleTitle">Example 2<sup><a class="internalDFN" href="#activity-example"><span class="diamond"> ◊</span></a></sup></div>
-<p>An activity may be the publishing of a document on the Web, sending a twitter message, extracting metadata embedded in a file, driving a car from Boston to Cambridge, assembling a data set based on a set of measurements, performing a statistical analysis over a data set, sorting news items according to some criteria, running a SPARQL query over a triple store, or editing a file.</p>
+ driving a car from Boston to Cambridge or printing a book.
+</span></p>
+
+
+
+<div class="anexample conceptexample" id="activity-example"><div class="anexampleTitle"><span class="insert">Example 2</span><sup><a class="internalDFN" href="#activity-example"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
+<p><span class="insert">An activity may be the publishing of a document on the Web, sending a twitter message, extracting metadata embedded in a file, driving a car from Boston to Cambridge, assembling a data set based on a set of measurements, performing a statistical analysis over a data set, sorting news items according to some criteria, running a SPARQL query over a triple store, or editing a file.</span></p>
</div>
-<p>Activities and entities are associated with each other in two different ways: activities utilize entities and activities produce entities. The act of utilizing or producing an entity may have a duration.
- The term 'generation' refers to the completion of the act of producing; likewise, the term 'usage' refers to the beginning of the act of utilizing entities. Thus, we define the following concepts of generation and usage. </p>
+<p><span class="delete">Figure 1</span><span class="delete"> illustrates the three types (entity, activity,</span><span class="insert">Activities</span> and <span class="delete">agent)</span><span class="insert">entities are associated with each other in two different ways: activities utilize entities</span> and <span class="delete">how they relate</span><span class="insert">activities produce entities. The act of utilizing or producing an entity may have a duration.
+ The term 'generation' refers</span> to <span class="delete">each other.</span><span class="insert">the completion of the act of producing; likewise, the term 'usage' refers to the beginning of the act of utilizing entities. Thus, we define the following concepts of generation and usage. </span></p>
<p>
<span class="glossary-ref">
- <span class="dfn">Generation</span> is the completion of production of a new entity by an activity. This entity did not exist before generation and becomes available for usage after this generation. </span> [<a href="#term-Generation">Detailed specification</a>]</p>
+ <span class="dfn"><span class="insert">Generation</span></span><span class="insert"> is the completion of production of a new entity by an activity. This entity did not exist before generation and becomes available for usage after this generation. </span></span><span class="insert"> [</span><a href="#term-Generation"><span class="insert">Detailed specification</span></a><span class="insert">]</span></p>
<p>
<span class="glossary-ref">
- <span class="dfn">Usage</span> is the beginning of utilizing an entity by an activity. Before usage, the activity had not begun to utilize this entity and could not have been affected by the entity. </span> [<a href="#term-Usage">Detailed specification</a>]</p>
-
-
-
-
-<div class="anexample conceptexample" id="generation-example"><div class="anexampleTitle">Example 3<sup><a class="internalDFN" href="#generation-example"><span class="diamond"> ◊</span></a></sup></div>
-<p>Examples of generation are the completed creation of a file by a
+ <span class="dfn"><span class="insert">Usage</span></span><span class="insert"> is the beginning of utilizing an entity by an activity. Before usage, the activity had not begun to utilize this entity and could not have been affected by the entity. </span></span> <span class="delete">At this stage, all relations</span><span class="insert">[</span><a href="#term-Usage"><span class="insert">Detailed specification</span></a><span class="insert">]</span></p>
+
+
+
+
+<div class="anexample conceptexample" id="generation-example"><div class="anexampleTitle"><span class="insert">Example 3</span><sup><a class="internalDFN" href="#generation-example"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
+<p><span class="insert">Examples of generation</span> are <span class="delete">shown to be binary. Definitions of </span><span class="delete">Section 4</span><span class="delete"> reveal that some relations, while involving two primary elements, are n-ary. </span><span class="insert">the completed creation of a file by a
program, the completed creation of a linked data set, and the completed
publication of a new version of a document.
-</p></div>
-
-<p>
+</span></p>
+
+
+
+
+
+<span class="delete">Figure 1: Simplified Overview of PROV-DM</span>
+
+</div>
+
+<p><span class="delete">Figure 1</span><span class="insert">
One might reasonably ask what entities are used and generated by
-driving a car from Boston to Cambridge. This is answered by
+driving a car from Boston to Cambridge. This</span> is <span class="insert">answered by
considering that a single artifact may
correspond to several entities; in this case, a car in Boston may be a
different entity from a car in Cambridge.
@@ -1358,67 +1626,67 @@
provenance trace of the car might include: designed in Japan,
manufactured in Korea, shipped to Boston USA, purchased by customer,
driven to Cambridge, serviced by engineer in Cambridge, etc., all of
-which might be important information when deciding whether or not it
+which might be important information when deciding whether or </span>not <span class="insert">it
represents a sensible second-hand purchase. Or some of it might
alternatively be relevant when trying to determine the truth of a web
page reporting a traffic violation involving that car. This breadth
of provenance allows descriptions of interactions between physical and
digital artifacts.
-</p>
-
-
-
-
-<div class="anexample conceptexample" id="usage-example"><div class="anexampleTitle">Example 4<sup><a class="internalDFN" href="#usage-example"><span class="diamond"> ◊</span></a></sup></div>
-<p>Usage examples include a procedure beginning to consume an argument, a service starting to read a value on a port, a program beginning to read a configuration
+</span></p>
+
+
+
+
+<div class="anexample conceptexample" id="usage-example"><div class="anexampleTitle"><span class="insert">Example 4</span><sup><a class="internalDFN" href="#usage-example"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
+<p><span class="insert">Usage examples include a procedure beginning to consume an argument, a service starting to read a value on a port, a program beginning to read a configuration
file, or the point at which an ingredient, such as eggs, is being added in a baking activity. Usage may entirely consume an entity (e.g. eggs are no longer available after being added to
the mix); in contrast, the same entity may be used multiple times, possibly by different activities (e.g. a file on a file system can be read indefinitely).
-</p></div>
-
-
-<p>The generation of an entity by an activity and its subsequent usage by another activity is termed communication.</p>
+</span></p></div>
+
+
+<p><span class="insert">The generation of an entity by an activity and its subsequent usage by another activity is termed communication.</span></p>
<p>
<span class="glossary-ref">
- <span class="dfn">Communication</span> is the exchange of some unspecified entity by two activities, one activity using some entity generated by the other. </span> [<a href="#term-Communication">Detailed specification</a>]</p>
-
-
-
-
-
-<div class="anexample conceptexample" id="communication-example"><div class="anexampleTitle">Example 5<sup><a class="internalDFN" href="#communication-example"><span class="diamond"> ◊</span></a></sup></div>
-<p>
+ <span class="dfn"><span class="insert">Communication</span></span><span class="insert"> is the exchange of some unspecified entity by two activities, one activity using some entity generated by the other. </span></span><span class="insert"> [</span><a href="#term-Communication"><span class="insert">Detailed specification</span></a><span class="insert">]</span></p>
+
+
+
+
+
+<div class="anexample conceptexample" id="communication-example"><div class="anexampleTitle"><span class="insert">Example 5</span><sup><a class="internalDFN" href="#communication-example"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
+<p><span class="insert">
The activity of writing a celebrity article was informed by (a
communication instance) the activity of intercepting voicemails.
-</p></div>
+</span></p></div>
</div>
<div id="section-derivation" class="section">
-<h4><span class="secno">2.1.2 </span>Derivation</h4>
-
-
-
-<p>Activities utilize entities and produce entities. In some cases, utilizing an entity influences the creation of another in some way. This notion of 'influence' is captured by derivations, defined as follows.
-</p>
+<h4><span class="secno"><span class="insert">2.1.2 </span></span><span class="insert">Derivation</span></h4>
+
+
+
+<p><span class="insert">Activities utilize entities and produce entities. In some cases, utilizing an entity influences the creation of another in some way. This notion of 'influence' is captured by derivations, defined as follows.
+</span></p>
<p>
-<span class="glossary-ref"> A <span class="dfn">derivation</span> is a transformation of an entity into another, an update of an entity resulting in a new one, or the construction of a new entity based on a pre-existing entity.</span>
- [<a href="#term-Derivation">Detailed specification</a>]</p>
-
-
-
-
-
-<div class="anexample conceptexample" id="derivation-example"><div class="anexampleTitle">Example 6<sup><a class="internalDFN" href="#derivation-example"><span class="diamond"> ◊</span></a></sup></div>
-<p>Examples of derivation include the transformation of a relational table into a
-linked data set, the transformation of a canvas into a painting, the transportation of a work of art from London to New York, and a physical transformation such as the melting of ice into water.</p>
+<span class="glossary-ref"><span class="insert"> A </span><span class="dfn"><span class="insert">derivation</span></span><span class="insert"> is a transformation of an entity into another, an update of an entity resulting in a new one, or the construction of a new entity based on a pre-existing entity.</span></span><span class="insert">
+ [</span><a href="#term-Derivation"><span class="insert">Detailed specification</span></a><span class="insert">]</span></p>
+
+
+
+
+
+<div class="anexample conceptexample" id="derivation-example"><div class="anexampleTitle"><span class="insert">Example 6</span><sup><a class="internalDFN" href="#derivation-example"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
+<p><span class="insert">Examples of derivation include the transformation of a relational table into a
+linked data set, the transformation of a canvas into a painting, the transportation of a work of art from London to New York, and a physical transformation such as the melting of ice into water.</span></p>
</div>
-<p>
+<p><span class="insert">
While the basic idea is simple, the concept of derivation can be quite
subtle: implicit is the notion that the generated entity was affected
in some way by the used entity.
@@ -1435,72 +1703,72 @@
Thus, while a chain of usage and generation is necessary for a
derivation to hold between entities, it is not sufficient; some
form of influence occurring during the activities involved is also needed.
-</p>
+</span></p>
</div>
<div id="section-agents-attribution-association-delegation" class="section">
-<h4><span class="secno">2.1.3 </span>Agents and Responsibility</h4>
-
-<p>For many purposes, a key consideration
+<h4><span class="secno"><span class="insert">2.1.3 </span></span><span class="insert">Agents and Responsibility</span></h4>
+
+<p><span class="insert">For many purposes, a key consideration
for deciding whether something is reliable and/or trustworthy is
- knowing who or what <em>was reponsible</em> for its production. Data published by
+ knowing who or what </span><em><span class="insert">was reponsible</span></em><span class="insert"> for its production. Data published by
a respected independent organization may be considered more
trustworthy than that from a lobby organization; a claim by a
well-known scientist with an established track record may be more
believed than a claim by a new student; a calculation performed by an
established software library may be more reliable than by a one-off
- program.</p>
+ program.</span></p>
<p>
-<span class="glossary-ref">
- An <span class="dfn">agent</span> is something that bears some form of responsibility for an activity taking place, for the existence of an entity, or for another agent's activity. </span> [<a href="#term-agent">Detailed specification</a>]
- An agent <em class="rfc2119" title="may">may</em> be a particular type of entity or activity. This means that the model can be
+<span class="glossary-ref"><span class="insert">
+ An </span><span class="dfn"><span class="insert">agent</span></span><span class="insert"> is something that bears some form of responsibility for an activity taking place, for the existence of an entity, or for another agent's activity. </span></span><span class="insert"> [</span><a href="#term-agent"><span class="insert">Detailed specification</span></a><span class="insert">]
+ An agent </span><em class="rfc2119" title="may"><span class="insert">may</span></em><span class="insert"> be a particular type of entity or activity. This means that the model can be
used to express provenance of the agents themselves.
-</p>
-
-
-
-
-
-
-<div class="anexample conceptexample" id="agent-example"><div class="anexampleTitle">Example 7<sup><a class="internalDFN" href="#agent-example"><span class="diamond"> ◊</span></a></sup></div>
-<p>
+</span></p>
+
+
+
+
+
+
+<div class="anexample conceptexample" id="agent-example"><div class="anexampleTitle"><span class="insert">Example 7</span><sup><a class="internalDFN" href="#agent-example"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
+<p><span class="insert">
Software for checking the use of grammar in a document may be defined as an agent of a document preparation activity; one can also describe its provenance, including for instance the vendor and the version history.
A site selling books on the Web, the services involved in the processing of orders, and the companies hosting them are also agents.
-</p>
+</span></p>
</div>
-<p>Agents can be related to entities, activities, and other agents.</p>
-
-<p><span class="glossary-ref"> <span class="dfn">Attribution</span> is the ascribing of an entity to an agent. </span>
-[<a href="#term-attribution">Detailed specification</a>]</p>
-
-<div class="anexample conceptexample" id="attribution-example"><div class="anexampleTitle">Example 8<sup><a class="internalDFN" href="#attribution-example"><span class="diamond"> ◊</span></a></sup></div>
-<p>A blog post can be attributed to an author, a mobile phone to its manufacturer.</p>
+<p><span class="insert">Agents can be related to entities, activities, and other agents.</span></p>
+
+<p><span class="glossary-ref"> <span class="dfn"><span class="insert">Attribution</span></span><span class="insert"> is the ascribing of an entity to an agent. </span></span><span class="insert">
+[</span><a href="#term-attribution"><span class="insert">Detailed specification</span></a><span class="insert">]</span></p>
+
+<div class="anexample conceptexample" id="attribution-example"><div class="anexampleTitle"><span class="insert">Example 8</span><sup><a class="internalDFN" href="#attribution-example"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
+<p><span class="insert">A blog post can be attributed to an author, a mobile phone to its manufacturer.</span></p>
</div>
-<p>
-Agents are defined as having some kind of responsibility for activities. </p>
+<p><span class="insert">
+Agents are defined as having some kind of responsibility for activities. </span></p>
<p>
-<span class="glossary-ref"> An activity <span class="dfn">association</span> is an assignment of responsibility to an agent for an activity, indicating that the agent had a role in the activity. </span>
-[<a href="#term-Association">Detailed specification</a>]</p>
-
-
-<div class="anexample conceptexample" id="association-example"><div class="anexampleTitle">Example 9<sup><a class="internalDFN" href="#association-example"><span class="diamond"> ◊</span></a></sup></div>
-<p>Examples of association between an activity and an agent are:
-</p><ul>
-<li>creation of a web page under the guidance of a designer;</li>
-<li>various forms of participation in a panel discussion, including audience member, panelist, or panel chair;</li>
-<li>a public event, sponsored by a company, and hosted by a museum;</li>
+<span class="glossary-ref"><span class="insert"> An activity </span><span class="dfn"><span class="insert">association</span></span><span class="insert"> is an assignment of responsibility to an agent for an activity, indicating that the agent had a role in the activity. </span></span><span class="insert">
+[</span><a href="#term-Association"><span class="insert">Detailed specification</span></a><span class="insert">]</span></p>
+
+
+<div class="anexample conceptexample" id="association-example"><div class="anexampleTitle"><span class="insert">Example 9</span><sup><a class="internalDFN" href="#association-example"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
+<p><span class="insert">Examples of association between an activity and an agent are:
+</span></p><ul>
+<li><span class="insert">creation of a web page under the guidance of a designer;</span></li>
+<li><span class="insert">various forms of participation in a panel discussion, including audience member, panelist, or panel chair;</span></li>
+<li><span class="insert">a public event, sponsored by a company, and hosted by a museum;</span></li>
</ul>
</div>
@@ -1508,20 +1776,20 @@
<p>
<span class="glossary-ref">
- <span class="dfn">Delegation</span> is the assignment of authority and responsibility to an agent (by itself or by another agent) to carry out a specific activity as a delegate or representative, while the agent it acts on behalf of retains some responsibility for the outcome of the delegated work. </span>
-[<a href="#term-delegation">Detailed specification</a>]
- The nature of this relation is intended to be broad, including contractual relation, but also altruistic initiative by the representative agent. </p>
-
-
-
-
-<div class="anexample conceptexample" id="delegation-example"><div class="anexampleTitle">Example 10<sup><a class="internalDFN" href="#delegation-example"><span class="diamond"> ◊</span></a></sup></div>
-<p>A student publishing a web page describing an academic
+ <span class="dfn"><span class="insert">Delegation</span></span><span class="insert"> is the assignment of authority and responsibility to an agent (by itself or by another agent) to carry out a specific activity as a delegate or representative, while the agent it acts on behalf of retains some responsibility for the outcome of the delegated work. </span></span><span class="insert">
+[</span><a href="#term-delegation"><span class="insert">Detailed specification</span></a><span class="insert">]
+ The nature of this relation is </span>intended to be <span class="delete">complete:</span><span class="insert">broad, including contractual relation, but also altruistic initiative by the representative agent. </span></p>
+
+
+
+
+<div class="anexample conceptexample" id="delegation-example"><div class="anexampleTitle"><span class="insert">Example 10</span><sup><a class="internalDFN" href="#delegation-example"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
+<p><span class="insert">A student publishing a web page describing an academic
department could result in both the student and the department being
agents associated with the activity. It may not matter which actual
-student published a web page, but it may matter significantly that the department
+student published a web page, but</span> it <span class="delete">only illustrates types and relations introduced</span><span class="insert">may matter significantly that the department
told the student to put up the web page.
-</p>
+</span></p>
</div>
</div>
@@ -1529,84 +1797,86 @@
</div>
<div id="section-extended-structures" class="section">
-<h3><span class="secno">2.2 </span>PROV Extended Structures</h3>
-
-<p>While the core of PROV focuses on essential provenance structures commonly found in provenance descriptions, extended structures
-are designed to support more advanced uses of provenance.
-The purpose of this section is twofold. First, mechanisms to specify these extended structures are introduced. Second, two further kinds of provenance structures are overviewed: they cater for provenance of provenance and collections, respectively.</p>
+<h3><span class="secno"><span class="insert">2.2 </span></span><span class="insert">PROV Extended Structures</span></h3>
+
+<p><span class="insert">While the core of PROV focuses on essential provenance structures commonly found</span> in <span class="delete">this section (</span><span class="delete">Section 2</span><span class="delete">), exploited in the example discussed in </span><span class="delete">Section 3</span><span class="delete">, and explained in detail in </span><span class="delete">Section 4</span><span class="delete">.
+Names of relations depicted in </span><span class="delete">Figure 1</span><span class="insert">provenance descriptions, extended structures</span>
+are <span class="delete">listed</span><span class="insert">designed to support more advanced uses of provenance.
+The purpose of this section is twofold. First, mechanisms to specify these extended structures are introduced. Second, two further kinds of provenance structures are overviewed: they cater for provenance of provenance and collections, respectively.</span></p>
<div id="section-prov-extended-mechanisms" class="section">
-<h4><span class="secno">2.2.1 </span>Mechanisms to Define Extended Structures</h4>
-
-<p>Extended structures are defined by a variety of mechanisms
-outlined in this section: subtyping, expanded relations, optional
-identification, and new relations.</p>
+<h4><span class="secno"><span class="insert">2.2.1 </span></span><span class="insert">Mechanisms to Define Extended Structures</span></h4>
+
+<p><span class="insert">Extended structures are defined by a variety of mechanisms
+outlined</span> in<span class="delete">
+the third column of </span><span class="delete">Table 2</span><span class="insert"> this section: subtyping, expanded relations, optional
+identification, and new relations.</span></p>
<div id="section-prov-extended-approach-subtyping" class="section">
-<h5><span class="secno">2.2.1.1 </span>Subtyping</h5>
-
-<p>Subtyping can be applied to core types. For example, a software agent is special kind of agent, defined as follows.</p>
-
-<span class="glossary-ref">
- A <span class="dfn">software agent</span> is running software. </span>
-
-
-<p>Subtyping can also be applied to core relations. For example, a revision is a special kind of derivation, defined as follows.</p>
-
-
-<p><span class="glossary-ref"> A <span class="dfn">revision</span> is a derivation for which the resulting entity is a revised version of some original. </span></p>
+<h5><span class="secno"><span class="insert">2.2.1.1 </span></span><span class="insert">Subtyping</span></h5>
+
+<p><span class="insert">Subtyping can be applied to core types. For example, a software agent is special kind of agent, defined as follows.</span></p>
+
+<span class="glossary-ref"><span class="insert">
+ A </span><span class="dfn"><span class="insert">software agent</span></span><span class="insert"> is running software. </span></span>
+
+
+<p><span class="insert">Subtyping can also be applied to core relations. For example, a revision is a special kind of derivation, defined as follows.</span></p>
+
+
+<p><span class="glossary-ref"><span class="insert"> A </span><span class="dfn"><span class="insert">revision</span></span><span class="insert"> is a derivation for which the resulting entity is a revised version of some original. </span></span></p>
</div>
<div id="section-prov-extended-approach-expanded-relation" class="section">
-<h5><span class="secno">2.2.1.2 </span>Expanded Relations</h5>
-
-<p><a class="section-ref" href="#core-structures"><span>Section 2.1</span></a> shows that seven concepts are mapped to binary relations in the core of PROV. However, some advanced uses of these concepts cannot be captured by a binary relation, but require relations to be expanded to n-ary relations.</p>
-
-
-<p>To illustrate expanded relations, we consider the concept of
+<h5><span class="secno"><span class="insert">2.2.1.2 </span></span><span class="insert">Expanded Relations</span></h5>
+
+<p><a class="section-ref" href="#core-structures"><span><span class="insert">Section 2.1</span></span></a><span class="insert"> shows that seven concepts are mapped to binary relations in the core of PROV. However, some advanced uses of these concepts cannot be captured by a binary relation, but require relations to be expanded to n-ary relations.</span></p>
+
+
+<p><span class="insert">To illustrate expanded relations, we consider the concept of
association, described
-in <a class="section-ref" href="#section-agents-attribution-association-delegation"><span>Section 2.1.3</span></a>. Agents may adopt <em>plans</em>, i.e. sets of actions or steps, to achieve their
+in </span><a class="section-ref" href="#section-agents-attribution-association-delegation"><span><span class="insert">Section 2.1.3</span></span></a>.<span class="delete"> These names</span><span class="insert"> Agents may adopt </span><em><span class="insert">plans</span></em><span class="insert">, i.e. sets of actions or steps, to achieve their
goals in the context of an activity.
Hence, an expanded form of
association relation allows for a plan to be specified. Plan is defined by subtyping and
-full association by an expanded relation, as follows. </p>
+full association by an expanded relation, as follows. </span></p>
<p>
-<span class="glossary-ref">
- A <span class="dfn">plan</span> is an entity that represents a set of actions or steps intended by one or more agents to achieve some goals. </span>
+<span class="glossary-ref"><span class="insert">
+ A </span><span class="dfn"><span class="insert">plan</span></span><span class="insert"> is an entity that represents a set of actions or steps intended by one or more agents to achieve some goals. </span></span>
</p>
<p>
-<span class="glossary-ref"> An activity <span class="dfn">association</span> is an assignment of responsibility to an agent for an activity, indicating that the agent had a role in the activity. It further allows for a plan to be specified, which is the plan intended by the agent to achieve some goals in the context of this activity. </span>
+<span class="glossary-ref"><span class="insert"> An activity </span><span class="dfn"><span class="insert">association</span></span><span class="insert"> is an assignment of responsibility to an agent for an activity, indicating that the agent had a role in the activity. It further allows for a plan to be specified, which is the plan intended by the agent to achieve some goals in the context of this activity. </span></span>
</p>
-<p>There exist no
+<p><span class="insert">There exist no
prescriptive requirement on the nature of plans, their representation, the
actions or steps they consist of, or their intended goals. Since plans may evolve over time,
-it may become necessary to track their provenance, so plans themselves are
+it may become necessary to track their provenance, so plans themselves</span> are<span class="insert">
entities. Representing the plan explicitly in the provenance can be useful for various tasks: for example, to
validate the execution as represented in the provenance record, to
-manage expectation failures, or to provide explanations.</p>
-
-
-<div class="anexample conceptexample" id="association-example2"><div class="anexampleTitle">Example 11<sup><a class="internalDFN" href="#association-example2"><span class="diamond"> ◊</span></a></sup></div>
-<p>An example of association between an activity and an agent involving a plan is:
+manage expectation failures, or to provide explanations.</span></p>
+
+
+<div class="anexample conceptexample" id="association-example2"><div class="anexampleTitle"><span class="insert">Example 11</span><sup><a class="internalDFN" href="#association-example2"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
+<p><span class="insert">An example of association between an activity and an agent involving a plan is:
an XSLT transform (an activity) launched by a user (an agent) based on an XSL style sheet (a plan).
-</p></div>
+</span></p></div>
</div>
<div id="section-prov-extended-approach-optional-identification" class="section">
-<h5><span class="secno">2.2.1.3 </span>Optional Identification</h5>
-
-<p>Some concepts exhibit both a core use, expressed as
+<h5><span class="secno"><span class="insert">2.2.1.3 </span></span><span class="insert">Optional Identification</span></h5>
+
+<p><span class="insert">Some concepts exhibit both a core use, expressed as
binary relation, and an extended use, expressed as n-ary relation. In
some cases, mapping the concept to a relation, whether binary or
n-ary, is not sufficient: instead, it may be required to
@@ -1614,11 +1884,11 @@
an optional identifier to be
expressed to identify an instance of an association between two or
more elements. This optional identifier can then be used to refer to
-an instance as part of other concepts.</p>
-
-<div class="anexample conceptexample" id="identifier-example"><div class="anexampleTitle">Example 12<sup><a class="internalDFN" href="#identifier-example"><span class="diamond"> ◊</span></a></sup></div>
-<p>A service may read a same configuration file on two different occasions. Each usage can be identifed by its own identifier, allowing them to be distinguished.
-</p></div>
+an instance as</span> part of <span class="delete">a textual notation</span><span class="insert">other concepts.</span></p>
+
+<div class="anexample conceptexample" id="identifier-example"><div class="anexampleTitle"><span class="insert">Example 12</span><sup><a class="internalDFN" href="#identifier-example"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
+<p><span class="insert">A service may read a same configuration file on two different occasions. Each usage can be identifed by its own identifier, allowing them</span> to <span class="delete">write instances of the PROV data model, which we introduce in the next section. </span><span class="insert">be distinguished.
+</span></p></div>
</div>
@@ -1626,9 +1896,9 @@
<div id="section-prov-extended-approach-further-relations" class="section">
-<h5><span class="secno">2.2.1.4 </span>Further Relations</h5>
-
-<p>Finally, PROV-DM supports further relations that are not subtypes or expanded versions of existing <span class="delete">relations.</span><span class="insert">relations (such as </span><a href="#concept-specialization" class="internalDFN"><span class="insert">specialization</span></a><span class="insert">, </span><a href="#concept-alternate" class="internalDFN"><span class="insert">alternate</span></a><span class="insert">).</span></p>
+<h5><span class="secno"><span class="insert">2.2.1.4 </span></span><span class="insert">Further Relations</span></h5>
+
+<p><span class="insert">Finally, PROV-DM supports further relations that are not subtypes or expanded versions of existing relations (such as </span><a href="#concept-specialization" class="internalDFN"><span class="insert">specialization</span></a><span class="insert">, </span><a href="#concept-alternate" class="internalDFN"><span class="insert">alternate</span></a><span class="insert">).</span></p>
</div>
@@ -1637,16 +1907,16 @@
<div id="section-provenance-of-provnance" class="section">
-<h4><span class="secno">2.2.2 </span>Provenance of Provenance</h4>
+<h4><span class="secno"><span class="insert">2.2.2 </span></span><span class="insert">Provenance of Provenance</span></h4>
<p>
-<span class="glossary-ref">
- A <span class="dfn">bundle</span> is a named set of provenance descriptions, and is itself an entity, so allowing provenance of provenance to be expressed. </span>
-
-</p><p>
+<span class="glossary-ref"><span class="insert">
+ A </span><span class="dfn"><span class="insert">bundle</span></span><span class="insert"> is a named set of provenance descriptions, and is itself an entity, so allowing provenance of provenance to be expressed. </span></span>
+
+</p><p><span class="insert">
For users to decide whether they can place their trust in
something, they may want to analyze its provenance, but also determine
the agent its provenance is attributed to, and when it was
@@ -1654,26 +1924,26 @@
Hence, provenance is also
regarded as an entity (of type Bundle), by which provenance of provenance can then be
expressed.
-</p>
-
-<div class="anexample conceptexample" id="bundle-example"><div class="anexampleTitle">Example 13<sup><a class="internalDFN" href="#bundle-example"><span class="diamond"> ◊</span></a></sup></div>
-<p>
+</span></p>
+
+<div class="anexample conceptexample" id="bundle-example"><div class="anexampleTitle"><span class="insert">Example 13</span><sup><a class="internalDFN" href="#bundle-example"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
+<p><span class="insert">
In a decision making situation, decision makers may be presented with the same piece of knowledge, issued by multiple sources. In order to validate this piece of knowledge, decision makers can consider its provenance, but also the provenance of their provenance, which may help determine whether it can be trusted.
-</p>
+</span></p>
</div>
</div>
<div id="section-collections" class="section">
-<h4><span class="secno">2.2.3 </span>Collections</h4>
+<h4><span class="secno"><span class="insert">2.2.3 </span></span><span class="insert">Collections</span></h4>
<p>
-<span class="glossary-ref"> A <span class="dfn">collection</span> is an entity that provides a structure to some constituents, which are themselves entities. These constituents are said to be <span class="dfn">member of</span> the collections. </span> Many different types of collections exist, such as<span class="delete"> a</span> <em>sets</em>, <em>dictionaries</em>, or <em>lists</em>.
-Using Collections, one can express the provenance of the collection itself in addition to that of the members. </p>
-
-<div class="anexample conceptexample" id="collection-example"><div class="anexampleTitle">Example 14<sup><a class="internalDFN" href="#collection-example"><span class="diamond"> ◊</span></a></sup></div>
-<p>
+<span class="glossary-ref"><span class="insert"> A </span><span class="dfn"><span class="insert">collection</span></span><span class="insert"> is an entity that provides a structure to some constituents, which are themselves entities. These constituents are said to be </span><span class="dfn"><span class="insert">member of</span></span><span class="insert"> the collections. </span></span><span class="insert"> Many different types of collections exist, such as </span><em><span class="insert">sets</span></em><span class="insert">, </span><em><span class="insert">dictionaries</span></em><span class="insert">, or </span><em><span class="insert">lists</span></em><span class="insert">.
+Using Collections, one can express the provenance of the collection itself in addition to that of the members. </span></p>
+
+<div class="anexample conceptexample" id="collection-example"><div class="anexampleTitle"><span class="insert">Example 14</span><sup><a class="internalDFN" href="#collection-example"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
+<p><span class="insert">
An example of collection is an archive of documents. Each document has its own provenance, but the archive itself also has some provenance: who maintained it, which documents it contained at which point in time, how it was assembled, etc.
-</p></div>
+</span></p></div>
</div>
@@ -1685,25 +1955,63 @@
</div>
<div id="section-overview-components" class="section">
-<h3><span class="secno">2.3 </span>Modular Organization</h3>
-
-<p>Besides the separation between core and extended structures, PROV-DM
-is further organized according to components, grouping concepts in a
-thematic manner. </p>
-
-<p> <a href="#components-overview">Table 3</a> enumerates the six components, five of which have already been implicitly overviewed in this section. All components <span class="delete">specify</span><span class="insert">contain</span> extended structures, whereas only the first three<span class="delete"> define</span><span class="insert"> contain</span> core structures.
-
-</p><div id="components-overview-div" style="text-align: center;">
+<h3><span class="secno"><span class="delete">2.6 </span><span class="delete">PROV-N: The Provenance Notation</span><span class="insert">2.3 </span></span><span class="insert">Modular Organization</span></h3>
+
+
+
+
+<p><span class="delete">To illustrate the application of PROV</span><span class="insert">Besides the separation between core and extended structures, PROV-DM
+is further organized according to components, grouping</span> concepts <span class="insert">in a
+thematic manner. </span></p>
+
+<p> <a href="#components-overview"><span class="insert">Table 3</span></a><span class="insert"> enumerates the six components, five of which have already been implicitly overviewed in this section. All components contain extended structures, whereas only the first three contain core structures.
+
+</span></p><div id="components-overview-div" style="text-align: center;">
<table class="thinborder" style="margin-left: auto; margin-right: auto;">
-<caption id="components-overview">Table 3: Components Overview</caption>
-<tbody><tr><td style="border-width: 0px; "></td><td>Component</td><td>Core <br>Structures</td><td>Overview</td><td>Specification</td><td>Description</td></tr>
+<caption id="components-overview" data-count="3"><span><span class="insert">Table 3</span><sup><a class="internalDFN" href="#components-overview"><span class="diamond"><span class="insert"> ◊:</span></span></a></sup> </span><span class="insert">Components Overview</span></caption>
+<tbody><tr><td style="border-width: 0px; "></td><td><span class="insert">Component</span></td><td><span class="insert">Core </span><br><span class="insert">Structures</span></td><td><span class="insert">Overview</span></td><td><span class="insert">Specification</span></td><td><span class="insert">Description</span></td></tr>
<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
-<tr><td style=" padding: 8px;">1</td><td style="text-align: left;">Entities and Activities</td><td>✔</td><td><a href="#section-entity-activity">2.1.1</a></td><td><a href="#component1">5.1</a></td><td style="text-align: left;">about entities and activities, and their interrelations</td></tr>
-<tr><td>2</td><td style="text-align: left;">Derivation</td><td>✔</td><td><a href="#section-derivation">2.1.2</a></td><td><a href="#component3">5.2</a></td><td style="text-align: left;">about derivations and its subtypes</td></tr>
-<tr><td>3</td><td style="text-align: left;">Agent and Responsibility</td><td>✔</td><td><a href="#section-agents-attribution-association-delegation">2.1.3</a></td><td><a href="#component2">5.3</a></td><td style="text-align: left;">about agents and concepts ascribing responsibility to them</td></tr>
-<tr><td>4</td><td style="text-align: left;">Bundles</td><td></td><td><a href="#section-provenance-of-provnance">2.2.2</a></td><td><a href="#component4">5.4</a></td><td style="text-align: left;">about bundles, a mechanism to support provenance of provenance</td></tr>
-<tr><td>5</td><td style="text-align: left;">Alternate</td><td></td><td>—</td><td><a href="#component5">5.5</a></td><td style="text-align: left;">about relations linking entities referring the same thing</td></tr>
-<tr><td>6</td><td style="text-align: left;">Collections</td><td></td><td><a href="#section-collections">2.2.3</a></td><td><a href="#component6">5.6</a></td><td style="text-align: left;">about collections</td></tr>
+<tr><td style=" padding: 8px;"><span class="insert">1</span></td><td style="text-align: left;"><span class="insert">Entities and Activities</span></td><td><span class="insert">✔</span></td><td><a href="#section-entity-activity"><span class="insert">2.1.1</span></a></td><td><a href="#component1"><span class="insert">5.1</span></a></td><td style="text-align: left;"><span class="insert">about entities and activities, and their interrelations</span></td></tr>
+<tr><td><span class="insert">2</span></td><td style="text-align: left;"><span class="insert">Derivation</span></td><td><span class="insert">✔</span></td><td><a href="#section-derivation"><span class="insert">2.1.2</span></a></td><td><a href="#component3"><span class="insert">5.2</span></a></td><td style="text-align: left;"><span class="insert">about derivations and its subtypes</span></td></tr>
+<tr><td><span class="insert">3</span></td><td style="text-align: left;"><span class="insert">Agent and Responsibility</span></td><td><span class="insert">✔</span></td><td><a href="#section-agents-attribution-association-delegation"><span class="insert">2.1.3</span></a></td><td><a href="#component2"><span class="insert">5.3</span></a></td><td style="text-align: left;"><span class="insert">about agents and concepts ascribing responsibility </span>to <span class="delete">a concrete example (see </span><span class="delete">Section 3</span><span class="delete">) and</span><span class="insert">them</span></td></tr>
+<tr><td><span class="insert">4</span></td><td style="text-align: left;"><span class="insert">Bundles</span></td><td></td><td><a href="#section-provenance-of-provnance"><span class="insert">2.2.2</span></a></td><td><a href="#component4"><span class="insert">5.4</span></a></td><td style="text-align: left;"><span class="insert">about bundles, a mechanism</span> to <span class="delete">provide examples of concepts (see </span><span class="delete">Section 4</span><span class="delete">),
+we introduce PROV-N, a notation for writing instances of the PROV data model. For full details, the reader is referred to the companion specification [</span><span class="delete">PROV-N</span><span class="delete">].
+PROV-N is a notation aimed at human consumption, with the following characteristics:</span>
+
+<span class="delete">PROV-N expressions adopt a </span><span class="delete">functional notation</span><span class="delete"> consisting
+of a name and a list of arguments in parentheses.</span>
+
+<span class="delete">The interpretation of PROV-N arguments is defined according to their </span><span class="delete">position</span><span class="delete"> in the list of arguments. This convention allows for a compact notation. </span>
+
+<span class="delete">
+PROV-N </span><span class="delete">optional arguments</span><span class="delete"> need not be specified:
+the general rule for optional arguments is that, if none of them are used in the expression, then they are simply omitted, resulting in a simpler expression. However, it may be the case that only some of the optional arguments need to be specified. Because the position of the arguments in the expression matters, in this case an additional marker must be used to indicate that a particular term is not available. The syntactic marker </span><span class="delete">-</span><span class="delete"> is used for this purpose.
+</span>
+
+<span class="delete">Most expressions</span><span class="insert">support provenance of provenance</span></td></tr>
+<span class="delete">include an identifier</span><tr><td><span class="insert">5</span></td><td style="text-align: left;"><span class="insert">Alternate</span></td><td></td><td><span class="insert">—</span></td><td><a href="#component5"><span class="insert">5.5</span></a></td><td style="text-align: left;"><span class="insert">about relations linking entities referring the same thing</span></td></tr>
+<span class="delete">and a set of attribute-value pairs; both are optional unless otherwise specified. By convention, the identifier occurs in the </span><span class="delete">first position</span><span class="delete">, and the the set of attribute-value pairs in the </span><span class="delete">last position</span><span class="delete">.
+Consistent with the convention on arguments, the marker </span><span class="delete">-</span><span class="delete"> can be used when the identifier is not available, or can be omitted altogether with no ambiguity arising.
+</span>
+
+
+
+<span class="delete">
+An activity with identifier </span><span class="delete">a1</span><span class="delete"> and an attribute </span><span class="delete">type</span><span class="delete"> with value </span><span class="delete">createFile</span><span class="delete">.
+</span><span class="delete">activity(a1, [prov:type="createFile"])
+</span><span class="delete">
+Two entities with identifiers </span><span class="delete">e1</span><span class="delete"> and </span><span class="delete">e2</span><span class="delete">.
+</span><span class="delete">entity(e1)
+entity(e2)
+</span><span class="delete">
+The activity </span><span class="delete">a1</span><span class="delete"> used </span><span class="delete">e1</span><span class="delete">, and </span><span class="delete">e2</span><span class="delete"> was generated by </span><span class="delete">a1</span><span class="delete">.
+</span><span class="delete">used(a1,e1)
+wasGeneratedBy(e2,a1)
+</span><span class="delete">
+The same description, but with an explicit identifier </span><span class="delete">u1</span><span class="delete"> for the usage, and the syntactic marker </span><span class="delete">-</span><span class="delete"> to mark the absence of identifier in the generation.
+</span><span class="delete">used(u1,a1,e1)
+wasGeneratedBy(-,e2,a1)
+</span><tr><td><span class="insert">6</span></td><td style="text-align: left;"><span class="insert">Collections</span></td><td></td><td><a href="#section-collections"><span class="insert">2.2.3</span></a></td><td><a href="#component6"><span class="insert">5.6</span></a></td><td style="text-align: left;"><span class="insert">about collections</span></td></tr>
</tbody></table>
</div>
@@ -1712,53 +2020,52 @@
</div>
-<div id="prov-notation" class="section">
-
-<h2><span class="secno">3. </span>The Provenance Notation</h2>
-
-
-<p>To illustrate the application of PROV concepts to a concrete example (see <a href="#prov-dm-example">Section 4</a>) and to provide examples of concepts (see <a href="#data-model-components">Section 5</a>),
-we introduce PROV-N, a notation for writing instances of the PROV data model. For full details, the reader is referred to the companion specification [<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-N">PROV-N</a></cite>].
-PROV-N is a notation aimed at human consumption, with the following characteristics:</p>
+<div id="prov-notation" class="section">
+<h2><span class="secno"><span class="insert">3. </span></span><span class="insert">The Provenance Notation</span></h2>
+
+
+<p><span class="insert">To illustrate the application of PROV concepts to a concrete example (see </span><a href="#prov-dm-example"><span class="insert">Section 4</span></a><span class="insert">) and to provide examples of concepts (see </span><a href="#data-model-components"><span class="insert">Section 5</span></a><span class="insert">),
+we introduce PROV-N, a notation for writing instances of the PROV data model. For full details, the reader is referred to the companion specification [</span><cite><a class="bibref" rel="biblioentry" href="#bib-PROV-N"><span class="insert">PROV-N</span></a></cite><span class="insert">].
+PROV-N is a notation aimed at human consumption, with the following characteristics:</span></p>
<ul>
-<li>PROV-N expressions adopt a <em>functional notation</em> consisting
-of a name and a list of arguments in parentheses.</li>
-
-<li>The interpretation of PROV-N arguments is defined according to their <em>position</em> in the list of arguments. This convention allows for a compact notation. </li>
+<li><span class="insert">PROV-N expressions adopt a </span><em><span class="insert">functional notation</span></em><span class="insert"> consisting
+of a name and a list of arguments in parentheses.</span></li>
+
+<li><span class="insert">The interpretation of PROV-N arguments is defined according to their </span><em><span class="insert">position</span></em><span class="insert"> in the list of arguments. This convention allows for a compact notation. </span></li>
<li><span class="insert">The PROV data model defines </span><em><span class="insert">identifiers</span></em><span class="insert"> as qualified names; in PROV-N, they are expressed as a local name optionally preceded of a prefix and a colon. </span></li>
-<li>
-PROV-N <em>optional arguments</em> need not be specified:
-the general rule for optional arguments is that, if none of them are used in the expression, then they are simply omitted, resulting in a simpler expression. However, it may be the case that only some of the optional arguments need to be specified. Because the position of the arguments in the expression matters, in this case, an additional marker must be used to indicate that a particular term is not available. The syntactic marker '<span class="name">-</span>' is used for this purpose.
-</li>
-
-<li>Most expressions
+<li><span class="insert">
+PROV-N </span><em><span class="insert">optional arguments</span></em><span class="insert"> need not be specified:
+the general rule for optional arguments is that, if none of them are used in the expression, then they are simply omitted, resulting in a simpler expression. However, it may be the case that only some of the optional arguments need to be specified. Because the position of the arguments in the expression matters, in this case, an additional marker must be used to indicate that a particular term is not available. The syntactic marker '</span><span class="name"><span class="insert">-</span></span><span class="insert">' is used for this purpose.
+</span></li>
+
+<li><span class="insert">Most expressions
include an identifier
-and a set of attribute-value pairs; both are optional unless otherwise specified. By convention, the identifier occurs in the <em>first position</em>, and the set of attribute-value pairs in the <em>last position</em>.
-Consistent with the convention on arguments, the marker '<span class="name">-</span>' can be used when the identifier is not available, or can be omitted altogether with no ambiguity arising. To further disambiguate expressions that <span class="delete">contains</span><span class="insert">contain</span> an optional identifier, the optional identifier or marker must be followed by '<span class="name">;</span>'.
-</li>
+and a set of attribute-value pairs; both are optional unless otherwise specified. By convention, the identifier occurs in the </span><em><span class="insert">first position</span></em><span class="insert">, and the set of attribute-value pairs in the </span><em><span class="insert">last position</span></em><span class="insert">.
+Consistent with the convention on arguments, the marker '</span><span class="name"><span class="insert">-</span></span><span class="insert">' can be used when the identifier is not available, or can be omitted altogether with no ambiguity arising. To further disambiguate expressions that contain an optional identifier, the optional identifier or marker must be followed by '</span><span class="name"><span class="insert">;</span></span><span class="insert">'.
+</span></li>
</ul>
-<div class="anexample" id="anexample-prov-n"><div class="anexampleTitle">Example 15<sup><a class="internalDFN" href="#anexample-prov-n"><span class="diamond"> ◊</span></a></sup></div>
-<p>
-An activity with identifier <span class="name">a1</span> and an attribute <span class="name">type</span> with value <span class="name">createFile</span>.
-</p><pre class="codeexample">activity(a1, [prov:type="createFile"])
-</pre>
-Two entities with identifiers <span class="name">e1</span> and <span class="name">e2</span>.
-<pre class="codeexample">entity(e1)
+<div class="anexample" id="anexample-prov-n"><div class="anexampleTitle"><span class="insert">Example 15</span><sup><a class="internalDFN" href="#anexample-prov-n"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
+<p><span class="insert">
+An activity with identifier </span><span class="name"><span class="insert">a1</span></span><span class="insert"> and an attribute </span><span class="name"><span class="insert">type</span></span><span class="insert"> with value </span><span class="name"><span class="insert">createFile</span></span><span class="insert">.
+</span></p><pre class="codeexample"><span class="insert">activity(a1, [prov:type="createFile"])
+</span></pre><span class="insert">
+Two entities with identifiers </span><span class="name"><span class="insert">e1</span></span><span class="insert"> and </span><span class="name"><span class="insert">e2</span></span><span class="insert">.
+</span><pre class="codeexample"><span class="insert">entity(e1)
entity(e2)
-</pre>
-The activity <span class="name">a1</span> used <span class="name">e1</span>, and <span class="name">e2</span> was generated by <span class="name">a1</span>.
-<pre class="codeexample">used(a1,e1)
+</span></pre><span class="insert">
+The activity </span><span class="name"><span class="insert">a1</span></span><span class="insert"> used </span><span class="name"><span class="insert">e1</span></span><span class="insert">, and </span><span class="name"><span class="insert">e2</span></span><span class="insert"> was generated by </span><span class="name"><span class="insert">a1</span></span><span class="insert">.
+</span><pre class="codeexample"><span class="insert">used(a1,e1)
wasGeneratedBy(e2,a1)
-</pre>
-The same descriptions, but with an explicit identifier <span class="name">u1</span> for the usage, and the syntactic marker '<span class="name">-</span>' to mark the absence of identifier in the generation. Both are followed by '<span class="name">;</span>'.
-<pre class="codeexample">used(u1;a1,e1)
+</span></pre><span class="insert">
+The same descriptions, but with an explicit identifier </span><span class="name"><span class="insert">u1</span></span><span class="insert"> for the usage, and the syntactic marker '</span><span class="name"><span class="insert">-</span></span><span class="insert">' to mark the absence of identifier in the generation. Both are followed by '</span><span class="name"><span class="insert">;</span></span><span class="insert">'.
+</span><pre class="codeexample"><span class="insert">used(u1;a1,e1)
wasGeneratedBy(-;e2,a1)
-</pre>
+</span></pre>
</div>
@@ -1767,7 +2074,7 @@
<div id="prov-dm-example" class="section">
-<h2><span class="secno">4. </span>Illustration of PROV-DM by an Example</h2>
+<h2><span class="secno"><span class="delete">3.</span><span class="insert">4.</span> </span>Illustration of PROV-DM by an Example</h2>
<p><a href="#section-prov-overview">Section 2</a> has introduced some provenance concepts, and how they are expressed as types or relations in the PROV data model. The purpose of this section is to put these concepts into practice in order to express the provenance of some document published on the Web.
With this realistic example, PROV concepts are composed together, and a graphical illustration shows a provenance description forming a directed graph, rooted at the entity we want to explain the provenance of, and pointing to the entities, activities, and agents it depended on. This example also shows that, sometimes, multiple provenance descriptions about the same entity can co-exist, which then justifies the need for provenance of provenance.</p>
@@ -1779,7 +2086,7 @@
<div id="section-example-one" class="section">
-<h3><span class="secno">4.1 </span>Example: The Authors View</h3>
+<h3><span class="secno"><span class="delete">3.1 </span><span class="insert">4.1 </span></span><span class="insert">Example: </span>The Authors View</h3>
<p style="font-style:italic; "><b>Description:</b> A document
@@ -1795,13 +2102,13 @@
-<p>We paraphrase some PROV-DM descriptions, express them with the PROV-N notation, and depict them with a graphical illustration (see <a href="#prov-a-document1-top">Figure 2</a>).
-Full details of the provenance record can be found <a href="examples/w3c-publication3.pn">here</a>.</p>
+<p>We paraphrase some PROV-DM descriptions, express them with the PROV-N notation, and <span class="delete">then </span>depict them with a graphical illustration (see <a href="#prov-a-document1-top">Figure <span class="delete">1</span><span class="insert">2</span></a>).
+Full details of the provenance record can be found <a href="examples/w3c-publication1.provn">here</a>.</p>
<div style="text-align: center; ">
<span class="figure" id="prov-a-document1-top">
- <img src="images/w3-publication3.png" alt="Provenance of a Document (1)" style="max-width: 98%; "><br>
-<span class="figcaption" id="prov-a-document1">Figure 2: Provenance of a Document (1)</span>
+ <img src="images/dm/w3c-publication1.png" alt="Provenance of a Document (1)" style="max-width: 98%; "><br>
+<span class="figcaption" data-count="2" id="prov-a-document1"><span class="insert">Figure 2</span><sup><a class="internalDFN" href="#prov-a-document1"><span class="diamond"><span class="insert"> ◊:</span></span></a></sup><span class="insert"> Provenance of a Document (1)</span></span>
</span>
</div>
@@ -1824,8 +2131,8 @@
<li>There were some agents.
-<pre>agent(ex:Paolo, [ prov:type='prov:Person' ])
-agent(ex:Simon, [ prov:type='prov:Person' ])
+<pre>agent(ex:Paolo, [ <span class="delete">prov:type="Person"</span><span class="insert">prov:type='prov:Person'</span> ])
+agent(ex:Simon, [ <span class="delete">prov:type="Person"</span><span class="insert">prov:type='prov:Person'</span> ])
</pre>
</li>
@@ -1848,10 +2155,20 @@
+
+
+<span class="delete">Figure 2: Provenance of a Document (1)</span>
+
+
+
+
+
+
+
</div>
<div id="section-example-two" class="section">
-<h3><span class="secno">4.2 </span>Example: The Process View</h3>
+<h3><span class="secno"><span class="delete">3.2 </span><span class="insert">4.2 </span></span><span class="insert">Example: </span>The Process View</h3>
<p style="font-style:italic; "><b>Description:</b> The World Wide Web
@@ -1865,7 +2182,7 @@
</p>
<p>
-We describe the kind of provenance record that the <a href="http://www.w3.org/Consortium">WWW Consortium</a> could keep for auditors to check that due processes are followed. All entities involved in this example are Web resources, with well-defined URIs (some of which refer archived email messages, available to <acronym title="World Wide Web Consortium">W3C</acronym> Members).</p>
+We describe the kind of provenance record that the <a href="http://www.w3.org/Consortium">WWW Consortium</a> could keep for auditors to check that due processes are followed. All entities involved in this example are Web resources, with <span class="delete">well defined</span><span class="insert">well-defined</span> URIs (some of which refer archived email messages, available to <acronym title="World Wide Web Consortium">W3C</acronym> Members).</p>
<ul>
<li> Two versions of a document were involved: <span class="name"><a href="http://www.w3.org/TR/2011/WD-prov-dm-20111215">tr:WD-prov-dm-20111215</a></span> (second working draft) and <span class="name"><span class="name"><a href="http://www.w3.org/TR/2011/WD-prov-dm-20111018">tr:WD-prov-dm-20111018</a></span></span> (first working draft);</li>
@@ -1882,20 +2199,20 @@
</ul>
<p>
-We now paraphrase some PROV descriptions, and express them with the PROV-N notation, and depict them with a graphical illustration (see <a href="#prov-a-document2-top">Figure 3</a>). Full details of the provenance record can be found <a href="examples/w3c-publication1.pn">here</a>.
+We now paraphrase some PROV descriptions, and express them with the PROV-N notation, and <span class="delete">then </span>depict them with a graphical illustration (see <a href="#prov-a-document2-top">Figure <span class="delete">2</span><span class="insert">3</span></a>). Full details of the provenance record can be found <a href="examples/w3c-publication2.provn">here</a>.
</p><div style="text-align: center;">
<span class="figure" id="prov-a-document2-top">
- <img src="images/w3-publication1.png" alt="Provenance of a Document (2)" style="max-width: 90%; "><br>
-<span class="figcaption" id="prov-a-document2">Figure 3: Provenance of a Document (2)</span>
+ <img src="images/dm/w3c-publication2.png" alt="Provenance of a Document (2)" style="max-width: 90%; "><br>
+<span class="figcaption" data-count="3" id="prov-a-document2"><span class="insert">Figure 3</span><sup><a class="internalDFN" href="#prov-a-document2"><span class="diamond"><span class="insert"> ◊:</span></span></a></sup><span class="insert"> Provenance of a Document (2)</span></span>
</span>
</div>
<ul>
-<li>There was a document, a working draft (<a href="http://www.w3.org/2001/02pd/rec54#WD">rec54:WD</a>), which is an entity so that we can describe its provenance. Similar descriptions exist for all entities.
-<pre>entity(tr:WD-prov-dm-20111215, [ prov:type='rec54:WD' ])
+<li>There was a document, a working draft <span class="delete">on the recommendation track </span>(<span class="delete">process:RecsWD</span><a href="http://www.w3.org/2001/02pd/rec54#WD"><span class="insert">rec54:WD</span></a>), which is an entity so that we can describe its provenance. Similar descriptions exist for all entities.
+<pre>entity(tr:WD-prov-dm-20111215, [ <span class="delete">prov:type="process:RecsWD" %% xsd:QName</span><span class="insert">prov:type='rec54:WD'</span> ])
</pre>
</li>
<li>There was a publication activity.
@@ -1932,6 +2249,22 @@
+
+
+<span class="delete">Figure 3: Provenance of a Document (2)</span>
+
+
+
+
+
+
+
+
+
+
+
+
+
<p> This simple example has shown a variety of PROV concepts, such as Entity, Agent, Activity, Usage, Generation, Derivation, and Association. In this example, it happens that all entities were already Web resources, with readily available URIs, which we used. We note that some of the resources are public, whereas others have restricted access: provenance statements only make use of their identifiers. If identifiers do not pre-exist, e.g. for activities, then they can be generated, for instance <span class="name">ex:act2</span>, occurring in the namespace identified by prefix <span class="name">ex</span>. We note that the URI scheme developed by <acronym title="World Wide Web Consortium">W3C</acronym> is particularly suited for expressing provenance of these documents, since each URI denotes a specific version of a document. It then becomes easy to relate the various versions with PROV-DM relations. We note that an Association is a ternary relation (represented by a multi-edge labeled wasAssociatedWith) from an activity to an agent and a plan.</p>
@@ -1939,14 +2272,15 @@
<div id="section-example-c" class="section">
-<h3><span class="secno">4.3 </span>Example: Attribution of Provenance</h3>
-
-<p>The two previous sections offer two different perspectives on the provenance of a document. PROV allows for multiple sources to provide the provenance of a subject. For users to decide whether they can place their trust in the document, they may want to analyze its provenance, but also determine who the provenance is attributed to, and when it was
+<h3><span class="secno"><span class="delete">3.3 </span><span class="insert">4.3 </span></span><span class="insert">Example: </span>Attribution of Provenance</h3>
+
+<p>The two previous sections <span class="insert">offer two different perspectives on the provenance of a document. PROV allows for multiple sources to </span>provide<span class="delete"> two different perspectives on</span> the provenance of a <span class="delete">document By design, the PROV approach allows for the provenance of a subject</span><span class="insert">subject. For users</span> to <span class="delete">be provided by multiple sources. For users</span><span class="insert">decide whether they can place their trust in the document, they may want</span> to <span class="delete">decide whether they can place their trust in the document, they may want to </span>analyze its provenance, but also determine
+ who the provenance is attributed to, and when it was
generated, etc. In other words, we need to be able to express the provenance of provenance.</p>
-<p>PROV-DM offers a construct to name a bundle of provenance descriptions (full details: <a href="examples/w3c-publication3.pn">ex:author-view</a>). </p>
-
-<pre class="codeexample">bundle ex:author-view
+<p><span class="delete">No new mechanism</span><span class="insert">PROV-DM offers a construct to name a bundle of provenance descriptions (full details: </span><a href="examples/w3c-publication1.provn"><span class="insert">ex:author-view</span></a><span class="insert">). </span></p>
+
+<pre class="codeexample"><span class="insert">bundle ex:author-view
agent(ex:Paolo, [ prov:type='prov:Person' ])
agent(ex:Simon, [ prov:type='prov:Person' ])
@@ -1955,27 +2289,33 @@
...
endBundle
-</pre>
-
-Likewise, the process view can be expressed as a separate named bundle (full details: <a href="examples/w3c-publication1.pn">ex:process-view</a>).
-<pre class="codeexample">bundle ex:process-view
+</span></pre><span class="insert">
+
+Likewise, the process view can be expressed as a separate named bundle (full details: </span><a href="examples/w3c-publication2.provn"><span class="insert">ex:process-view</span></a><span class="insert">).
+</span><pre class="codeexample"><span class="insert">bundle ex:process-view
agent(w3:Consortium, [ prov:type='prov:Organization' ])
...
endBundle
-</pre>
-
-<p>To express their respective provenance, these bundles must be seen as entities, and all PROV constructs are now available to express their provenance. In the example below, <span class="name">ex:author-view</span> is attributed to the agent <span class="name">ex:Simon</span>, whereas <span class="name">ex:process-view</span> to <span class="name">w3:Consortium</span>.
-
-</p><pre class="codeexample">entity(ex:author-view, [prov:type='prov:Bundle' ])
-wasAttributedTo(ex:author-view, ex:Simon)
+</span></pre>
+
+<p><span class="insert">To express their respective provenance, these bundles must be seen as entities, and all PROV constructs are now available to express their provenance. In the example below, </span><span class="name"><span class="insert">ex:author-view</span></span> is <span class="delete">required</span><span class="insert">attributed</span> to <span class="delete">support this requirement.</span><span class="insert">the agent</span> <span class="delete">PROV-DM makes the assumption that provenance statements have been bundled up, and named, by some mechanism outside the scope of PROV-DM. For instance, in this case, provenance statements were put in a file and exposed on the Web, respectively at </span><span class="delete">ex:w3c-publication1.pn</span><span class="delete"> and </span><span class="delete">ex:w3c-publication3.pn</span><span class="delete">. To express their respective provenance, these resources must be seen as entities, and all the constructs of PROV-DM are now available</span><span class="name"><span class="insert">ex:Simon</span></span><span class="insert">, whereas </span><span class="name"><span class="insert">ex:process-view</span></span> to<span class="delete"> characterize their provenance. In the example below, </span><span class="delete">ex:w3c-publication1.pn</span><span class="delete"> is attributed to the agent </span> <span class="name">w3:Consortium<span class="delete">, whereas </span><span class="delete">ex:w3c-publication3.pn</span><span class="delete"> to </span><span class="delete">ex:Simon</span></span>.
+
+</p><span class="delete">entity(ex:w3c-publication1.pn, [prov:type="prov:Account" %% xsd:QName</span><pre class="codeexample"><span class="insert">entity(ex:author-view, [prov:type='prov:Bundle'</span> ])
+<span class="delete">wasAttributedTo(ex:w3c-publication1.pn,</span><span class="insert">wasAttributedTo(ex:author-view, ex:Simon)
entity(ex:process-view, [prov:type='prov:Bundle' ])
-wasAttributedTo(ex:process-view, w3:Consortium)
+wasAttributedTo(ex:process-view,</span> w3:Consortium)
</pre>
+<span class="delete">entity(ex:w3c-publication3.pn, [prov:type="prov:Account" %% xsd:QName ])
+wasAttributedTo(ex:w3c-publication3.pn, ex:Simon)
+</span>
+
+
+
</div>
</div>
@@ -1983,20 +2323,22 @@
<div id="data-model-components" class="section">
-<h2><span class="secno">5. </span>PROV-DM Types and Relations</h2>
-
-<p>Provenance concepts, expressed as PROV-DM types and relations, are organized according to six components that are defined in this section.
-The components and their dependencies are illustrated in <a href="#prov-dm-components">Figure 4</a>. A component that relies on concepts defined in another is displayed above it in the figure. So, for example, component 5 (alternate) depends on concepts defined in component 4 (bundles), itself <span class="delete">dependen</span><span class="insert">dependent</span> on concepts defined in component 1 (entity and activity).
-</p>
+<h2><span class="secno"><span class="delete">4.</span><span class="insert">5.</span> </span>PROV-DM Types and Relations</h2>
+
+<p>Provenance concepts, expressed as PROV-DM types and relations, are <span class="delete">structured</span><span class="insert">organized</span> according to six components that are <span class="delete">introduced</span><span class="insert">defined</span> in this section.
+<span class="delete">Components</span><span class="insert">The components</span> and their dependencies are illustrated in <a href="#prov-dm-components">Figure 4</a>. A component that relies on concepts defined in another <span class="delete">also sits</span><span class="insert">is displayed</span> above it in <span class="delete">this</span><span class="insert">the</span> figure.<span class="delete">
+PROV-DM consists of the following components.</span><span class="insert"> So, for example, component 5 (alternate) depends on concepts defined in component 4 (bundles), itself dependent on concepts defined in component 1 (entity and activity).
+</span></p>
<div id="prov-dm-components-ul">
<ul>
<li><b>Component 1: entities and activities.</b> The first component consists of entities, activities, and concepts linking them, such as generation, usage, start, end. The first component is the only one comprising time-related concepts. </li>
-<li><b>Component 2: derivations.</b> The second component is formed with derivations and derivation subtypes.</li>
-<li><b>Component 3: agents, responsibility, and influence.</b> The third component consists of agents and concepts ascribing responsibility to agents.</li>
-<li><b>Component 4: bundles.</b> The fourth component is concerned with bundles, a mechanism to support provenance of provenance.</li>
-<li><b>Component 5: alternate.</b> The fifth component consists of relations linking entities referring to the same thing. </li>
-<li><b>Component 6: collections.</b> The sixth component is about collections. </li>
+<li><b>Component 2:<span class="delete"> agents and responsibility.</span><span class="delete"> The second component consists of agents and concepts ascribing responsibility to agents.</span>
+<span class="delete">Component 3:</span> derivations.</b> The <span class="delete">third</span><span class="insert">second</span> component is formed with derivations and derivation subtypes.</li>
+<li><b>Component <span class="delete">4: alternate.</span><span class="insert">3: agents, responsibility, and influence.</span></b> The <span class="delete">fourth</span><span class="insert">third</span> component consists of <span class="delete">relations linking entities referring</span><span class="insert">agents and concepts ascribing responsibility</span> to <span class="delete">the same thing. </span><span class="insert">agents.</span></li>
+<li><b>Component <span class="delete">5: collections.</span><span class="insert">4: bundles.</span></b> The <span class="delete">fifth</span><span class="insert">fourth</span> component is <span class="delete">about collections and concepts capturing their transformation, such as insertion and removal. </span><span class="insert">concerned with bundles, a mechanism to support provenance of provenance.</span></li>
+<li><b>Component <span class="insert">5: alternate.</span></b><span class="insert"> The fifth component consists of relations linking entities referring to the same thing. </span></li>
+<li><b><span class="insert">Component </span>6: <span class="delete">annotations.</span><span class="insert">collections.</span></b> The sixth component is <span class="delete">concerned with annotations to</span><span class="insert">about collections. </span></li>
</ul>
</div>
@@ -2004,96 +2346,131 @@
<div style="text-align: center;">
<span class="figure" style="max-width: 95%; ">
-<img usemap="#componentMap" src="images/components-dependencies.png" alt="PROV-DM Components" style="max-width: 90%; ">
+<img usemap="#componentMap" src="images/dm/components-dependencies.png" alt="PROV-DM Components" style="max-width: 90%; ">
<map id="componentMap" name="componentMap">
-<area title="collections" href="#component5" coords="220,0,440,70" alt="collections" shape="rect">
-<area title="alternate" href="#component4" coords="450,0,510,140" alt="alternate" shape="rect">
-<area title="annotations" href="#component6" coords="530,0,590,220" alt="annotations" shape="rect">
-<area title="activities/entities" href="#component1" coords="80,150,510,220" alt="activities/entities" shape="rect">
-<area title="derivations" href="#component3" coords="80,0,210,70" alt="derivations" shape="rect">
-<area title="agents/responsibility" href="#component2" coords="0,0,70,220" alt="agents/responsibility" shape="rect">
-</map><br>
-<span class="figcaption" id="prov-dm-components">Figure 4: PROV-DM Components</span>
+<area title="agents/responsibility" href="#component3" coords="0,0,67,268" alt="agents/responsibility" shape="rect">
+<area title="agents/responsibility" href="#component3" coords="67,0,134,201" alt="agents/responsibility" shape="rect">
+<area title="agents/responsibility" href="#component3" coords="134,0,201,67" alt="agents/responsibility" shape="rect">
+<area title="derivations" href="#component2" coords="201,0,268,201" alt="derivations" shape="rect">
+<area title="derivations" href="#component2" coords="134,67,201,201" alt="derivations" shape="rect">
+<area title="alternate" href="#component5" coords="268,0,335,67" alt="alternate" shape="rect">
+<area title="alternate" href="#component5" coords="335,0,402,201" alt="alternate" shape="rect">
+<area title="collections" href="#component6" coords="402,0,469,201" alt="collections" shape="rect">
+<area title="activities/entities" href="#component1" coords="67,201,469,268" alt="activities/entities" shape="rect">
+<area title="bundles" href="#component4" coords="268,67,402,201" alt="bundles" shape="rect">
+</map>
+<br>
+<span class="figcaption" data-count="4" id="prov-dm-components"><span class="insert">Figure 4</span><sup><a class="internalDFN" href="#prov-dm-components"><span class="diamond"><span class="insert"> ◊:</span></span></a></sup> PROV-DM <span class="delete">instances.</span>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<span class="delete">Figure 4: PROV-DM </span>Components
+</span>
</span>
</div>
<p>
-While not all PROV-DM relations are binary, they all involve two primary elements. Hence, <a href="#relations-at-a-glance">Table 4</a> indexes all relations according to their two primary elements (referred to as subject and object). The table adopts the same color scheme as <a href="#prov-dm-components">Figure 4</a>, allowing components to be readily identified.
+While not all PROV-DM relations are binary, they all involve two primary elements. Hence, <a href="#relations-at-a-glance">Table <span class="delete">3</span><span class="insert">4</span></a> indexes all relations according to their two primary <span class="delete">elements.</span><span class="insert">elements (referred to as subject and object).</span> The table adopts the same color scheme as <a href="#prov-dm-components">Figure 4</a>, allowing components to be readily identified.
Note that for simplicity, this table does not include collection-oriented relations.
-Relation names appearing in bold correspond to the core structures introduced
-in <a href="#core-structures">Section 2.1</a>.</p>
+<span class="insert">Relation names appearing in bold correspond to the core structures introduced
+in </span><a href="#core-structures"><span class="insert">Section 2.1</span></a><span class="insert">.</span></p>
+
+
<div id="relations-at-a-glance-div" style="text-align: center;">
+
<table class="thinborder" style="margin-left: auto; margin-right: auto;">
-<caption id="relations-at-a-glance">Table 4: PROV-DM Relations At a Glance</caption>
-<tbody><tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td colspan="6">Object</td></tr>
-<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td colspan="2">Entity</td><td colspan="2">Activity</td><td colspan="2">Agent</td></tr>
-<tr><td rowspan="3">Subject</td><td>Entity</td><td colspan="2"><div class="component2-color"><a class="essential internalDFN" href="#dfn-wasderivedfrom">WasDerivedFrom</a><br><a href="#concept-revision" class="internalDFN">Revision</a><br><a href="#concept-quotation" class="internalDFN">Quotation</a><br><a href="#dfn-primarysource" class="internalDFN">PrimarySource</a></div><div class="component5-color"><a href="#dfn-alternateof" class="internalDFN">AlternateOf</a><br><a href="#dfn-specializationof" class="internalDFN">SpecializationOf</a><br><a href="#dfn-mentionof" class="internalDFN">MentionOf</a></div></td><td class="component1-color"><a class="essential internalDFN" title="wasGeneratedBy" href="#dfn-wasgeneratedby">WasGeneratedBy</a><br><a title="wasInvalidatedBy" href="#dfn-wasinvalidatedby" class="internalDFN">WasInvalidatedBy</a></td><td class="component1-color" style="font-style: italic; "><a title="role" href="#concept-role" class="internalDFN">R</a><br><a title="time" href="#dfn-time" class="internalDFN">T</a><br><a title="location" href="#concept-location" class="internalDFN">L</a><br></td><td class="component3-color" colspan="2"><a class="essential internalDFN" href="#dfn-wasattributedto">WasAttributedTo</a></td></tr>
-<tr><td>Activity</td><td class="component1-color"><a class="essential internalDFN" href="#dfn-used">Used</a><br><a href="#dfn-wasstartedby" class="internalDFN">WasStartedBy</a><br><a href="#dfn-wasendedby" class="internalDFN">WasEndedBy</a></td><td class="component1-color" style="font-style: italic; "><a title="role" href="#concept-role" class="internalDFN">R</a><br><a title="time" href="#dfn-time" class="internalDFN">T</a><br><a title="location" href="#concept-location" class="internalDFN">L</a><br></td><td colspan="2" class="component1-color"><a class="essential internalDFN" href="#dfn-wasinformedby">WasInformedBy</a></td><td class="component3-color"><a class="essential internalDFN" href="#dfn-wasassociatedwith">WasAssociatedWith</a></td><td class="component3-color" style="font-style: italic; "><a title="role" href="#concept-role" class="internalDFN">R</a><br></td></tr>
-<tr><td>Agent</td><td colspan="2">—</td><td colspan="2">—</td><td class="component3-color" colspan="2"><a class="essential internalDFN" href="#dfn-actedonbehalfof">ActedOnBehalfOf</a></td></tr>
+<caption id="relations-at-a-glance" data-count="4"><span>Table <span class="delete">3: </span><span class="insert">4</span><sup><a class="internalDFN" href="#relations-at-a-glance"><span class="diamond"><span class="insert"> ◊:</span></span></a></sup> </span>PROV-DM Relations At a Glance</caption>
+
+<tbody><tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td colspan="6"><span class="insert">Object</span></td></tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td colspan="2"><span class="insert">Entity</span></td><td colspan="2"><span class="insert">Activity</span></td><td colspan="2"><span class="insert">Agent</span></td></tr>
+<tr><td rowspan="3"><span class="insert">Subject</span></td><td>Entity</td><span class="delete">Activity</span><span class="delete">Agent</span><span class="delete">Note</span>
+<span class="delete">Entity</span><span class="delete">wasDerivedFrom</span><td colspan="2"><div class="component2-color"><a class="essential internalDFN" href="#dfn-wasderivedfrom"><span class="insert">WasDerivedFrom</span></a><br><span class="delete">wasRevisionOf</span><a href="#concept-revision" class="internalDFN"><span class="insert">Revision</span></a><br><span class="delete">wasQuotedFrom</span><a href="#concept-quotation" class="internalDFN"><span class="insert">Quotation</span></a><br><span class="delete">hadOriginalSource</span><a><span class="insert">PrimarySource</span></a></div><div class="component5-color"><a href="#dfn-alternateof" class="internalDFN"><span class="delete">alternateOf</span><span class="insert">AlternateOf</span></a><br><a href="#dfn-specializationof" class="internalDFN"><span class="delete">specializationOf</span><span class="insert">SpecializationOf</span></a><br><a href="#dfn-mentionof" class="internalDFN"><span class="insert">MentionOf</span></a></div></td><td class="component1-color"><span class="delete">wasGeneratedBy</span><a class="essential internalDFN" title="wasGeneratedBy" href="#dfn-wasgeneratedby"><span class="insert">WasGeneratedBy</span></a><br><a title="wasInvalidatedBy" href="#dfn-wasinvalidatedby" class="internalDFN"><span class="delete">wasInvalidatedBy</span><span class="insert">WasInvalidatedBy</span></a></td><span class="delete">wasAttributedTo</span><td class="component1-color" style="font-style: italic; "><a title="role" href="#concept-role" class="internalDFN"><span class="insert">R</span></a><br><a title="time" href="#dfn-time" class="internalDFN"><span class="insert">T</span></a><br><a title="location" href="#concept-location" class="internalDFN"><span class="insert">L</span></a><br></td><span class="delete">hasAnnotation</span><td class="component3-color" colspan="2"><a class="essential internalDFN" href="#dfn-wasattributedto"><span class="insert">WasAttributedTo</span></a></td></tr>
+<tr><td>Activity</td><span class="delete">used</span><td class="component1-color"><a class="essential internalDFN" href="#dfn-used"><span class="insert">Used</span></a><br><a href="#dfn-wasstartedby" class="internalDFN"><span class="delete">wasStartedBy</span><span class="insert">WasStartedBy</span></a><br><a href="#dfn-wasendedby" class="internalDFN"><span class="delete">wasEndedBy</span><span class="insert">WasEndedBy</span></a></td><span class="delete">wasStartedByActivity</span><td class="component1-color" style="font-style: italic; "><a title="role" href="#concept-role" class="internalDFN"><span class="insert">R</span></a><br><span class="delete">wasInformedBy</span><a title="time" href="#dfn-time" class="internalDFN"><span class="insert">T</span></a><br><a title="location" href="#concept-location" class="internalDFN"><span class="insert">L</span></a><br></td><span class="delete">wasAssociatedWith</span><td colspan="2" class="component1-color"><a class="essential internalDFN" href="#dfn-wasinformedby"><span class="insert">WasInformedBy</span></a></td><span class="delete">hasAnnotation</span><td class="component3-color"><a class="essential internalDFN" href="#dfn-wasassociatedwith"><span class="insert">WasAssociatedWith</span></a></td><td class="component3-color" style="font-style: italic; "><a title="role" href="#concept-role" class="internalDFN"><span class="insert">R</span></a><br></td></tr>
+<tr><td>Agent</td><td colspan="2">—</td><td colspan="2">—</td><span class="delete">actedOnBehalfOf</span><span class="delete">hasAnnotation</span><td class="component3-color" colspan="2"><a class="essential internalDFN" href="#dfn-actedonbehalfof"><span class="insert">ActedOnBehalfOf</span></a></td></tr>
+<span class="delete">Note</span><span class="delete">—</span><span class="delete">—</span><span class="delete">—</span><span class="delete">hasAnnotation</span>
</tbody></table>
</div>
-<p>The letters 'R' and 'L' appearing in the right-hand side of some cells of <a href="#relations-at-a-glance">Table 4</a> indicate that attributes
-<a title="role" href="#concept-role" class="internalDFN">prov:role</a> (<a class="section-ref" href="#term-attribute-role"><span>Section 5.7.2.3</span></a>)
+<p><span class="insert">The letters 'R' and 'L' appearing in the right-hand side of some cells of </span><a href="#relations-at-a-glance"><span class="insert">Table 4</span></a><span class="insert"> indicate that attributes
+</span><a title="role" href="#concept-role" class="internalDFN"><span class="insert">prov:role</span></a><span class="insert"> (</span><a class="section-ref" href="#term-attribute-role"><span><span class="insert">Section 5.7.2.3</span></span></a><span class="insert">)
and
-<a title="location" href="#concept-location" class="internalDFN">prov:location</a> (<a class="section-ref" href="#term-attribute-location"><span>Section 5.7.2.2</span></a>)
+</span><a title="location" href="#concept-location" class="internalDFN"><span class="insert">prov:location</span></a><span class="insert"> (</span><a class="section-ref" href="#term-attribute-location"><span><span class="insert">Section 5.7.2.2</span></span></a><span class="insert">)
are permitted for these relations.
-The letter 'T' indicates an <em class="rfc2119" title="optional">optional</em> <a title="time" href="#dfn-time" class="internalDFN">time</a> is also permitted.
-</p>
-
-<p><a href="#prov-dm-types-and-relations">Table 5</a> is a complete index of all the types and relations of PROV-DM, color-coded according to the component they belong to. In the first column, concept names link to their informal definition, whereas, in the second column, representations link to the information used to represent the concept. Concept names appearing in bold are the core structures introduced in <a href="#core-structures">Section 2.1</a>.</p>
+The letter 'T' indicates an </span><em class="rfc2119" title="optional"><span class="insert">optional</span></em> <a title="time" href="#dfn-time" class="internalDFN"><span class="insert">time</span></a><span class="insert"> is also permitted.
+</span></p>
+
+<p><a href="#prov-dm-types-and-relations">Table <span class="delete">4</span><span class="insert">5</span></a> is a complete index of all the types and relations of PROV-DM, color-coded according to the component they belong to. In the first column, concept names link to their informal definition, whereas, in the second column, representations link to the information used to represent the concept.<span class="insert"> Concept names appearing in bold are the core structures introduced in </span><a href="#core-structures"><span class="insert">Section 2.1</span></a><span class="insert">.</span></p>
<div id="prov-dm-types-and-relations-fig" style="text-align: left;">
+
<table class="thinborder" style="margin-left: auto; margin-right: auto;">
-<caption id="prov-dm-types-and-relations">Table 5: PROV-DM Types and Relations</caption>
-<tbody><tr><td><a><b>Type or Relation Name</b></a></td><td><b>Representation in the PROV-N notation</b></td><td><b>Component</b></td></tr>
-<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
-
-<tr class="component1-color"><td class="essential"><a href="#concept-entity" class="internalDFN">Entity</a></td><td><a title="dfn-Entity" class="essential internalDFN" href="#dfn-entity">entity(id, [ attr1=val1, ...])</a></td><td rowspan="8"><a href="#component1">Component 1: Entities/Activities</a></td></tr>
-<tr class="component1-color"><td class="essential"><a href="#concept-activity" class="internalDFN">Activity</a></td><td><a title="dfn-Activity" class="essential internalDFN" href="#dfn-activity">activity(id, st, et, [ attr1=val1, ...])</a></td></tr>
-<tr class="component1-color"><td class="essential"><a href="#concept-generation" class="internalDFN">Generation</a></td><td><a title="WasGeneratedBy" href="#dfn-wasgeneratedby" class="internalDFN"><span class="essential">wasGeneratedBy(</span>id;<span class="essential">e,a</span>,t,attrs<span class="essential">)</span></a></td></tr>
-<tr class="component1-color"><td class="essential"><a href="#concept-usage" class="internalDFN">Usage</a></td><td><a title="used" href="#dfn-used" class="internalDFN"><span class="essential">used(</span>id;<span class="essential">a,e</span>,t,attrs<span class="essential">)</span></a></td></tr>
-<tr class="component1-color"><td class="essential"><a href="#concept-communication" class="internalDFN">Communication</a></td><td><a title="wasInformedBy" href="#dfn-wasinformedby" class="internalDFN"><span class="essential">wasInformedBy(</span>id;<span class="essential">a2,a1</span>,attrs<span class="essential">)</span></a></td></tr>
-<tr class="component1-color"><td><a href="#concept-start" class="internalDFN">Start</a></td><td><a title="wasStartedBy" href="#dfn-wasstartedby" class="internalDFN">wasStartedBy(id;a2,e,a1,t,attrs)</a></td></tr>
-<tr class="component1-color"><td><a href="#concept-end" class="internalDFN">End</a></td><td><a title="wasEndedBy" href="#dfn-wasendedby" class="internalDFN">wasEndedBy(id;a2,e,a1,t,attrs)</a></td></tr>
-<tr class="component1-color"><td><a href="#concept-invalidation" class="internalDFN">Invalidation</a></td><td><a title="wasInvalidatedBy" href="#dfn-wasinvalidatedby" class="internalDFN">wasInvalidatedBy(id;e,a,t,attrs)</a></td></tr>
+<caption id="prov-dm-types-and-relations" data-count="5"><span>Table <span class="delete">4: </span><span class="insert">5</span><sup><a class="internalDFN" href="#prov-dm-types-and-relations"><span class="diamond"><span class="insert"> ◊:</span></span></a></sup> </span>PROV-DM Types and Relations</caption>
+
+<tbody><tr><td><a><b>Type or Relation Name</b></a></td><td><b>Representation in the PROV-N notation</b></td><td><b><span class="insert">Component</span></b></td></tr>
<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
-
-<tr class="component2-color"><td class="essential"><a href="#concept-derivation" class="internalDFN">Derivation</a></td><td><a title="wasDerivedFrom" href="#dfn-wasderivedfrom" class="internalDFN"><span class="essential">wasDerivedFrom(</span>id; <span class="essential">e2, e1</span>, a, g2, u1, attrs<span class="essential">)</span></a></td><td rowspan="5"><a href="#component2">Component 2: Derivations</a></td></tr>
-<tr class="component2-color"><td class="provType"><a href="#concept-revision" class="internalDFN">Revision</a></td><td><a title="Revision" href="#concept-revision" class="internalDFN">... prov:type='prov:Revision' ...</a></td></tr>
-<tr class="component2-color"><td class="provType"><a href="#concept-quotation" class="internalDFN">Quotation</a></td><td><a title="Quotation" href="#concept-quotation" class="internalDFN">... prov:type='prov:Quotation' ...</a></td></tr>
-<tr class="component2-color"><td class="provType"><a href="#concept-primary-source" class="internalDFN">Primary Source</a></td><td><a title="PrimarySource" href="#dfn-primarysource" class="internalDFN">... prov:type='prov:PrimarySource' ...</a></td></tr>
-<tr class="component2-color"><td><a href="#concept-influence" class="internalDFN">Influence</a></td><td><a title="wasInfluencedBy" href="#dfn-wasinfluencedby" class="internalDFN">wasInfluencedBy(id;e2,e1,attrs)</a></td></tr>
+<tr class="component1-color"><td class="essential"><a href="#concept-entity" class="internalDFN">Entity</a></td><td><a title="dfn-Entity" class="essential internalDFN" href="#dfn-entity">entity(id, [ attr1=val1, ...])</a></td><td rowspan="8"><a href="#component1"><span class="insert">Component 1: Entities/Activities</span></a></td></tr>
+<tr class="component1-color"><td class="essential"><a href="#concept-activity" class="internalDFN">Activity</a></td><td><a title="dfn-Activity" class="essential internalDFN" href="#dfn-activity">activity(id, st, et, [ attr1=val1, ...])</a></td></tr>
+<tr class="component1-color"><td class="essential"><a href="#concept-generation" class="internalDFN">Generation</a></td><td><a title="wasGeneratedBy" href="#dfn-wasgeneratedby" class="internalDFN"><span class="delete">wasGeneratedBy(id,e,a,t,attrs)</span><span class="essential"><span class="insert">wasGeneratedBy(</span></span><span class="insert">id;</span><span class="essential"><span class="insert">e,a</span></span><span class="insert">,t,attrs</span><span class="essential"><span class="insert">)</span></span></a></td></tr>
+<tr class="component1-color"><td class="essential"><a href="#concept-usage" class="internalDFN">Usage</a></td><td><a title="used" href="#dfn-used" class="internalDFN"><span class="delete">used(id,a,e,t,attrs)</span><span class="essential"><span class="insert">used(</span></span><span class="insert">id;</span><span class="essential"><span class="insert">a,e</span></span><span class="insert">,t,attrs</span><span class="essential"><span class="insert">)</span></span></a></td></tr>
+<tr class="component1-color"><td class="essential"><a href="#concept-communication" class="internalDFN"><span class="insert">Communication</span></a></td><td><a title="wasInformedBy" href="#dfn-wasinformedby" class="internalDFN"><span class="essential"><span class="insert">wasInformedBy(</span></span><span class="insert">id;</span><span class="essential"><span class="insert">a2,a1</span></span><span class="insert">,attrs</span><span class="essential"><span class="insert">)</span></span></a></td></tr>
+<tr class="component1-color"><td><a href="#concept-start" class="internalDFN">Start</a></td><td><a title="wasStartedBy" href="#dfn-wasstartedby" class="internalDFN"><span class="delete">wasStartedBy(id,a,e,t,attrs)</span><span class="insert">wasStartedBy(id;a2,e,a1,t,attrs)</span></a></td></tr>
+<tr class="component1-color"><td><a href="#concept-end" class="internalDFN">End</a></td><td><a title="wasEndedBy" href="#dfn-wasendedby" class="internalDFN"><span class="delete">wasEndedBy(id,a,e,t,attrs)</span><span class="insert">wasEndedBy(id;a2,e,a1,t,attrs)</span></a></td></tr>
+<tr class="component1-color"><td><a href="#concept-invalidation" class="internalDFN">Invalidation</a></td><td><a title="wasInvalidatedBy" href="#dfn-wasinvalidatedby" class="internalDFN"><span class="delete">wasInvalidatedBy(id,e,a,t,attrs)</span><span class="insert">wasInvalidatedBy(id;e,a,t,attrs)</span></a></td></tr>
+<span class="delete">Communication</span><tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
+
+
+<tr class="component2-color"><td class="essential"><a href="#concept-derivation" class="internalDFN"><span class="insert">Derivation</span></a></td><td><span class="delete">wasInformedBy(id,a2,a1,attrs)</span><a title="wasDerivedFrom" href="#dfn-wasderivedfrom" class="internalDFN"><span class="essential"><span class="insert">wasDerivedFrom(</span></span><span class="insert">id; </span><span class="essential"><span class="insert">e2, e1</span></span><span class="insert">, a, g2, u1, attrs</span><span class="essential"><span class="insert">)</span></span></a></td><td rowspan="4"><a href="#component2"><span class="insert">Component 2: Derivations</span></a></td></tr>
+<span class="delete">Start by Activity</span><tr class="component2-color"><td class="provType"><a href="#concept-revision" class="internalDFN"><span class="insert">Revision</span></a></td><td><span class="delete">wasStartedByActivity(id, a2, a1, attrs)</span><a title="dfn-revision"><span class="insert">... prov:type='prov:Revision' ...</span></a></td></tr>
+<tr class="component2-color"><td class="provType"><a href="#concept-quotation" class="internalDFN"><span class="insert">Quotation</span></a></td><td><a title="dfn-quotation"><span class="insert">... prov:type='prov:Quotation' ...</span></a></td></tr>
+<tr class="component2-color"><td class="provType"><a href="#concept-primary-source" class="internalDFN"><span class="insert">Primary Source</span></a></td><td><a title="dfn-primary-source"><span class="insert">... prov:type='prov:PrimarySource' ...</span></a></td></tr>
<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
-<tr class="component3-color" style="border-collapse: collapse; "><td class="essential"><a href="#concept-agent" class="internalDFN">Agent</a></td><td><a title="dfn-agent" class="essential internalDFN" href="#dfn-agent">agent(id, [ attr1=val1, ...])</a></td><td rowspan="8"><a href="#component3">Component 3: Agents, Responsibility, Influence</a></td></tr>
-<tr class="component3-color"><td class="essential"><a href="#concept-attribution" class="internalDFN">Attribution</a></td><td><a title="wasAttributedTo" href="#dfn-wasattributedto" class="internalDFN"><span class="essential">wasAttributedTo(</span>id;<span class="essential">e,ag</span>,attr<span class="essential">)</span></a></td></tr>
-<tr class="component3-color"><td class="essential"><a href="#concept-activityAssociation" class="internalDFN">Association</a></td><td><a title="wasAssociatedWith" href="#dfn-wasassociatedwith" class="internalDFN"><span class="essential">wasAssociatedWith(</span>id;<span class="essential">a,ag</span>,pl,attrs<span class="essential">)</span></a></td></tr>
-<tr class="component3-color"><td class="essential"><a href="#concept-delegation" class="internalDFN">Delegation</a></td><td><a title="actedOnBehalfOf" href="#dfn-actedonbehalfof" class="internalDFN"><span class="essential">actedOnBehalfOf(</span>id;<span class="essential">ag2,ag1</span>,a,attrs<span class="essential">)</span></a></td></tr>
-<tr class="component3-color"><td class="provType"><a href="#concept-plan" class="internalDFN">Plan</a></td><td><a title="plan" href="#concept-plan" class="internalDFN">... prov:type='prov:Plan' ...</a></td></tr>
-<tr class="component3-color"><td class="provType"><a href="#concept-person" class="internalDFN">Person</a></td><td><a title="person" href="#concept-person" class="internalDFN">... prov:type='prov:Person' ...</a></td></tr>
-<tr class="component3-color"><td class="provType"><a href="#concept-organization" class="internalDFN">Organization</a></td><td><a title="organization" href="#concept-organization" class="internalDFN">... prov:type='prov:Organization' ...</a></td></tr>
-<tr class="component3-color"><td class="provType"><a title="software-agent" href="#concept-software-agent" class="internalDFN">SoftwareAgent</a></td><td><a title="software-agent" href="#concept-software-agent" class="internalDFN">... prov:type='prov:SoftwareAgent' ...</a></td></tr>
+<tr class="component3-color" style="border-collapse: collapse; "><td class="essential"><a href="#concept-agent" class="internalDFN">Agent</a></td><td><a title="dfn-agent" class="essential internalDFN" href="#dfn-agent">agent(id, [ attr1=val1, ...])</a></td><td rowspan="9"><a href="#component3"><span class="insert">Component 3: Agents, Responsibility, Influence</span></a></td></tr>
+<tr class="component3-color"><td class="essential"><a href="#concept-attribution" class="internalDFN">Attribution</a></td><td><a title="wasAttributedTo" href="#dfn-wasattributedto" class="internalDFN"><span class="delete">wasAttributedTo(id,e,ag,attr)</span><span class="essential"><span class="insert">wasAttributedTo(</span></span><span class="insert">id;</span><span class="essential"><span class="insert">e,ag</span></span><span class="insert">,attr</span><span class="essential"><span class="insert">)</span></span></a></td></tr>
+<tr class="component3-color"><td class="essential"><a href="#concept-activityAssociation" class="internalDFN">Association</a></td><td><a title="wasAssociatedWith" href="#dfn-wasassociatedwith" class="internalDFN"><span class="delete">wasAssociatedWith(id,a,ag,pl,attrs)</span><span class="essential"><span class="insert">wasAssociatedWith(</span></span><span class="insert">id;</span><span class="essential"><span class="insert">a,ag</span></span><span class="insert">,pl,attrs</span><span class="essential"><span class="insert">)</span></span></a></td></tr>
+<span class="delete">Responsibility</span><tr class="component3-color"><td class="essential"><a href="#concept-delegation" class="internalDFN"><span class="insert">Delegation</span></a></td><td><a title="actedOnBehalfOf" href="#dfn-actedonbehalfof" class="internalDFN"><span class="delete">actedOnBehalfOf(id,ag2,ag1,a,attrs)</span><span class="essential"><span class="insert">actedOnBehalfOf(</span></span><span class="insert">id;</span><span class="essential"><span class="insert">ag2,ag1</span></span><span class="insert">,a,attrs</span><span class="essential"><span class="insert">)</span></span></a></td></tr>
+<tr class="component3-color"><span class="delete">Derivation</span><td class="provType"><a href="#concept-plan" class="internalDFN"><span class="insert">Plan</span></a></td><td><span class="delete">wasDerivedFrom(id, e2, e1, a, g2, u1, attrs)</span><a title="plan" href="#concept-plan" class="internalDFN"><span class="insert">... prov:type='prov:Plan' ...</span></a></td></tr>
+<tr class="component3-color"><span class="delete">Revision</span><td class="provType"><a href="#concept-person" class="internalDFN"><span class="insert">Person</span></a></td><td><span class="delete">wasRevisionOf(id,e2,e1,ag,attrs)</span><a title="person" href="#concept-person" class="internalDFN"><span class="insert">... prov:type='prov:Person' ...</span></a></td></tr>
+<tr class="component3-color"><span class="delete">Quotation</span><td class="provType"><a href="#concept-organization" class="internalDFN"><span class="insert">Organization</span></a></td><td><span class="delete">wasQuotedFrom(id,e2,e1,ag2,ag1,attrs)</span><a title="organization" href="#concept-organization" class="internalDFN"><span class="insert">... prov:type='prov:Organization' ...</span></a></td></tr>
+<tr class="component3-color"><span class="delete">Original Source</span><td class="provType"><a title="software-agent" href="#concept-software-agent" class="internalDFN"><span class="insert">SoftwareAgent</span></a></td><td><span class="delete">hadOriginalSource(id,e2,e1,attrs)</span><a title="software-agent" href="#concept-software-agent" class="internalDFN"><span class="insert">... prov:type='prov:SoftwareAgent' ...</span></a></td></tr>
+<tr class="component3-color"><td><span class="delete">Trace</span><a href="#concept-influence" class="internalDFN"><span class="insert">Influence</span></a></td><td><span class="delete">tracedTo(id,e2,e1,attrs)</span><a title="wasInfluencedBy" href="#dfn-wasinfluencedby" class="internalDFN"><span class="insert">wasInfluencedBy(id;e2,e1,attrs)</span></a></td></tr>
<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
-<tr class="component4-color"><td><a title="bundle" href="#concept-bundle" class="internalDFN">Bundle constructor</a></td><td><a title="dfn-bundle" href="#dfn-bundle-declaration" class="internalDFN">bundle id description_1 ... description_n endBundle</a></td><td rowspan="2"><a href="#component5">Component 4: Bundles</a></td></tr>
-<tr class="component4-color"><td class="provType"><a title="bundle" href="#concept-bundle" class="internalDFN">Bundle type</a></td><td><a title="bundle" href="#concept-bundle" class="internalDFN">... prov:type='prov:Bundle' ...</a></td></tr>
+
+<tr class="component4-color"><td><a title="bundle" href="#concept-bundle" class="internalDFN"><span class="insert">Bundle constructor</span></a></td><td><a title="dfn-bundle" href="#dfn-bundle-declaration" class="internalDFN"><span class="insert">bundle id description_1 ... description_n endBundle</span></a></td><td rowspan="2"><a href="#component5"><span class="insert">Component 4: Bundles</span></a></td></tr>
+<tr class="component4-color"><td class="provType"><a title="bundle" href="#concept-bundle" class="internalDFN"><span class="insert">Bundle type</span></a></td><td><a title="bundle" href="#concept-bundle" class="internalDFN"><span class="insert">... prov:type='prov:Bundle' ...</span></a></td></tr>
<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
-<tr class="component5-color"><td><a href="#concept-alternate" class="internalDFN">Alternate</a></td><td><a title="alternateOf" href="#dfn-alternateof" class="internalDFN">alternateOf(alt1, alt2)</a></td><td rowspan="3"><a href="#component4">Component 5: Alternate</a></td></tr>
-<tr class="component5-color"><td><a href="#concept-specialization" class="internalDFN">Specialization</a></td><td><a title="specializationOf" href="#dfn-specializationof" class="internalDFN">specializationOf(infra, supra)</a></td></tr>
-<tr class="component5-color"><td><a href="#concept-mention" class="internalDFN">Mention</a></td><td><a title="mentionOf" href="#dfn-mentionof" class="internalDFN">mentionOf(infra, supra,bundle)</a></td></tr>
+<tr class="component5-color"><td><a href="#concept-alternate" class="internalDFN">Alternate</a></td><td><a title="alternateOf" href="#dfn-alternateof" class="internalDFN">alternateOf(alt1, alt2)</a></td><td rowspan="3"><a href="#component4"><span class="insert">Component 5: Alternate</span></a></td></tr>
+<tr class="component5-color"><td><a href="#concept-specialization" class="internalDFN">Specialization</a></td><td><a title="specializationOf" href="#dfn-specializationof" class="internalDFN"><span class="delete">specializationOf(sub, super)</span><span class="insert">specializationOf(infra, supra)</span></a></td></tr>
+<tr class="component5-color"><td><a href="#concept-mention" class="internalDFN"><span class="insert">Mention</span></a></td><td><a title="mentionOf" href="#dfn-mentionof" class="internalDFN"><span class="insert">mentionOf(infra, supra,bundle)</span></a></td></tr>
<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
-<tr class="component6-color"><td class="provType"><a href="#concept-collection" class="internalDFN">Collection</a></td><td><a title="collection" href="#concept-collection" class="internalDFN">... prov:type='prov:Collection' ...</a></td><td rowspan="3"><a href="#component6">Component 6: Collections</a></td></tr>
-<tr class="component6-color"><td class="provType"><a title="empty collection" href="#concept-empty-collection" class="internalDFN">EmptyCollection</a></td><td><a title="empty collection" href="#concept-empty-collection" class="internalDFN">... prov:type='prov:EmptyCollection' ...</a></td></tr>
-<tr class="component6-color"><td><a href="#concept-collection-membership" class="internalDFN">Collection Membership</a></td><td><span class="delete">memberOf(id;</span><a title="hadMembers" href="#dfn-hadmembers" class="internalDFN"><span class="insert">hadMembers(id;</span> c, {e_1, ..., e_n}, cplt, attrs)</a></td></tr>
+<tr class="component6-color"><td class="provType"><a href="#concept-collection" class="internalDFN">Collection</a></td><td><span class="delete">Collection</span><a title="collection" href="#concept-collection" class="internalDFN"><span class="insert">... prov:type='prov:Collection' ...</span></a></td><td rowspan="3"><a href="#component6"><span class="insert">Component 6: Collections</span></a></td></tr>
+<span class="delete">Dictionary</span><tr class="component6-color"><td class="provType"><a title="empty collection" href="#concept-empty-collection" class="internalDFN"><span class="insert">EmptyCollection</span></a></td><td><span class="delete">Dictionary</span><a title="empty collection" href="#concept-empty-collection" class="internalDFN"><span class="insert">... prov:type='prov:EmptyCollection' ...</span></a></td></tr>
+<span class="delete">Insertion</span><span class="delete">derivedByInsertionFrom(id, c2, c1, {(key_1, e_1), ..., (key_n, e_n)}, attrs)</span>
+<span class="delete">Removal</span><span class="delete">derivedByRemovalFrom(id, c2, c1, {key_1, ... key_n}, attrs)</span>
+<tr class="component6-color"><td><a href="#concept-membership" class="internalDFN">Membership</a></td><td><span class="delete">memberOf(c, {(key_1, e_1), ..., (key_n, e_n)})</span>
+<span class="delete">Note</span><span class="delete">note(id, [ attr1=val1, ...])</span>
+<span class="delete">Annotation</span><span class="delete">hasAnnotation(r,n)</span><a title="hadMember" href="#dfn-hadmember" class="internalDFN"><span class="insert">hadMember(c,e)</span></a></td></tr>
</tbody></table>
</div>
@@ -2104,17 +2481,19 @@
<div id="component1" class="section">
-<h3><span class="secno">5.1 </span>Component 1: Entities and Activities</h3>
-
-<p>The first component of PROV-DM is concerned with <a title="entity" href="#concept-entity" class="internalDFN">entities</a> and <a title="activity" href="#concept-activity" class="internalDFN">activities</a>, and their interrelations: <a href="#concept-usage" class="internalDFN">Usage</a>, <a href="#concept-generation" class="internalDFN">Generation</a>, <a href="#concept-start" class="internalDFN">Start</a>, <a href="#concept-end" class="internalDFN">End</a>, <a href="#concept-invalidation" class="internalDFN">Invalidation</a>, and <a href="#concept-communication" class="internalDFN">Communication</a>. <a href="#figure-component1">Figure 5</a> uses UML to depict the first component.
-Core structures are displayed in the yellow area, consisting of two classes (<a href="#concept-entity" class="internalDFN">Entity</a>, <a href="#concept-activity" class="internalDFN">Activity</a>) and three binary associations between them (<a href="#concept-usage" class="internalDFN">Usage</a>, <a href="#concept-generation" class="internalDFN">Generation</a>, and <a href="#concept-communication" class="internalDFN">Communication</a>). The rest of the figure displays extended structures, including UML association classes (see [<cite><a class="bibref" rel="biblioentry" href="#bib-UML">UML</a></cite>], section 7.3.4, p. 42), represented in gray, to express expanded n-ary relations (for <a href="#concept-usage" class="internalDFN">Usage</a>, <a href="#concept-generation" class="internalDFN">Generation</a>, <a href="#concept-invalidation" class="internalDFN">Invalidation</a>, <a href="#concept-start" class="internalDFN">Start</a>, <a href="#concept-end" class="internalDFN">End</a>). The figure also makes explicit associations with <em>time</em> for these concepts (time being marked with the primitive stereotype). When not specified, cardinality is assumed to be 0..*.
+<h3><span class="secno"><span class="delete">4.1</span><span class="insert">5.1</span> </span>Component 1: Entities and Activities</h3>
+
+<p>The first component of PROV-DM is concerned with <a title="entity" href="#concept-entity" class="internalDFN">entities</a> and <a title="activity" href="#concept-activity" class="internalDFN">activities</a>, and their interrelations: <a href="#concept-usage" class="internalDFN">Usage</a>, <a href="#concept-generation" class="internalDFN">Generation</a>, <a href="#concept-start" class="internalDFN">Start</a>, <a href="#concept-end" class="internalDFN">End</a>, <a href="#concept-invalidation" class="internalDFN">Invalidation</a>, <span class="insert">and </span><a href="#concept-communication" class="internalDFN">Communication<span class="delete">, and </span><span class="delete">Start by Activity</span></a>. <a href="#figure-component1">Figure 5</a> uses UML to depict the first <span class="delete">component, with</span><span class="insert">component.
+Core structures are displayed in the yellow area, consisting of</span> two classes <span class="insert">(</span><a href="#concept-entity" class="internalDFN"><span class="insert">Entity</span></a><span class="insert">, </span><a href="#concept-activity" class="internalDFN"><span class="insert">Activity</span></a><span class="insert">) </span>and <span class="insert">three </span>binary associations between <span class="delete">them. Associations are not just binary: indeed, </span><span class="insert">them (</span><a href="#concept-usage" class="internalDFN">Usage</a>, <a href="#concept-generation" class="internalDFN">Generation</a>, <span class="insert">and </span><a href="#concept-communication" class="internalDFN"><span class="insert">Communication</span></a><span class="insert">). The rest of the figure displays extended structures, including UML association classes (see [</span><cite><a class="bibref" rel="biblioentry" href="#bib-UML"><span class="insert">UML</span></a></cite><span class="insert">], section 7.3.4, p. 42), represented in gray, to express expanded n-ary relations (for </span><a href="#concept-usage" class="internalDFN"><span class="insert">Usage</span></a><span class="insert">, </span><a href="#concept-generation" class="internalDFN"><span class="insert">Generation</span></a><span class="insert">, </span><a href="#concept-invalidation" class="internalDFN"><span class="insert">Invalidation</span></a><span class="insert">, </span><a href="#concept-start" class="internalDFN">Start</a>, <a href="#concept-end" class="internalDFN">End</a><span class="insert">). The figure</span> also <span class="delete">include</span><span class="insert">makes explicit associations with</span> <em>time</em> <span class="delete">attributes.</span><span class="insert">for these concepts (time being marked with the primitive stereotype). When not specified, cardinality is assumed to be 0..*.</span>
</p>
<div style="text-align: center;">
+
+
<span class="figure" style="max-width: 95%; ">
-
<img src="uml/component1.png" alt="entities and activities"><br>
-<span class="figcaption" id="figure-component1">Figure 5: Entities and Activities Component Overview</span>
+<span class="figcaption" data-count="5" id="figure-component1">Figure <span class="delete">5:</span><span class="insert">5</span><sup><a class="internalDFN" href="#figure-component1"><span class="diamond"><span class="insert"> ◊:</span></span></a></sup> Entities and Activities Component Overview
+</span>
</span>
</div>
@@ -2124,24 +2503,24 @@
<div id="term-entity" class="section">
-<h4><span class="secno">5.1.1 </span>Entity</h4>
-
-
-<div class="glossary-ref"> An <dfn id="concept-entity" class="internalDFN">entity</dfn><sup><a class="internalDFN" href="#concept-entity"><span class="diamond"> ◊</span></a></sup> is a physical, digital, conceptual, or other kind of thing with some fixed aspects; entities may be real or imaginary. </div>
-
-
-<p></p><div class="attributes" id="attributes-entity">An <dfn title="dfn-Entity" id="dfn-entity" class="internalDFN">entity</dfn><sup><a class="internalDFN" href="#dfn-entity"><span class="diamond"> ◊</span></a></sup><span class="withPn">, written <span class="pnExpression" id="pn-entity">entity(id, [attr1=val1, ...])</span> in PROV-N, </span> has:
+<h4><span class="secno"><span class="delete">4.1.1</span><span class="insert">5.1.1</span> </span>Entity</h4>
+
+
+<div class="glossary-ref"> An <dfn id="concept-entity" class="internalDFN">entity</dfn><sup><a class="internalDFN" href="#concept-entity"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> is a physical, digital, conceptual, or other kind of <span class="delete">thing;</span><span class="insert">thing with some fixed aspects;</span> entities may be real or imaginary. </div>
+
+
+<p></p><div class="attributes" id="attributes-entity">An <dfn title="dfn-Entity" id="dfn-entity" class="internalDFN">entity</dfn><sup><a class="internalDFN" href="#dfn-entity"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="withPn">, written <span class="pnExpression" id="pn-entity">entity(id, [attr1=val1, ...])</span> in PROV-N, </span> has:
<ul>
<li><span class="attribute" id="entity.id">id</span>: an identifier for an entity; </li>
<li><span class="attribute" id="entity.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set of attribute-value pairs ((<span class="name">attr1</span>, <span class="name">val1</span>), ...) representing additional information about this entity.</li>
</ul></div>
-<div class="anexample" id="anexample-entity"><div class="anexampleTitle">Example 16<sup><a class="internalDFN" href="#anexample-entity"><span class="diamond"> ◊</span></a></sup></div>
+<div class="anexample" id="anexample-entity"><div class="anexampleTitle"><span class="insert">Example 16</span><sup><a class="internalDFN" href="#anexample-entity"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
<p>
The following expression</p>
<pre class="codeexample">entity(tr:WD-prov-dm-20111215, [ prov:type="document", ex:version="2" ])
</pre>
-states the existence of an entity, denoted by identifier <span class="name">tr:WD-prov-dm-20111215</span>, with type <span class="name">document</span> and version number <span class="name">2</span>. The attribute <span class="name">ex:version</span> is application specific, whereas the attribute <span class="name">type</span> (see <a href="#term-attribute-type">Section 5.7.4.4</a>) is reserved in the <a title="prov-namespace" href="#dfn-prov-namespace" class="internalDFN">PROV namespace</a>.
+states the existence of an entity, denoted by identifier <span class="name">tr:WD-prov-dm-20111215</span>, with type <span class="name">document</span> and version number <span class="name">2</span>. The attribute <span class="name">ex:version</span> is application specific, whereas the attribute <span class="name">type</span> (see <a href="#term-attribute-type">Section <span class="delete">4.7.4.4</span><span class="insert">5.7.4.4</span></a>) is reserved in the <a title="prov-namespace" href="#dfn-prov-namespace" class="internalDFN">PROV namespace</a>.
</div>
@@ -2152,11 +2531,11 @@
<div id="term-Activity" class="section">
-<h4><span class="secno">5.1.2 </span>Activity</h4>
-
-<div class="glossary-ref"> An <dfn id="concept-activity" class="internalDFN">activity</dfn><sup><a class="internalDFN" href="#concept-activity"><span class="diamond"> ◊</span></a></sup> is something that occurs over a period of time and acts upon or with entities; it may include consuming, processing, transforming, modifying, relocating, using, or generating entities. </div>
-
-<p></p><div class="attributes" id="attributes-activity"> An <dfn title="dfn-Activity" id="dfn-activity" class="internalDFN">activity</dfn><sup><a class="internalDFN" href="#dfn-activity"><span class="diamond"> ◊</span></a></sup><span class="withPn">, written <span class="pnExpression" id="pn-activity">activity(id, st, et, [attr1=val1, ...])</span> in PROV-N,</span> has:
+<h4><span class="secno"><span class="delete">4.1.2</span><span class="insert">5.1.2</span> </span>Activity</h4>
+
+<div class="glossary-ref"> An <dfn id="concept-activity" class="internalDFN">activity</dfn><sup><a class="internalDFN" href="#concept-activity"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> is something that occurs over a period of time and acts upon or with entities; it may include consuming, processing, transforming, modifying, relocating, using, <span class="delete">generating, </span>or <span class="delete">being associated with</span><span class="insert">generating</span> entities. </div>
+
+<p></p><div class="attributes" id="attributes-activity"> An <dfn title="dfn-Activity" id="dfn-activity" class="internalDFN">activity</dfn><sup><a class="internalDFN" href="#dfn-activity"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="withPn">, written <span class="pnExpression" id="pn-activity">activity(id, st, et, [attr1=val1, ...])</span> in PROV-N,</span> has:
<ul>
<li><span class="attribute" id="activity.id">id</span>: an identifier for an activity;</li>
<li><span class="attribute" id="activity.startTime">startTime</span>: an <em class="rfc2119" title="optional">optional</em> time (<span class="name">st</span>) for the start of the activity;</li>
@@ -2164,13 +2543,13 @@
<li><span class="attribute" id="activity.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set of attribute-value pairs ((<span class="name">attr1</span>, <span class="name">val1</span>), ...) representing additional information about this activity.</li>
</ul></div>
-<div class="anexample" id="anexample-activity"><div class="anexampleTitle">Example 17<sup><a class="internalDFN" href="#anexample-activity"><span class="diamond"> ◊</span></a></sup></div>
+<div class="anexample" id="anexample-activity"><div class="anexampleTitle"><span class="insert">Example 17</span><sup><a class="internalDFN" href="#anexample-activity"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
<p>
The following expression</p>
<pre class="codeexample">activity(a1,2011-11-16T16:05:00,2011-11-16T16:06:00,
- [ ex:host="server.example.org", prov:type='ex:edit' ])
+ <span class="delete">[ex:host="server.example.org",prov:type="ex:edit" %% xsd:QName])</span><span class="insert">[ ex:host="server.example.org", prov:type='ex:edit' ])</span>
</pre>
-<p>states the existence of an activity with identifier <span class="name">a1</span>, start time <span class="name">2011-11-16T16:05:00</span>, and end time <span class="name">2011-11-16T16:06:00</span>, running on host <span class="name">server.example.org</span>, and of type <span class="name">edit</span>. The attribute <span class="name">host</span> is application specific (declared in some namespace with prefix <span class="name">ex</span>). The attribute <span class="name">type</span> is a reserved attribute of PROV-DM, allowing for sub-typing to be expressed (see <a href="#term-attribute-type">Section 5.7.4.4</a>).</p>
+<p>states the existence of an activity with identifier <span class="name">a1</span>, start time <span class="name">2011-11-16T16:05:00</span>, and end time <span class="name">2011-11-16T16:06:00</span>, running on host <span class="name">server.example.org</span>, and of type <span class="name">edit</span>. The attribute <span class="name">host</span> is application specific (declared in some namespace with prefix <span class="name">ex</span>). The attribute <span class="name">type</span> is a reserved attribute of PROV-DM, allowing for sub-typing to be expressed (see <a href="#term-attribute-type">Section <span class="delete">4.7.4.4</span><span class="insert">5.7.4.4</span></a>).</p>
</div>
@@ -2186,12 +2565,12 @@
</div>
<div id="term-Generation" class="section">
-<h4><span class="secno">5.1.3 </span>Generation</h4>
-
-<div class="glossary-ref"> <dfn id="concept-generation" class="internalDFN">Generation</dfn><sup><a class="internalDFN" href="#concept-generation"><span class="diamond"> ◊</span></a></sup> is the completion of production of a new entity by an activity. This entity did not exist before generation and becomes available for usage after this generation. </div>
+<h4><span class="secno"><span class="delete">4.1.3</span><span class="insert">5.1.3</span> </span>Generation</h4>
+
+<div class="glossary-ref"> <dfn id="concept-generation" class="internalDFN">Generation</dfn><sup><a class="internalDFN" href="#concept-generation"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> is the completion of production of a new entity by an activity. This entity did not exist before generation and becomes available for usage after this generation. </div>
<p>
-</p><div class="attributes" id="attributes-generation"><dfn title="wasGeneratedBy" id="dfn-wasgeneratedby" class="internalDFN">Generation</dfn><sup><a class="internalDFN" href="#dfn-wasgeneratedby"><span class="diamond"> ◊</span></a></sup><span class="withPn">, written <span class="pnExpression">wasGeneratedBy(id; e, a, t, attrs)</span> in PROV-N,</span> has:
+</p><div class="attributes" id="attributes-generation"><dfn title="wasGeneratedBy" id="dfn-wasgeneratedby" class="internalDFN">Generation</dfn><sup><a class="internalDFN" href="#dfn-wasgeneratedby"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="withPn">, written <span class="pnExpression"><span class="delete">wasGeneratedBy(id,e,a,t,attrs)</span><span class="insert">wasGeneratedBy(id; e, a, t, attrs)</span></span> in PROV-N,</span> has:
<ul>
<li><span class="attribute" id="generation.id">id</span>: an <em class="rfc2119" title="optional">optional</em> identifier for a generation;</li>
<li><span class="attribute" id="generation.entity">entity</span>: an identifier (<span class="name">e</span>) for a created entity; </li>
@@ -2201,17 +2580,17 @@
<li><span class="attribute" id="generation.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set (<span class="name">attrs</span>) of attribute-value pairs representing additional information about this generation.</li>
</ul></div>
-<p>While each of <a href="#generation.id"><span class="attribute">id</span></a>, <a href="#generation.activity"><span class="attribute">activity</span></a>, <a href="#generation.time"><span class="attribute">time</span></a>, and <a href="#generation.attributes"><span class="attribute">attributes</span></a> is <em class="rfc2119" title="optional">optional</em>, at least one of them <em class="rfc2119" title="must">must</em> be present.</p>
-
-
-
-
-
-<div class="anexample" id="anexample-generation1"><div class="anexampleTitle">Example 18<sup><a class="internalDFN" href="#anexample-generation1"><span class="diamond"> ◊</span></a></sup></div>
+<p>While each of <a href="#generation.id"><span class="attribute"><span class="insert">id</span></span></a><span class="insert">, </span><a href="#generation.activity"><span class="attribute">activity</span></a>, <a href="#generation.time"><span class="attribute">time</span></a>, and <a href="#generation.attributes"><span class="attribute">attributes</span></a> is <em class="rfc2119" title="optional">optional</em>, at least one of them <em class="rfc2119" title="must">must</em> be present.</p>
+
+
+
+
+
+<div class="anexample" id="anexample-generation1"><div class="anexampleTitle"><span class="insert">Example 18</span><sup><a class="internalDFN" href="#anexample-generation1"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
<p>
The following expressions</p>
-<pre class="codeexample"> wasGeneratedBy(e1, a1, 2001-10-26T21:32:52, [ ex:port="p1" ])
- wasGeneratedBy(e2, a1, 2001-10-26T10:00:00, [ ex:port="p2" ])
+<pre class="codeexample"> <span class="delete">wasGeneratedBy(e1,a1,</span><span class="insert">wasGeneratedBy(e1, a1,</span> 2001-10-26T21:32:52, <span class="delete">[ex:port="p1"])</span><span class="insert">[ ex:port="p1" ])</span>
+ <span class="delete">wasGeneratedBy(e2,a1,</span><span class="insert">wasGeneratedBy(e2, a1,</span> 2001-10-26T10:00:00, <span class="delete">[ex:port="p2"])</span><span class="insert">[ ex:port="p2" ])</span>
</pre>
<p>state the existence of two generations (with respective times <span class="name">2001-10-26T21:32:52</span> and <span class="name">2001-10-26T10:00:00</span>), at which new entities, identified by <span class="name">e1</span> and <span class="name">e2</span>, are created by an
activity, identified by <span class="name">a1</span>.
@@ -2220,10 +2599,10 @@
</div>
-<div class="anexample" id="anexample-generation2"><div class="anexampleTitle">Example 19<sup><a class="internalDFN" href="#anexample-generation2"><span class="diamond"> ◊</span></a></sup></div>
+<div class="anexample" id="anexample-generation2"><div class="anexampleTitle"><span class="insert">Example 19</span><sup><a class="internalDFN" href="#anexample-generation2"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
<p>
In some cases, we may want to record the time at which an entity was generated without having to specify the activity that generated it. To support this requirement, the activity element in generation is optional. Hence, the following expression indicates the time at which an entity is generated, without naming the activity that did it.</p>
-<pre class="codeexample"> wasGeneratedBy(e, -, 2001-10-26T21:32:52)
+<pre class="codeexample"> <span class="delete">wasGeneratedBy(e,-,2001-10-26T21:32:52)</span><span class="insert">wasGeneratedBy(e, -, 2001-10-26T21:32:52)</span>
</pre>
</div>
@@ -2232,21 +2611,21 @@
<div id="term-Usage" class="section">
-<h4><span class="secno">5.1.4 </span>Usage</h4>
-
-<p><span class="glossary-ref"> <dfn id="concept-usage" class="internalDFN">Usage</dfn><sup><a class="internalDFN" href="#concept-usage"><span class="diamond"> ◊</span></a></sup> is the beginning of utilizing an entity by an activity. Before usage, the activity had not begun to utilize this entity and could not have been affected by the entity. </span><span class="insert"> (Note: This definition is formulated for a given usage; it is permitted for an activity to have used a same entity multiple times.)</span></p>
-
-
-<p></p><div class="attributes" id="attributes-usage"><dfn title="used" id="dfn-used" class="internalDFN">Usage</dfn><sup><a class="internalDFN" href="#dfn-used"><span class="diamond"> ◊</span></a></sup><span class="withPn">, written <span class="pnExpression">used(id; a, e, t, attrs)</span> in PROV-N,</span> has:
+<h4><span class="secno"><span class="delete">4.1.4</span><span class="insert">5.1.4</span> </span>Usage</h4>
+
+<p><span class="glossary-ref"> <dfn id="concept-usage" class="internalDFN">Usage</dfn><sup><a class="internalDFN" href="#concept-usage"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> is the beginning of utilizing an entity by an activity. Before usage, the activity had not begun to utilize this entity and could not have been affected by the entity. </span><span class="insert"> (Note: This definition is formulated for a given usage; it is permitted for an activity to have used a same entity multiple times.)</span></p>
+
+
+<p></p><div class="attributes" id="attributes-usage"><dfn title="used" id="dfn-used" class="internalDFN">Usage</dfn><sup><a class="internalDFN" href="#dfn-used"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="withPn">, written <span class="pnExpression"><span class="delete">used(id,a,e,t,attrs)</span><span class="insert">used(id; a, e, t, attrs)</span></span> in PROV-N,</span> has:
<ul>
<li><span class="attribute" id="usage.id">id</span>: an <em class="rfc2119" title="optional">optional</em> identifier for a usage;</li>
-<li><span class="attribute" id="usage.activity">activity</span>: an identifier (<span class="name">a</span>) for the activity that used an entity;</li>
-<li><span class="attribute" id="usage.entity">entity</span>: an <em class="rfc2119" title="optional">optional</em> identifier (<span class="name">e</span>) for the entity being used;</li>
+<li><span class="attribute" id="usage.activity">activity</span>: an identifier (<span class="name">a</span>) for the <span class="delete">consuming activity;</span><span class="insert">activity that used an entity;</span></li>
+<li><span class="attribute" id="usage.entity">entity</span>: an <em class="rfc2119" title="optional"><span class="insert">optional</span></em> identifier (<span class="name">e</span>) for the<span class="delete"> consumed entity;</span><span class="insert"> entity being used;</span></li>
<li><span class="attribute" id="usage.time">time</span>: an <em class="rfc2119" title="optional">optional</em> "usage time" (<span class="name">t</span>), the time at which the entity started to be used;</li>
<li><span class="attribute" id="usage.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set (<span class="name">attrs</span>) of attribute-value pairs representing additional information about this usage.</li>
</ul></div>
-<p>While each of <a href="#usage.id"><span class="attribute">id</span></a>, <a href="#usage.entity"><span class="attribute">entity</span></a>, <a href="#usage.time"><span class="attribute">time</span></a>, and <a href="#usage.attributes"><span class="attribute">attributes</span></a> is <em class="rfc2119" title="optional">optional</em>, at least one of them <em class="rfc2119" title="must">must</em> be present.</p>
+<p><span class="insert">While each of </span><a href="#usage.id"><span class="attribute"><span class="insert">id</span></span></a><span class="insert">, </span><a href="#usage.entity"><span class="attribute"><span class="insert">entity</span></span></a><span class="insert">, </span><a href="#usage.time"><span class="attribute"><span class="insert">time</span></span></a><span class="insert">, and </span><a href="#usage.attributes"><span class="attribute"><span class="insert">attributes</span></span></a><span class="insert"> is </span><em class="rfc2119" title="optional"><span class="insert">optional</span></em><span class="insert">, at least one of them </span><em class="rfc2119" title="must"><span class="insert">must</span></em><span class="insert"> be present.</span></p>
<p>
A reference to a given entity <em class="rfc2119" title="may">may</em> appear in multiple usages that share
@@ -2254,10 +2633,10 @@
</p>
-<div class="anexample" id="anexample-usage"><div class="anexampleTitle">Example 20<sup><a class="internalDFN" href="#anexample-usage"><span class="diamond"> ◊</span></a></sup></div>
+<div class="anexample" id="anexample-usage"><div class="anexampleTitle"><span class="insert">Example 20</span><sup><a class="internalDFN" href="#anexample-usage"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
<p>The following usages</p>
-<pre class="codeexample"> used(a1, e1, 2011-11-16T16:00:00, [ ex:parameter="p1" ])
- used(a1, e2, 2011-11-16T16:00:01, [ ex:parameter="p2" ])
+<pre class="codeexample"> <span class="delete">used(a1,e1,2011-11-16T16:00:00,[ex:parameter="p1"])</span><span class="insert">used(a1, e1, 2011-11-16T16:00:00, [ ex:parameter="p1" ])</span>
+ <span class="delete">used(a1,e2,2011-11-16T16:00:01,[ex:parameter="p2"])</span><span class="insert">used(a1, e2, 2011-11-16T16:00:01, [ ex:parameter="p2" ])</span>
</pre>
<p>state that the activity identified by <span class="name">a1</span> used two entities identified by <span class="name">e1</span> and <span class="name">e2</span>, at times <span class="name">2011-11-16T16:00:00</span> and <span class="name">2011-11-16T16:00:01</span>, respectively; the first
one was found as the value of parameter <span class="name">p1</span>, whereas the second was found as value of parameter <span class="name">p2</span>. The semantics of <span class="name">parameter</span> is application specific.</p>
@@ -2270,102 +2649,108 @@
</div>
+
+
+
<div id="term-Communication" class="section">
-<h4><span class="secno">5.1.5 </span>Communication</h4>
-
-<div class="glossary-ref"> <dfn id="concept-communication" class="internalDFN">Communication</dfn><sup><a class="internalDFN" href="#concept-communication"><span class="diamond"> ◊</span></a></sup> is the exchange of some unspecified entity by two activities, one activity using some entity generated by the other. </div>
-
-
-<p>A communication implies that activity <span class="name">a2</span> is dependent on another <span class="name">a1</span>, by way of some unspecified entity that is generated by <span class="name">a1</span> and used by <span class="name">a2</span>.</p>
-
-
-
-
-<p></p><div class="attributes" id="attributes-wasInformedBy">
-A <dfn title="wasInformedBy" id="dfn-wasinformedby" class="internalDFN">communication</dfn><sup><a class="internalDFN" href="#dfn-wasinformedby"><span class="diamond"> ◊</span></a></sup><span class="withPn">, written as
-<span class="pnExpression">wasInformedBy(id; a2, a1, attrs)</span> in PROV-N,</span> has:
-<ul>
-<li><span class="attribute" id="communication.id">id</span>: an <em class="rfc2119" title="optional">optional</em> identifier identifying the relation;</li>
-<li><span class="attribute" id="communication.informed">informed</span>: the identifier (<span class="name">a2</span>) of the informed activity;
-</li><li><span class="attribute" id="communication.informant">informant</span>: the identifier (<span class="name">a1</span>) of the informant activity;
-</li><li><span class="attribute" id="communication.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set (<span class="name">attrs</span>) of attribute-value pairs representing additional information about this communication.</li>
+<h4><span class="secno"><span class="delete">4.1.5</span><span class="insert">5.1.5 </span></span><span class="insert">Communication</span></h4>
+
+<div class="glossary-ref"> <dfn id="concept-communication" class="internalDFN"><span class="insert">Communication</span></dfn><sup><a class="internalDFN" href="#concept-communication"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="insert"> is the exchange of some unspecified entity by two activities, one activity using some entity generated by the other. </span></div>
+
+
+<p><span class="insert">A communication implies that activity </span><span class="name"><span class="insert">a2</span></span><span class="insert"> is dependent on another </span><span class="name"><span class="insert">a1</span></span><span class="insert">, by way of some unspecified entity that is generated by </span><span class="name"><span class="insert">a1</span></span><span class="insert"> and used by </span><span class="name"><span class="insert">a2</span></span><span class="insert">.</span></p>
+
+
+
+
+<p></p><div class="attributes" id="attributes-wasInformedBy"><span class="insert">
+A </span><dfn title="wasInformedBy" id="dfn-wasinformedby" class="internalDFN"><span class="insert">communication</span></dfn><sup><a class="internalDFN" href="#dfn-wasinformedby"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="withPn"><span class="insert">, written as
+</span><span class="pnExpression"><span class="insert">wasInformedBy(id; a2, a1, attrs)</span></span><span class="insert"> in PROV-N,</span></span><span class="insert"> has:
+</span><ul>
+<li><span class="attribute" id="communication.id"><span class="insert">id</span></span><span class="insert">: an </span><em class="rfc2119" title="optional"><span class="insert">optional</span></em><span class="insert"> identifier identifying the relation;</span></li>
+<li><span class="attribute" id="communication.informed"><span class="insert">informed</span></span><span class="insert">: the identifier (</span><span class="name"><span class="insert">a2</span></span><span class="insert">) of the informed activity;
+</span></li><li><span class="attribute" id="communication.informant"><span class="insert">informant</span></span><span class="insert">: the identifier (</span><span class="name"><span class="insert">a1</span></span><span class="insert">) of the informant activity;
+</span></li><li><span class="attribute" id="communication.attributes"><span class="insert">attributes</span></span><span class="insert">: an </span><em class="rfc2119" title="optional"><span class="insert">optional</span></em><span class="insert"> set (</span><span class="name"><span class="insert">attrs</span></span><span class="insert">) of attribute-value pairs representing additional information about this communication.</span></li>
</ul>
</div>
-<div class="anexample" id="anexample-communication"><div class="anexampleTitle">Example 21<sup><a class="internalDFN" href="#anexample-communication"><span class="diamond"> ◊</span></a></sup></div>
-<p>
-Consider two activities <span class="name">a1</span> and <span class="name">a2</span>, the former performed by a government agency, and the latter by a driver caught speeding.
-</p><pre class="codeexample">activity(a1, [ prov:type="traffic regulations enforcing" ])
+<div class="anexample" id="anexample-communication"><div class="anexampleTitle"><span class="insert">Example 21</span><sup><a class="internalDFN" href="#anexample-communication"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
+<p><span class="insert">
+Consider two activities </span><span class="name"><span class="insert">a1</span></span><span class="insert"> and </span><span class="name"><span class="insert">a2</span></span><span class="insert">, the former performed by a government agency, and the latter by a driver caught speeding.
+</span></p><pre class="codeexample"><span class="insert">activity(a1, [ prov:type="traffic regulations enforcing" ])
activity(a2, [ prov:type="fine paying, check writing, and mailing" ])
wasInformedBy(a2, a1)
-</pre>
-The last line indicates that some implicit entity was generated by <span class="name">a1</span> and used by <span class="name">a2</span>; this entity may be a traffic ticket that had a notice of fine, amount, and payment mailing details.
-</div>
+</span></pre><span class="insert">
+The last line indicates that some implicit entity was generated by </span><span class="name"><span class="insert">a1</span></span><span class="insert"> and used by </span><span class="name"><span class="insert">a2</span></span><span class="insert">; this entity may be a traffic ticket that had a notice of fine, amount, and payment mailing details.
+</span></div>
</div>
<div id="term-Start" class="section">
-<h4><span class="secno">5.1.6 </span>Start</h4>
-
-<div class="glossary-ref"> <dfn id="concept-start" class="internalDFN">Start</dfn><sup><a class="internalDFN" href="#concept-start"><span class="diamond"> ◊</span></a></sup> is when an activity is deemed to have started. The activity did not exist before its start. Any usage or generation involving an activity follows the activity's start. A start may refer to an entity, known as <dfn id="concept-start-trigger" class="internalDFN">trigger</dfn><sup><a class="internalDFN" href="#concept-start-trigger"><span class="diamond"> ◊</span></a></sup>, that set off the activity, or to an activity, known as <dfn id="concept-start-starter" class="internalDFN">starter</dfn><sup><a class="internalDFN" href="#concept-start-starter"><span class="diamond"> ◊</span></a></sup>, that generated the trigger. </div>
-
-
-<p></p><div class="attributes" id="attributes-start">An activity <dfn title="wasStartedBy" id="dfn-wasstartedby" class="internalDFN">start</dfn><sup><a class="internalDFN" href="#dfn-wasstartedby"><span class="diamond"> ◊</span></a></sup><span class="withPn">, written <span class="pnExpression">wasStartedBy(id; a2, e, a1, t, attrs)</span> in PROV-N,</span> has:
+<h4><span class="secno"><span class="insert">5.1.6</span> </span>Start</h4>
+
+<div class="glossary-ref"> <dfn id="concept-start" class="internalDFN">Start</dfn><sup><a class="internalDFN" href="#concept-start"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> is when an activity is deemed to have started. The activity did not exist before its start. Any usage or generation involving an activity follows the activity's start. A start may refer to an entity, known as <dfn id="concept-start-trigger" class="internalDFN">trigger</dfn><sup><a class="internalDFN" href="#concept-start-trigger"><span class="diamond"><span class="insert"> ◊</span></span></a></sup>, that <span class="delete">initiated the activity.</span><span class="insert">set off the activity, or to an activity, known as </span><dfn id="concept-start-starter" class="internalDFN"><span class="insert">starter</span></dfn><sup><a class="internalDFN" href="#concept-start-starter"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="insert">, that generated the trigger.</span> </div>
+
+
+<p></p><div class="attributes" id="attributes-start">An activity <dfn title="wasStartedBy" id="dfn-wasstartedby" class="internalDFN">start</dfn><sup><a class="internalDFN" href="#dfn-wasstartedby"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="withPn">, written <span class="pnExpression"><span class="delete">wasStartedBy(id,a,e,t,attrs)</span><span class="insert">wasStartedBy(id; a2, e, a1, t, attrs)</span></span> in PROV-N,</span> has:
<ul>
<li><span class="attribute" id="start.id">id</span>: an <em class="rfc2119" title="optional">optional</em> identifier for the activity start;</li>
-<li><span class="attribute" id="start.activity">activity</span>: an identifier (<span class="name">a2</span>) for the started activity;</li>
+<li><span class="attribute" id="start.activity">activity</span>: an identifier (<span class="name"><span class="delete">a</span><span class="insert">a2</span></span>) for the started activity;</li>
<li><span class="attribute" id="start.trigger">trigger</span>: an <em class="rfc2119" title="optional">optional</em> identifier (<span class="name">e</span>) for the entity triggering the activity;</li>
-<li><span class="attribute" id="start.starter">starter</span>: an <em class="rfc2119" title="optional">optional</em> identifier (<span class="name">a1</span>) for the activity that generated the (possibly unspecified) entity (<span class="name">e</span>);</li>
+<li><span class="attribute" id="start.starter"><span class="insert">starter</span></span><span class="insert">: an </span><em class="rfc2119" title="optional"><span class="insert">optional</span></em><span class="insert"> identifier (</span><span class="name"><span class="insert">a1</span></span><span class="insert">) for the activity that generated the (possibly unspecified) entity (</span><span class="name"><span class="insert">e</span></span><span class="insert">);</span></li>
<li><span class="attribute" id="start.time">time</span>: the <em class="rfc2119" title="optional">optional</em> time (<span class="name">t</span>) at which the activity was started; </li>
<li><span class="attribute" id="start.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set (<span class="name">attrs</span>) of attribute-value pairs representing additional information about this activity start.
</li></ul>
</div>
-<p>While each of <a href="#start.id"><span class="attribute">id</span></a>, <a href="#start.trigger"><span class="attribute">trigger</span></a>, <a href="#start.starter"><span class="attribute">starter</span></a>, <a href="#start.time"><span class="attribute">time</span></a>, and <a href="#start.attributes"><span class="attribute">attributes</span></a> is <em class="rfc2119" title="optional">optional</em>, at least one of them <em class="rfc2119" title="must">must</em> be present.</p>
-
-
-<div class="anexample" id="anexample-start1"><div class="anexampleTitle">Example 22<sup><a class="internalDFN" href="#anexample-start1"><span class="diamond"> ◊</span></a></sup></div>
+<p><span class="insert">While each of </span><a href="#start.id"><span class="attribute"><span class="insert">id</span></span></a><span class="insert">, </span><a href="#start.trigger"><span class="attribute"><span class="insert">trigger</span></span></a><span class="insert">, </span><a href="#start.starter"><span class="attribute"><span class="insert">starter</span></span></a><span class="insert">, </span><a href="#start.time"><span class="attribute"><span class="insert">time</span></span></a><span class="insert">, and </span><a href="#start.attributes"><span class="attribute"><span class="insert">attributes</span></span></a><span class="insert"> is </span><em class="rfc2119" title="optional"><span class="insert">optional</span></em><span class="insert">, at least one of them </span><em class="rfc2119" title="must"><span class="insert">must</span></em><span class="insert"> be present.</span></p>
+
+
+<div class="anexample" id="anexample-start1"><div class="anexampleTitle"><span class="insert">Example 22</span><sup><a class="internalDFN" href="#anexample-start1"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
<p>
The following example contains the description of an activity <span class="name">a1</span> (a discussion), which was started at a specific time, and was triggered by an email message <span class="name">e1</span>.</p>
-<pre class="codeexample">entity(e1, [ prov:type="email message"] )
+<pre class="codeexample"><span class="delete">entity(e1,[prov:type="email message"])
+activity(a1,[prov:type="Discuss"])
+wasStartedBy(a1,e1,2011-11-16T16:05:00)</span><span class="insert">entity(e1, [ prov:type="email message"] )
activity(a1, [ prov:type="Discuss" ])
-wasStartedBy(a1, e1, -, 2011-11-16T16:05:00)
+wasStartedBy(a1, e1, -, 2011-11-16T16:05:00)</span>
</pre>
Furthermore, if the message is also an input to the activity, this can be described as follows:
-<pre class="codeexample">used(a1, e1, -)
-</pre>
-<p>Alternatively, one can also describe the activity that generated the email message.</p>
-<pre class="codeexample">activity(a0, [ prov:type="Write" ])
+<pre class="codeexample"><span class="delete">used(a1,e1,-)</span><span class="insert">used(a1, e1, -)
+</span></pre>
+<p><span class="insert">Alternatively, one can also describe the activity that generated the email message.</span></p>
+<pre class="codeexample"><span class="insert">activity(a0, [ prov:type="Write" ])
wasGeneratedBy(e1, a0)
wasStartedBy(a1, e1, a0, 2011-11-16T16:05:00)
-</pre>
-<p>If <span class="name">e1</span> is not known, it would also <span class="delete">have</span><span class="insert">be</span> valid to write:
-</p><pre class="codeexample">wasStartedBy(a1, -, a0, 2011-11-16T16:05:00)
+</span></pre>
+<p><span class="insert">If </span><span class="name"><span class="insert">e1</span></span><span class="insert"> is not known, it would also be valid to write:
+</span></p><pre class="codeexample"><span class="insert">wasStartedBy(a1, -, a0, 2011-11-16T16:05:00)</span>
</pre>
</div>
-<div class="anexample" id="anexample-start2"><div class="anexampleTitle">Example 23<sup><a class="internalDFN" href="#anexample-start2"><span class="diamond"> ◊</span></a></sup></div>
+<div class="anexample" id="anexample-start2"><div class="anexampleTitle"><span class="insert">Example 23</span><sup><a class="internalDFN" href="#anexample-start2"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
<p>
In the following example, a race is started by a bang, and responsibility for this trigger is attributed to an agent
<span class="name">ex:Bob</span>.
</p><pre class="codeexample">activity(ex:foot_race)
-entity(ex:bang)
-wasStartedBy(ex:foot_race, ex:bang, -, 2012-03-09T08:05:08-05:00)
-agent(ex:Bob)
-wasAttributedTo(ex:bang, ex:Bob)
+<span class="delete">wasStartedBy(ex:foot_race,ex:bang,2012-03-09T08:05:08-05:00)
+</span>entity(ex:bang)
+<span class="insert">wasStartedBy(ex:foot_race, ex:bang, -, 2012-03-09T08:05:08-05:00)
+</span>agent(ex:Bob)
+<span class="delete">wasAttributedTo(ex:bang,ex:Bob)</span><span class="insert">wasAttributedTo(ex:bang, ex:Bob)</span>
</pre>
</div>
-<div class="anexample" id="anexample-start3"><div class="anexampleTitle">Example 24<sup><a class="internalDFN" href="#anexample-start3"><span class="diamond"> ◊</span></a></sup></div>
-<p>
+<div class="anexample" id="anexample-start3"><div class="anexampleTitle"><span class="insert">Example 24</span><sup><a class="internalDFN" href="#anexample-start3"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
+<p><span class="insert">
In this example, filling fuel was started as a consequence of
observing low fuel. The trigger entity is unspecified, it could
for instance have been the low fuel warning light, the fuel tank
-indicator needle position, or the engine not running properly.
-
-
-</p><pre class="codeexample" id="anexample-start4">activity(ex:filling-fuel)
+indicator needle position, or the engine not running properly.</span>
+
+
+</p><pre class="codeexample" id="anexample-start4"><span class="insert">activity(ex:filling-fuel)
activity(ex:observing-low-fuel)
agent(ex:driver, [ prov:type='prov:Person' )
@@ -2373,7 +2758,7 @@
wasAssociatedWith(ex:observing-low-fuel, ex:driver)
wasStartedBy(ex:filling-fuel, -, ex:observing-low-fuel, -)
-</pre>
+</span></pre>
</div>
<p>The relations wasStartedBy and used are orthogonal, and thus need to be expressed independently, according to the situation being described.</p>
@@ -2381,46 +2766,51 @@
</div>
<div id="term-End" class="section">
-<h4><span class="secno">5.1.7 </span>End</h4>
-
-<div class="glossary-ref"> <dfn id="concept-end" class="internalDFN">End</dfn><sup><a class="internalDFN" href="#concept-end"><span class="diamond"> ◊</span></a></sup> is when an activity is deemed to have ended. The activity no longer exists after its end. Any usage, generation, or invalidation involving an activity precedes the activity's end. An end may refer to an entity, known as <dfn id="concept-end-trigger" class="internalDFN">trigger</dfn><sup><a class="internalDFN" href="#concept-end-trigger"><span class="diamond"> ◊</span></a></sup>, that terminated the activity, or to an activity, known as <dfn id="concept-end-ender" class="internalDFN">ender</dfn><sup><a class="internalDFN" href="#concept-end-ender"><span class="diamond"> ◊</span></a></sup> that generated the trigger. </div>
-
-
-<p></p><div class="attributes" id="attributes-end">An activity <dfn title="wasEndedBy" id="dfn-wasendedby" class="internalDFN">end</dfn><sup><a class="internalDFN" href="#dfn-wasendedby"><span class="diamond"> ◊</span></a></sup><span class="withAsn">, written <span class="pnExpression">wasEndedBy(id; a2, e, a1, t, attrs)</span> in PROV-N,</span> has:
+<h4><span class="secno"><span class="delete">4.1.6</span><span class="insert">5.1.7</span> </span>End</h4>
+
+<div class="glossary-ref"> <dfn id="concept-end" class="internalDFN">End</dfn><sup><a class="internalDFN" href="#concept-end"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> is when an activity is deemed to have ended. The activity no longer exists after its end. Any usage, generation, or invalidation involving an activity precedes the activity's end. An end may refer to an entity, known as <dfn id="concept-end-trigger" class="internalDFN">trigger</dfn><sup><a class="internalDFN" href="#concept-end-trigger"><span class="diamond"><span class="insert"> ◊</span></span></a></sup>, that terminated the <span class="delete">activity.</span><span class="insert">activity, or to an activity, known as </span><dfn id="concept-end-ender" class="internalDFN"><span class="insert">ender</span></dfn><sup><a class="internalDFN" href="#concept-end-ender"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="insert"> that generated the trigger.</span> </div>
+
+
+<p></p><div class="attributes" id="attributes-end">An activity <dfn title="wasEndedBy" id="dfn-wasendedby" class="internalDFN">end</dfn><sup><a class="internalDFN" href="#dfn-wasendedby"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="withAsn">, written <span class="pnExpression"><span class="delete">wasEndedBy(id,a,e,t,attrs)</span><span class="insert">wasEndedBy(id; a2, e, a1, t, attrs)</span></span> in PROV-N,</span> has:
<ul>
<li><span class="attribute" id="end.id">id</span>: an <em class="rfc2119" title="optional">optional</em> identifier for the activity end;</li>
-<li><span class="attribute" id="end.activity">activity</span>: an identifier (<span class="name">a2</span>) for the ended activity;
+<li><span class="attribute" id="end.activity">activity</span>: an identifier (<span class="name"><span class="delete">a</span><span class="insert">a2</span></span>) for the ended activity;
</li><li><span class="attribute" id="end.trigger">trigger</span>: an <em class="rfc2119" title="optional">optional</em> identifier (<span class="name">e</span>) for the entity triggering the activity ending;
-</li><li><span class="attribute" id="end.ender">ender</span>: an <em class="rfc2119" title="optional">optional</em> identifier (<span class="name">a1</span>) for the activity that generated the (possibly unspecified) entity (<span class="name">e</span>);</li>
+</li><li><span class="attribute" id="end.ender"><span class="insert">ender</span></span><span class="insert">: an </span><em class="rfc2119" title="optional"><span class="insert">optional</span></em><span class="insert"> identifier (</span><span class="name"><span class="insert">a1</span></span><span class="insert">) for the activity that generated the (possibly unspecified) entity (</span><span class="name"><span class="insert">e</span></span><span class="insert">);</span></li>
<li><span class="attribute" id="end.time">time</span>: the <em class="rfc2119" title="optional">optional</em> time (<span class="name">t</span>) at which the activity was ended; </li>
<li><span class="attribute" id="end.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set (<span class="name">attrs</span>) of attribute-value pairs representing additional information about this activity end.
</li></ul>
</div>
-<p>While each of <a href="#end.id"><span class="attribute">id</span></a>, <a href="#end.trigger"><span class="attribute">trigger</span></a>, <a href="#end.ender"><span class="attribute">ender</span></a>, <a href="#end.time"><span class="attribute">time</span></a>, and <a href="#end.attributes"><span class="attribute">attributes</span></a> is <em class="rfc2119" title="optional">optional</em>, at least one of them <em class="rfc2119" title="must">must</em> be present.</p>
-
-
-<div class="anexample" id="anexample-end"><div class="anexampleTitle">Example 25<sup><a class="internalDFN" href="#anexample-end"><span class="diamond"> ◊</span></a></sup></div>
+<p><span class="insert">While each of </span><a href="#end.id"><span class="attribute"><span class="insert">id</span></span></a><span class="insert">, </span><a href="#end.trigger"><span class="attribute"><span class="insert">trigger</span></span></a><span class="insert">, </span><a href="#end.ender"><span class="attribute"><span class="insert">ender</span></span></a><span class="insert">, </span><a href="#end.time"><span class="attribute"><span class="insert">time</span></span></a><span class="insert">, and </span><a href="#end.attributes"><span class="attribute"><span class="insert">attributes</span></span></a><span class="insert"> is </span><em class="rfc2119" title="optional"><span class="insert">optional</span></em><span class="insert">, at least one of them </span><em class="rfc2119" title="must"><span class="insert">must</span></em><span class="insert"> be present.</span></p>
+
+
+<div class="anexample" id="anexample-end"><div class="anexampleTitle"><span class="insert">Example 25</span><sup><a class="internalDFN" href="#anexample-end"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
<p>
The following example is a description of an activity <span class="name">a1</span> (editing) that was ended following an approval document <span class="name">e1</span>.</p>
-<pre class="codeexample">entity(e1, [ prov:type="approval document" ])
+<pre class="codeexample"><span class="delete">entity(e1,[prov:type="approval document"])
+activity(a1,[prov:type="Editing"])
+wasEndedBy(a1,e1)</span><span class="insert">entity(e1, [ prov:type="approval document" ])
activity(a1, [ prov:type="Editing" ])
-wasEndedBy(a1, e1)
+wasEndedBy(a1, e1)</span>
</pre>
</div>
+
+
+
</div>
<div id="term-Invalidation" class="section">
-<h4><span class="secno">5.1.8 </span>Invalidation</h4>
-
-
-<div class="glossary-ref"> <dfn id="concept-invalidation" class="internalDFN">Invalidation</dfn><sup><a class="internalDFN" href="#concept-invalidation"><span class="diamond"> ◊</span></a></sup> is the start of the destruction, cessation, or expiry of an existing entity by an activity. The entity is no longer available for use (or further invalidation) after invalidation. Any generation or usage of an entity precedes its invalidation.</div>
+<h4><span class="secno"><span class="delete">4.1.7</span><span class="insert">5.1.8</span> </span>Invalidation</h4>
+
+
+<div class="glossary-ref"> <dfn id="concept-invalidation" class="internalDFN">Invalidation</dfn><sup><a class="internalDFN" href="#concept-invalidation"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> is the start of the destruction, cessation, or expiry of an existing entity by an activity. The entity is no longer available for use<span class="insert"> (or further invalidation)</span> after invalidation. Any generation or usage of an entity precedes its invalidation.</div>
<p>
-Entities have a duration. Generation marks the beginning of an entity, whereas invalidation marks its end.
-An entity's lifetime can end for different reasons:</p>
+Entities have a duration. Generation marks the beginning of an <span class="delete">entity. </span><span class="insert">entity, whereas invalidation marks its end.
+</span>An entity's lifetime can end for different reasons:</p>
<ul>
<li> an entity was destroyed: e.g. a painting was destroyed by fire; a Web page is taken out of a site;
</li><li> an entity was consumed: e.g. Bob ate all his soup, Alice ran out of gas when driving to work;
@@ -2428,13 +2818,13 @@
</li><li> an entity is time limited: e.g. the BBC news site on April 3rd, 2012;
</li><li> an entity attribute is changing: e.g. the traffic light changed from green to red.
</li></ul>
-<p>In the first two cases, the entity has physically disappeared after its termination: there is no more soup, or painting. In the last three cases, there may be an "offer voucher" that still exists, but it is no longer valid; likewise, on April 4th, the BBC news site still exists but it is not the same entity as BBC news Web site on April 3rd; or the traffic light became red and therefore is regarded as a different entity to the green light.
+<p>In the first two cases, the entity has physically disappeared after its termination: there is no more soup, or painting. In the last <span class="delete">two</span><span class="insert">three</span> cases, there may be an "offer voucher" that still exists, but it is no longer valid; likewise, on April 4th, the BBC news site still exists but it is not the same entity as BBC news Web site on April 3rd; or the traffic light became red and therefore is regarded as a different entity to the green light.
</p>
<p>
-</p><div class="attributes" id="attributes-invalidation"><dfn title="wasInvalidatedBy" id="dfn-wasinvalidatedby" class="internalDFN">Invalidation</dfn><sup><a class="internalDFN" href="#dfn-wasinvalidatedby"><span class="diamond"> ◊</span></a></sup><span class="withPn">, written <span class="pnExpression">wasInvalidatedBy(id; e, a, t, attrs)</span> in PROV-N,</span> has:
+</p><div class="attributes" id="attributes-invalidation"><dfn title="wasInvalidatedBy" id="dfn-wasinvalidatedby" class="internalDFN">Invalidation</dfn><sup><a class="internalDFN" href="#dfn-wasinvalidatedby"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="withPn">, written <span class="pnExpression"><span class="delete">wasInvalidatedBy(id,e,a,t,attrs)</span><span class="insert">wasInvalidatedBy(id; e, a, t, attrs)</span></span> in PROV-N,</span> has:
<ul>
<li><span class="attribute" id="invalidation.id">id</span>: an <em class="rfc2119" title="optional">optional</em> identifier for a invalidation;</li>
<li><span class="attribute" id="invalidation.entity">entity</span>: an identifier for the invalidated entity; </li>
@@ -2444,41 +2834,43 @@
<li><span class="attribute" id="invalidation.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set of attribute-value pairs representing additional information about this invalidation.</li>
</ul></div>
-<p>While each of <a href="#invalidation.id"><span class="attribute">id</span></a>, <a href="#invalidation.activity"><span class="attribute">activity</span></a>, <a href="#invalidation.time"><span class="attribute">time</span></a>, and <a href="#invalidation.attributes"><span class="attribute">attributes</span></a> is <em class="rfc2119" title="optional">optional</em>, at least one of them <em class="rfc2119" title="must">must</em> be present.</p>
-
-
-
-<div class="anexample" id="anexample-invalidation1"><div class="anexampleTitle">Example 26<sup><a class="internalDFN" href="#anexample-invalidation1"><span class="diamond"> ◊</span></a></sup></div>
+<p>While each of <a href="#invalidation.id"><span class="attribute"><span class="insert">id</span></span></a><span class="insert">, </span><a href="#invalidation.activity"><span class="attribute">activity</span></a>, <a href="#invalidation.time"><span class="attribute">time</span></a>, and <a href="#invalidation.attributes"><span class="attribute">attributes</span></a> is <em class="rfc2119" title="optional">optional</em>, at least one of them <em class="rfc2119" title="must">must</em> be present.</p>
+
+
+
+<div class="anexample" id="anexample-invalidation1"><div class="anexampleTitle"><span class="insert">Example 26</span><sup><a class="internalDFN" href="#anexample-invalidation1"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
<p>
-<em>The Painter</em>, a Picasso painting, is known to have been destroyed in a <a href="http://en.wikipedia.org/wiki/Lost_artworks#20th_century">plane accident</a>.
+<em>The <span class="delete">Painter,</span><span class="insert">Painter</span></em><span class="insert">,</span> a Picasso painting, is known to have been destroyed in a <a href="http://en.wikipedia.org/wiki/Lost_artworks#20th_century">plane accident</a>.
</p><pre class="codeexample">entity(ex:The-Painter)
agent(ex:Picasso)
wasAttributedTo(ex:The-Painter, ex:Picasso)
activity(ex:crash)
-wasInvalidatedBy(ex:The-Painter, ex:crash, 1998-09-03T01:31:00, [ ex:circumstances="plane accident" ])
+wasInvalidatedBy(ex:The-Painter, ex:crash, <span class="delete">1998-09-02, [ex:circumstances="plane accident"])</span><span class="insert">1998-09-03T01:31:00, [ ex:circumstances="plane accident" ])</span>
</pre>
</div>
-<div class="anexample" id="anexample-invalidation2"><div class="anexampleTitle">Example 27<sup><a class="internalDFN" href="#anexample-invalidation2"><span class="diamond"> ◊</span></a></sup></div>
+<div class="anexample" id="anexample-invalidation2"><div class="anexampleTitle"><span class="insert">Example 27</span><sup><a class="internalDFN" href="#anexample-invalidation2"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
<p>
The BBC news home page on 2012-04-03 <span class="name">ex:bbcNews2012-04-03</span>
contained a reference to a given news item
<a href="http://www.bbc.co.uk/news/uk-17595024">bbc:news/uk-17595024</a>,
but the BBC news home page on the next day did not.
</p><pre class="codeexample">entity(ex:bbcNews2012-04-03)
-<span class="delete">memberOf(ex:bbcNews2012-04-03,</span><span class="insert">hadMembers(ex:bbcNews2012-04-03,</span> {bbc:news/uk-17595024})
-wasGeneratedBy (ex:bbcNews2012-04-03, -, 2012-04-03T00:00:01)
-wasInvalidatedBy(ex:bbcNews2012-04-03, -, 2012-04-03T23:59:59)
+<span class="delete">memberOf(ex:bbcNews2012-04-03,{("item1", bbc:news/uk-17595024)})</span><span class="insert">hadMember(ex:bbcNews2012-04-03, bbc:news/uk-17595024)</span>
+wasGeneratedBy <span class="delete">(ex:bbcNews2012-04-03,-,2012-04-03T00:00:01)
+wasInvalidatedBy(ex:bbcNews2012-04-03,-,2012-04-03T23:59:59)</span><span class="insert">(ex:bbcNews2012-04-03, -, 2012-04-03T00:00:01)
+wasInvalidatedBy(ex:bbcNews2012-04-03, -, 2012-04-03T23:59:59)</span>
</pre>
-We refer to example
-<a href="#anexample-specialization" class="anexample-ref"><span>Example 42</span></a>
- for further descriptions of the BBC Web site, and to <a href="#term-collection-membership">Section 5.6.2</a> for a description of the relation <span class="delete">memberOf</span><a title="hadMembers" href="#dfn-hadmembers" class="internalDFN"><span class="insert">hadMembers</span></a>.
+
+We refer to example <span class="delete">anexample-specialization</span>
+<a href="#anexample-specialization" class="anexample-ref"><span><span class="insert">Example 42</span></span></a>
+ for further descriptions of the BBC Web site, and to <a href="#term-membership">Section <span class="delete">Membership</span><span class="insert">5.6.2</span></a> for a description of the relation <span class="delete">memberOf</span><a title="hadMember" href="#dfn-hadmember" class="internalDFN"><span class="insert">hadMember</span></a>.
</div>
-<div class="anexample" id="anexample-invalidation3"><div class="anexampleTitle">Example 28<sup><a class="internalDFN" href="#anexample-invalidation3"><span class="diamond"> ◊</span></a></sup></div>
+<div class="anexample" id="anexample-invalidation3"><div class="anexampleTitle"><span class="insert">Example 28</span><sup><a class="internalDFN" href="#anexample-invalidation3"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
<p>
In this example, the "buy one beer, get one free" offer expired at the end of the happy hour.</p>
<pre class="codeexample">entity(buy_one_beer_get_one_free_offer_during_happy_hour)
@@ -2514,74 +2906,75 @@
<div id="component2" class="section">
-<h3><span class="secno">5.2 </span>Component 2: Derivations</h3>
-
-
-
-<p>The <span class="delete">second</span><span class="insert">third</span> component of PROV-DM is concerned with: <a title="derivation" href="#concept-derivation" class="internalDFN">derivations</a> of <a title="entity" href="#concept-entity" class="internalDFN">entities</a> from other entities and derivation subtypes <a href="#concept-revision" class="internalDFN">Revision</a>, <a href="#concept-quotation" class="internalDFN">Quotation</a>, and <a href="#concept-primary-source" class="internalDFN">Primary Source</a>.
- <a href="#figure-component2">Figure 6</a> depicts the third component
+<h3><span class="secno"><span class="insert">5.2 </span></span><span class="insert">Component 2: Derivations</span></h3>
+
+
+
+<p><span class="insert">The third component of PROV-DM is concerned with: </span><a title="derivation" href="#concept-derivation" class="internalDFN"><span class="insert">derivations</span></a><span class="insert"> of </span><a title="entity" href="#concept-entity" class="internalDFN"><span class="insert">entities</span></a><span class="insert"> from other entities and derivation subtypes </span><a href="#concept-revision" class="internalDFN"><span class="insert">Revision</span></a><span class="insert">, </span><a href="#concept-quotation" class="internalDFN"><span class="insert">Quotation</span></a><span class="insert">, and </span><a href="#concept-primary-source" class="internalDFN"><span class="insert">Primary Source</span></a><span class="insert">.
+ </span><a href="#figure-component2"><span class="insert">Figure 6</span></a><span class="insert"> depicts the third component
with PROV core structures in the yellow area, including two classes
-(<a href="#concept-entity" class="internalDFN">Entity</a>, <a href="#concept-activity" class="internalDFN">Activity</a>) and binary association
-(<a href="#concept-derivation" class="internalDFN">Derivation</a>). PROV extended structures are found outside this
+(</span><a href="#concept-entity" class="internalDFN"><span class="insert">Entity</span></a><span class="insert">, </span><a href="#concept-activity" class="internalDFN"><span class="insert">Activity</span></a><span class="insert">) and binary association
+(</span><a href="#concept-derivation" class="internalDFN"><span class="insert">Derivation</span></a><span class="insert">). PROV extended structures are found outside this
area. UML association classes express expanded n-ary relations.
-The subclasses are marked by the UML stereotype "prov:type" to indicate that the corresponding types are valid values for the attribute <a href="#term-attribute-type">prov:type</a>.
-</p>
+The subclasses are marked by the UML stereotype "prov:type" to indicate that the corresponding types are valid values for the attribute </span><a href="#term-attribute-type"><span class="insert">prov:type</span></a><span class="insert">.
+</span></p>
<div style="text-align: center;">
<span class="figure" style="max-width: 95%; ">
-
<img src="uml/component2.png" alt="derivation"><br>
-<span class="figcaption" id="figure-component2">Figure 6: Derivation Component Overview</span>
+<span class="figcaption" data-count="6" id="figure-component2"><span class="insert">Figure 6</span><sup><a class="internalDFN" href="#figure-component2"><span class="diamond"><span class="insert"> ◊:</span></span></a></sup><span class="insert"> Derivation Component Overview</span></span>
</span>
</div>
<div id="term-Derivation" class="section">
-<h4><span class="secno">5.2.1 </span>Derivation</h4>
-
-
-
-
-
-<div class="glossary-ref"> A <dfn id="concept-derivation" class="internalDFN">derivation</dfn><sup><a class="internalDFN" href="#concept-derivation"><span class="diamond"> ◊</span></a></sup> is a transformation of an entity into another, an update of an entity resulting in a new one, or the construction of a new entity based on a pre-existing entity.</div>
-
-
-
-
-<p>According to <a href="#section-prov-overview">Section 2</a>, for an entity to be transformed from, created from, or resulting from an update to another, there must be some
+<h4><span class="secno"><span class="delete">4.1.8 </span><span class="delete">Communication</span><span class="insert">5.2.1 </span></span><span class="insert">Derivation</span></h4>
+
+
+
+
+
+
+
+<div class="glossary-ref"> <span class="delete">Communication</span><span class="insert">A </span><dfn id="concept-derivation" class="internalDFN"><span class="insert">derivation</span></dfn> <sup><a class="internalDFN" href="#concept-derivation"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> is <span class="delete">the exchange</span><span class="insert">a transformation</span> of an entity <span class="delete">by</span><span class="insert">into another, an update of an entity resulting in a new one, or the construction of a new entity based on a pre-existing entity.</span></div>
+
+
+
+
+<p><span class="insert">According to </span><a href="#section-prov-overview"><span class="insert">Section 2</span></a><span class="insert">, for an entity to be transformed from, created from, or resulting from an update to another, there must be some
underpinning activities performing the necessary actions resulting in such a derivation.
-A derivation can be described at various levels of precision. In its simplest form, derivation relates two entities. Optionally, attributes can be added to represent further information about the derivation. If the derivation is the result of a single known activity, then this activity can also be optionally expressed. To provide a completely accurate description of the derivation, the generation and usage of the generated and used entities, respectively, can be provided, so as to make the derivation path, through usage, activity, and generation, explicit. Optional information such as activity, generation, and usage can be linked to derivations to aid analysis of provenance and to facilitate provenance-based reproducibility. </p>
-
-
-<p></p><div class="attributes" id="attributes-derivation">A <dfn title="wasDerivedFrom" id="dfn-wasderivedfrom" class="internalDFN">derivation</dfn><sup><a class="internalDFN" href="#dfn-wasderivedfrom"><span class="diamond"> ◊</span></a></sup><span class="withPn">, written <span class="pnExpression" id="pn-wasDerivedFrom">wasDerivedFrom(id; e2, e1, a, g2, u1, attrs)</span> in PROV-N,</span> has:
-<ul>
-<li><span class="attribute" id="derivation.id">id</span>: an <em class="rfc2119" title="optional">optional</em> identifier for a derivation;</li>
-<li><span class="attribute" id="derivation.generatedEntity">generatedEntity</span>: the identifier (<span class="name">e2</span>) of the entity generated by the derivation;</li>
-<li><span class="attribute" id="derivation.usedEntity">usedEntity</span>: the identifier (<span class="name">e1</span>) of the entity used by the derivation;</li>
-<li><span class="attribute" id="derivation.activity">activity</span>: an <em class="rfc2119" title="optional">optional</em> identifier (<span class="name">a</span>) for the activity using and generating the above entities;</li>
-<li><span class="attribute" id="derivation.generation">generation</span>: an <em class="rfc2119" title="optional">optional</em> identifier (<span class="name">g2</span>) for the generation involving the generated entity (<span class="name">e2</span>) and activity;</li>
-<li><span class="attribute" id="derivation.usage">usage</span>: an <em class="rfc2119" title="optional">optional</em> identifier (<span class="name">u1</span>) for the usage involving the used entity (<span class="name">e1</span>) and activity;</li>
-<li><span class="attribute" id="derivation.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set (<span class="name">attrs</span>) of attribute-value pairs representing additional information about this derivation.</li>
+A derivation can be described at various levels of precision. In its simplest form, derivation relates</span> two <span class="delete">activities, one</span><span class="insert">entities. Optionally, attributes can be added to represent further information about the derivation. If the derivation is the result of a single known activity, then this</span> activity <span class="delete">using the entity</span><span class="insert">can also be optionally expressed. To provide a completely accurate description of the derivation, the generation and usage of the</span> generated <span class="delete">by the other. </span><span class="insert">and used entities, respectively, can be provided, so as to make the derivation path, through usage, activity, and generation, explicit. Optional information such as activity, generation, and usage can be linked to derivations to aid analysis of provenance and to facilitate provenance-based reproducibility. </span></p>
+
+
+<p></p><div class="attributes" id="attributes-derivation">A <span class="delete">communication implies</span><dfn title="wasDerivedFrom" id="dfn-wasderivedfrom" class="internalDFN"><span class="insert">derivation</span></dfn><sup><a class="internalDFN" href="#dfn-wasderivedfrom"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="withPn"><span class="insert">, written </span><span class="pnExpression" id="pn-wasDerivedFrom"><span class="insert">wasDerivedFrom(id; e2, e1, a, g2, u1, attrs)</span></span><span class="insert"> in PROV-N,</span></span><span class="insert"> has:
+</span><ul>
+<li><span class="attribute" id="derivation.id"><span class="insert">id</span></span><span class="insert">: an </span><em class="rfc2119" title="optional"><span class="insert">optional</span></em><span class="insert"> identifier for a derivation;</span></li>
+<li><span class="attribute" id="derivation.generatedEntity"><span class="insert">generatedEntity</span></span><span class="insert">: the identifier (</span><span class="name"><span class="insert">e2</span></span><span class="insert">) of the entity generated by the derivation;</span></li>
+<li><span class="attribute" id="derivation.usedEntity"><span class="insert">usedEntity</span></span><span class="insert">: the identifier (</span><span class="name"><span class="insert">e1</span></span><span class="insert">) of the entity used by the derivation;</span></li>
+<li><span class="attribute" id="derivation.activity"><span class="insert">activity</span></span><span class="insert">: an </span><em class="rfc2119" title="optional"><span class="insert">optional</span></em><span class="insert"> identifier (</span><span class="name"><span class="insert">a</span></span><span class="insert">) for the activity using and generating the above entities;</span></li>
+<li><span class="attribute" id="derivation.generation"><span class="insert">generation</span></span><span class="insert">: an </span><em class="rfc2119" title="optional"><span class="insert">optional</span></em><span class="insert"> identifier (</span><span class="name"><span class="insert">g2</span></span><span class="insert">) for the generation involving the generated entity (</span><span class="name"><span class="insert">e2</span></span><span class="insert">) and activity;</span></li>
+<li><span class="attribute" id="derivation.usage"><span class="insert">usage</span></span><span class="insert">: an </span><em class="rfc2119" title="optional"><span class="insert">optional</span></em><span class="insert"> identifier (</span><span class="name"><span class="insert">u1</span></span><span class="insert">) for the usage involving the used entity (</span><span class="name"><span class="insert">e1</span></span><span class="insert">) and activity;</span></li>
+<li><span class="attribute" id="derivation.attributes"><span class="insert">attributes</span></span><span class="insert">: an </span><em class="rfc2119" title="optional"><span class="insert">optional</span></em><span class="insert"> set (</span><span class="name"><span class="insert">attrs</span></span><span class="insert">) of attribute-value pairs representing additional information about this derivation.</span></li>
</ul>
</div>
-<div class="anexample" id="anexample-derivation"><div class="anexampleTitle">Example 29<sup><a class="internalDFN" href="#anexample-derivation"><span class="diamond"> ◊</span></a></sup></div>
-<p>The following descriptions are about derivations between <span class="name">e2</span> and <span class="name">e1</span>, but no information is provided as to the identity of the activity (and usage and generation) underpinning the derivation. In the second line, a type attribute is also provided.</p>
-<pre class="codeexample">wasDerivedFrom(e2, e1)
+<div class="anexample" id="anexample-derivation"><div class="anexampleTitle"><span class="insert">Example 29</span><sup><a class="internalDFN" href="#anexample-derivation"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
+<p><span class="insert">The following descriptions are about derivations between </span><span class="name"><span class="insert">e2</span></span><span class="insert"> and </span><span class="name"><span class="insert">e1</span></span><span class="insert">, but no information is provided as to the identity of the activity (and usage and generation) underpinning the derivation. In the second line, a type attribute is also provided.</span></p>
+<pre class="codeexample"><span class="insert">wasDerivedFrom(e2, e1)
wasDerivedFrom(e2, e1, [ prov:type="physical transform" ])
-</pre>
-<p>The following description expresses that activity <span class="name">a</span>,
-using the entity <span class="name">e1</span> according to usage <span class="name">u1</span>,
+</span></pre>
+<p><span class="insert">The following description expresses</span> that activity <span class="name"><span class="delete">a2</span><span class="insert">a</span></span><span class="insert">,
+using the entity </span><span class="name"><span class="insert">e1</span></span><span class="insert"> according to usage </span><span class="name"><span class="insert">u1</span></span><span class="insert">,
derived the
-entity <span class="name">e2</span> and generated it according to generation
- <span class="name">g2</span>. It is followed by descriptions for generation <span class="name">g2</span> and usage <span class="name">u1</span>.</p>
-<pre class="codeexample">wasDerivedFrom(e2, e1, a, g2, u1)
+entity </span><span class="name"><span class="insert">e2</span></span><span class="insert"> and generated it according to generation
+ </span><span class="name"><span class="insert">g2</span></span><span class="insert">. It</span> is <span class="delete">dependent on another</span><span class="insert">followed by descriptions for generation</span> <span class="name"><span class="delete">a1</span><span class="delete">, by way of some unspecified entity that is generated by</span><span class="insert">g2</span></span><span class="insert"> and usage</span> <span class="name"><span class="delete">a1</span><span class="delete"> and used by </span><span class="delete">a2</span><span class="insert">u1</span></span>.</p>
+<pre class="codeexample"><span class="insert">wasDerivedFrom(e2, e1, a, g2, u1)
wasGeneratedBy(g2; e2, a, -)
used(u1; a, e1, -)
-</pre>
-<p>With such a comprehensive description of derivation, a program that analyzes provenance can identify the activity underpinning the derivation, it can identify how the original entity <span class="name">e1</span> was used by the activity (e.g. for instance, which argument it was passed as, if the activity is the result of a function invocation), and which output the derived entity <span class="name">e2</span> was obtained from (say, for a function returning multiple results).</p>
+</span></pre>
+<p><span class="insert">With such a comprehensive description of derivation, a program that analyzes provenance can identify the activity underpinning the derivation, it can identify how the original entity </span><span class="name"><span class="insert">e1</span></span><span class="insert"> was used by the activity (e.g. for instance, which argument it was passed as, if the activity is the result of a function invocation), and which output the derived entity </span><span class="name"><span class="insert">e2</span></span><span class="insert"> was obtained from (say, for a function returning multiple results).</span></p>
</div>
@@ -2590,66 +2983,105 @@
</div>
<div id="term-revision" class="section">
-<h4><span class="secno">5.2.2 </span>Revision</h4>
-
-<p><span class="glossary-ref"> A <dfn id="concept-revision" class="internalDFN">revision</dfn><sup><a class="internalDFN" href="#concept-revision"><span class="diamond"> ◊</span></a></sup> is a derivation for which the resulting entity is a revised version of some original. </span></p>
-
-
-<p>
+<h4><span class="secno"><span class="insert">5.2.2 </span></span><span class="insert">Revision</span></h4>
+
+<p><span class="glossary-ref"><span class="insert"> A </span><dfn id="concept-revision" class="internalDFN"><span class="insert">revision</span></dfn><sup><a class="internalDFN" href="#concept-revision"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="insert"> is a derivation for which the resulting entity is a revised version of some original. </span></span></p><span class="delete">
+A </span><span class="delete">communication</span>
+
+
+<p><span class="insert">
The implication here is that
the resulting entity contains substantial content from the
original.
-Revision is a particular case of <a href="#concept-derivation" class="internalDFN">derivation</a> of an entity into its revised version.
+Revision is a particular case of </span><a href="#concept-derivation" class="internalDFN"><span class="insert">derivation</span></a><span class="insert"> of an entity into its revised version.
The type is of a revision derivation is denoted by:
-<dfn title="Revision" id="dfn-revision" class="internalDFN"><span class="name">prov:Revision</span></dfn><sup><a class="internalDFN" href="#dfn-revision"><span class="diamond"> ◊</span></a></sup>.
-</p>
-
-
-
-
-<div class="anexample" id="anexample-revision"><div class="anexampleTitle">Example 30<sup><a class="internalDFN" href="#anexample-revision"><span class="diamond"> ◊</span></a></sup></div>
-<p>
-Revisiting the example of <a href="#section-example-two">Section 4.2</a>,
+</span><dfn title="dfn-prov:revision" id="dfn-prov:revision" class="internalDFN"><span class="name"><span class="insert">prov:Revision</span></span></dfn><sup><a class="internalDFN" href="#dfn-prov:revision"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="insert">.
+</span></p>
+
+
+
+
+<div class="anexample" id="anexample-revision"><div class="anexampleTitle"><span class="insert">Example 30</span><sup><a class="internalDFN" href="#anexample-revision"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
+<p><span class="insert">
+Revisiting the example of </span><a href="#section-example-two"><span class="insert">Section 4.2</span></a>,<span class="delete"> written as
+</span><span class="delete">wasInformedBy(id,a2,a1,attrs)</span><span class="delete"> in PROV-N,</span><span class="delete"> has:
+</span>
+<span class="delete">id</span><span class="delete">:</span><span class="insert">
we can now state that the report
- <span class="name">tr:WD-prov-dm-20111215</span> was a revision of
- the report <span class="name">tr:WD-prov-dm-20111018</span>.
-</p><pre class="codeexample">entity(tr:WD-prov-dm-20111215, [ prov:type='rec54:WD' ])
-entity(tr:WD-prov-dm-20111018, [ prov:type='rec54:WD' ])
+ </span><span class="name"><span class="insert">tr:WD-prov-dm-20111215</span></span><span class="insert"> was a revision of
+ the report </span><span class="name"><span class="insert">tr:WD-prov-dm-20111018</span></span><span class="insert">.
+</span></p><pre class="codeexample"><span class="insert">entity(tr:WD-prov-dm-20111215, [ prov:type='rec54:WD'</span> <span class="delete">an </span><span class="delete">optional</span><span class="delete"> identifier</span><span class="insert">])
+entity(tr:WD-prov-dm-20111018, [ prov:type='rec54:WD'</span> <span class="delete">identifying the relation;</span>
+<span class="delete">informed</span><span class="delete">: the identifier (</span><span class="delete">a2</span><span class="delete">) of the informed activity;
+</span><span class="delete">informant</span><span class="delete">: the identifier (</span><span class="delete">a1</span><span class="delete">) of the informant activity;
+</span><span class="delete">attributes</span><span class="delete">: an </span><span class="delete">optional</span><span class="delete"> set (</span><span class="delete">attrs</span><span class="delete">) of attribute-value pairs representing additional information about this communication.</span>
+<span class="insert">])
wasDerivedFrom(tr:WD-prov-dm-20111215,
tr:WD-prov-dm-20111018,
[ prov:type='prov:Revision' ])
-</pre>
+</span></pre>
</div>
-</div>
+
+<span class="delete">
+Consider two activities </span><span class="delete">a1</span><span class="delete"> and </span><span class="delete">a2</span><span class="delete">, the former performed by a government agency, and the latter by a driver caught speeding.
+</span><span class="delete">activity(a1, [prov:type="traffic regulations enforcing"])
+activity(a2, [prov:type="fine paying, check writing, and mailing"])
+wasInformedBy(a2,a1)
+</span><span class="delete">
+The last line indicates that some implicit entity was generated by </span><span class="delete">a1</span><span class="delete"> and used by </span><span class="delete">a2</span><span class="delete">; this entity may be a traffic ticket that had a notice of fine, amount, and payment mailing details.
+</span></div>
+
+
+
<div id="term-quotation" class="section">
-<h4><span class="secno">5.2.3 </span>Quotation</h4>
+<h4><span class="secno"><span class="delete">4.1.9 </span><span class="delete">Start by Activity</span><span class="insert">5.2.3 </span></span><span class="insert">Quotation</span></h4>
<p>
-<span class="glossary-ref"> A <dfn id="concept-quotation" class="internalDFN">quotation</dfn><sup><a class="internalDFN" href="#concept-quotation"><span class="diamond"> ◊</span></a></sup> is the repeat of (some or all of) an entity, such as text or image, by someone who may or may not be its original author. </span>
-</p>
-
-<p>Quotation
- is a particular case of <a href="#concept-derivation" class="internalDFN">derivation</a> in which an entity is derived from an original entity by copying, or "quoting", some or all of it.
-The type is of a quotation derivation is denoted by:
-<dfn title="Quotation" id="dfn-quotation" class="internalDFN"><span class="name">prov:Quotation</span></dfn><sup><a class="internalDFN" href="#dfn-quotation"><span class="diamond"> ◊</span></a></sup>.
+<span class="glossary-ref"> <span class="delete">Start</span><span class="insert">A </span><dfn id="concept-quotation" class="internalDFN"><span class="insert">quotation</span></dfn><sup><a class="internalDFN" href="#concept-quotation"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="insert"> is the repeat of (some or all of) an entity, such as text or image,</span> by <span class="delete">Activity</span><span class="insert">someone who may or may not be its original author. </span></span>
</p>
-
-
-
-<div class="anexample" id="anexample-quotation"><div class="anexampleTitle">Example 31<sup><a class="internalDFN" href="#anexample-quotation"><span class="diamond"> ◊</span></a></sup></div>
-<p>
-The following paragraph is a quote from one of <a href="http://thinklinks.wordpress.com/2012/03/07/thoughts-from-the-dagstuhl-principles-of-provenance-workshop/">the author's blogs</a>.
-</p><blockquote id="bl-dagstuhl"><em>
-"During the workshop, it became clear to me that the consensus based models (which are often graphical in nature) can not only be formalized but also be directly connected to these database focused formalizations. I just needed to get over the differences in syntax. This could imply that we could have nice way to trace provenance across systems and through databases and be able to understand the mathematical properties of this interconnection."</em>
+<p><span class="insert">A </span><dfn id="dfn-quotation" class="internalDFN"><span class="insert">quotation</span></dfn> <sup><a class="internalDFN" href="#dfn-quotation"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="insert"> relation
+ </span>is <span class="delete">the start of</span><span class="insert">a particular case of </span><a href="#concept-derivation" class="internalDFN"><span class="insert">derivation</span></a><span class="insert"> in which</span> an <span class="delete">activity with</span><span class="insert">entity is derived from</span> an <span class="delete">implicit trigger generated</span><span class="insert">original entity</span> by <span class="delete">another activity. </span><span class="insert">copying, or "quoting", some or all of it.
+The type is of a quotation derivation is denoted by:
+</span><dfn title="dfn-prov:quotation" id="dfn-prov:quotation" class="internalDFN"><span class="name"><span class="insert">prov:Quotation</span></span></dfn><sup><a class="internalDFN" href="#dfn-prov:quotation"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="insert">.
+</span></p>
+
+
+
+<div class="anexample" id="anexample-quotation"><div class="anexampleTitle"><span class="insert">Example 31</span><sup><a class="internalDFN" href="#anexample-quotation"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
+
+
+
+
+<p><span class="insert">
+The following paragraph is a quote from one of </span><a href="http://thinklinks.wordpress.com/2012/03/07/thoughts-from-the-dagstuhl-principles-of-provenance-workshop/"><span class="insert">the author's blogs</span></a><span class="insert">.
+</span></p><span class="delete">
+A </span><span class="delete">start</span><blockquote id="bl-dagstuhl"><em><span class="insert">
+"During the workshop, it became clear to me that the consensus based models (which are often graphical in nature) can not only be formalized but also be directly connected to these database focused formalizations. I just needed to get over the differences in syntax. This could imply that we could have nice way to trace provenance across systems and through databases and be able to understand the mathematical properties of this interconnection."</span></em>
</blockquote>
-<p>If <a href="http://thinklinks.wordpress.com/2012/03/07/thoughts-from-the-dagstuhl-principles-of-provenance-workshop/"><span class="name">wp:thoughts-from-the-dagstuhl-principles-of-provenance-workshop/</span></a> denotes the original blog by agent <span class="name">ex:Paul</span>, and
- <a href="#bl-dagstuhl"><span class="name">dm:bl-dagstuhl</span></a> denotes the above paragraph, then the following descriptions express that the above paragraph was copied by agent <span class="name">ex:Luc</span> from a part of the blog, attributed to the agent <span class="name">ex:Paul</span>.</p>
-<pre class="codeexample">entity(wp:thoughts-from-the-dagstuhl-principles-of-provenance-workshop/)
+<p><span class="insert">If </span><a href="http://thinklinks.wordpress.com/2012/03/07/thoughts-from-the-dagstuhl-principles-of-provenance-workshop/"><span class="name"><span class="insert">wp:thoughts-from-the-dagstuhl-principles-of-provenance-workshop/</span></span></a><span class="insert"> denotes the original blog</span> by <span class="delete">activity</span><span class="insert">agent </span><span class="name"><span class="insert">ex:Paul</span></span>, <span class="delete">written as
+</span><span class="delete">wasStartedByActivity(id, a2, a1, attrs)</span><span class="delete"> in PROV-N,</span><span class="delete"> has:
+</span>
+<span class="delete">id</span><span class="delete">: an </span><span class="delete">optional</span><span class="delete"> identifier of the relation;</span>
+<span class="delete">started</span><span class="delete">: the identifier (</span><span class="insert">and
+ </span><a href="#bl-dagstuhl"><span class="name"><span class="delete">a2</span><span class="delete">) of the started activity;
+</span><span class="delete">starter</span><span class="delete">: the identifier (</span><span class="insert">dm:bl-dagstuhl</span></span></a><span class="insert"> denotes the above paragraph, then the following descriptions express that the above paragraph was copied by agent </span><span class="name"><span class="delete">a1</span><span class="delete">) of the activity that started the other;</span>
+<span class="delete">attributes</span><span class="delete">: an </span><span class="delete">optional</span><span class="delete"> set (</span><span class="insert">ex:Luc</span></span><span class="insert"> from a part of the blog, attributed to the agent </span><span class="name"><span class="delete">attrs</span><span class="delete">) of attribute-value pairs representing additional information about this start by activity.</span>
+
+
+
+
+
+
+<span class="delete">
+Suppose activities </span><span class="delete">a1</span><span class="delete"> and </span><span class="delete">a2</span><span class="delete"> are computer processes that are executed on different hosts, and that </span><span class="delete">a1</span><span class="delete"> started </span><span class="delete">a2</span><span class="insert">ex:Paul</span></span>.<span class="delete"> This can be expressed as in the following fragment:</span></p>
+<pre class="codeexample"><span class="delete">activity(a1,t1,t2,[ex:host="server1.example.org",prov:type="workflow"])
+activity(a2,t3,t4,[ex:host="server2.example.org",prov:type="subworkflow"])
+wasStartedByActivity(a2,a1)</span><span class="insert">entity(wp:thoughts-from-the-dagstuhl-principles-of-provenance-workshop/)
entity(dm:bl-dagstuhl)
agent(ex:Luc)
agent(ex:Paul)
@@ -2657,8 +3089,10 @@
wp:thoughts-from-the-dagstuhl-principles-of-provenance-workshop/,
[ prov:type='prov:Quotation' ])
wasAttributedTo(dm:bl-dagstuhl, ex:Luc)
-wasAttributedTo(wp:thoughts-from-the-dagstuhl-principles-of-provenance-workshop/, ex:Paul)
-</pre>
+wasAttributedTo(wp:thoughts-from-the-dagstuhl-principles-of-provenance-workshop/, ex:Paul)</span>
+</pre><span class="delete">
+It is assumed that the activities </span><span class="delete">a1</span><span class="delete"> and </span><span class="delete">a2</span><span class="delete"> are of type "workflow" and "subworkflow", respectively; the latter was started by the former.
+</span>
</div>
@@ -2667,46 +3101,46 @@
<div id="term-primary-source" class="section">
-<h4><span class="secno">5.2.4 </span>Primary Source</h4>
+<h4><span class="secno"><span class="insert">5.2.4 </span></span><span class="insert">Primary Source</span></h4>
<p>
-<span class="glossary-ref"> A <dfn id="concept-primary-source" class="internalDFN">primary source</dfn><sup><a class="internalDFN" href="#concept-primary-source"><span class="diamond"> ◊</span></a></sup> for a topic refers to something produced by some agent with direct experience and knowledge about the topic, at the time of the topic's study, without benefit from hindsight. </span>
+<span class="glossary-ref"><span class="insert"> A </span><dfn id="concept-primary-source" class="internalDFN"><span class="insert">primary source</span></dfn><sup><a class="internalDFN" href="#concept-primary-source"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="insert"> for a topic refers to something produced by some agent with direct experience and knowledge about the topic, at the time of the topic's study, without benefit from hindsight. </span></span>
</p>
-<p>Because of the directness
-of <a href="http://en.wikipedia.org/wiki/Primary_source">primary
-sources</a>, they "speak for themselves" in ways that cannot be
+<p><span class="insert">Because of the directness
+of </span><a href="http://en.wikipedia.org/wiki/Primary_source"><span class="insert">primary
+sources</span></a><span class="insert">, they "speak for themselves" in ways that cannot be
captured through the filter of secondary sources. As such, it is
important for secondary sources to reference those primary sources
from which they were derived, so that their reliability can be
-investigated.</p>
-
-
-<p>A <dfn id="dfn-primary-source" class="internalDFN">primary source</dfn><sup><a class="internalDFN" href="#dfn-primary-source"><span class="diamond"> ◊</span></a></sup> relation is a particular case of <a href="#concept-derivation" class="internalDFN">derivation</a> of
+investigated.</span></p>
+
+
+<p><span class="insert">A </span><dfn id="dfn-primary-source" class="internalDFN"><span class="insert">primary source</span></dfn><sup><a class="internalDFN" href="#dfn-primary-source"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="insert"> relation is a particular case of </span><a href="#concept-derivation" class="internalDFN"><span class="insert">derivation</span></a><span class="insert"> of
secondary materials from their primary sources. It is recognized that
the determination of primary sources can be up to interpretation, and
should be done according to conventions accepted within the
application's domain.
The type is of a primary source derivation is denoted by:
-<dfn title="PrimarySource" id="dfn-primarysource" class="internalDFN"><span class="name">prov:PrimarySource</span></dfn><sup><a class="internalDFN" href="#dfn-primarysource"><span class="diamond"> ◊</span></a></sup>.
-</p>
-
-
-
-<div class="anexample" id="anexample-primary-source1"><div class="anexampleTitle">Example 32<sup><a class="internalDFN" href="#anexample-primary-source1"><span class="diamond"> ◊</span></a></sup></div>
-<p>
+</span><dfn title="dfn-prov:primary-source" id="dfn-prov:primary-source" class="internalDFN"><span class="name"><span class="insert">prov:PrimarySource</span></span></dfn><sup><a class="internalDFN" href="#dfn-prov:primary-source"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="insert">.
+</span></p>
+
+
+
+<div class="anexample" id="anexample-primary-source1"><div class="anexampleTitle"><span class="insert">Example 32</span><sup><a class="internalDFN" href="#anexample-primary-source1"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
+<p><span class="insert">
Let us consider Charles Joseph Minard's flow map of Napoleon's March in
1812, which was published in 1869. Although the map is not a primary source,
Minard probably used the journal of Pierre-Irénée Jacob, pharmacist
to Napoleon's army during the Russian campaign. This primary source relation
-can be encoded as follows.</p>
-
-<pre class="codeexample">entity(ex:la-campagne-de-Russie-1812-1813, [ prov:type="map" ])
+can be encoded as follows.</span></p>
+
+<pre class="codeexample"><span class="insert">entity(ex:la-campagne-de-Russie-1812-1813, [ prov:type="map" ])
entity(ex:revue-d-Histoire-de-la-Pharmacie-t-XVIII, [ prov:type="journal" ])
wasDerivedFrom(ex:la-campagne-de-Russie-1812-1813,
ex:revue-d-Histoire-de-la-Pharmacie-t-XVIII,
[ prov:type='prov:PrimarySource' ])
-</pre>
+</span></pre>
</div>
@@ -2717,39 +3151,42 @@
</div>
<div id="component3" class="section">
-<h3><span class="secno">5.3 </span>Component 3: Agents, Responsibility, and Influence</h3>
-
-<p>The second component of PROV-DM, depicted in <a href="#figure-component3">Figure 7</a>, is concerned with <a title="agent" href="#concept-agent" class="internalDFN">agents</a> and the notions of
-<a href="#concept-attribution" class="internalDFN">Attribution</a>, <a href="#concept-activityAssociation" class="internalDFN">Association</a>, <a href="#concept-delegation" class="internalDFN">Delegation</a>, relating agents to entities, activities, and agents, respectively.
- Core structures are displayed in the yellow area and include three classes and three binary associations. Outside the yellow area, extended structures comprise <span class="delete">and </span>UML association classes to express expanded n-ary relations, and subclasses <a href="#concept-plan" class="internalDFN">Plan</a>, <a href="#concept-person" class="internalDFN">Person</a>, <a title="software-agent" href="#concept-software-agent" class="internalDFN">SofwareAgent</a>, and <a href="#concept-organization" class="internalDFN">Organization</a>. The subclasses are marked by the UML stereotype "prov:type" to indicate that that these are valid values for the attribute <a href="#term-attribute-type">prov:type</a>
+<h3><span class="secno"><span class="delete">4.2</span><span class="insert">5.3</span> </span>Component <span class="delete">2: Agents</span><span class="insert">3: Agents, Responsibility,</span> and <span class="delete">Responsibility</span><span class="insert">Influence</span></h3>
+
+<p>The second component of <span class="delete">PROV-DM</span><span class="insert">PROV-DM, depicted in </span><a href="#figure-component3"><span class="insert">Figure 7</span></a><span class="insert">,</span> is concerned with <a title="agent" href="#concept-agent" class="internalDFN">agents</a> and the notions of
+<a href="#concept-attribution" class="internalDFN">Attribution</a>, <a href="#concept-activityAssociation" class="internalDFN">Association</a>, <span class="delete">Responsibility</span><a href="#concept-delegation" class="internalDFN"><span class="insert">Delegation</span></a>, relating agents to entities, activities, and agents, respectively.<span class="delete">
+Figure </span><span class="delete">figure-component2</span><span class="delete"> depicts the second component with four</span><span class="insert">
+ Core structures are displayed in the yellow area and include three</span> classes <span class="delete">(Entity, Activity, Agent, </span>and <span class="delete">Plan)</span><span class="insert">three binary associations. Outside the yellow area, extended structures comprise UML association classes to express expanded n-ary relations,</span> and <span class="delete">associations between them.</span><span class="insert">subclasses </span><a href="#concept-plan" class="internalDFN"><span class="insert">Plan</span></a><span class="insert">, </span><a href="#concept-person" class="internalDFN"><span class="insert">Person</span></a><span class="insert">, </span><a title="software-agent" href="#concept-software-agent" class="internalDFN"><span class="insert">SofwareAgent</span></a><span class="insert">, and </span><a href="#concept-organization" class="internalDFN"><span class="insert">Organization</span></a><span class="insert">. The subclasses are marked by the</span> UML <span class="delete">association classes</span><span class="insert">stereotype "prov:type" to indicate that that these</span> are <span class="delete">used to express n-ary relations.</span><span class="insert">valid values for the attribute </span><a href="#term-attribute-type"><span class="insert">prov:type</span></a>
</p>
<div style="text-align: center;">
+
+
<span class="figure" style="max-width: 95%; ">
-
<img src="uml/component3.png" alt="agents and responsibilities"><br>
-<span class="figcaption" id="figure-component3">Figure 7: Agents and Responsibility Overview</span>
+<span class="figcaption" data-count="7" id="figure-component3">Figure <span class="delete">6:</span><span class="insert">7</span><sup><a class="internalDFN" href="#figure-component3"><span class="diamond"><span class="insert"> ◊:</span></span></a></sup> Agents and <span class="delete">Responsibilities Component</span><span class="insert">Responsibility</span> Overview
+</span>
</span>
</div>
-<p>Component 3 further defines a general notion of <a href="#concept-influence" class="internalDFN">influence</a>, as a super-relation of all relations defined so far. <a href="#figure-component3b">Figure <span class="delete">7b</span><span class="insert">8</span></a> displays one new association class, generalizing previously introduced associations.</p>
+<p><span class="insert">Component 3 further defines a general notion of </span><a href="#concept-influence" class="internalDFN"><span class="insert">influence</span></a><span class="insert">, as a super-relation of all relations defined so far. </span><a href="#figure-component3b"><span class="insert">Figure 8</span></a><span class="insert"> displays one new association class, generalizing previously introduced associations.</span></p>
<div style="text-align: center;">
<span class="figure" style="max-width: 95%; ">
<img src="uml/Component3b.png" alt="Influence"><br>
-<span class="figcaption" id="figure-component3b">Figure <span class="delete">7b:</span><span class="insert">8:</span> Influence</span>
+<span class="figcaption" data-count="8" id="figure-component3b"><span class="insert">Figure 8</span><sup><a class="internalDFN" href="#figure-component3b"><span class="diamond"><span class="insert"> ◊:</span></span></a></sup><span class="insert"> Influence</span></span>
</span>
</div>
<div id="term-agent" class="section">
-<h4><span class="secno">5.3.1 </span>Agent</h4>
-
-<div class="glossary-ref"> An <dfn id="concept-agent" class="internalDFN">agent</dfn><sup><a class="internalDFN" href="#concept-agent"><span class="diamond"> ◊</span></a></sup> is something that bears some form of responsibility for an activity taking place, for the existence of an entity, or for another agent's activity. </div>
-
-
-<p></p><div class="attributes" id="attributes-agent">An <dfn title="dfn-agent" id="dfn-agent" class="internalDFN">agent</dfn><sup><a class="internalDFN" href="#dfn-agent"><span class="diamond"> ◊</span></a></sup><span class="withPn">, written <span class="pnExpression" id="pn-agent">agent(id, [attr1=val1, ...])</span> in PROV-N,</span> has:
+<h4><span class="secno"><span class="delete">4.2.1</span><span class="insert">5.3.1</span> </span>Agent</h4>
+
+<div class="glossary-ref"> An <dfn id="concept-agent" class="internalDFN">agent</dfn><sup><a class="internalDFN" href="#concept-agent"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> is something that bears some form of responsibility for an activity taking <span class="delete">place</span><span class="insert">place, for the existence of an entity,</span> or for <span class="delete">the existence of an entity.</span><span class="insert">another agent's activity.</span> </div>
+
+
+<p></p><div class="attributes" id="attributes-agent">An <dfn title="dfn-agent" id="dfn-agent" class="internalDFN">agent</dfn><sup><a class="internalDFN" href="#dfn-agent"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="withPn">, written <span class="pnExpression" id="pn-agent">agent(id, [attr1=val1, ...])</span> in PROV-N,</span> has:
<ul>
<li><span class="attribute" id="agent.id">id</span>: an identifier for an agent;</li>
<li><span class="attribute" id="agent.attributes">attributes</span>: a set of attribute-value pairs ((<span class="name">attr1</span>, <span class="name">val1</span>), ...) representing additional information about this agent.
@@ -2760,31 +3197,31 @@
<p>
It is useful to define some basic categories of agents from an interoperability perspective.
-There are three types of agents that are common across most anticipated domains of use; it is acknowledged that these types do not cover all kinds of agent. </p>
+There are three types of agents that are common across most anticipated domains of use; <span class="delete">It</span><span class="insert">it</span> is acknowledged that these types do not cover all kinds of agent. </p>
<ul>
<li><span class="name">SoftwareAgent</span>
-<div class="glossary-ref"> A <dfn id="concept-software-agent" title="software-agent" class="internalDFN">software agent</dfn><sup><a class="internalDFN" href="#concept-software-agent"><span class="diamond"> ◊</span></a></sup> is running software. </div>
+<div class="glossary-ref"> A <dfn id="concept-software-agent" title="software-agent" class="internalDFN">software agent</dfn><sup><a class="internalDFN" href="#concept-software-agent"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> is running software. </div>
<p></p></li>
<li><span class="name">Organization</span>
-<div class="glossary-ref"> Agents of type <dfn id="concept-organization" class="internalDFN">Organization</dfn><sup><a class="internalDFN" href="#concept-organization"><span class="diamond"> ◊</span></a></sup> are social or legal institutions such as companies, societies, etc. </div>
+<div class="glossary-ref"> Agents of type <dfn id="concept-organization" class="internalDFN">Organization</dfn><sup><a class="internalDFN" href="#concept-organization"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> are social or legal institutions such as companies, societies, etc. </div>
<p></p></li>
<li><span class="name">Person</span>
-<div class="glossary-ref"> Agents of type <dfn id="concept-person" title="person" class="internalDFN">Person</dfn><sup><a class="internalDFN" href="#concept-person"><span class="diamond"> ◊</span></a></sup> are people. </div></li>
+<div class="glossary-ref"> Agents of type <dfn id="concept-person" title="person" class="internalDFN">Person</dfn><sup><a class="internalDFN" href="#concept-person"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> are people. </div></li>
</ul>
-<div class="anexample" id="example_33"><div class="anexampleTitle">Example 33<sup><a class="internalDFN" href="#example_33"><span class="diamond"> ◊</span></a></sup></div>
+<div class="anexample" id="example_33"><div class="anexampleTitle"><span class="insert">Example 33</span><sup><a class="internalDFN" href="#example_33"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
<p>The following expression is about an agent identified by <span class="name">e1</span>, which is a person, named Alice, with employee number 1234.</p>
-<pre class="codeexample">agent(e1, [ex:employee="1234", ex:name="Alice", prov:type='prov:Person' ])
+<pre class="codeexample">agent(e1, [ex:employee="1234", ex:name="Alice", <span class="delete">prov:type="prov:Person" %% xsd:QName])</span><span class="insert">prov:type='prov:Person' ])</span>
</pre>
<p>It is optional to specify the type of an agent. When present, it is expressed using the <span class="name">prov:type</span> attribute.</p>
</div>
@@ -2792,31 +3229,31 @@
</div>
<div id="term-attribution" class="section">
-<h4><span class="secno">5.3.2 </span>Attribution</h4>
-
-<div class="glossary-ref"> <dfn id="concept-attribution" class="internalDFN">Attribution</dfn><sup><a class="internalDFN" href="#concept-attribution"><span class="diamond"> ◊</span></a></sup> is the ascribing of an entity to an agent. </div>
+<h4><span class="secno"><span class="delete">4.2.2</span><span class="insert">5.3.2</span> </span>Attribution</h4>
+
+<div class="glossary-ref"> <dfn id="concept-attribution" class="internalDFN">Attribution</dfn><sup><a class="internalDFN" href="#concept-attribution"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> is the ascribing of an entity to an agent. </div>
<p>When an entity <span class="name">e</span> is attributed to agent <span class="name">ag</span>, entity <span class="name">e</span> was generated by some unspecified activity that in turn was associated to agent <span class="name">ag</span>. Thus, this relation is useful when the activity is not known, or irrelevant.</p>
-<p></p><div class="attributes" id="attributes-attribution">An <dfn title="wasAttributedTo" id="dfn-wasattributedto" class="internalDFN">attribution</dfn><sup><a class="internalDFN" href="#dfn-wasattributedto"><span class="diamond"> ◊</span></a></sup> relation<span class="withPn">, written <span class="pnExpression">wasAttributedTo(id; e, ag, attrs)</span> in PROV-N,</span> has:
+<p></p><div class="attributes" id="attributes-attribution">An <dfn title="wasAttributedTo" id="dfn-wasattributedto" class="internalDFN">attribution</dfn><sup><a class="internalDFN" href="#dfn-wasattributedto"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> relation<span class="withPn">, written <span class="pnExpression"><span class="delete">wasAttributedTo(id,e,ag,attrs)</span><span class="insert">wasAttributedTo(id; e, ag, attrs)</span></span> in PROV-N,</span> has:
<ul>
<li><span class="attribute" id="attribution.id">id</span>: an <em class="rfc2119" title="optional">optional</em> identifier for the relation;</li>
<li><span class="attribute" id="attribution.entity">entity</span>: an entity identifier (<span class="name">e</span>);</li>
-<li><span class="attribute" id="attribution.agent">agent</span>: the identifier (<span class="name">ag</span>) of the agent whom the entity is ascribed to, and therefore bears some responsibility for its existence;</li>
+<li><span class="attribute" id="attribution.agent">agent</span>: the identifier (<span class="name">ag</span>) of the agent whom the entity is ascribed <span class="delete">to;</span><span class="insert">to, and therefore bears some responsibility for its existence;</span></li>
<li><span class="attribute" id="attribution.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set (<span class="name">attrs</span>) of attribute-value pairs representing additional information about this attribution.</li>
</ul>
</div>
-<div class="anexample" id="anexample-attribution"><div class="anexampleTitle">Example 34<sup><a class="internalDFN" href="#anexample-attribution"><span class="diamond"> ◊</span></a></sup></div>
+<div class="anexample" id="anexample-attribution"><div class="anexampleTitle"><span class="insert">Example 34</span><sup><a class="internalDFN" href="#anexample-attribution"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
<p>
-Revisiting the example of
-<a class="section-ref" href="#section-example-one"><span>Section 4.1</span></a>,
-we can ascribe <span class="name">tr:WD-prov-dm-20111215</span> to some agents without an explicit activity. The reserved attribute <span class="name">role</span> (see <a class="section-ref" href="#term-attribute-role"><span>Section 5.7.2.3</span></a>) allows for role of the agent in the attribution to be specified.
-</p><pre class="codeexample">agent(ex:Paolo, [ prov:type='prov:Person' ])
-agent(ex:Simon, [ prov:type='prov:Person' ])
-entity(tr:WD-prov-dm-20111215, [ prov:type='rec54:WD' ])
-wasAttributedTo(tr:WD-prov-dm-20111215, ex:Paolo, [ prov:type="editorship" ])
-wasAttributedTo(tr:WD-prov-dm-20111215, ex:Simon, [ prov:type="authorship" ])
+Revisiting the example of
+<a class="section-ref" href="#section-example-one"><span>Section <span class="delete">3.1</span><span class="insert">4.1</span></span></a>,
+we can ascribe <span class="name">tr:WD-prov-dm-20111215</span> to some agents without an explicit activity. The reserved attribute <span class="name">role</span> (see <a class="section-ref" href="#term-attribute-role"><span>Section <span class="delete">4.7.4.3</span><span class="insert">5.7.2.3</span></span></a>) allows for role of the agent in the attribution to be specified.
+</p><pre class="codeexample">agent(ex:Paolo, [ <span class="delete">prov:type="Person"</span><span class="insert">prov:type='prov:Person'</span> ])
+agent(ex:Simon, [ <span class="delete">prov:type="Person"</span><span class="insert">prov:type='prov:Person'</span> ])
+entity(tr:WD-prov-dm-20111215, [ <span class="delete">prov:type="process:RecsWD" %% xsd:QName</span><span class="insert">prov:type='rec54:WD'</span> ])
+wasAttributedTo(tr:WD-prov-dm-20111215, ex:Paolo, <span class="delete">[prov:role="editor"])</span><span class="insert">[ prov:type="editorship" ])</span>
+wasAttributedTo(tr:WD-prov-dm-20111215, ex:Simon, <span class="delete">[prov:role="contributor"])</span><span class="insert">[ prov:type="authorship" ])</span>
</pre>
</div>
@@ -2824,15 +3261,17 @@
<div id="term-Association" class="section">
-<h4><span class="secno">5.3.3 </span>Association</h4>
-
-<div class="glossary-ref"> An activity <dfn id="concept-activityAssociation" class="internalDFN">association</dfn><sup><a class="internalDFN" href="#concept-activityAssociation"><span class="diamond"> ◊</span></a></sup> is an assignment of responsibility to an agent for an activity, indicating that the agent had a role in the activity. It further allows for a plan to be specified, which is the plan intended by the agent to achieve some goals in the context of this activity. </div>
+<h4><span class="secno"><span class="delete">4.2.3</span><span class="insert">5.3.3</span> </span>Association</h4>
+
+<div class="glossary-ref"> An activity <dfn id="concept-activityAssociation" class="internalDFN">association</dfn><sup><a class="internalDFN" href="#concept-activityAssociation"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> is an assignment of responsibility to an agent for an activity, indicating that the agent had a role in the activity. It further allows for a plan to be specified, which is the plan intended by the agent to achieve some goals in the context of this activity. </div>
<p></p>
-<div class="glossary-ref"> A <dfn id="concept-plan" class="internalDFN">plan</dfn><sup><a class="internalDFN" href="#concept-plan"><span class="diamond"> ◊</span></a></sup> is an entity that represents a set of actions or steps intended by one or more agents to achieve some goals. </div>
-
-
-<p></p><div class="attributes" id="attributes-activity-association">An <dfn title="wasAssociatedWith" id="dfn-wasassociatedwith" class="internalDFN">activity association</dfn><sup><a class="internalDFN" href="#dfn-wasassociatedwith"><span class="diamond"> ◊</span></a></sup><span class="withPn">, written <span class="pnExpression">wasAssociatedWith(id; a, ag, pl, attrs)</span> in PROV-N,</span> has:
+<div class="glossary-ref"> A <dfn id="concept-plan" class="internalDFN">plan</dfn><sup><a class="internalDFN" href="#concept-plan"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> is an entity that represents a set of actions or steps intended by one or more agents to achieve some goals. </div>
+
+
+
+
+<p></p><div class="attributes" id="attributes-activity-association">An <dfn title="wasAssociatedWith" id="dfn-wasassociatedwith" class="internalDFN">activity association</dfn><sup><a class="internalDFN" href="#dfn-wasassociatedwith"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="withPn">, written <span class="pnExpression"><span class="delete">wasAssociatedWith(id,a,ag,pl,attrs)</span><span class="insert">wasAssociatedWith(id; a, ag, pl, attrs)</span></span> in PROV-N,</span> has:
<ul>
<li><span class="attribute" id="association.id">id</span>: an <em class="rfc2119" title="optional">optional</em> identifier for the association between an activity and an agent;</li>
<li><span class="attribute" id="association.activity">activity</span>: an identifier (<span class="name">a</span>) for the activity;</li>
@@ -2841,30 +3280,34 @@
</li><li><span class="attribute" id="association.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set (<span class="name">attrs</span>) of attribute-value pairs representing additional information about this association of this activity with this agent.</li>
</ul></div>
-<p>While each of <a href="#association.id"><span class="attribute">id</span></a>, <a href="#association.agent"><span class="attribute">agent</span></a>, <a href="#association.plan"><span class="attribute">plan</span></a>, and <a href="#association.attributes"><span class="attribute">attributes</span></a> is <em class="rfc2119" title="optional">optional</em>, at least one of them <em class="rfc2119" title="must">must</em> be present.</p>
-
-
-<div class="anexample" id="anexample-wasAssociatedWith"><div class="anexampleTitle">Example 35<sup><a class="internalDFN" href="#anexample-wasAssociatedWith"><span class="diamond"> ◊</span></a></sup></div>
-<p>In the following example, a designer agent and an operator agent are associated with an activity. The designer's goals are achieved by a workflow <span class="name">ex:wf</span>, described as an an entity of type <span class="name"><a href="#concept-plan" class="internalDFN">plan</a></span>. </p>
-<pre class="codeexample">activity(ex:a, [ prov:type="workflow execution" ])
-agent(ex:ag1, [ prov:type="operator" ])
-agent(ex:ag2, [ prov:type="designer" ])
-wasAssociatedWith(ex:a, ex:ag1, -, [ prov:role="loggedInUser", ex:how="webapp" ])
-wasAssociatedWith(ex:a, ex:ag2, ex:wf, [ prov:role="designer", ex:context="project1" ])
-entity(ex:wf, [ prov:type='prov:Plan' ,
+<p><span class="insert">While each of </span><a href="#association.id"><span class="attribute"><span class="insert">id</span></span></a><span class="insert">, </span><a href="#association.agent"><span class="attribute"><span class="insert">agent</span></span></a><span class="insert">, </span><a href="#association.plan"><span class="attribute"><span class="insert">plan</span></span></a><span class="insert">, and </span><a href="#association.attributes"><span class="attribute"><span class="insert">attributes</span></span></a><span class="insert"> is </span><em class="rfc2119" title="optional"><span class="insert">optional</span></em><span class="insert">, at least one of them </span><em class="rfc2119" title="must"><span class="insert">must</span></em><span class="insert"> be present.</span></p>
+
+
+<div class="anexample" id="anexample-wasAssociatedWith"><div class="anexampleTitle"><span class="insert">Example 35</span><sup><a class="internalDFN" href="#anexample-wasAssociatedWith"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
+<p>In the following example, a designer <span class="insert">agent </span>and an operator <span class="delete">agents</span><span class="insert">agent</span> are associated with an activity. The designer's goals are achieved by a workflow <span class="name">ex:wf</span>, described as an an entity of type <span class="name"><a href="#concept-plan" class="internalDFN">plan</a></span>. </p>
+<pre class="codeexample">activity(ex:a, <span class="delete">[prov:type="workflow execution"])</span><span class="insert">[ prov:type="workflow execution" ])</span>
+agent(ex:ag1,<span class="delete"> [prov:type="operator"])</span><span class="insert"> [ prov:type="operator" ])</span>
+agent(ex:ag2,<span class="delete"> [prov:type="designer"])</span><span class="insert"> [ prov:type="designer" ])</span>
+wasAssociatedWith(ex:a, ex:ag1, -,<span class="delete"> [prov:role="loggedInUser", ex:how="webapp"])</span><span class="insert"> [ prov:role="loggedInUser", ex:how="webapp" ])</span>
+wasAssociatedWith(ex:a, ex:ag2, <span class="delete">ex:wf,[prov:role="designer", ex:context="project1"])</span><span class="insert">ex:wf, [ prov:role="designer", ex:context="project1" ])</span>
+entity(ex:wf, <span class="delete">[prov:type="prov:Plan"</span><span class="insert">[ prov:type='prov:Plan' ,
ex:label="Workflow 1",
- prov:location="http://example.org/workflow1.bpel" %% xsd:anyURI ])
+ prov:location="http://example.org/workflow1.bpel"</span> %% <span class="delete">xsd:QName, ex:label="Workflow 1",
+ ex:url="http://example.org/workflow1.bpel" %% xsd:anyURI])</span><span class="insert">xsd:anyURI ])</span>
</pre>
Since the workflow <span class="name">ex:wf</span> is itself an entity, its provenance can also be expressed in PROV-DM: it can be generated by some activity and derived from other entities,
for instance.
</div>
-<div class="anexample" id="anexample-wasAssociatedWith-2"><div class="anexampleTitle">Example 36<sup><a class="internalDFN" href="#anexample-wasAssociatedWith-2"><span class="diamond"> ◊</span></a></sup></div>
+<div class="anexample" id="anexample-wasAssociatedWith-2"><div class="anexampleTitle"><span class="insert">Example 36</span><sup><a class="internalDFN" href="#anexample-wasAssociatedWith-2"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
<p>In some cases, one wants to indicate a plan was followed, without having to specify which agent was involved.</p>
-<pre class="codeexample">activity(ex:a, [ prov:type="workflow execution" ])
+<pre class="codeexample"><span class="delete">activity(ex:a,[prov:type="workflow execution"])
+wasAssociatedWith(ex:a,-,ex:wf)
+entity(ex:wf,[prov:type="prov:Plan"%% xsd:QName, </span><span class="insert">activity(ex:a, [ prov:type="workflow execution" ])
wasAssociatedWith(ex:a, -, ex:wf)
entity(ex:wf, [ prov:type='prov:Plan',
- ex:label="Workflow 1",
+ </span>ex:label="Workflow 1",
+
ex:url="http://example.org/workflow1.bpel" %% xsd:anyURI])
</pre>
In this case, it is assumed that an agent exists, but it has not been specified.
@@ -2877,11 +3320,16 @@
<div id="term-delegation" class="section">
-<h4><span class="secno">5.3.4 </span>Delegation</h4>
-
-<div class="glossary-ref"> <dfn id="concept-delegation" class="internalDFN">Delegation</dfn><sup><a class="internalDFN" href="#concept-delegation"><span class="diamond"> ◊</span></a></sup> is the assignment of authority and responsibility to an agent (by itself or by another agent) to carry out a specific activity as a delegate or representative, while the agent it acts on behalf of retains some responsibility for the outcome of the delegated work. </div>
-
-<p>For example, a
+<h4><span class="secno"><span class="delete">4.2.4 </span><span class="delete">Responsibility</span><span class="insert">5.3.4 </span></span><span class="insert">Delegation</span></h4>
+
+<div class="glossary-ref"> <span class="delete">Responsibility</span> <dfn id="concept-delegation" class="internalDFN"><span class="insert">Delegation</span></dfn><sup><a class="internalDFN" href="#concept-delegation"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> is the <span class="delete">fact that</span><span class="insert">assignment of authority and responsibility to</span> an agent <span class="delete">is accountable</span><span class="insert">(by itself or by another agent) to carry out a specific activity as a delegate or representative, while the agent it acts on behalf of retains some responsibility</span> for the <span class="delete">actions of a "subordinate" agent, in the context of an activity. </span><span class="insert">outcome of the delegated work. </span></div>
+
+<p><span class="delete">PROV offers a mild version of responsibility
+in the form of a relation to represent when an agent acted on another
+agent's behalf. So for example someone running a mail program,
+the program and the person are both
+agents of the activity; furthermore, the mail software
+agent is running on the person's behalf. In another</span><span class="insert">For</span> example, <span class="delete">the</span><span class="insert">a</span>
student acted on behalf of his supervisor, who acted on behalf of the
department chair, who acted on behalf of the university; all those
agents are responsible in some way for the activity that took place but
@@ -2891,22 +3339,30 @@
<p>
</p><div class="attributes" id="attributes-delegation">
-A <dfn title="actedOnBehalfOf" id="dfn-actedonbehalfof" class="internalDFN">delegation</dfn><sup><a class="internalDFN" href="#dfn-actedonbehalfof"><span class="diamond"> ◊</span></a></sup> link<span class="withPn">, written <span class="pnExpression">actedOnBehalfOf(id; ag2, ag1, a, attrs)</span> in PROV-N,</span> has:
+A <span class="delete">responsibility</span><dfn title="actedOnBehalfOf" id="dfn-actedonbehalfof" class="internalDFN"><span class="insert">delegation</span></dfn><sup><a class="internalDFN" href="#dfn-actedonbehalfof"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> link<span class="withPn">, written <span class="pnExpression"><span class="delete">actedOnBehalfOf(id,ag2,ag1,a,attrs)</span><span class="insert">actedOnBehalfOf(id; ag2, ag1, a, attrs)</span></span> in PROV-N,</span> has:
<ul>
-<li><span class="attribute" id="delegation.id">id</span>: an <em class="rfc2119" title="optional">optional</em> identifier for the delegation link between delegate and responsible;</li>
-<li><span class="attribute" id="delegation.delegate">delegate</span>: an identifier (<span class="name">ag2</span>) for the agent associated with an activity, acting on behalf of the responsible
+<li><span class="attribute" id="delegation.id">id</span>: an <em class="rfc2119" title="optional">optional</em> identifier for the <span class="delete">responsibility</span><span class="insert">delegation</span> link between <span class="delete">subordinate</span><span class="insert">delegate</span> and responsible;</li>
+<li><span class="delete">subordinate</span><span class="attribute" id="delegation.delegate"><span class="insert">delegate</span></span>: an identifier (<span class="name">ag2</span>) for the agent associated with an activity, acting on behalf of the responsible
agent;</li>
-<li><span class="attribute" id="delegation.responsible">responsible</span>: an identifier (<span class="name">ag1</span>) for the agent, on behalf of which the delegate agent acted;</li>
-<li><span class="attribute" id="delegation.activity">activity</span>: an <em class="rfc2119" title="optional">optional</em> identifier (<span class="name">a</span>) of an activity for which the delegation link holds;</li>
-<li><span class="attribute" id="delegation.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set (<span class="name">attrs</span>) of attribute-value pairs representing additional information about this delegation link.</li>
+<li><span class="attribute" id="delegation.responsible">responsible</span>: an identifier (<span class="name">ag1</span>) for the agent, on behalf of which the <span class="delete">subordinate</span><span class="insert">delegate</span> agent acted;</li>
+<li><span class="attribute" id="delegation.activity">activity</span>: an <em class="rfc2119" title="optional">optional</em> identifier (<span class="name">a</span>) of an activity for which the <span class="delete">responsibility</span><span class="insert">delegation</span> link holds;</li>
+<li><span class="attribute" id="delegation.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set (<span class="name">attrs</span>) of attribute-value pairs representing additional information about this <span class="delete">responsibility</span><span class="insert">delegation</span> link.</li>
</ul></div>
-<div class="anexample" id="example_37"><div class="anexampleTitle">Example 37<sup><a class="internalDFN" href="#example_37"><span class="diamond"> ◊</span></a></sup></div>
+<div class="anexample" id="example_37"><div class="anexampleTitle"><span class="insert">Example 37</span><sup><a class="internalDFN" href="#example_37"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
<p>The following fragment describes three agents: a programmer, a researcher, and a funder. The programmer and researcher are associated with a workflow activity. The programmer acts on behalf
-of the researcher (line-management) encoding the commands specified by the researcher; the researcher acts on behalf of the funder, who has a contractual agreement with the researcher. The terms
-'line-management' and 'contract' used in this example are domain specific.</p>
-<pre class="codeexample">activity(a,[ prov:type="workflow" ])
+of the researcher <span class="delete">(delegation)</span><span class="insert">(line-management)</span> encoding the commands specified by the researcher; the researcher acts on behalf of the funder, who has a contractual agreement with the researcher. The terms
+<span class="delete">'delegation'</span><span class="insert">'line-management'</span> and <span class="delete">'contact'</span><span class="insert">'contract'</span> used in this example are domain specific.</p>
+<pre class="codeexample"><span class="delete">activity(a,[prov:type="workflow"])
+agent(ag1,[prov:type="programmer"])
+agent(ag2,[prov:type="researcher"])
+agent(ag3,[prov:type="funder"])
+wasAssociatedWith(a,ag1,[prov:role="loggedInUser"])
+wasAssociatedWith(a,ag2)
+wasAssociatedWith(a,ag3)
+actedOnBehalfOf(ag1,ag2,a,[prov:type="delegation"])
+actedOnBehalfOf(ag2,ag3,a,[prov:type="contract"])</span><span class="insert">activity(a,[ prov:type="workflow" ])
agent(ag1, [ prov:type="programmer" ])
agent(ag2, [ prov:type="researcher" ])
agent(ag3, [ prov:type="funder" ])
@@ -2914,73 +3370,286 @@
wasAssociatedWith(a, ag2)
wasAssociatedWith(a, ag3)
actedOnBehalfOf(ag1, ag2, a, [ prov:type="line-management" ])
-actedOnBehalfOf(ag2, ag3, a, [ prov:type="contract" ])
+actedOnBehalfOf(ag2, ag3, a, [ prov:type="contract" ])</span>
</pre>
+
+
+
+
</div>
</div>
+
+<span class="delete">4.3 </span><span class="delete">Component 3: Derivations</span>
+
+
+
+<span class="delete">The third component of PROV-DM is concerned with </span><span class="delete">derivations</span><span class="delete"> of </span><span class="delete">entities</span><span class="delete"> from others, and derivation subtypes </span><span class="delete">Revision</span><span class="delete">, </span><span class="delete">Quotation</span><span class="delete">, </span><span class="delete">Original Source</span><span class="delete">, and </span><span class="delete">Trace</span><span class="delete">.
+Figure </span><span class="delete">figure-component3</span><span class="delete"> depicts the third component with three classes (Entity, Activity, and Agent) and associations between them. UML association classes express n-ary relations.
+</span>
+
+
+
+
+
+<span class="delete">Figure 7: Derivation Component Overview</span>
+
+
+
<div id="term-influence" class="section">
-<h4><span class="secno">5.3.5 </span>Influence</h4>
+<h4><span class="secno"><span class="delete">4.3.1 </span><span class="delete">Derivation</span><span class="insert">5.3.5 </span></span><span class="insert">Influence</span></h4>
+
+
+
+
+
+
<p>
-<span class="glossary-ref"> <dfn id="concept-influence" class="internalDFN">Influence</dfn><sup><a class="internalDFN" href="#concept-influence"><span class="diamond"> ◊</span></a></sup> is the capacity <span class="insert">of </span>an entity, activity, or agent to have an effect on the character, development, or behavior of another by means of usage, start, end, generation, invalidation, communication, derivation, attribution, association, or delegation. </span>
+<span class="glossary-ref"> <span class="delete">A </span><span class="delete">derivation</span><dfn id="concept-influence" class="internalDFN"><span class="insert">Influence</span></dfn> <sup><a class="internalDFN" href="#concept-influence"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> is <span class="delete">a transformation</span><span class="insert">the capacity</span> of an <span class="delete">entity into another, a construction of</span><span class="insert">entity, activity, or agent to have</span> an <span class="delete">entity into another,</span><span class="insert">effect on the character, development,</span> or <span class="delete">an update of an entity, resulting in a new one.</span>
+
+
+
+
+<span class="delete">According to </span><span class="delete">Section 2</span><span class="delete">, for an entity to be transformed from, created from,</span><span class="insert">behavior of another by means of usage, start, end, generation, invalidation, communication, derivation, attribution, association,</span> or <span class="delete">resulting from an update to another, there must be some
+underpinning activities performing the necessary actions resulting in such a derivation.
+A derivation can be described at various levels of precision. In its simplest form, derivation relates two entities. Optionally, attributes can be added to represent further information about the derivation. If the derivation is the result of a single known activity, then this activity can also be optionally expressed. To provide a completely accurate description of the derivation, the generation and usage of the generated and used entities, respectively, can be provided. Optional information such as activity, generation, and usage can be linked to derivations to aid analysis of provenance and to facilitate provenance-based reproducibility. </span><span class="insert">delegation. </span></span>
</p>
-<p> An influence relation between two objects <span class="name">o2</span> and <span class="name">o1</span> is a generic dependency of <span class="name">o2</span>
-on <span class="name">o1</span> that signifies some form of influence of <span class="name">o1</span> on <span class="name">o2</span>.</p>
-
-
-<p>A <dfn title="wasInfluencedBy" id="dfn-wasinfluencedby" class="internalDFN">Influence</dfn><sup><a class="internalDFN" href="#dfn-wasinfluencedby"><span class="diamond"> ◊</span></a></sup> relation<span class="withPn">, written <span class="pnExpression">wasInfluencedBy(id; o2, o1, attrs)</span> in PROV-N,</span> has:</p>
+<p><span class="insert"> An influence relation between two objects </span><span class="name"><span class="insert">o2</span></span><span class="insert"> and </span><span class="name"><span class="insert">o1</span></span><span class="insert"> is a generic dependency of </span><span class="name"><span class="insert">o2</span></span><span class="insert">
+on </span><span class="name"><span class="insert">o1</span></span><span class="insert"> that signifies some form of influence of </span><span class="name"><span class="insert">o1</span></span><span class="insert"> on </span><span class="name"><span class="insert">o2</span></span><span class="insert">.</span></p>
+
+
+<p>A <span class="delete">derivation</span><dfn title="wasInfluencedBy" id="dfn-wasinfluencedby" class="internalDFN"><span class="insert">Influence</span></dfn><sup><a class="internalDFN" href="#dfn-wasinfluencedby"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="insert"> relation</span><span class="withPn">, written <span class="delete">wasDerivedFrom(id, e2, e1, a, g2, u1,</span><span class="pnExpression"><span class="insert">wasInfluencedBy(id; o2, o1,</span> attrs)</span> in PROV-N,</span> has:</p>
<ul>
-<li><span class="attribute" id="influence.id">id</span>: an <em class="rfc2119" title="optional">optional</em> identifier identifying the relation;</li>
-<li><span class="attribute" id="influence.influencee">influencee</span>: an identifier (<span class="name">o2</span>) for an entity, activity, or agent;
-</li><li><span class="attribute" id="influence.influencer">influencer</span>: an identifier (<span class="name">o1</span>) for an ancestor entity, activity, or agent that the former depends on;
-</li><li><span class="attribute" id="influence.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set (<span class="name">attrs</span>) of attribute-value pairs representing additional information about this relation.</li>
+<li><span class="attribute" id="influence.id">id</span>: an <em class="rfc2119" title="optional">optional</em> identifier<span class="delete"> for a derivation;</span>
+<span class="delete">generatedEntity</span><span class="delete">: the identifier (</span><span class="delete">ee</span><span class="delete">) of the entity generated by the derivation;</span>
+<span class="delete">usedEntity</span><span class="delete">: the identifier (</span><span class="delete">e1</span><span class="delete">) of the entity used by the derivation;</span>
+<span class="delete">activity</span><span class="delete">: an </span><span class="delete">optional</span><span class="delete"> identifier (</span><span class="delete">a</span><span class="delete">) for the activity using and generating the above entities;</span>
+<span class="delete">generation</span><span class="delete">: an </span><span class="delete">optional</span><span class="delete"> identifier (</span><span class="delete">g2</span><span class="delete">) for the generation involving the generated entity and activity;</span>
+<span class="delete">usage</span><span class="delete">: an </span><span class="delete">optional</span><span class="delete"> identifier (</span><span class="delete">u1</span><span class="delete">) for the usage involving the used entity and activity;</span>
+<span class="delete">attributes</span><span class="delete">: an </span><span class="delete">optional</span><span class="delete"> set (</span><span class="delete">attrs</span><span class="delete">) of attribute-value pairs representing additional information about this derivation.</span>
+
+
+
+
+
+
+<span class="delete">The following descriptions are about derivations between </span><span class="delete">e2</span><span class="delete"> and </span><span class="delete">e1</span><span class="delete">, but no information is provided as to the identity of the activity (and usage and generation) underpinning the derivation. In the second line, a type attribute is also provided.</span>
+<span class="delete">wasDerivedFrom(e2, e1)
+wasDerivedFrom(e2, e1, [prov:type="physical transform"])
+</span>
+<span class="delete">The following description expresses that activity </span><span class="delete">a</span><span class="delete">,
+using the entity </span><span class="delete">e1</span><span class="delete"> according to usage </span><span class="delete">u1</span><span class="delete">,
+ derived the
+entity </span><span class="delete">e2</span><span class="delete"> and generated it according to generation
+ </span><span class="delete">g2</span><span class="delete">. It is followed by descriptions for generation </span><span class="delete">g2</span><span class="delete"> and usage </span><span class="delete">u1</span><span class="delete">.</span>
+<span class="delete">wasDerivedFrom(e2, e1, a, g2, u1)
+wasGeneratedBy(g2, e2, a, -)
+used(u1, a, e1, -)
+</span>
+<span class="delete">With such a comprehensive description of derivation, a program that analyzes provenance can identify the activity underpinning the derivation, it can identify how the original entity </span><span class="delete">e1</span><span class="delete"> was used by the activity (e.g. for instance, which argument it was passed as, if the activity is the result of a function invocation), and which output the derived entity </span><span class="delete">e2</span><span class="delete"> was obtained from (say, for a function returning multiple results).</span>
+
+
+
+
+
+
+
+
+<span class="delete">4.3.2 </span><span class="delete">Revision</span>
+
+<span class="delete"> A </span><span class="delete">revision</span><span class="delete"> is a derivation that revises an entity into a revised version. </span>
+
+<span class="delete"> Deciding whether something is made available as a revision of something else usually involves an agent who takes responsibility for approving that the former is a due variant of the latter.
+ The agent who is responsible for the revision may optionally be specified.
+ Revision is a particular case of </span><span class="delete">derivation</span><span class="delete"> of an entity into its revised version.</span>
+
+<span class="delete"> A </span><span class="delete">revision</span><span class="delete"> relation</span><span class="delete">, written </span><span class="delete">wasRevisionOf(id,e2,e1,ag,attrs)</span><span class="delete"> in PROV-N,</span><span class="delete"> has:</span>
+
+<span class="delete">id</span><span class="delete">: an </span><span class="delete">optional</span><span class="delete"> identifier for</span><span class="insert"> identifying</span> the relation;</li>
+<li><span class="delete">newer</span><span class="attribute" id="influence.influencee"><span class="insert">influencee</span></span>:<span class="delete"> the</span><span class="insert"> an</span> identifier (<span class="name"><span class="delete">e2</span><span class="insert">o2</span></span>) <span class="delete">of the revised entity;</span><span class="insert">for an entity, activity, or agent;</span>
+</li><li><span class="delete">older</span><span class="attribute" id="influence.influencer"><span class="insert">influencer</span></span>: <span class="delete">the</span><span class="insert">an</span> identifier (<span class="name"><span class="delete">e1</span><span class="insert">o1</span></span>) <span class="delete">of the older entity;</span><span class="insert">for an ancestor entity, activity, or agent that the former depends on;</span>
+</li><li><span class="delete">responsibility</span><span class="attribute" id="influence.attributes"><span class="insert">attributes</span></span>: an <em class="rfc2119" title="optional">optional</em><span class="delete"> identifier (</span><span class="delete">ag</span><span class="delete">) for the agent who approved the newer entity as a variant of the older;
+</span><span class="delete">attributes</span><span class="delete">: an </span><span class="delete">optional</span> set (<span class="name">attrs</span>) of attribute-value pairs representing additional information about this relation.</li>
</ul>
+
+
+
+
+
<p>
-<a href="#concept-usage" class="internalDFN">Usage</a>, <a href="#concept-start" class="internalDFN">start</a>, <a href="#concept-end" class="internalDFN">end</a>, <a href="#concept-generation" class="internalDFN">generation</a>, <a href="#concept-invalidation" class="internalDFN">invalidation</a>, <a href="#concept-communication" class="internalDFN">communication</a>, <a href="#concept-derivation" class="internalDFN">derivation</a>, <a href="#concept-attribution" class="internalDFN">attribution</a>, <a href="#concept-activityAssociation" class="internalDFN">association</a>, and <a href="#concept-delegation" class="internalDFN">delegation</a> are particular cases of influence. It is <em class="rfc2119" title="recommended">recommended</em> to adopt these more specific relations when writing provenance descriptions. It is anticipated that the <a href="#concept-influence" class="internalDFN">Influence</a> relation may be useful to express queries over provenance information.
-</p>
-
-<div class="anexample" id="example_38"><div class="anexampleTitle">Example 38<sup><a class="internalDFN" href="#example_38"><span class="diamond"> ◊</span></a></sup></div>
-<p>We refer to the example of <a class="section-ref" href="#section-example-two"><span>Section 4.2</span></a>, and specifically to <a href="#prov-a-document2-top">Figure 3</a>.
-We could have expressed that the influence of
-<span class="name">w3:Consortium</span>
-on <span class="name">tr:WD-prov-dm-20111215</span>.
-</p><pre class="codeexample"> wasInfluencedBy(tr:WD-prov-dm-20111215, w3:Consortium)
+<span class="delete">Revisiting</span><a href="#concept-usage" class="internalDFN"><span class="insert">Usage</span></a><span class="insert">, </span><a href="#concept-start" class="internalDFN"><span class="insert">start</span></a><span class="insert">, </span><a href="#concept-end" class="internalDFN"><span class="insert">end</span></a><span class="insert">, </span><a href="#concept-generation" class="internalDFN"><span class="insert">generation</span></a><span class="insert">, </span><a href="#concept-invalidation" class="internalDFN"><span class="insert">invalidation</span></a><span class="insert">, </span><a href="#concept-communication" class="internalDFN"><span class="insert">communication</span></a><span class="insert">, </span><a href="#concept-derivation" class="internalDFN"><span class="insert">derivation</span></a><span class="insert">, </span><a href="#concept-attribution" class="internalDFN"><span class="insert">attribution</span></a><span class="insert">, </span><a href="#concept-activityAssociation" class="internalDFN"><span class="insert">association</span></a><span class="insert">, and </span><a href="#concept-delegation" class="internalDFN"><span class="insert">delegation</span></a><span class="insert"> are particular cases of influence. It is </span><em class="rfc2119" title="recommended"><span class="insert">recommended</span></em><span class="insert"> to adopt these more specific relations when writing provenance descriptions. It is anticipated that the </span><a href="#concept-influence" class="internalDFN"><span class="insert">Influence</span></a><span class="insert"> relation may be useful to express queries over provenance information.
+</span></p>
+
+<div class="anexample" id="example_38"><div class="anexampleTitle"><span class="insert">Example 38</span><sup><a class="internalDFN" href="#example_38"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
+<p><span class="insert">We refer to</span> the example of <a class="section-ref" href="#section-example-two"><span>Section <span class="delete">3.2</span><span class="insert">4.2</span></span></a>,<span class="delete">
+we can now state</span><span class="insert"> and specifically to </span><a href="#prov-a-document2-top"><span class="insert">Figure 3</span></a><span class="insert">.
+We could have expressed</span> that the <span class="delete">report
+ </span><span class="insert">influence of
+</span><span class="name"><span class="insert">w3:Consortium</span></span><span class="insert">
+on </span><span class="name">tr:WD-prov-dm-20111215</span><span class="delete"> is a revision of
+ the report </span><span class="delete">tr:WD-prov-dm-20111018</span><span class="delete">, approved by
+agent </span><span class="delete">w3:Consortium</span>.
+</p><pre class="codeexample"><span class="delete">entity(tr:WD-prov-dm-20111215, [ prov:type="process:RecsWD" %% xsd:QName ])
+entity(tr:WD-prov-dm-20111018, [ prov:type="process:RecsWD" %% xsd:QName ])
+wasRevisionOf(tr:WD-prov-dm-20111215, tr:WD-prov-dm-20111018,</span><span class="insert"> wasInfluencedBy(tr:WD-prov-dm-20111215,</span> w3:Consortium)
</pre>
-Instead, it is <em class="rfc2119" title="recommended">recommended</em> to express the more specific description:
-<pre class="codeexample"> wasAttributedTo(tr:WD-prov-dm-20111215, w3:Consortium)
-</pre>
+<span class="insert">Instead, it is </span><em class="rfc2119" title="recommended"><span class="insert">recommended</span></em><span class="insert"> to express the more specific description:
+</span><pre class="codeexample"><span class="insert"> wasAttributedTo(tr:WD-prov-dm-20111215, w3:Consortium)
+</span></pre>
</div>
+
+
+
+<span class="delete">4.3.3 </span><span class="delete">Quotation</span>
+
+
+<span class="delete"> A </span><span class="delete">quotation</span><span class="delete"> is the repeat of (some or all of) an entity, such as text or image, by someone other than its original author. </span>
+
+
+<span class="delete">Quotation
+ is a particular case of </span><span class="delete">derivation</span><span class="delete"> in which entity </span><span class="delete">e2</span><span class="delete"> is derived from an original entity </span><span class="delete">e1</span><span class="delete"> by copying, or "quoting", some or all of it.
+ A </span><span class="delete">quotation</span><span class="delete"> relation</span><span class="delete">, written </span><span class="delete">wasQuotedFrom(id,e2,e1,ag2,ag1,attrs)</span><span class="delete"> in PROV-N,</span><span class="delete"> has:</span>
+
+<span class="delete">id</span><span class="delete">: an </span><span class="delete">optional</span><span class="delete"> identifier for the relation;</span>
+<span class="delete">quote</span><span class="delete">: an identifier (</span><span class="delete">e2</span><span class="delete">) for the entity that represents the quote (the partial copy);
+</span><span class="delete">original</span><span class="delete">: an identifier (</span><span class="delete">e1</span><span class="delete">) for the original entity being quoted;
+</span><span class="delete">quoterAgent</span><span class="delete">: an </span><span class="delete">optional</span><span class="delete"> identifier (</span><span class="delete">ag2</span><span class="delete">) for the agent who performs the quote;
+</span><span class="delete">originalAgent</span><span class="delete">: an </span><span class="delete">optional</span><span class="delete"> identifier (</span><span class="delete">ag1</span><span class="delete">) for the agent to whom the original entity is attributed;
+</span><span class="delete">attributes</span><span class="delete">: an </span><span class="delete">optional</span><span class="delete"> set (</span><span class="delete">attrs</span><span class="delete">) of attribute-value pairs representing additional information about this relation.</span>
+
+
+
+
+<span class="delete">
+The following paragraph is a quote from one of </span><span class="delete">the author's blogs</span><span class="delete">.
+</span><span class="delete">
+"During the workshop, it became clear to me that the consensus based models (which are often graphical in nature) can not only be formalized but also be directly connected to these database focused formalizations. I just needed to get over the differences in syntax. This could imply that we could have nice way to trace provenance across systems and through databases and be able to understand the mathematical properties of this interconnection."</span>
+
+<span class="delete">If </span><span class="delete">wp:thoughts-from-the-dagstuhl-principles-of-provenance-workshop/</span><span class="delete"> denotes the original blog by agent </span><span class="delete">ex:Paul</span><span class="delete">, and
+ </span><span class="delete">dm:bl-dagstuhl</span><span class="delete"> denotes the above paragraph, then the following descriptions express that the above paragraph is copied by agent </span><span class="delete">ex:Luc</span><span class="delete"> from a part of the blog, attributed to the agent </span><span class="delete">ex:Paul</span><span class="delete">.</span>
+<span class="delete">entity(wp:thoughts-from-the-dagstuhl-principles-of-provenance-workshop/)
+agent(ex:Luc)
+agent(ex:Paul)
+wasQuotedFrom(dm:bl-dagstuhl,wp:thoughts-from-the-dagstuhl-principles-of-provenance-workshop/,ex:Luc,ex:Paul)
+</span>
+
+
+
+
+
</div>
-</div>
+</div>
+
+
+
+<span class="delete">4.3.4 </span><span class="delete">Original Source</span>
+
+
+<span class="delete"> An </span><span class="delete">original source</span><span class="delete"> refers to the source material that is closest to the person, information, period, or idea being studied. </span>
+
+
+<span class="delete">An </span><span class="delete">original source</span><span class="delete"> relation is a particular case of </span><span class="delete">derivation</span><span class="delete">
+that aims to give
+credit to the source that originated some information. It is recognized that it may be
+hard to determine which entity constitutes an original source. This definition is inspired by
+</span><span class="delete">original-source</span><span class="delete"> as defined in
+</span><span class="delete">http://googlenewsblog.blogspot.com/2010/11/credit-where-credit-is-due.html</span><span class="delete">.</span>
+
+
+<span class="delete"> An </span><span class="delete">original source</span><span class="delete"> relation</span><span class="delete">, written </span><span class="delete">hadOriginalSource(id,e2,e1,attrs)</span><span class="delete">,</span><span class="delete"> has:</span>
+
+<span class="delete">id</span><span class="delete">: an </span><span class="delete">optional</span><span class="delete"> identifier for the relation;</span>
+<span class="delete">derived</span><span class="delete">: an identifier (</span><span class="delete">e2</span><span class="delete">) for the derived entity; </span>
+<span class="delete">source</span><span class="delete">: an identifier (</span><span class="delete">e1</span><span class="delete">) for the original source entity;</span>
+<span class="delete">attributes</span><span class="delete">: an </span><span class="delete">optional</span><span class="delete"> set (</span><span class="delete">attrs</span><span class="delete">) of attribute-value pairs representing additional information about this relation.</span>
+
+
+
+<span class="delete">
+Let us consider the concept introduced in the current section, identified as </span><span class="delete">dm:concept-original-source</span><span class="delete">, and
+the Google page </span><span class="delete">go:credit-where-credit-is-due.html</span><span class="delete">, where the notion original-source was originally described (to the knowledge of the authors).
+</span><span class="delete">entity(dm:concept-original-source)
+entity(go:credit-where-credit-is-due.html)
+hadOriginalSource(dm:concept-original-source,go:credit-where-credit-is-due.html)
+</span>
+
+
+
+
+
+
+<span class="delete">4.3.5 </span><span class="delete">Trace</span>
+
+
+ <span class="delete">Trace</span><span class="delete"> is the ability to link back an entity to another by means of derivation or responsibility relations, possibly repeatedly traversed. </span>
+
+
+
+<span class="delete"> A trace relation between two entities </span><span class="delete">e2</span><span class="delete"> and </span><span class="delete">e1</span><span class="delete"> is a generic dependency of </span><span class="delete">e2</span><span class="delete">
+on </span><span class="delete">e1</span><span class="delete"> that indicates either that </span><span class="delete">e1</span><span class="delete"> may have been necessary for </span><span class="delete">e2</span><span class="delete"> to be created, or that </span><span class="delete">e1</span><span class="delete"> bears
+some responsibility for </span><span class="delete">e2</span><span class="delete">'s existence.
+
+
+</span><span class="delete">A </span><span class="delete">Trace</span><span class="delete"> relation </span><span class="delete">, written </span><span class="delete">tracedTo(id,e2,e1,attrs)</span><span class="delete"> in PROV-N,</span><span class="delete"> has:</span>
+
+<span class="delete">id</span><span class="delete">: an </span><span class="delete">optional</span><span class="delete"> identifier identifying the relation;</span>
+<span class="delete">entity</span><span class="delete">: an identifier (</span><span class="delete">e2</span><span class="delete">) for an entity;
+</span><span class="delete">ancestor</span><span class="delete">: an identifier (</span><span class="delete">e1</span><span class="delete">) for an ancestor entity that the former depends on;
+</span><span class="delete">attributes</span><span class="delete">: an </span><span class="delete">optional</span><span class="delete"> set (</span><span class="delete">attrs</span><span class="delete">) of attribute-value pairs representing additional information about this relation.</span>
+
+<span class="delete">We note that the ancestor is allowed to be an agent since agents are entities. </span>
+
+
+<span class="delete">Derivation</span><span class="delete"> and </span><span class="delete">attribution</span><span class="delete"> are particular cases of trace.
+</span>
+
+
+<span class="delete">We refer to the example of </span><span class="delete">Section 3.1</span><span class="delete">, and specifically to </span><span class="delete">Figure 3</span><span class="delete">. We can see that there is a path from
+</span><span class="delete">tr:WD-prov-dm-20111215</span><span class="delete"> to
+</span><span class="delete">w3:Consortium</span><span class="delete"> and to
+</span><span class="delete">process:rec-advance</span><span class="delete">. This is expressed as follows.
+</span><span class="delete"> tracedTo(tr:WD-prov-dm-20111215,w3:Consortium)
+ tracedTo(tr:WD-prov-dm-20111215,process:rec-advance)
+</span>
+
+
+
+
+
+
+
+
+
+
<div id="component4" class="section">
-<h3><span class="secno">5.4 </span>Component 4: Bundles</h3>
-
-
-<p>The fourth component of PROV-DM is concerned with bundles, a mechanism to support provenance of provenance.
-<a href="#figure-component4">Figure <span class="delete">8</span><span class="insert">9</span></a> depicts a UML class diagram for the fourth component. It comprises a <a href="#concept-bundle" class="internalDFN">Bundle</a> class defined as a subclass of <a href="#concept-entity" class="internalDFN">Entity</a>.
-</p>
+<h3><span class="secno"><span class="delete">4.4</span><span class="insert">5.4</span> </span>Component 4:<span class="insert"> Bundles</span></h3>
+
+
+<p><span class="insert">The fourth component of PROV-DM is concerned with bundles, a mechanism to support provenance of provenance.
+</span><a href="#figure-component4"><span class="insert">Figure 9</span></a><span class="insert"> depicts a UML class diagram for the fourth component. It comprises a </span><a href="#concept-bundle" class="internalDFN"><span class="insert">Bundle</span></a><span class="insert"> class defined as a subclass of </span><a href="#concept-entity" class="internalDFN"><span class="insert">Entity</span></a><span class="insert">.
+</span></p>
<div style="text-align: center;">
<span class="figure" style="max-width: 95%; ">
<img src="uml/component4.png" alt="bundles"><br>
-<span class="figcaption" id="figure-component4">Figure <span class="delete">8:</span><span class="insert">9:</span> Bundle Component Overview</span>
+<span class="figcaption" data-count="9" id="figure-component4"><span class="insert">Figure 9</span><sup><a class="internalDFN" href="#figure-component4"><span class="diamond"><span class="insert"> ◊:</span></span></a></sup><span class="insert"> Figure 9: Bundle Component Overview</span></span>
</span>
</div>
@@ -2988,29 +3657,29 @@
<div id="term-bundle" class="section">
-<h4><span class="secno">5.4.1 </span>Bundle constructor</h4>
+<h4><span class="secno"><span class="insert">5.4.1 </span></span><span class="insert">Bundle constructor</span></h4>
<p>
-<span class="glossary-ref">
- A <dfn id="concept-bundle" class="internalDFN">bundle</dfn><sup><a class="internalDFN" href="#concept-bundle"><span class="diamond"> ◊</span></a></sup> is a named set of provenance descriptions, and is itself an entity, so allowing provenance of provenance to be expressed. </span>
+<span class="glossary-ref"><span class="insert">
+ A </span><dfn id="concept-bundle" class="internalDFN"><span class="insert">bundle</span></dfn><sup><a class="internalDFN" href="#concept-bundle"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="insert"> is a named set of provenance descriptions, and is itself an entity, so allowing provenance of provenance to be expressed. </span></span>
</p>
<p>
-</p><div class="attributes" id="attributes-bundle">
- A <dfn title="dfn-bundle" id="dfn-bundle-declaration" class="internalDFN">bundle constructor</dfn><sup><a class="internalDFN" href="#dfn-bundle-declaration"><span class="diamond"> ◊</span></a></sup> allows the content and the name of a bundle to be specified; it is written <span class="pnExpression">bundle id description_1 ... description_n endBundle</span> and consists of:
-<ul>
-<li><span class="attribute" id="bundle.declaration.id">id</span>: an identifier for the bundle;</li>
-<li><span class="attribute" id="bundle.declaration.descriptions">descriptions</span>: a set of provenance descriptions <span class="name">
-description_1</span>, ..., <span class="name">description_n</span>.</li>
+</p><div class="attributes" id="attributes-bundle"><span class="insert">
+ A </span><dfn title="dfn-bundle" id="dfn-bundle-declaration" class="internalDFN"><span class="insert">bundle constructor</span></dfn><sup><a class="internalDFN" href="#dfn-bundle-declaration"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="insert"> allows the content and the name of a bundle to be specified; it is written </span><span class="pnExpression"><span class="insert">bundle id description_1 ... description_n endBundle</span></span><span class="insert"> and consists of:
+</span><ul>
+<li><span class="attribute" id="bundle.declaration.id"><span class="insert">id</span></span><span class="insert">: an identifier for the bundle;</span></li>
+<li><span class="attribute" id="bundle.declaration.descriptions"><span class="insert">descriptions</span></span><span class="insert">: a set of provenance descriptions </span><span class="name"><span class="insert">
+description_1</span></span><span class="insert">, ..., </span><span class="name"><span class="insert">description_n</span></span><span class="insert">.</span></li>
</ul>
-<p>A bundle's identifier <span class="name">id</span> identifies a unique set of descriptions.</p>
+<p><span class="insert">A bundle's identifier </span><span class="name"><span class="insert">id</span></span><span class="insert"> identifies a unique set of descriptions.</span></p>
</div>
-<p>There may be other kinds of bundles not directly expressible by this constructor, such as <span class="delete">napkin,</span><span class="insert">provenance descriptions handwritten on a letter or a</span> whiteboard, etc. <span class="delete">What ever</span><span class="insert">Whatever</span> the means by which bundles are expressed, all can be described, as in the following section.</p>
+<p><span class="insert">There may be other kinds of bundles not directly expressible by this constructor, such as provenance descriptions handwritten on a letter or a whiteboard, etc. Whatever the means by which bundles are expressed, all can be described, as in the following section.</span></p>
</div>
@@ -3019,79 +3688,79 @@
<div id="term-bundle-entity" class="section">
-<h4><span class="secno">5.4.2 </span>Bundle Type</h4>
-
-<p>A bundle is a named set of descriptions, but it is also an entity so that its provenance can be described. </p>
+<h4><span class="secno"><span class="insert">5.4.2 </span></span><span class="insert">Bundle Type</span></h4>
+
+<p><span class="insert">A bundle is a named set of descriptions, but it is also an entity so that its provenance can be described. </span></p><span class="insert">
PROV defines the following type for bundles:
-<ul>
-<li><span class="name">prov:Bundle</span> is the type that denotes <a title="bundle" href="#concept-bundle" class="internalDFN">bundles</a>.
-</li></ul>
-
-
-<p>
-A bundle description is of the form <span class="pnExpression">entity(id,[prov:type='prov:Bundle', attr1=val1, ...])</span>
-where <span class="name">id</span> is an identifier denoting a bundle,
- a type <span>prov:Bundle</span> and
-an <em class="rfc2119" title="optional">optional</em> set of attribute-value pairs ((<span class="name">attr1</span>, <span class="name">val1</span>), ...) representing additional information about this bundle.
-</p>
-
-
-<p>The provenance of provenance can then be described using PROV constructs, as illustrated by
-<a href="#anexample-provenance-of-provenance" class="anexample-ref"><span>Example 39</span></a>
+</span><ul>
+<li><span class="name"><span class="insert">prov:Bundle</span></span><span class="insert"> is the type that denotes </span><a title="bundle" href="#concept-bundle" class="internalDFN"><span class="insert">bundles</span></a><span class="insert">.
+</span></li></ul>
+
+
+<p><span class="insert">
+A bundle description is of the form </span><span class="pnExpression"><span class="insert">entity(id,[prov:type='prov:Bundle', attr1=val1, ...])</span></span><span class="insert">
+where </span><span class="name"><span class="insert">id</span></span><span class="insert"> is an identifier denoting a bundle,
+ a type </span><span><span class="insert">prov:Bundle</span></span><span class="insert"> and
+an </span><em class="rfc2119" title="optional"><span class="insert">optional</span></em><span class="insert"> set of attribute-value pairs ((</span><span class="name"><span class="insert">attr1</span></span><span class="insert">, </span><span class="name"><span class="insert">val1</span></span><span class="insert">), ...) representing additional information about this bundle.
+</span></p>
+
+
+<p><span class="insert">The provenance of provenance can then be described using PROV constructs, as illustrated by
+</span><a href="#anexample-provenance-of-provenance" class="anexample-ref"><span><span class="insert">Example 39</span></span></a><span class="insert">
and
-<a href="#anexample-provenance-aggregation" class="anexample-ref"><span>Example 40</span></a>.</p>
-
-<div class="anexample" id="anexample-provenance-of-provenance"><div class="anexampleTitle">Example 39<sup><a class="internalDFN" href="#anexample-provenance-of-provenance"><span class="diamond"> ◊</span></a></sup></div>
-<p>Let us consider two entities <span class="name">ex:report1</span> and <span class="name">ex:report2</span>.</p>
-<pre class="codeexample">
+</span><a href="#anexample-provenance-aggregation" class="anexample-ref"><span><span class="insert">Example 40</span></span></a><span class="insert">.</span></p>
+
+<div class="anexample" id="anexample-provenance-of-provenance"><div class="anexampleTitle"><span class="insert">Example 39</span><sup><a class="internalDFN" href="#anexample-provenance-of-provenance"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
+<p><span class="insert">Let us consider two entities </span><span class="name"><span class="insert">ex:report1</span></span><span class="insert"> and </span><span class="name"><span class="insert">ex:report2</span></span><span class="insert">.</span></p>
+<pre class="codeexample"><span class="insert">
entity(ex:report1, [ prov:type="report", ex:version=1 ])
wasGeneratedBy(ex:report1, -, 2012-05-24T10:00:01)
entity(ex:report2, [ prov:type="report", ex:version=2])
wasGeneratedBy(ex:report2, -, 2012-05-25T11:00:01)
wasDerivedFrom(ex:report2, ex:report1)
-</pre>
-
-<p>Let us assume that Bob observed the creation of <span class="name">ex:report1</span>.
-A first bundle can be expressed.</p>
-<pre class="codeexample">
+</span></pre>
+
+<p><span class="insert">Let us assume that Bob observed the creation of </span><span class="name"><span class="insert">ex:report1</span></span><span class="insert">.
+A first bundle can be expressed.</span></p>
+<pre class="codeexample"><span class="insert">
bundle bob:bundle1
entity(ex:report1, [ prov:type="report", ex:version=1 ])
wasGeneratedBy(ex:report1, -, 2012-05-24T10:00:01)
endBundle
-</pre>
-
-<p>In contrast,
-Alice observed the creation of <span class="name">ex:report2</span> and its derivation from <span class="name">ex:report1</span>.
-A separate bundle can also be expressed.</p>
-<pre class="codeexample">
+</span></pre>
+
+<p><span class="insert">In contrast,
+Alice observed the creation of </span><span class="name"><span class="insert">ex:report2</span></span><span class="insert"> and its derivation from </span><span class="name"><span class="insert">ex:report1</span></span><span class="insert">.
+A separate bundle can also be expressed.</span></p>
+<pre class="codeexample"><span class="insert">
bundle alice:bundle2
entity(ex:report1)
entity(ex:report2, [ prov:type="report", ex:version=2 ])
wasGeneratedBy(ex:report2, -, 2012-05-25T11:00:01)
wasDerivedFrom(ex:report2, ex:report1)
endBundle
-</pre>
-
-<p>The first bundle contains the descriptions corresponding to Bob observing the creation of <span class="name">ex:report1</span>. Its provenance can be described as follows.</p>
-<pre class="codeexample">
+</span></pre>
+
+<p><span class="insert">The first bundle contains the descriptions corresponding to Bob observing the creation of </span><span class="name"><span class="insert">ex:report1</span></span><span class="insert">. Its provenance can be described as follows.</span></p>
+<pre class="codeexample"><span class="insert">
entity(bob:bundle1, [prov:type='prov:Bundle'])
wasGeneratedBy(bob:bundle1, -, 2012-05-24T10:30:00)
wasAttributedTo(bob:bundle1, ex:Bob)
-</pre>
-
-<p>In contrast, the second bundle is attributed to Alice who
-observed the derivation of <span class="name">ex:report2</span> from <span class="name">ex:report1</span>.</p>
-<pre class="codeexample">
+</span></pre>
+
+<p><span class="insert">In contrast, the second bundle is attributed to Alice who
+observed the derivation of </span><span class="name"><span class="insert">ex:report2</span></span><span class="insert"> from </span><span class="name"><span class="insert">ex:report1</span></span><span class="insert">.</span></p>
+<pre class="codeexample"><span class="insert">
entity(alice:bundle2, [ prov:type='prov:Bundle' ])
wasGeneratedBy(alice:bundle2, -, 2012-05-25T11:15:00)
wasAttributedTo(alice:bundle2, ex:Alice)
-</pre>
+</span></pre>
</div>
-<div class="anexample" id="anexample-provenance-aggregation"><div class="anexampleTitle">Example 40<sup><a class="internalDFN" href="#anexample-provenance-aggregation"><span class="diamond"> ◊</span></a></sup></div>
-<p>A provenance aggregator could merge two bundles, resulting in a novel bundle, whose provenance is described as follows.</p>
-<pre class="codeexample">
+<div class="anexample" id="anexample-provenance-aggregation"><div class="anexampleTitle"><span class="insert">Example 40</span><sup><a class="internalDFN" href="#anexample-provenance-aggregation"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
+<p><span class="insert">A provenance aggregator could merge two bundles, resulting in a novel bundle, whose provenance is described as follows.</span></p>
+<pre class="codeexample"><span class="insert">
bundle agg:bundle3
entity(ex:report1, [ prov:type="report", ex:version=1 ])
wasGeneratedBy(ex:report1, -, 2012-05-24T10:00:01)
@@ -3106,9 +3775,9 @@
wasAttributedTo(agg:bundle3, ex:aggregator01)
wasDerivedFrom(agg:bundle3, bob:bundle1)
wasDerivedFrom(agg:bundle3, alice:bundle2)
-</pre>
-<p>The new bundle is given a new identifier <span class="name">agg:bundle3</span> and is attributed to the <span class="name">ex:aggregator01</span> agent.
-</p></div>
+</span></pre>
+<p><span class="insert">The new bundle is given a new identifier </span><span class="name"><span class="insert">agg:bundle3</span></span><span class="insert"> and is attributed to the </span><span class="name"><span class="insert">ex:aggregator01</span></span><span class="insert"> agent.
+</span></p></div>
</div>
@@ -3119,60 +3788,72 @@
<div id="component5" class="section">
-<h3><span class="secno">5.5 </span>Component 5: Alternate Entities</h3>
-
-
-<p>The fifth component of PROV-DM is concerned with
+<h3><span class="secno"><span class="insert">5.5 </span></span><span class="insert">Component 5:</span> Alternate Entities</h3>
+
+
+<p>The <span class="delete">fourth</span><span class="insert">fifth</span> component of PROV-DM is concerned with
relations <a href="#concept-specialization" class="internalDFN">specialization</a><span class="delete"> and</span><span class="insert">,</span> <a href="#concept-alternate" class="internalDFN">alternate</a><span class="insert">, and </span><a href="#concept-mention" class="internalDFN"><span class="insert">mention</span></a> between entities.
- <a href="#figure-component5">Figure <span class="delete">9</span><span class="insert">10</span></a> depicts
-the fifth component with a single class, two binary associations, and a ternary association.
+
+ <a href="#figure-component5">Figure <span class="delete">figure-component4</span><span class="insert">10</span></a> depicts
+the <span class="delete">fourth</span><span class="insert">fifth</span> component with a single <span class="delete">class</span><span class="insert">class, two binary associations,</span> and <span class="delete">two associations.</span><span class="insert">a ternary association.</span>
</p>
<div style="text-align: center;">
+
+
<span class="figure" style="max-width: 95%; ">
-
<img src="uml/component5.png" alt="alternates"><br>
-<span class="figcaption" id="figure-component5">Figure <span class="delete">9:</span><span class="insert">10:</span> Alternates Component Overview</span>
+<span class="figcaption" data-count="10" id="figure-component5">Figure <span class="delete">8:</span><span class="insert">10</span><sup><a class="internalDFN" href="#figure-component5"><span class="diamond"><span class="insert"> ◊:</span></span></a></sup><span class="insert"> Figure 10:</span> Alternates Component Overview</span>
</span>
</div>
-<p>Two provenance descriptions about the same thing may emphasize differents aspects of that thing.</p>
-<div class="anexample" id="entity-example1"><div class="anexampleTitle">Example 41<sup><a class="internalDFN" href="#entity-example1"><span class="diamond"> ◊</span></a></sup></div>
-<p>User Alice writes an article. In its provenance, she wishes to refer to the precise version of the article with a date-specific IRI, as she might edit the article later. Alternatively, user Bob refers to the article in general, independently of its variants over time.</p>
+
+
+
+
+
+
+<p><span class="delete">Wherever two people describe the</span><span class="insert">Two</span> provenance <span class="delete">of a</span><span class="insert">descriptions about the</span> same <span class="delete">thing,
+one cannot expect them to coordinate and agree on the identifiers to use to denote</span><span class="insert">thing may emphasize differents aspects of</span> that thing.</p>
+<div class="anexample" id="entity-example1"><div class="anexampleTitle"><span class="insert">Example 41</span><sup><a class="internalDFN" href="#entity-example1"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
+<p>User Alice writes an article. In its provenance, she wishes to refer to the precise version of the article with a date-specific <span class="delete">URI,</span><span class="insert">IRI,</span> as she might edit the article later. Alternatively, user Bob refers to the article in general, independently of its variants over time.</p>
</div>
<p>
-The PROV data model introduces relations, called <span class="delete">specialization</span><span class="insert">specialization, alternate,</span> and <span class="delete">alternate</span><span class="insert">mention</span>
-that allow entities to be linked together. They are defined as follows. </p>
+<span class="delete">To allow for identifiers to be chosen freely</span><span class="insert">The PROV data model introduces relations, called specialization, alternate,</span> and <span class="delete">independently by each user, the PROV data model introduces relations</span><span class="insert">mention</span>
+that allow entities to be linked together.<span class="delete">
+The following two relations</span><span class="insert"> They</span> are <span class="delete">introduced for expressing specialized or alternate entities.</span><span class="insert">defined as follows.</span> </p>
<div id="term-specialization" class="section">
-<h4><span class="secno">5.5.1 </span>Specialization</h4>
-
-
-<span class="glossary-ref"> An entity that is a <dfn id="concept-specialization" class="internalDFN">specialization</dfn><sup><a class="internalDFN" href="#concept-specialization"><span class="diamond"> ◊</span></a></sup> of another shares all aspects of the latter, and additionally presents more specific aspects of the same thing as the latter. In particular, the lifetime of the entity being specialized contains that of any specialization. </span>
+<h4><span class="secno"><span class="delete">4.4.1</span><span class="insert">5.5.1</span> </span>Specialization</h4>
+
+
+<span class="glossary-ref"> An entity <span class="insert">that </span>is a <dfn id="concept-specialization" class="internalDFN">specialization</dfn><sup><a class="internalDFN" href="#concept-specialization"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> of another <span class="delete">if they refer to some common</span><span class="insert">shares all aspects of the latter, and additionally presents more specific aspects of the same</span> thing <span class="delete">but the former is a more constrained</span><span class="insert">as the latter. In particular, the lifetime of the</span> entity <span class="delete">than the latter. The common thing does not need to be identified.</span><span class="insert">being specialized contains that of any specialization.</span> </span>
<p>
-Examples of aspects include a time period, an abstraction, and a context associated with the entity.</p>
+Examples of <span class="delete">constraints </span><span class="insert">aspects </span>include a time period, an abstraction, and a context associated with the entity.</p>
<p>
-</p><div class="attributes" id="attributes-specialization">A <dfn title="specializationOf" id="dfn-specializationof" class="internalDFN">specialization</dfn><sup><a class="internalDFN" href="#dfn-specializationof"><span class="diamond"> ◊</span></a></sup> relation<span class="withPn">, written <span class="pnExpression">specializationOf(infra, supra)</span> in PROV-N,</span> has:
+</p><div class="attributes" id="attributes-specialization">A <dfn title="specializationOf" id="dfn-specializationof" class="internalDFN">specialization</dfn><sup><a class="internalDFN" href="#dfn-specializationof"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> relation<span class="withPn">, written <span class="pnExpression"><span class="delete">specializationOf(sub, super)</span><span class="insert">specializationOf(infra, supra)</span></span> in PROV-N,</span> has:
<ul>
-<li><span class="attribute" id="specialization.specificEntity">specificEntity</span>: an identifier (<span class="name">infra</span>)
-of the entity that is a specialization of the general entity (<span class="name">supra</span>);</li>
-<li><span class="attribute" id="specialization.generalEntity">generalEntity</span>: an identifier (<span class="name">supra</span>) of the entity that is being specialized.</li>
+<li><span class="delete">specializedEntity</span><span class="attribute" id="specialization.specificEntity"><span class="insert">specificEntity</span></span>: an identifier (<span class="name"><span class="delete">sub</span><span class="insert">infra</span></span>)<span class="delete"> of the specialized entity;</span><span class="insert">
+of the entity that is a specialization of the general entity (</span><span class="name"><span class="insert">supra</span></span><span class="insert">);</span></li>
+<li><span class="attribute" id="specialization.generalEntity">generalEntity</span>: an identifier (<span class="name"><span class="delete">super</span><span class="insert">supra</span></span>) of the entity that is being specialized.</li>
</ul>
</div>
-<div class="anexample" id="anexample-specialization"><div class="anexampleTitle">Example 42<sup><a class="internalDFN" href="#anexample-specialization"><span class="diamond"> ◊</span></a></sup></div>
+
+
+<div class="anexample" id="anexample-specialization"><div class="anexampleTitle"><span class="insert">Example 42</span><sup><a class="internalDFN" href="#anexample-specialization"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
<p>
The BBC news home page on 2012-03-23 <span class="name">ex:bbcNews2012-03-23</span>
is a specialization of the BBC news page in general
@@ -3188,42 +3869,52 @@
+
+
+
+
+
+
+
+
+
</div>
<div id="term-alternate" class="section">
-<h4><span class="secno">5.5.2 </span>Alternate</h4>
-
-
-<span class="glossary-ref"> Two <dfn id="concept-alternate" class="internalDFN">alternate</dfn><sup><a class="internalDFN" href="#concept-alternate"><span class="diamond"> ◊</span></a></sup> entities present aspects of the same thing. These aspects may be the same or different, and the alternate entities may or may not overlap in time. </span>
+<h4><span class="secno"><span class="delete">4.4.2</span><span class="insert">5.5.2</span> </span>Alternate</h4>
+
+
+<span class="glossary-ref"> <span class="delete">An entity is </span><span class="insert">Two </span><dfn id="concept-alternate" class="internalDFN">alternate</dfn><span class="delete"> of another if they are both a specialization of some common entity. The common entity does</span><sup><a class="internalDFN" href="#concept-alternate"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="insert"> entities present aspects of the same thing. These aspects may be the same or different, and the alternate entities may or may</span> not <span class="delete">need to be identified. </span><span class="insert">overlap in time. </span></span>
-<p></p><div class="attributes" id="attributes-alternate">An <dfn title="alternateOf" id="dfn-alternateof" class="internalDFN">alternate</dfn><sup><a class="internalDFN" href="#dfn-alternateof"><span class="diamond"> ◊</span></a></sup> relation<span class="withPn">, written <span class="pnExpression">alternateOf(e1, e2)</span> in PROV-N,</span> has:
+<p></p><div class="attributes" id="attributes-alternate">An <dfn title="alternateOf" id="dfn-alternateof" class="internalDFN">alternate</dfn><sup><a class="internalDFN" href="#dfn-alternateof"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> relation<span class="withPn">, written <span class="pnExpression">alternateOf(e1, e2)</span> in PROV-N,</span> has:
<ul>
<li><span class="attribute" id="alternate.alternate1">alternate1</span>: an identifier (<span class="name">e1</span>) of the first of the two entities;</li>
<li><span class="attribute" id="alternate.alternate2">alternate2</span>: an identifier (<span class="name">e2</span>) of the second of the two entities.</li>
</ul>
</div>
-<div class="anexample" id="anexample-alternate"><div class="anexampleTitle">Example 43<sup><a class="internalDFN" href="#anexample-alternate"><span class="diamond"> ◊</span></a></sup></div>
+<div class="anexample" id="anexample-alternate"><div class="anexampleTitle"><span class="insert">Example 43</span><sup><a class="internalDFN" href="#anexample-alternate"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
<p>
A given news item on the BBC News site
<a href="http://www.bbc.co.uk/news/science-environment-17526723">bbc:news/science-environment-17526723</a> for desktop
is an alternate of a
<a href="http://www.bbc.co.uk/news/mobile/science-environment-17526723">bbc:news/mobile/science-environment-17526723</a> for mobile devices.</p>
-<pre class="codeexample">entity(bbc:news/science-environment-17526723,
+<pre class="codeexample">entity(bbc:news/science-environment-17526723,
[ prov:type="a news item for desktop"])
-entity(bbc:news/mobile/science-environment-17526723,
+entity(bbc:news/mobile/science-environment-17526723,
[ prov:type="a news item for mobile devices"])
-alternateOf(bbc:news/science-environment-17526723,
+alternateOf(bbc:news/science-environment-17526723,
bbc:news/mobile/science-environment-17526723)
</pre>
+<span class="delete">They are both specialization of an (unspecified) entity. </span>
</div>
-<div class="anexample" id="anexample-alternate2"><div class="anexampleTitle">Example 44<sup><a class="internalDFN" href="#anexample-alternate2"><span class="diamond"> ◊</span></a></sup></div>
+<div class="anexample" id="anexample-alternate2"><div class="anexampleTitle"><span class="insert">Example 44</span><sup><a class="internalDFN" href="#anexample-alternate2"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
<p>
Considering again the two versions of the technical report <span class="name"><a href="http://www.w3.org/TR/2011/WD-prov-dm-20111215">tr:WD-prov-dm-20111215</a></span> (second working draft) and <span class="name"><span class="name"><a href="http://www.w3.org/TR/2011/WD-prov-dm-20111018">tr:WD-prov-dm-20111018</a></span></span> (first working draft). They are alternate of each other.
</p><pre class="codeexample">entity(tr:WD-prov-dm-20111018)
@@ -3238,19 +3929,16 @@
<div id="term-mention" class="section">
-<h4><span class="secno">5.5.3 </span>Mention</h4>
-
-
+<h4><span class="secno"><span class="insert">5.5.3 </span></span><span class="insert">Mention</span></h4>
<div class="note">
-<p>This <span class="insert">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" </span>construct <span class="delete">is a </span><span class="delete">FEATURE AT RISK</span><span class="delete">.
-</span><span class="insert">might be removed from PROV if implementation experience reveals problems with supporting this construct.</span></p>
+<p><span class="insert">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>
-<p><span class="delete">The</span><span class="insert">An entity </span><span class="name"><span class="insert">e1</span></span><span class="insert"> may be mentioned in a bundle </span><span class="name"><span class="insert">b</span></span><span class="insert">, which contains some
+<p><span class="insert">An entity </span><span class="name"><span class="insert">e1</span></span><span class="insert"> may be mentioned in a bundle </span><span class="name"><span class="insert">b</span></span><span class="insert">, which contains some
descriptions about this entity </span><span class="name"><span class="insert">e1</span></span><span class="insert">: how </span><span class="name"><span class="insert">e1</span></span><span class="insert"> was generated and used, which activities </span><span class="name"><span class="insert">e1</span></span><span class="insert"> is involved with, the agents </span><span class="name"><span class="insert">e1</span></span><span class="insert"> is attributed to, etc. Other bundles may contain other descriptions about the same entity </span><span class="name"><span class="insert">e1</span></span><span class="insert">.
Some applications may want to interpret
this entity </span><span class="name"><span class="insert">e1</span></span><span class="insert"> with respect to the descriptions found in the bundle </span><span class="name"><span class="insert">b</span></span><span class="insert"> it occurs in. To this end, PROV allows a new entity </span><span class="name"><span class="insert">e2</span></span><span class="insert"> to be created, which is a specialization of the original entity </span><span class="name"><span class="insert">e1</span></span><span class="insert">, and which presents an additional aspect: the bundle </span><span class="name"><span class="insert">b</span></span><span class="insert"> containing some descriptions of </span><span class="name"><span class="insert">e1</span></span><span class="insert">. With this relation, applications that process </span><span class="name"><span class="insert">e2</span></span><span class="insert">
@@ -3258,66 +3946,66 @@
-<p><span class="insert">Thus, the</span> following notion is a relation between two entities with regard to a bundle. <span class="insert">
+<p><span class="insert">Thus, the following notion is a relation between two entities with regard to a bundle.
It is a special case of specialization.</span></p>
-<span class="glossary-ref"> The <dfn id="concept-mention" class="internalDFN">mention</dfn><sup><a class="internalDFN" href="#concept-mention"><span class="diamond"> ◊</span></a></sup> of an entity in a bundle (containing a description of this entity) is another entity that is a specialization of the former and that presents the bundle as a further additional aspect. </span>
-
-
-
-<p>
+<span class="glossary-ref"><span class="insert"> The </span><dfn id="concept-mention" class="internalDFN"><span class="insert">mention</span></dfn><sup><a class="internalDFN" href="#concept-mention"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="insert"> of an entity in a bundle (containing a description of this entity) is another entity that is a specialization of the former and that presents the bundle as a further additional aspect. </span></span>
+
+
+
+<p><span class="insert">
An entity is interpreted with respect to a bundle's description in a
domain specific manner. The mention of this entity with respect to
this bundle offers the opportunity to specialize it according to some
domain-specific interpretation.
-</p>
-
-
-<p>A mention of an entity in a bundle results in a specialization of this entity with extra fixed aspects, including the bundle that it is described in.
-</p>
-
-
-
-<p></p><div class="attributes" id="attributes-mention">A <dfn title="mentionOf" id="dfn-mentionof" class="internalDFN">mention</dfn><sup><a class="internalDFN" href="#dfn-mentionof"><span class="diamond"> ◊</span></a></sup> relation<span class="withPn">, written <span class="pnExpression">mentionOf(infra, supra, b)</span> in PROV-N,</span> has:
-<ul>
-<li><span class="attribute" id="mention.specificEntity">specificEntity</span>: an identifier (<span class="name">infra</span>)
-of the entity that is a mention of the general entity (<span class="name">supra</span>);</li>
-<li><span class="attribute" id="mention.generalEntity">generalEntity</span>: an identifier (<span class="name">supra</span>) of the entity that is being mentioned.</li>
-<li><span class="attribute" id="mention.bundle">bundle</span>: an <span class="delete">optional</span> identifier (<span class="name">b</span>) of a bundle that contains a description of <span class="name">supra</span> and further constitutes one additional aspect presented by <span class="name">infra</span>.</li>
+</span></p>
+
+
+<p><span class="insert">A mention of an entity in a bundle results in a specialization of this entity with extra fixed aspects, including the bundle that it is described in.
+</span></p>
+
+
+
+<p></p><div class="attributes" id="attributes-mention"><span class="insert">A </span><dfn title="mentionOf" id="dfn-mentionof" class="internalDFN"><span class="insert">mention</span></dfn><sup><a class="internalDFN" href="#dfn-mentionof"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="insert"> relation</span><span class="withPn"><span class="insert">, written </span><span class="pnExpression"><span class="insert">mentionOf(infra, supra, b)</span></span><span class="insert"> in PROV-N,</span></span><span class="insert"> has:
+</span><ul>
+<li><span class="attribute" id="mention.specificEntity"><span class="insert">specificEntity</span></span><span class="insert">: an identifier (</span><span class="name"><span class="insert">infra</span></span><span class="insert">)
+of the entity that is a mention of the general entity (</span><span class="name"><span class="insert">supra</span></span><span class="insert">);</span></li>
+<li><span class="attribute" id="mention.generalEntity"><span class="insert">generalEntity</span></span><span class="insert">: an identifier (</span><span class="name"><span class="insert">supra</span></span><span class="insert">) of the entity that is being mentioned.</span></li>
+<li><span class="attribute" id="mention.bundle"><span class="insert">bundle</span></span><span class="insert">: an identifier (</span><span class="name"><span class="insert">b</span></span><span class="insert">) of a bundle that contains a description of </span><span class="name"><span class="insert">supra</span></span><span class="insert"> and further constitutes one additional aspect presented by </span><span class="name"><span class="insert">infra</span></span><span class="insert">.</span></li>
</ul>
</div>
-<div class="anexample" id="anexample-mention-rating"><div class="anexampleTitle">Example 45<sup><a class="internalDFN" href="#anexample-mention-rating"><span class="diamond"> ◊</span></a></sup></div>
-<p><span class="delete">In the following example,</span><span class="insert">This example is concerned with a performance rating tool that reads and processes provenance to determine the performance of agents. To keep the example simple, an agent's performance is determined by the duration of the activities it is associated with. </span></p>
-<p><span class="insert">As an illustration, we consider that</span> two bundles <span class="name">ex:run1</span> and <span class="name">ex:run2</span> refer to an agent <span class="name">ex:Bob</span> that controlled two activities <span class="name">ex:a1</span> and <span class="name">ex:a2</span>. </p>
-
-<pre class="codeexample">bundle ex:run1
- activity(ex:a1, <span class="delete">2011-11-16T16:00:00,2011-11-16T17:00:00)</span><span class="insert">2011-11-16T16:00:00, 2011-11-16T17:00:00)</span> //duration: 1hour
- <span class="delete">wasAssociatedWith(ex:a1,ex:Bob,[prov:role="controller"])</span><span class="insert">wasAssociatedWith(ex:a1, ex:Bob, [prov:role="controller"])</span>
+<div class="anexample" id="anexample-mention-rating"><div class="anexampleTitle"><span class="insert">Example 45</span><sup><a class="internalDFN" href="#anexample-mention-rating"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
+<p><span class="insert">This example is concerned with a performance rating tool that reads and processes provenance to determine the performance of agents. To keep the example simple, an agent's performance is determined by the duration of the activities it is associated with. </span></p>
+<p><span class="insert">As an illustration, we consider that two bundles </span><span class="name"><span class="insert">ex:run1</span></span><span class="insert"> and </span><span class="name"><span class="insert">ex:run2</span></span><span class="insert"> refer to an agent </span><span class="name"><span class="insert">ex:Bob</span></span><span class="insert"> that controlled two activities </span><span class="name"><span class="insert">ex:a1</span></span><span class="insert"> and </span><span class="name"><span class="insert">ex:a2</span></span><span class="insert">. </span></p>
+
+<pre class="codeexample"><span class="insert">bundle ex:run1
+ activity(ex:a1, 2011-11-16T16:00:00, 2011-11-16T17:00:00) //duration: 1hour
+ wasAssociatedWith(ex:a1, ex:Bob, [prov:role="controller"])
endBundle
bundle ex:run2
- activity(ex:a2, <span class="delete">2011-11-17T10:00:00,2011-11-17T17:00:00)</span><span class="insert">2011-11-17T10:00:00, 2011-11-17T17:00:00)</span> //duration: 7hours
- <span class="delete">wasAssociatedWith(ex:a2,ex:Bob,[prov:role="controller"])</span><span class="insert">wasAssociatedWith(ex:a2, ex:Bob, [prov:role="controller"])</span>
+ activity(ex:a2, 2011-11-17T10:00:00, 2011-11-17T17:00:00) //duration: 7hours
+ wasAssociatedWith(ex:a2, ex:Bob, [prov:role="controller"])
endBundle
-</pre>
-<p><span class="delete">A</span><span class="insert">The</span> performance rating tool reads these bundles, and rates the performance of the agent described in these bundles. The performance rating tool creates a new bundle <span class="name">tool:analysis01</span> containing the following. A new agent <span class="name">tool:Bob-2011-11-16</span> is declared as a mention of <span class="name">ex:Bob</span> as described in bundle <span class="name">ex:run1</span>, and likewise for <span class="name">tool:Bob-2011-11-17</span> with respect to <span class="name">ex:run2</span>. The tool adds a domain-specific performance attribute to each of these specialized entities as follows: the performance of the agent in the first bundle is judged to be good since the duration of <span class="name">ex:a1</span> is one hour, whereas it is judged to be bad in the second bundle since <span class="name">ex:a2</span>'s duration is seven hours.
-
-</p><pre class="codeexample">bundle tool:analysis01
+</span></pre>
+<p><span class="insert">The performance rating tool reads these bundles, and rates the performance of the agent described in these bundles. The performance rating tool creates a new bundle </span><span class="name"><span class="insert">tool:analysis01</span></span><span class="insert"> containing the following. A new agent </span><span class="name"><span class="insert">tool:Bob-2011-11-16</span></span><span class="insert"> is declared as a mention of </span><span class="name"><span class="insert">ex:Bob</span></span><span class="insert"> as described in bundle </span><span class="name"><span class="insert">ex:run1</span></span><span class="insert">, and likewise for </span><span class="name"><span class="insert">tool:Bob-2011-11-17</span></span><span class="insert"> with respect to </span><span class="name"><span class="insert">ex:run2</span></span><span class="insert">. The tool adds a domain-specific performance attribute to each of these specialized entities as follows: the performance of the agent in the first bundle is judged to be good since the duration of </span><span class="name"><span class="insert">ex:a1</span></span><span class="insert"> is one hour, whereas it is judged to be bad in the second bundle since </span><span class="name"><span class="insert">ex:a2</span></span><span class="insert">'s duration is seven hours.
+
+</span></p><pre class="codeexample"><span class="insert">bundle tool:analysis01
agent(tool:Bob-2011-11-16, [perf:rating="good"])
mentionOf(tool:Bob-2011-11-16, ex:Bob, ex:run1)
agent(tool:Bob-2011-11-17, [perf:rating="bad"])
mentionOf(tool:Bob-2011-11-17, ex:Bob, ex:run2)
endBundle
-</pre>
+</span></pre>
</div>
-<div class="anexample" id="aexample-mention-viz"><div class="anexampleTitle">Example 46<sup><a class="internalDFN" href="#aexample-mention-viz"><span class="diamond"> ◊</span></a></sup></div>
-<p>Consider the following bundle of descriptions, in which derivation and generations have been identified.
-</p><pre class="codeexample">
+<div class="anexample" id="aexample-mention-viz"><div class="anexampleTitle"><span class="insert">Example 46</span><sup><a class="internalDFN" href="#aexample-mention-viz"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
+<p><span class="insert">Consider the following bundle of descriptions, in which derivation and generations have been identified.
+</span></p><pre class="codeexample"><span class="insert">
bundle obs:bundle1
entity(ex:report1, [prov:type="report", ex:version=1])
wasGeneratedBy(ex:g1; ex:report1,-,2012-05-24T10:00:01)
@@ -3327,35 +4015,38 @@
endBundle
entity(obs:bundle1, [ prov:type='prov:Bundle' ])
wasAttributedTo(obs:bundle1, ex:observer01)
-</pre>
-Bundle <span class="name">obs:bundle1</span> is rendered by a visualisation tool. It may useful for the <span class="delete">tool configuration for</span><span class="insert">visualization layout of</span> this bundle to be shared along with the provenance descriptions, so that other users can render provenance as it was originally rendered. The original bundle obviously cannot be changed. However, one can create a new bundle, as follows.
-<pre class="codeexample">
+</span></pre><span class="insert">
+Bundle </span><span class="name"><span class="insert">obs:bundle1</span></span><span class="insert"> is rendered by a visualisation tool. It may useful for the visualization layout of this bundle to be shared along with the provenance descriptions, so that other users can render provenance as it was originally rendered. The original bundle obviously cannot be changed. However, one can create a new bundle, as follows.
+</span><pre class="codeexample"><span class="insert">
bundle tool:bundle2
entity(tool:bundle2, [ prov:type='viz:Configuration', prov:type='prov:Bundle' ])
wasAttributedTo(tool:bundle2, viz:Visualizer)
entity(tool:report1, [viz:color="orange"])
- mentionOf(tool:report1, <span class="delete">obs:bundle1, ex:report1)</span><span class="insert">ex:report1, obs:bundle1)</span>
+ mentionOf(tool:report1, ex:report1, obs:bundle1)
entity(tool:report2, [viz:color="blue"])
- mentionOf(tool:report2, <span class="delete">obs:bundle1, ex:report2)</span><span class="insert">ex:report2, obs:bundle1)</span>
+ mentionOf(tool:report2, ex:report2, obs:bundle1)
endBundle
-</pre>
-
-<p>In bundle <span class="name">tool:bundle2</span>, the prefix <span class="name">viz</span> is used for naming visualisation-specific attributes, types or values.</p>
-
-<p>Bundle <span class="name">tool:bundle2</span> is given type <span class="name">viz:Configuration</span> to indicate that it consists of descriptions that pertain to the configuration of the visualisation tool. This type attribute can be used for searching bundles containing visualization-related descriptions.
-</p>
-
-<p>The visualisation tool
- created new identifiers <span class="name">tool:report1</span> and
-<span class="name">tool:report2</span>.
-They denote entities which are specializations of <span class="name">ex:report1</span> and <span class="name">ex:report2</span>, described in bundle <span class="name">obs:bundle1</span>, with visualization attribute for the color to be used when rendering these entities. </p>
+</span></pre>
+
+<p><span class="insert">In bundle </span><span class="name"><span class="insert">tool:bundle2</span></span><span class="insert">, the prefix </span><span class="name"><span class="insert">viz</span></span><span class="insert"> is used for naming visualisation-specific attributes, types or values.</span></p>
+
+<p><span class="insert">Bundle </span><span class="name"><span class="insert">tool:bundle2</span></span><span class="insert"> is given type </span><span class="name"><span class="insert">viz:Configuration</span></span><span class="insert"> to indicate that it consists of descriptions that pertain to the configuration of the visualisation tool. This type attribute can be used for searching bundles containing visualization-related descriptions.
+</span></p>
+
+<p><span class="insert">The visualisation tool
+ created new identifiers </span><span class="name"><span class="insert">tool:report1</span></span><span class="insert"> and
+</span><span class="name"><span class="insert">tool:report2</span></span><span class="insert">.
+They denote entities which are specializations of </span><span class="name"><span class="insert">ex:report1</span></span><span class="insert"> and </span><span class="name"><span class="insert">ex:report2</span></span><span class="insert">, described in bundle </span><span class="name"><span class="insert">obs:bundle1</span></span><span class="insert">, with visualization attribute for the color to be used when rendering these entities. </span></p>
</div>
+
+
+
</div>
@@ -3365,131 +4056,493 @@
</div>
<div id="component6" class="section">
-<h3><span class="secno">5.6 </span>Component 6: Collections</h3>
-
-<p>The sixth component of PROV-DM is concerned with the notion of collections.
-A collection is an entity that has some members. The members are themselves entities, and therefore their provenance can be expressed. Some applications need to be able to express the provenance of the collection itself: e.g. who maintains the collection (attribution), which members it contains as it evolves, and how it was assembled. The purpose of Component 6 is to define the types and relations that are useful to express the provenance of collections. </p>
-
-<p><a href="#figure-component6">Figure <span class="delete">10</span><span class="insert">11</span></a> depicts
-the sixth component with two new classes (Collection, Empty Collection) and one association (MemberOf).
+<h3><span class="secno"><span class="delete">4.5</span><span class="insert">5.6</span> </span>Component <span class="delete">5:</span><span class="insert">6:</span> Collections</h3>
+
+<p>The <span class="delete">fifth</span><span class="insert">sixth</span> component of PROV-DM is concerned with the notion of collections.
+A collection is an entity that has some members. The members are themselves entities, and therefore their provenance can be expressed. Some applications need to be able to express the provenance of the collection itself: e.g. who maintains the <span class="delete">collection,</span><span class="insert">collection (attribution),</span> which members it contains as it evolves, and how it was assembled. The purpose of Component <span class="delete">5</span><span class="insert">6</span> is to define the types and relations that are useful to express the provenance of collections.<span class="delete"> In PROV, the concept of Collection is implemented by means of dictionaries, which we introduce in this section. </span> </p>
+
+<p><a href="#figure-component6">Figure <span class="delete">figure-component5</span><span class="insert">11</span></a> depicts
+the <span class="delete">fifth</span><span class="insert">sixth</span> component with <span class="delete">four </span><span class="insert">two </span>new classes <span class="insert">(Collection, Empty Collection) </span>and <span class="delete">three associations.</span><span class="insert">one association (HadMember).</span>
</p>
<div style="text-align: center;">
+
+
<span class="figure" style="max-width: 95%; ">
<img src="uml/component6.png" alt="collection"><br>
-<span class="figcaption" id="figure-component6">Figure <span class="delete">10:</span><span class="insert">11:</span> Collections Component Overview</span>
+<span class="figcaption" data-count="11" id="figure-component6">Figure <span class="delete">9:</span><span class="insert">11</span><sup><a class="internalDFN" href="#figure-component6"><span class="diamond"><span class="insert"> ◊:</span></span></a></sup><span class="insert"> Figure 11:</span> Collections Component Overview
+</span>
</span>
</div>
+<span class="delete">The intent of these relations and types is to express the </span><span class="delete">history of changes that occurred to a collection</span><span class="delete">.
+Changes to collections are about the insertion of entities in collections and the removal of members from collections.
+Indirectly, such history provides a way to reconstruct the contents of a collection.</span>
+
<div id="term-collection" class="section">
-<h4><span class="secno">5.6.1 </span>Collection</h4>
-
-<span class="glossary-ref"> A <dfn id="concept-collection" class="internalDFN">collection</dfn><sup><a class="internalDFN" href="#concept-collection"><span class="diamond"> ◊</span></a></sup> is an entity that provides a structure to some constituents, which are themselves entities. These constituents are said to be <dfn id="dfn-member-of" class="internalDFN">member of</dfn><sup><a class="internalDFN" href="#dfn-member-of"><span class="diamond"> ◊</span></a></sup> the collections. </span>
-
-<span class="glossary-ref"> An <dfn id="concept-empty-collection" class="internalDFN">empty collection</dfn><sup><a class="internalDFN" href="#concept-empty-collection"><span class="diamond"> ◊</span></a></sup> is a collection without members. </span>
-
-
-<p>PROV-DM defines the following types related to collections:</p>
+<h4><span class="secno"><span class="delete">4.5.1</span><span class="insert">5.6.1</span> </span>Collection</h4>
+
+<span class="glossary-ref"> A <dfn id="concept-collection" class="internalDFN">collection</dfn><sup><a class="internalDFN" href="#concept-collection"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> is an entity that provides a structure to some constituents, which are themselves entities. These constituents are said to be <dfn id="dfn-member-of" class="internalDFN">member of</dfn><sup><a class="internalDFN" href="#dfn-member-of"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> the collections. </span>
+
+<span class="delete">In PROV, the concept of Collection</span><span class="glossary-ref"><span class="insert"> An </span><dfn id="concept-empty-collection" class="internalDFN"><span class="insert">empty collection</span></dfn><sup><a class="internalDFN" href="#concept-empty-collection"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> is<span class="insert"> a collection without members.</span> <span class="delete">provided as an extensibility point for other kinds of collections. Collections are implemented by means of dictionaries, which are introduced next. </span>
+
+
+
+
+<span class="delete">4.5.2 </span><span class="delete">Dictionary</span></span>
+
+
+<p>PROV-DM defines <span class="delete">a specific type of collection: a dictionary, specified as follows.</span>
+
+
+<span class="delete"> A </span><span class="delete">dictionary</span><span class="delete"> is a collection whose members are indexed by keys. </span>
+
+<span class="delete">Conceptually, a dictionary has a logical structure consisting of key-entity pairs. This structure is often referred</span><span class="insert">the following types related</span> to <span class="delete">as a </span><span class="delete">map</span><span class="delete">, and is a generic indexing mechanism that can abstract commonly used data structures, including associative lists (also known as "dictionaries" in some programming languages), relational tables, ordered lists, and more. The specification of such specialized structures in terms of key-value pairs is out of the scope of this document.</span>
+
+<span class="delete">A given dictionary forms a given structure for its members. A different structure (obtained either by insertion or removal of members) constitutes a different dictionary. Hence,
+ for the purpose of provenance, a dictionary entity is viewed as a snapshot of a structure. Insertion and removal operations result in new snapshots, each snapshot forming an identifiable dictionary entity.</span>
+
+
+<span class="delete">PROV-DM defines the following types related to dictionaries:</span><span class="insert">collections:</span></p>
<ul>
- <li> <span class="name">prov:Collection</span> denotes an entity of type Collection, i.e. an entity that can participate in relations amongst collections;
-
- </li><li><span class="name">prov:EmptyCollection</span> denotes an empty collection.
+ <li> <span class="name"><span class="delete">prov:Dictionary</span><span class="insert">prov:Collection</span></span> denotes an entity of type <span class="delete">dictionary,</span><span class="insert">Collection,</span> i.e. an entity that can participate in relations amongst <span class="delete">dictionaries;</span><span class="insert">collections;</span>
+
+ </li><li><span class="name"><span class="delete">prov:EmptyDictionary</span><span class="insert">prov:EmptyCollection</span></span> denotes an empty <span class="delete">dictionary.</span><span class="insert">collection.</span>
</li></ul>
-<div class="anexample" id="example_47"><div class="anexampleTitle">Example 47<sup><a class="internalDFN" href="#example_47"><span class="diamond"> ◊</span></a></sup></div>
-<pre class="codeexample">entity(c0, [prov:type='prov:EmptyCollection' ]) // c0 is an empty collection
-entity(c1, [prov:type='prov:Collection' ]) // c1 is a collection, with unknown content
+
+
+
+
+
+
+
+
+<div class="anexample" id="example_47"><div class="anexampleTitle"><span class="insert">Example 47</span><sup><a class="internalDFN" href="#example_47"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
+<pre class="codeexample"><span class="delete">entity(d0, [prov:type="prov:EmptyDictionary" %% xsd:QName])</span><span class="insert">entity(c0, [prov:type='prov:EmptyCollection' ])</span> // <span class="delete">d0</span><span class="insert">c0</span> is an empty <span class="delete">dictionary
+entity(d1, [prov:type="prov:Dictionary"</span><span class="insert">collection
+entity(c1, [prov:type='prov:Collection'</span> <span class="delete">%% xsd:QName])</span><span class="insert">])</span> // <span class="delete">d1</span><span class="insert">c1</span> is a <span class="delete">dictionary,</span><span class="insert">collection,</span> with unknown content
</pre>
</div>
+
+
+
+
+</div>
+
+
+
+
+<div id="term-membership" class="section">
+<h4><span class="secno"><span class="delete">4.5.3 </span><span class="delete">Insertion</span><span class="insert">5.6.2 </span></span><span class="insert">Membership</span></h4>
+
+ <span class="delete">Insertion</span><span class="delete"> is a derivation that transforms a dictionary into another, by insertion of one or more key-entity pairs. </span>
+
+
+
+
+
+
+<span class="delete">An </span><span class="delete">Insertion</span><span class="delete"> relation</span><span class="delete">, written </span><span class="delete">derivedByInsertionFrom(id, d2, d1, {(key_1, e_1), ..., (key_n, e_n)}, attrs)</span><span class="delete">,</span><span class="delete"> has:</span>
+
+<span class="delete">id</span><span class="delete">: an </span><span class="delete">optional</span><span class="delete"> identifier identifying the relation;</span>
+<span class="delete">after</span><span class="delete">: an identifier (</span><span class="delete">d2</span><span class="delete">) for the dictionary </span><span class="delete">after</span><span class="delete"> insertion; </span>
+<span class="delete">before</span><span class="delete">: an identifier (</span><span class="delete">d1</span><span class="delete">) for the dictionary </span><span class="delete">before</span><span class="delete"> insertion;</span>
+<span class="delete">key-entity-set</span><span class="delete">: the inserted key-entity pairs </span><span class="delete">(key_1, e_1)</span><span class="delete">, ..., </span><span class="delete">(key_n, e_n)</span><span class="delete"> in which each </span><span class="delete">key_i</span><span class="delete"> is a </span><span class="delete">value</span><span class="delete">, and </span><span class="delete">e_i</span><span class="delete"> is an identifier for the entity that has been inserted with the key;
+ each </span><span class="delete">key_i</span><span class="delete"> is expected to be unique for the key-entity-set;
+</span>
+<span class="delete">attributes</span><span class="delete">: an </span><span class="delete">optional</span><span class="delete"> set (</span><span class="delete">attrs</span><span class="delete">) of attribute-value pairs representing additional information about this relation.</span>
+
+
+
+<span class="delete">
+An Insertion relation </span><span class="delete">derivedByInsertionFrom(id, d2, d1, {(key_1, e_1), ..., (key_n, e_n)})</span><span class="delete"> states that </span><span class="delete">d2</span><span class="delete"> is the state of the dictionary
+following the insertion of pairs </span><span class="delete">(key_1, e_1)</span><span class="delete">, ..., </span><span class="delete">(key_n, e_n)</span><span class="delete"> into dictionary </span><span class="delete">d1</span><span class="delete">.</span>
+
+
+
+
+
+
+
+<span class="delete">entity(d0, [prov:type="prov:EmptyDictionary" %% xsd:QName]) // d0 is an empty dictionary
+entity(e1)
+entity(e2)
+entity(e3)
+entity(d1, [prov:type="prov:Dictionary" %% xsd:QName])
+entity(d2, [prov:type="prov:Dictionary" %% xsd:QName])
+
+derivedByInsertionFrom(d1, d0, {("k1", e1), ("k2", e2)})
+derivedByInsertionFrom(d2, d1, {("k3", e3)})
+</span><span class="delete">
+From this set of descriptions, we conclude:
+</span>
+ <span class="delete">d0</span><span class="delete"> is the set </span><span class="delete">{ }</span>
+ <span class="delete">d1</span><span class="delete"> is the set </span><span class="delete">{ ("k1", e1), ("k2", e2) }</span>
+ <span class="delete">d2</span><span class="delete"> is the set </span><span class="delete">{ ("k1", e1), ("k2", e2), ("k3", e3) }</span>
+
+
+
+<span class="delete">Insertion provides an "update semantics" for the keys that are already present in a dictionary,
+since a new pair replaces an existing pair with the same key in the new dictionary. This is illustrated by the following example.</span>
+
+
+<span class="delete">entity(d0, [prov:type="prov:EmptyDictionary" %% xsd:QName]) // d0 is an empty dictionary
+entity(e1)
+entity(e2)
+entity(e3)
+entity(d1, [prov:type="prov:Dictionary" %% xsd:QName])
+entity(d2, [prov:type="prov:Dictionary" %% xsd:QName])
+
+derivedByInsertionFrom(d1, d0, {("k1", e1), ("k2", e2)})
+derivedByInsertionFrom(d2, d1, {("k1", e3)})
+</span><span class="delete">
+ This is a case of </span><span class="delete">update</span><span class="delete"> of </span><span class="delete">e1</span><span class="delete"> to </span><span class="delete">e3</span><span class="delete"> for the same key, </span><span class="delete">"k1"</span><span class="delete">. </span><span class="delete">
+ From this set of descriptions, we conclude:
+</span>
+ <span class="delete">d0</span><span class="delete"> is the set </span><span class="delete">{ }</span>
+ <span class="delete">d1</span><span class="delete"> is the set </span><span class="delete">{ ("k1", e1), ("k2", e2) }</span>
+ <span class="delete">d2</span><span class="delete"> is the set </span><span class="delete">{ ("k1", e3), ("k2", e2) }</span>
+
+
+
+
+
+
+
+<span class="delete">4.5.4 </span><span class="delete">Removal</span>
+
+ <span class="delete">Removal</span><span class="delete"> is a derivation that transforms a dictionary into another, by removing one or more key-entity pairs. </span>
+
+
+
+
+
+
+<span class="delete"> A </span><span class="delete">Removal</span><span class="delete"> relation, written </span><span class="delete">derivedByRemovalFrom(id, d2, d1, {key_1, ... key_n}, attrs)</span><span class="delete">, has:</span>
+
+<span class="delete">id</span><span class="delete">: an </span><span class="delete">optional</span><span class="delete"> identifier identifying the relation;</span>
+<span class="delete">after</span><span class="delete">: an identifier (</span><span class="delete">d2</span><span class="delete">) for the dictionary </span><span class="delete">after</span><span class="delete"> the deletion; </span>
+<span class="delete">before</span><span class="delete">: an identifier (</span><span class="delete">d1</span><span class="delete">) for the dictionary </span><span class="delete">before</span><span class="delete"> the deletion;</span>
+<span class="delete">key-set</span><span class="delete">: a set of deleted keys </span><span class="delete">key_1</span><span class="delete">, ..., </span><span class="delete">key_n</span><span class="delete">, for which each </span><span class="delete">key_i</span><span class="delete"> is a </span><span class="delete">value</span><span class="delete">;</span>
+<span class="delete">attributes</span><span class="delete">: an </span><span class="delete">optional</span><span class="delete"> set (</span><span class="delete">attrs</span><span class="delete">) of attribute-value pairs representing additional information about this relation.</span>
+
+
+
+<p>A <span class="delete">Removal</span><strong><span class="insert">membership</span></strong> relation <span class="delete">derivedByRemovalFrom(id, d2,d1, {key_1, ..., key_n})</span><span class="delete"> states that</span><span class="insert">is defined, to allow stating the</span> <span class="delete">d2</span><span class="delete"> is the state of the dictionary following the removal of the set of pairs corresponding to keys </span><span class="delete">key_1...key_n</span><span class="delete"> from </span><span class="delete">d1</span><span class="delete">.</span><span class="insert">members of a Collection. </span></p>
+
+
+<span class="delete">entity(d0, [prov:type="prov:EmptyDictionary"]) // d0 is an empty dictionary
+entity(e1)
+entity(e2)
+entity(e3)
+entity(d1, [prov:type="prov:Dictionary"])
+entity(d2, [prov:type="prov:Dictionary"])
+
+derivedByInsertionFrom(d1, d0, {("k1", e1), ("k2",e2)})
+derivedByInsertionFrom(d2, d1, {("k3", e3)})
+derivedByRemovalFrom(d3, d2, {"k1", "k3"})
+</span><span class="delete">
+From this set of descriptions, we conclude:
+</span>
+<span class="delete">d0</span><span class="delete"> is the set </span><span class="delete">{ }</span>
+<span class="delete">d1</span><span class="delete"> is the set </span><span class="delete">{ ("k1", e1), ("k2", e2) }</span>
+<span class="delete">d2</span><span class="delete"> is the set </span><span class="delete">{ ("k1", e1), ("k2", e2), ("k3", e3) }</span>
+<span class="delete">d3</span><span class="delete"> is the set </span><span class="delete">{ ("k2", e2) }</span>
+
+
+
+
+
+
+
+
+
+<span class="delete">4.5.5 </span><span class="delete">Membership</span>
+
+
+<span class="glossary-ref"> <dfn id="concept-membership" class="internalDFN">Membership</dfn><sup><a class="internalDFN" href="#concept-membership"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> is the belonging of <span class="delete">a key-entity pair </span><span class="insert">an entity </span>to <span class="delete">dictionary. </span>
+
+<span class="insert">a collection. </span></span>
+
+
+<p>
+<span class="delete">The insertion and removal relations make insertions and removals explicit as part of the history of a dictionary. This, however, requires explicit mention of the state of the dictionary prior to each operation. The membership relation removes this needs, allowing the state of a dictionary </span><span class="delete">c</span><span class="delete"> to be expressed without having to introduce a prior state.</span></p>
+
+
+<div class="attributes" id="attributes-hadMember">
+ A <dfn title="hadMember" id="dfn-hadmember" class="internalDFN">membership</dfn><sup><a class="internalDFN" href="#dfn-hadmember"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> relation, written <span class="pnExpression"><span class="delete">memberOf(id, c, {(key_1, e_1), ..., (key_n, e_n)}, cplt, attrs)</span><span class="insert">hadMember(c, e)</span></span>, has:
+<ul>
+<li><span class="delete">id</span><span class="delete">: an </span><span class="delete">optional</span><span class="delete"> identifier identifying the relation;</span>
+<span class="delete">after</span><span class="attribute" id="membership.collection"><span class="insert">collection</span></span>: an identifier (<span class="name">c</span>) for the <span class="delete">dictionary</span><span class="insert">collection</span> whose <span class="delete">members are</span><span class="insert">member is</span> asserted; </li>
+<li><span class="delete">key-entity-set</span><span class="attribute" id="membership.entity"><span class="insert">entity</span></span>: <span class="delete">a set of key-entity pairs</span><span class="insert">the identifier</span> <span class="name"><span class="delete">(key_1, e_1)</span><span class="delete">, ..., </span><span class="delete">(key_n, e_n)</span><span class="insert">e</span></span><span class="insert"> of an entity</span> that <span class="delete">are members of the dictionary;</span><span class="insert">is member of the collection.</span></li>
+<span class="delete">complete</span><span class="delete">: an </span><span class="delete">optional</span><span class="delete"> boolean
+</span><span class="delete">Value</span><span class="delete"> (</span><span class="delete">cplt</span><span class="delete">); if true, it indicates that no other member belongs to the dictionary; if false, it indicates that other members belong to the dictionary; if unspecified, other members </span><span class="delete">may</span><span class="delete"> belong to the dictionary.
+</span><span class="delete">attributes</span><span class="delete">: an </span><span class="delete">optional</span><span class="delete"> set (</span><span class="delete">attrs</span><span class="delete">) of attribute-value pairs representing additional information about</span></ul>
+</div>
+
+
+
+<div class="anexample" id="example_48"><div class="anexampleTitle"><span class="insert">Example 48</span><sup><a class="internalDFN" href="#example_48"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
+<p><span class="insert">In</span> this <span class="delete">relation.</span>
+
+
+
+
+
+
+<span class="delete">The description </span><span class="delete">memberOf(c, {(key_1, e_1), ..., (key_n, e_n)})</span><span class="delete"> states that </span><span class="insert">example, </span><span class="name">c</span> is <span class="insert">a collection </span>known to <span class="delete">include</span><span class="insert">have</span> <span class="name"><span class="delete">(key_1, e_1)</span><span class="insert">e0</span></span>, <span class="delete">..., </span><span class="name"><span class="delete">(key_n, e_n)}</span><span class="insert">e1</span></span>, <span class="delete">without having to introduce a previous state. </span><span class="insert">and </span><span class="name"><span class="insert">e2</span></span><span class="insert"> as members, and may have other members.</span></p>
+
+
+<pre class="codeexample"><span class="delete">entity(d1, [prov:type="prov:Dictionary" %% xsd:QName]) // d1 is a dictionary, with unknown content
+entity(d2, [prov:type="prov:Dictionary" %% xsd:QName]) // d2 is a dictionary, with unknown content
+
+</span><span class="insert">entity(e0)
+</span>entity(e1)
+entity(e2)
+
+<span class="delete">memberOf(d1, {("k1", e1), ("k2", e2)} )
+memberOf(d2, {("k1", e1), ("k2", e2)}, true)
+
+entity(e3)
+entity(d3, [prov:type="prov:Dictionary"</span><span class="insert">entity(c, [prov:type='prov:Collection'</span> <span class="delete">%% xsd:QName])
+
+derivedByInsertionFrom(d3, d1, {("k3", e3)})
+</span><span class="insert">]) // c is a collection, with unknown content
+hadMember(c, e0)
+hadMember(c, e1)
+hadMember(c, e2)
+</span></pre><span class="delete">
+From these descriptions, we conclude:
+</span>
+ <span class="delete">d1</span><span class="delete"> has the following pairs as members: </span><span class="delete">("k1", e1), ("k2", e2)</span><span class="delete">, and may contain others.
+</span> <span class="delete">d2</span><span class="delete"> exactly has the following pairs as members: </span><span class="delete">("k1", e1), ("k2", e2)</span><span class="delete">, and does not contain any other.
+</span> <span class="delete">d3</span><span class="delete"> has the following pairs as members: </span><span class="delete">("k1", e1), ("k2", e2), ("k3", v3)</span><span class="delete">, and may contain others.
+</span>
+<span class="delete"> Thus, the states of </span><span class="delete">d1</span><span class="delete"> and </span><span class="delete">d3</span><span class="delete"> are only partially known.</span>
+
+
+
+
+
+
+
+
+<span class="delete">Further considerations: </span>
+
+
+
+<span class="delete">The state of a dictionary (i.e., the set of key-entity pairs it contains) at a given point in a sequence of operations is never stated explicitly. Rather, it can be obtained by querying the chain of derivations involving insertions and removals. Entity type </span><span class="delete">emptyDictionary</span><span class="delete"> can be used in this context as it marks the start of a sequence of dictionary operations.</span>
+
+
+<span class="delete">The representation of a dictionary through these relations makes no assumption regarding the underlying data structure used to store and manage dictionaries. In particular, no assumptions are needed regarding the mutability of a data structure that is subject to updates. Entities, however, are immutable and this applies to those entities that represent dictionaries. This is reflected in the constraints listed in [</span><span class="delete">PROV-CONSTRAINTS</span><span class="delete">]. </span>
+
+
+
+
+
+
+
+<span class="delete">4.6 </span><span class="delete">Component 6: Annotations</span>
+
+<span class="delete">The sixth component of PROV-DM is concerned with </span><span class="delete">notes</span><span class="delete"> and </span><span class="delete">annotations</span><span class="delete">.
+</span>
+
+<span class="delete">As provenance descriptions are exchanged between systems, it may be useful for a third party to add extra information to what they are describing. For instance, a "trust service" may add value-judgements about the
+trustworthiness of some of the entities or agents occurring in provenance records it is given access to. Likewise, an interactive visualization component may want to enrich an existing set of provenance descriptions with information helping reproduce their
+visual representation. To help with interoperability, PROV-DM introduces a simple annotation mechanism allowing anything that is identifiable to be associated with notes.
+For this, a type and and a relation are introduced.</span>
+
+
+<span class="delete">The annotation mechanism (with note and annotation) forms a key aspect of the extensibility mechanism of PROV-DM (see </span><span class="delete">extensibility section</span><span class="delete">).</span>
+
+
+<span class="delete">4.6.1 </span><span class="delete">Note</span>
+
+<span class="delete"> A </span><span class="delete">note</span><span class="delete"> is an identified set of application-specific attribute-value pairs.</span>
+
+
+<span class="delete">A </span><span class="delete">note</span><span class="delete">, written </span><span class="delete">note(id, [attr1=val1, ...])</span><span class="delete"> in PROV-N,</span><span class="delete"> has:
+</span>
+<span class="delete">id</span><span class="delete">: an identifier for a note;</span>
+<span class="delete">attributes</span><span class="delete">: a set of attribute-value pairs ((</span><span class="delete">attr1</span><span class="delete">, </span><span class="delete">val1</span><span class="delete">), ...) representing application-specific information.</span>
+
+
+
+
+
+
+
+<span class="delete">
+The following note consists of a set of application-specific attribute-value pairs, intended
+to help the rendering of the pre-existing entity it is associated with, by
+specifying its color and its position on the screen.</span>
+<span class="delete">note(ex:n1,[draw:color="blue", draw:screenX=20, draw:screenY=30])
+hasAnnotation(tr:WD-prov-dm-20111215,ex:n1)
+</span>
+<span class="delete">The note is linked to the entity </span><span class="delete">tr:WD-prov-dm-20111215</span><span class="delete">, with
+relation </span><span class="delete">hasAnnotation</span><span class="delete">
+discussed in </span><span class="delete">Section 4.6.2</span><span class="delete">.
+The note's identifier is declared in the namespace denoted by prefix </span><span class="delete">ex</span><span class="delete"> to illustrate that the rendering application may differ from the application involving entity </span><span class="delete">tr:WD-prov-dm-20111215</span><span class="delete">. The prefix </span><span class="delete">draw</span><span class="delete"> also denotes an application-specific namespace.
+</span>
+
+
+
+<span class="delete">In contrast, a reputation service may enrich an existing provenance record with notes providing reputation ratings about agents. In the following fragment, both agents </span><span class="delete">ex2:Simon</span><span class="delete"> and </span><span class="delete">ex2:Paolo</span><span class="delete"> are rated "excellent".</span>
+<span class="delete">note(ex3:n2,[trust:reputation="excellent"])
+hasAnnotation(ex2:Simon,ex3:n2)
+hasAnnotation(ex2:Paolo,ex3:n2)
+</span>
+<span class="delete">The note's identifier is declared in a separate namespace denoted by prefix </span><span class="delete">ex3</span><span class="delete">. The prefix </span><span class="delete">trust</span><span class="delete"> also denotes an application specific namespace.</span>
+
+
+
+
+
+
+
+<span class="delete">4.6.2 </span><span class="delete">Annotation</span>
+
+
+
+<span class="delete"> An </span><span class="delete">annotation</span><span class="delete"> is a link between something that is identifiable and a note referred to by its identifier.</span>
+
+<span class="delete">Multiple notes can
+be associated with a given identified object; symmetrically, multiple objects can be associated with a given note. Since notes have identifiers, they can also be
+annotated. </span>
+
+<span class="delete">An </span><span class="delete">annotation relation</span><span class="delete">, written </span><span class="delete">hasAnnotation(r,n)</span><span class="delete"> in PROV-N,</span><span class="delete"> has:
+</span>
+<span class="delete">something</span><span class="delete">: the identifier (</span><span class="delete">r</span><span class="delete">) of something being annotated;</span>
+<span class="delete">note</span><span class="delete">: an identifier (</span><span class="delete">n</span><span class="delete">) of a note.</span>
+
+
+
+
+<span class="delete">
+The following expressions</span>
+<span class="delete">entity(e1,[prov:type="document"])
+entity(e2,[prov:type="document"])
+activity(a,t1,t2)
+used(u1,a,e1,[ex:file="stdin"])
+wasGeneratedBy(e2, a, [ex:file="stdout"])
+
+note(n1,[ex:icon="doc.png"])
+hasAnnotation(e1,n1)
+hasAnnotation(e2,n1)
+
+note(n2,[ex:style="dotted"])
+hasAnnotation(u1,n2)
+</span>
+<span class="delete">describe two documents (attribute-value pair: </span><span class="delete">prov:type="document"</span><span class="delete">) identified by </span><span class="delete">e1</span><span class="delete"> and </span><span class="delete">e2</span><span class="delete">, and their annotation with a note indicating that the icon (an application specific way of rendering provenance) is </span><span class="delete">doc.png</span><span class="delete">. The example also
+includes an activity, its usage of the first entity, and its generation of the second entity. The </span><span class="delete">usage</span><span class="delete"> is annotated with a style (an application specific way
+of rendering this edge graphically). To be able to express this annotation, the usage was provided with an identifier </span><span class="delete">u1</span><span class="delete">, which was then referred to in </span><span class="delete">hasAnnotation(u1,n2)</span><span class="delete">.
+</span>
+</div>
+
+
</div>
-<div id="term-collection-membership" class="section">
-<h4><span class="secno">5.6.2 </span>Collection <span class="delete">Memberhsip</span><span class="insert">Membership</span></h4>
-
-<p>A <strong>collection membership</strong> relation is defined, to allow stating the members of a Collection. </p>
-
-<span class="glossary-ref"> <dfn id="concept-collection-membership" title="collection membership" class="internalDFN">Membership</dfn><sup><a class="internalDFN" href="#concept-collection-membership"><span class="diamond"> ◊</span></a></sup> is the belonging of an entity to a collection. </span>
-
-
-<p>
-</p><div class="attributes" id="attributes-hadMembers">
- A <dfn title="hadMembers" id="dfn-hadmembers" class="internalDFN">membership</dfn><sup><a class="internalDFN" href="#dfn-hadmembers"><span class="diamond"> ◊</span></a></sup> relation, written <span class="pnExpression"><span class="delete">memberOf(id;</span><span class="insert">hadMembers(id;</span> c, {e_1, ..., e_n}, cplt, attrs)</span>, has:
-<ul>
-<li><span class="attribute" id="membership.id">id</span>: an <em class="rfc2119" title="optional">optional</em> identifier identifying the relation;</li>
-<li><span class="attribute" id="membership.collection">collection</span>: an identifier (<span class="name">c</span>) for the collection whose members are asserted; </li>
-<li><span class="attribute" id="membership.entity-set">entity-set</span>: a set of entities <span class="name">e_1</span>, ..., <span class="name">e_n</span> that are members of the collection;</li>
-<li><span class="attribute" id="membership.complete">complete</span>: an <em class="rfc2119" title="optional">optional</em> boolean
-<a title="value" href="#concept-value" class="internalDFN">Value</a> (<span class="name">cplt</span>). It is interpreted as follows:
-<ul>
-<li>if it is present and set to true, then
-<span class="name">c</span> is believed to include all and only the members specified in the entity-set;
-</li><li>if it is present and set to <span class="delete">false,</span><span class="insert">false or if it is not present,</span> then <span class="name">c</span> is believed to include more members in addition to those specified in the <span class="delete">entity-set;
-</span><span class="delete">if it is not present, then c is believed to include all the members specified in the entity-set, and it </span><span class="delete">may</span><span class="delete"> include more.</span><span class="insert">entity-set.</span>
-</li></ul>
-
-</li><li><span class="attribute" id="membership.attributes">attributes</span>: an <em class="rfc2119" title="optional">optional</em> set (<span class="name">attrs</span>) of attribute-value pairs representing additional information about this relation.</li>
-</ul>
-
-</div>
-
-<p id="complete-attribute-note">
-Note that the attribute <a href="#membership.complete">complete</a> indicates that the <a title="hadMembers" href="#dfn-hadmembers" class="internalDFN">membership</a> relation provides a complete description of the collection membership. It is possible for different provenance descriptions to provide different membership statements regarding the same collection. The resolution of any potential conflict amongst such membership statements is defined by applications.</p>
-
-
-</div>
+
+
-</div>
+</div>
+
+
+
+
+
<div id="second-class-elements" class="section">
-<h3><span class="secno">5.7 </span>Further Elements of PROV-DM</h3>
+<h3><span class="secno"><span class="delete">4.7</span><span class="insert">5.7</span> </span>Further Elements of PROV-DM</h3>
This section introduces further elements of PROV-DM.
+
+
<div id="term-identifier" class="section">
-<h4><span class="secno">5.7.1 </span>Identifier</h4>
+<h4><span class="secno"><span class="delete">4.7.1 </span><span class="delete">Namespace Declaration</span>
+
+<span class="delete">A PROV-DM </span><span class="delete">namespace</span><span class="delete"> is identified by an IRI [</span><span class="delete">IRI</span><span class="delete">]. In PROV-DM, attributes, identifiers, and values with </span><span class="delete">qualified names</span><span class="delete"> as data type can be placed in a namespace using the mechanisms described in this specification. </span>
+
+
+<span class="delete">A </span><span class="delete">namespace declaration</span><span class="delete"> 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.
+A </span><span class="delete">default namespace declaration</span><span class="delete"> consists of a namespace. Every un-prefixed qualified name in the scope of this default namespace declaration
+refers to this namespace.</span>
+
+<span class="delete">The </span><span class="delete">PROV namespace</span><span class="delete"> is identified by the URI </span><span class="delete">http://www.w3.org/ns/prov#</span><span class="delete">.</span>
+
+
+
+
+<span class="delete">4.7.2 </span><span class="delete">Qualified Name</span>
+
+
+<span class="delete"> A </span><span class="delete">qualified name</span><span class="delete"> is a name subject to </span><span class="delete">namespace</span><span class="delete"> interpretation. It consists of a </span><span class="delete">namespace</span><span class="delete">, denoted by an optional prefix, and a local name.</span>
+
+<span class="delete">PROV-DM stipulates that a qualified name can be mapped into an IRI
+ by concatenating the IRI associated with the prefix and the local part.</span>
+
+<span class="delete">A qualified name's prefix is </span><span class="delete">optional</span><span class="delete">. If a prefix occurs in a
+ qualified name, it refers to a </span><span class="delete">namespace</span><span class="delete"> declared in a namespace declaration. In the absence of prefix, the qualified name
+ refers to the </span><span class="delete">default namespace</span><span class="delete">.</span>
+
+
+
+
+
+
+<span class="delete">4.7.3</span><span class="insert">5.7.1</span> </span>Identifier</h4>
<p>
-An <dfn id="dfn-identifier" class="internalDFN">identifier</dfn><sup><a class="internalDFN" href="#dfn-identifier"><span class="diamond"> ◊</span></a></sup> is a <a href="#concept-qualifiedName" class="internalDFN">qualified
+An <dfn id="dfn-identifier" class="internalDFN">identifier</dfn><sup><a class="internalDFN" href="#dfn-identifier"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> is a <a href="#concept-qualifiedName" class="internalDFN">qualified
name</a>.
</p>
</div>
<div id="term-attribute" class="section">
-<h4><span class="secno">5.7.2 </span>Attribute</h4>
-
-<p>An <dfn title="dfn-attribute" id="dfn-attribute" class="internalDFN">attribute</dfn><sup><a class="internalDFN" href="#dfn-attribute"><span class="diamond"> ◊</span></a></sup> is a <a href="#concept-qualifiedName" class="internalDFN">qualified name</a>.
+<h4><span class="secno"><span class="delete">4.7.4</span><span class="insert">5.7.2</span> </span>Attribute</h4>
+
+<p>An <dfn title="dfn-attribute" id="dfn-attribute" class="internalDFN">attribute</dfn><sup><a class="internalDFN" href="#dfn-attribute"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> is a <a href="#concept-qualifiedName" class="internalDFN">qualified name</a>.
</p><p>The PROV data model introduces a pre-defined set of attributes in the <a title="prov-namespace" href="#dfn-prov-namespace" class="internalDFN">PROV namespace</a>, which we define below.
This specification does not provide any interpretation for any attribute declared in any other namespace.</p>
+
+
+
+
+
<div id="attributes-at-a-glance-divz" style="text-align: left;">
<table class="thinborder" style="margin-left: auto; margin-right: auto;">
-<caption id="attributes-at-a-glance">Table 6: PROV-DM Attributes At a Glance</caption>
-<tbody><tr><td><b>Attribute</b></td><td><b>Allowed In</b></td><td><b>value</b></td><td><b>Section</b></td></tr>
+<caption id="attributes-at-a-glance" data-count="6"><span>Table <span class="delete">5: </span><span class="insert">6</span><sup><a class="internalDFN" href="#attributes-at-a-glance"><span class="diamond"><span class="insert"> ◊:</span></span></a></sup> </span>PROV-DM Attributes At a Glance</caption>
+
+<tbody><tr><td><b>Attribute</b></td><td><b><span class="insert">Allowed In</span></b></td><td><b>value</b></td><td><b>Section</b></td></tr>
<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
-<tr><td><a title="label" href="#concept-label" class="internalDFN">prov:label</a></td><td><em>any construct</em></td><td>A <a href="#concept-value" class="internalDFN">Value</a> of type <a class="section-ref" href="http://www.w3.org/TR/xmlschema11-2/#string">xsd:string</a></td><td><a class="section-ref" href="#term-attribute-label"><span>Section 5.7.2.1</span></a> </td></tr>
-<tr><td><a title="location" href="#concept-location" class="internalDFN">prov:location</a></td><td><a href="#concept-entity" class="internalDFN">Entity</a>, <a href="#concept-activity" class="internalDFN">Activity</a>, <a href="#concept-agent" class="internalDFN">Agent</a>, <a href="#concept-usage" class="internalDFN">Usage</a>, <a href="#concept-generation" class="internalDFN">Generation</a>, <a href="#concept-invalidation" class="internalDFN">Invalidation</a>, <a href="#concept-start" class="internalDFN">Start</a>, and <a href="#concept-end" class="internalDFN">End</a></td><td>A <a title="value" href="#concept-value" class="internalDFN">Value</a></td><td><a class="section-ref" href="#term-attribute-location"><span>Section 5.7.2.2</span></a> </td></tr>
-<tr><td><a title="role" href="#concept-role" class="internalDFN">prov:role</a></td><td><a href="#concept-usage" class="internalDFN">Usage</a>, <a href="#concept-generation" class="internalDFN">Generation</a>, <a href="#concept-invalidation" class="internalDFN">Invalidation</a>, <a href="#concept-activityAssociation" class="internalDFN">Association</a>, <a href="#concept-start" class="internalDFN">Start</a>, and <a href="#concept-end" class="internalDFN">End</a></td><td>A <a title="value" href="#concept-value" class="internalDFN">Value</a></td><td><a class="section-ref" href="#term-attribute-role"><span>Section 5.7.2.3</span></a> </td></tr>
-<tr><td><a title="type" href="#concept-type" class="internalDFN">prov:type</a></td><td><em>any construct</em></td><td>A <a title="value" href="#concept-value" class="internalDFN">Value</a></td><td><a class="section-ref" href="#term-attribute-type"><span>Section 5.7.2.4</span></a> </td></tr>
-<tr><td><a title="value-attribute" href="#concept-value-attribute" class="internalDFN">prov:value</a></td><td><a href="#concept-entity" class="internalDFN">Entity</a></td><td>A <a title="value" href="#concept-value" class="internalDFN">Value</a></td><td><a class="section-ref" href="#term-attribute-value"><span>Section 5.7.2.5</span></a> </td></tr>
+<tr><td><a title="label" href="#concept-label" class="internalDFN">prov:label</a></td><td><span class="delete">xsd:string</span><em><span class="insert">any construct</span></em></td><td><span class="insert">A </span><a href="#concept-value" class="internalDFN"><span class="insert">Value</span></a><span class="insert"> of type </span><a class="section-ref" href="http://www.w3.org/TR/xmlschema11-2/#string"><span class="insert">xsd:string</span></a></td><td><a class="section-ref" href="#term-attribute-label"><span>Section <span class="delete">4.7.4.1</span><span class="insert">5.7.2.1</span></span></a> </td></tr>
+<tr><td><a title="location" href="#concept-location" class="internalDFN">prov:location</a></td><td><span class="delete">Value</span><a href="#concept-entity" class="internalDFN"><span class="insert">Entity</span></a><span class="insert">, </span><a href="#concept-activity" class="internalDFN"><span class="insert">Activity</span></a><span class="insert">, </span><a href="#concept-agent" class="internalDFN"><span class="insert">Agent</span></a><span class="insert">, </span><a href="#concept-usage" class="internalDFN"><span class="insert">Usage</span></a><span class="insert">, </span><a href="#concept-generation" class="internalDFN"><span class="insert">Generation</span></a><span class="insert">, </span><a href="#concept-invalidation" class="internalDFN"><span class="insert">Invalidation</span></a><span class="insert">, </span><a href="#concept-start" class="internalDFN"><span class="insert">Start</span></a><span class="insert">, and </span><a href="#concept-end" class="internalDFN"><span class="insert">End</span></a></td><td><span class="insert">A </span><a title="value" href="#concept-value" class="internalDFN"><span class="insert">Value</span></a></td><td><a class="section-ref" href="#term-attribute-location"><span>Section <span class="delete">4.7.4.2</span><span class="insert">5.7.2.2</span></span></a> </td></tr>
+<tr><td><a title="role" href="#concept-role" class="internalDFN">prov:role</a></td><td><span class="delete">Value</span><a href="#concept-usage" class="internalDFN"><span class="insert">Usage</span></a><span class="insert">, </span><a href="#concept-generation" class="internalDFN"><span class="insert">Generation</span></a><span class="insert">, </span><a href="#concept-invalidation" class="internalDFN"><span class="insert">Invalidation</span></a><span class="insert">, </span><a href="#concept-activityAssociation" class="internalDFN"><span class="insert">Association</span></a><span class="insert">, </span><a href="#concept-start" class="internalDFN"><span class="insert">Start</span></a><span class="insert">, and </span><a href="#concept-end" class="internalDFN"><span class="insert">End</span></a></td><td><span class="insert">A </span><a title="value" href="#concept-value" class="internalDFN"><span class="insert">Value</span></a></td><td><a class="section-ref" href="#term-attribute-role"><span>Section <span class="delete">4.7.4.3</span><span class="insert">5.7.2.3</span></span></a> </td></tr>
+<tr><td><a title="type" href="#concept-type" class="internalDFN">prov:type</a></td><td><span class="delete">Value</span><em><span class="insert">any construct</span></em></td><td><span class="insert">A </span><a title="value" href="#concept-value" class="internalDFN"><span class="insert">Value</span></a></td><td><a class="section-ref" href="#term-attribute-type"><span>Section <span class="delete">4.7.4.4</span><span class="insert">5.7.2.4</span></span></a> </td></tr>
+<tr><td><a title="value-attribute" href="#concept-value-attribute" class="internalDFN">prov:value</a></td><td><span class="delete">Value</span><a href="#concept-entity" class="internalDFN"><span class="insert">Entity</span></a></td><td><span class="insert">A </span><a title="value" href="#concept-value" class="internalDFN"><span class="insert">Value</span></a></td><td><a class="section-ref" href="#term-attribute-value"><span>Section <span class="delete">4.7.4.5</span><span class="insert">5.7.2.5</span></span></a> </td></tr>
</tbody></table>
</div>
@@ -3498,72 +4551,81 @@
<div id="term-attribute-label" class="section">
-<h5><span class="secno">5.7.2.1 </span>prov:label</h5>
-
-
-<p>
-<span class="glossary-ref"> The attribute <dfn id="concept-label" title="label" class="internalDFN"><span class="name">prov:label</span></dfn><sup><a class="internalDFN" href="#concept-label"><span class="diamond"> ◊</span></a></sup> provides a human-readable representation of an instance of a PROV-DM type or relation. </span>
+<h5><span class="secno"><span class="delete">4.7.4.1</span><span class="insert">5.7.2.1</span> </span>prov:label</h5>
+
+
+
+
+<p>
+<span class="glossary-ref"> The attribute <dfn id="concept-label" title="label" class="internalDFN"><span class="name">prov:label</span></dfn><sup><a class="internalDFN" href="#concept-label"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> provides a human-readable representation of <span class="insert">an instance of </span>a PROV-DM <span class="delete">element</span><span class="insert">type</span> or relation. </span>
The value associated with the attribute <span class="name">prov:label</span> <em class="rfc2119" title="must">must</em> be a string.</p>
-<div class="anexample" id="example_48"><div class="anexampleTitle">Example 48<sup><a class="internalDFN" href="#example_48"><span class="diamond"> ◊</span></a></sup></div>
+<div class="anexample" id="example_49"><div class="anexampleTitle"><span class="insert">Example 49</span><sup><a class="internalDFN" href="#example_49"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
<p>The following entity is provided with a label attribute.</p>
-<pre class="codeexample"> entity(ex:e1, [ prov:label="This is a human-readable label" ])
+<pre class="codeexample"> entity(ex:e1, <span class="delete">[prov:label="This</span><span class="insert">[ prov:label="This</span> is a <span class="delete">label"])</span><span class="insert">human-readable label" ])</span>
</pre>
<p><span class="insert">The following entity has two label attributes, in French and English.</span></p>
<pre class="codeexample"><span class="insert"> entity(ex:car01, [ prov:label="Voiture 01"@fr, prov:label="Car 01"@en ])
</span></pre>
</div>
+
+
+
</div>
<div id="term-attribute-location" class="section">
-<h5><span class="secno">5.7.2.2 </span>prov:location</h5>
-
-<p><span class="glossary-ref"> A <dfn id="concept-location" title="location" class="internalDFN">location</dfn><sup><a class="internalDFN" href="#concept-location"><span class="diamond"> ◊</span></a></sup> can be an identifiable geographic place (ISO 19112), but it can also be a non-geographic place such as a directory, row, or column. </span>
+<h5><span class="secno"><span class="delete">4.7.4.2</span><span class="insert">5.7.2.2</span> </span>prov:location</h5>
+
+<p><span class="glossary-ref"> A <dfn id="concept-location" title="location" class="internalDFN">location</dfn><sup><a class="internalDFN" href="#concept-location"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> can be an identifiable geographic place (ISO 19112), but it can also be a non-geographic place such as a directory, row, or column. </span>
As such, there are numerous ways in which location can be expressed, such as by a coordinate,
address, landmark, and so forth. This document does not specify how to concretely express locations, but instead provide a mechanism to introduce locations, by means of a reserved attribute. </p>
<p>
-The attribute <span class="name">prov:location</span> is an <em class="rfc2119" title="optional">optional</em> attribute of <a href="#concept-entity" class="internalDFN">Entity</a>, <a href="#concept-activity" class="internalDFN">Activity</a>, <a href="#concept-agent" class="internalDFN">Agent</a>, <a href="#concept-usage" class="internalDFN">Usage</a>, <a href="#concept-generation" class="internalDFN">Generation</a>, <a href="#concept-invalidation" class="internalDFN">Invalidation</a>, <a href="#concept-start" class="internalDFN">Start</a>, and <a href="#concept-end" class="internalDFN">End</a>. The value associated with the attribute <span class="name">prov:location</span> <em class="rfc2119" title="must">must</em> be a PROV-DM <a title="value" href="#concept-value" class="internalDFN">Value</a>, expected to denote a location.
+The attribute <span class="name">prov:location</span> is an <em class="rfc2119" title="optional">optional</em> attribute of <span class="delete">entity, activity, usage,</span><a href="#concept-entity" class="internalDFN"><span class="insert">Entity</span></a><span class="insert">, </span><a href="#concept-activity" class="internalDFN"><span class="insert">Activity</span></a><span class="insert">, </span><a href="#concept-agent" class="internalDFN"><span class="insert">Agent</span></a><span class="insert">, </span><a href="#concept-usage" class="internalDFN"><span class="insert">Usage</span></a><span class="insert">, </span><a href="#concept-generation" class="internalDFN"><span class="insert">Generation</span></a><span class="insert">, </span><a href="#concept-invalidation" class="internalDFN"><span class="insert">Invalidation</span></a><span class="insert">, </span><a href="#concept-start" class="internalDFN"><span class="insert">Start</span></a><span class="insert">,</span> and <span class="delete">generation.</span><a href="#concept-end" class="internalDFN"><span class="insert">End</span></a><span class="insert">.</span> The value associated with the attribute <span class="name">prov:location</span> <em class="rfc2119" title="must">must</em> be a PROV-DM <a title="value" href="#concept-value" class="internalDFN">Value</a>, expected to denote a location.
</p>
-<div class="anexample" id="example-location"><div class="anexampleTitle">Example 49<sup><a class="internalDFN" href="#example-location"><span class="diamond"> ◊</span></a></sup></div>
+<div class="anexample" id="example-location"><div class="anexampleTitle"><span class="insert">Example 50</span><sup><a class="internalDFN" href="#example-location"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
<p>The following expression describes entity Mona Lisa, a painting, with a location attribute. </p>
-<pre class="codeexample"> entity(ex:MonaLisa, [ prov:location="Le Louvre, Paris", prov:type="StillImage" ])
+<pre class="codeexample"> entity(ex:MonaLisa, <span class="delete">[prov:location="Le Louvres,</span><span class="insert">[ prov:location="Le Louvre,</span> Paris", <span class="delete">prov:type="StillImage"])</span><span class="insert">prov:type="StillImage" ])</span>
</pre>
-<p>The following expression describes a cell, at coordinates (5,5), with value 10. </p>
-<pre class="codeexample"> entity(ex:cell, [ prov:location="(5,5)", prov:value="10" %% xsd:integer ])
-</pre>
+<p><span class="insert">The following expression describes a cell, at coordinates (5,5), with value 10. </span></p>
+<pre class="codeexample"><span class="insert"> entity(ex:cell, [ prov:location="(5,5)", prov:value="10" %% xsd:integer ])
+</span></pre>
</div>
</div>
+
+
+
<div id="term-attribute-role" class="section">
-<h5><span class="secno">5.7.2.3 </span>prov:role</h5>
-
-
-<p><span class="glossary-ref"> A <dfn id="concept-role" class="internalDFN">role</dfn><sup><a class="internalDFN" href="#concept-role"><span class="diamond"> ◊</span></a></sup> is the function of an entity or agent with respect to an activity, in the context of a <a href="#concept-usage" class="internalDFN">usage</a>, <a href="#concept-generation" class="internalDFN">generation</a>, <a href="#concept-invalidation" class="internalDFN">invalidation</a>, <a href="#concept-activityAssociation" class="internalDFN">association</a>, <a href="#concept-start" class="internalDFN">start</a>, and <a href="#concept-end" class="internalDFN">end</a>. </span></p>
-
-<p>
+<h5><span class="secno"><span class="delete">4.7.4.3</span><span class="insert">5.7.2.3</span> </span>prov:role</h5>
+
+
+<p><span class="glossary-ref"><span class="insert"> A </span><dfn id="concept-role" class="internalDFN"><span class="insert">role</span></dfn><sup><a class="internalDFN" href="#concept-role"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="insert"> is the function of an entity or agent with respect to an activity, in the context of a </span><a href="#concept-usage" class="internalDFN"><span class="insert">usage</span></a><span class="insert">, </span><a href="#concept-generation" class="internalDFN"><span class="insert">generation</span></a><span class="insert">, </span><a href="#concept-invalidation" class="internalDFN"><span class="insert">invalidation</span></a><span class="insert">, </span><a href="#concept-activityAssociation" class="internalDFN"><span class="insert">association</span></a><span class="insert">, </span><a href="#concept-start" class="internalDFN"><span class="insert">start</span></a><span class="insert">, and </span><a href="#concept-end" class="internalDFN"><span class="insert">end</span></a><span class="insert">. </span></span></p>
+
+<p><span class="delete">The attribute </span><span class="delete">prov:role</span><span class="delete"> denotes the function of an entity with respect to an activity, in the context of a usage, generation,
+ association, start, and end. </span>
The attribute <span class="name">prov:role</span> is allowed to occur multiple times in a list of attribute-value pairs. The value associated with a <span class="name">prov:role</span> attribute <em class="rfc2119" title="must">must</em> be a PROV-DM <a title="value" href="#concept-value" class="internalDFN">Value</a>.</p>
-<div class="anexample" id="anexample-role"><div class="anexampleTitle">Example 50<sup><a class="internalDFN" href="#anexample-role"><span class="diamond"> ◊</span></a></sup></div>
+<div class="anexample" id="anexample-role"><div class="anexampleTitle"><span class="insert">Example 51</span><sup><a class="internalDFN" href="#anexample-role"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
<p>The following activity is associated with an agent acting as the operator. </p>
-<pre class="codeexample"> wasAssociatedWith(a, ag, [ prov:role="operator" ])
-</pre>
-<p>In the following expression, the activity <span class="name">ex:div01</span> used entity <span class="name">ex:cell</span> in the role of divisor.</p>
-<pre class="codeexample">used(ex:div01, ex:cell, [ prov:role="divisor" ])
+<pre class="codeexample"> wasAssociatedWith(a, ag, <span class="delete">[prov:role="operator"])</span><span class="insert">[ prov:role="operator" ])
+</span></pre>
+<p><span class="insert">In the following expression, the activity </span><span class="name"><span class="insert">ex:div01</span></span><span class="insert"> used entity </span><span class="name"><span class="insert">ex:cell</span></span><span class="insert"> in the role of divisor.</span></p>
+<pre class="codeexample"><span class="insert">used(ex:div01, ex:cell, [ prov:role="divisor" ])</span>
</pre>
</div>
</div>
<div id="term-attribute-type" class="section">
-<h5><span class="secno">5.7.2.4 </span>prov:type</h5>
-
-<p><span class="glossary-ref"> The attribute <dfn id="concept-type" title="type" class="internalDFN"><span class="name">prov:type</span></dfn><sup><a class="internalDFN" href="#concept-type"><span class="diamond"> ◊</span></a></sup> provides further typing information for any construct with an optional set of attribute-value pairs. </span></p>
+<h5><span class="secno"><span class="delete">4.7.4.4</span><span class="insert">5.7.2.4</span> </span>prov:type</h5>
+
+<p><span class="glossary-ref"> The attribute <dfn id="concept-type" title="type" class="internalDFN"><span class="name">prov:type</span></dfn><sup><a class="internalDFN" href="#concept-type"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> provides further typing information for <span class="insert">any construct with </span>an <span class="delete">element or relation. </span><span class="insert">optional set of attribute-value pairs. </span></span></p>
<p>
PROV-DM liberally
@@ -3571,61 +4633,82 @@
the value associated with a <span class="name">prov:type</span> attribute <em class="rfc2119" title="must">must</em> be a PROV-DM <a title="value" href="#concept-value" class="internalDFN">Value.</a> The attribute <span class="name">prov:type</span>
is allowed to occur multiple times.</p>
-<div class="anexample" id="example_51"><div class="anexampleTitle">Example 51<sup><a class="internalDFN" href="#example_51"><span class="diamond"> ◊</span></a></sup></div>
+<div class="anexample" id="example_52"><div class="anexampleTitle"><span class="insert">Example 52</span><sup><a class="internalDFN" href="#example_52"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
<p>The following describes an agent of type software agent.</p>
-<pre class="codeexample"> agent(ag, [ prov:type='prov:SoftwareAgent' ])
+<pre class="codeexample"> agent(ag, <span class="delete">[prov:type="prov:SoftwareAgent" %% xsd:QName])</span><span class="insert">[ prov:type='prov:SoftwareAgent' ])</span>
</pre>
</div>
<p>The following types are pre-defined in PROV, and are valid values for the <span class="name">prov:type</span> attribute.</p>
+
+
<table class="thinborder" style="margin-left: auto; margin-right: auto;">
-<caption id="prov-dm-predefined-types">Table 7: PROV-DM Predefined Types</caption>
-<tbody><tr><td><b>Type</b></td><td><b>Specification</b></td><td><b>Core concept</b></td></tr>
+<caption id="prov-dm-predefined-types" data-count="7"><span><span class="insert">Table 7</span><sup><a class="internalDFN" href="#prov-dm-predefined-types"><span class="diamond"><span class="insert"> ◊:</span></span></a></sup> </span><span class="insert">PROV-DM Predefined Types</span></caption>
+<tbody><tr><td><b><span class="insert">Type</span></b></td><td><b><span class="insert">Specification</span></b></td><td><b><span class="insert">Core concept</span></b></td></tr>
<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
-<tr><td><a title="bundle" href="#concept-bundle" class="internalDFN"><span class="name">prov:Bundle</span></a></td><td><a class="section-ref" href="#term-bundle"><span>Section 5.4.1</span></a></td><td><a href="#concept-entity" class="internalDFN">Entity</a></td></tr>
-<tr><td><a title="collection" href="#concept-collection" class="internalDFN"><span class="name">prov:Collection</span></a></td><td><a class="section-ref" href="#term-collection"><span>Section 5.6.1</span></a></td><td><a href="#concept-entity" class="internalDFN">Entity</a></td></tr>
+<tr><td><a title="bundle" href="#concept-bundle" class="internalDFN"><span class="name"><span class="insert">prov:Bundle</span></span></a></td><td><a class="section-ref" href="#term-bundle"><span><span class="insert">Section 5.4.1</span></span></a></td><td><a href="#concept-entity" class="internalDFN"><span class="insert">Entity</span></a></td></tr>
+<tr><td><a title="collection" href="#concept-collection" class="internalDFN"><span class="name"><span class="insert">prov:Collection</span></span></a></td><td><a class="section-ref" href="#term-collection"><span><span class="insert">Section 5.6.1</span></span></a></td><td><a href="#concept-entity" class="internalDFN"><span class="insert">Entity</span></a></td></tr>
<tr><td><a title="empty collection" href="#concept-empty-collection" class="internalDFN"><span class="name"><span class="insert">prov:EmptyCollection</span></span></a></td><td><a class="section-ref" href="#term-collection"><span><span class="insert">Section 5.6.1</span></span></a></td><td><a href="#concept-entity" class="internalDFN"><span class="insert">Entity</span></a></td></tr>
<tr><td><a title="organization" href="#concept-organization" class="internalDFN"><span class="name"><span class="insert">prov:Organization</span></span></a></td><td><a class="section-ref" href="#term-agent"><span><span class="insert">Section 5.3.1</span></span></a></td><td><a href="#concept-agent" class="internalDFN"><span class="insert">Agent</span></a></td></tr>
<tr><td><a title="person" href="#concept-person" class="internalDFN"><span class="name"><span class="insert">prov:Person</span></span></a></td><td><a class="section-ref" href="#term-agent"><span><span class="insert">Section 5.3.1</span></span></a></td><td><a href="#concept-agent" class="internalDFN"><span class="insert">Agent</span></a></td></tr>
-<tr><td><a title="plan" href="#concept-plan" class="internalDFN"><span class="name"><span class="insert">prov:Plan</span></span></a></td> <td><a class="section-ref" href="#term-entity"><span><span class="insert">Section 5.1.1</span></span></a></td><td><a href="#concept-entity" class="internalDFN"><span class="insert">Entity</span></a></td></tr>
-<tr><td><a title="primary source" href="#concept-primary-source" class="internalDFN"><span class="name">prov:PrimarySource</span></a></td><td><a class="section-ref" href="#term-primary-source"><span>Section 5.2.4</span></a></td><td><a href="#concept-derivation" class="internalDFN">Derivation</a></td></tr>
-<tr><td><a title="Quotation" href="#concept-quotation" class="internalDFN"><span class="name"><span class="delete">prov:Organization</span><span class="insert">prov:Quotation</span></span></a></td><td><a class="section-ref" href="#term-quotation"><span><span class="insert">Section 5.2.3</span></span></a></td><td><a href="#concept-derivation" class="internalDFN"><span class="insert">Derivation</span></a></td></tr>
+<tr><td><a title="plan" href="#concept-plan" class="internalDFN"><span class="name">prov:Plan</span>
+
+</a></td> <td><a class="section-ref" href="#term-entity"><span><span class="insert">Section 5.1.1</span></span></a></td><td><a href="#concept-entity" class="internalDFN"><span class="insert">Entity</span></a></td></tr>
+<tr><td><a title="primary source" href="#concept-primary-source" class="internalDFN"><span class="name"><span class="delete">prov:Account</span>
+
+<span class="insert">prov:PrimarySource</span></span></a></td><td><a class="section-ref" href="#term-primary-source"><span><span class="insert">Section 5.2.4</span></span></a></td><td><a href="#concept-derivation" class="internalDFN"><span class="insert">Derivation</span></a></td></tr>
+<tr><td><a title="Quotation" href="#concept-quotation" class="internalDFN"><span class="name"><span class="insert">prov:Quotation</span></span></a></td><td><a class="section-ref" href="#term-quotation"><span><span class="insert">Section 5.2.3</span></span></a></td><td><a href="#concept-derivation" class="internalDFN"><span class="insert">Derivation</span></a></td></tr>
<tr><td><a title="Revision" href="#concept-revision" class="internalDFN"><span class="name"><span class="insert">prov:Revision</span></span></a></td><td><a class="section-ref" href="#term-revision"><span><span class="insert">Section 5.2.2</span></span></a></td><td><a href="#concept-derivation" class="internalDFN"><span class="insert">Derivation</span></a></td></tr>
-<tr><td><a title="software-agent" href="#concept-software-agent" class="internalDFN"><span class="name"><span class="insert">prov:SoftwareAgent</span></span></a></td><td><a class="section-ref" href="#term-agent"><span>Section 5.3.1</span></a></td><td><a href="#concept-agent" class="internalDFN">Agent
-<span class="delete">prov:Person</span><span class="delete">Section 5.3.1</span><span class="delete">Agent</span>
-<span class="delete">prov:Plan</span> <span class="delete">Section 5.1.1</span><span class="delete">Entity</span>
-<span class="delete">prov:SoftwareAgent</span><span class="delete">Section 5.3.1</span><span class="delete">Agent</span>
-<span class="delete">prov:Quotation</span><span class="delete">Section 5.2.3</span><span class="delete">Derivation</span>
-<span class="delete">prov:Revision</span><span class="delete">Section 5.2.2</span><span class="delete">Derivation</span></a></td></tr>
+<tr><td><a title="software-agent" href="#concept-software-agent" class="internalDFN"><span class="name">prov:SoftwareAgent</span>
+
+<span class="delete">prov:Organization</span>
+
+<span class="delete">prov:Person</span>
+
+<span class="delete">prov:Collection</span>
+
+<span class="delete">prov:Dictionary</span>
+
+<span class="delete">prov:EmptyDictionary</span>
+
+</a></td><td><a class="section-ref" href="#term-agent"><span><span class="insert">Section 5.3.1</span></span></a></td><td><a href="#concept-agent" class="internalDFN"><span class="insert">Agent</span></a></td></tr>
</tbody></table>
</div>
<div id="term-attribute-value" class="section">
-<h5><span class="secno">5.7.2.5 </span>prov:value</h5>
-
-<p><span class="glossary-ref"> The attribute <dfn id="concept-value-attribute" title="value-attribute" class="internalDFN"><span class="name">prov:value</span></dfn><sup><a class="internalDFN" href="#concept-value-attribute"><span class="diamond"> ◊</span></a></sup> provides a <a href="#concept-value" class="internalDFN">Value</a> for an entity. </span></p>
+<h5><span class="secno"><span class="delete">4.7.4.5</span><span class="insert">5.7.2.5</span> </span>prov:value</h5>
+
+<p><span class="glossary-ref"> The attribute <dfn id="concept-value-attribute" title="value-attribute" class="internalDFN"><span class="name">prov:value</span></dfn><sup><a class="internalDFN" href="#concept-value-attribute"><span class="diamond"><span class="insert"> ◊</span></span></a></sup> provides a <a href="#concept-value" class="internalDFN">Value</a> <span class="delete">associated with</span><span class="insert">for</span> an entity. </span></p>
+
+
+
<p>The attribute <span class="name">prov:value</span> is an <em class="rfc2119" title="optional">optional</em> attribute of entity. The value associated with the attribute <span class="name">prov:value</span> <em class="rfc2119" title="must">must</em> be a PROV-DM <a title="value" href="#concept-value" class="internalDFN">Value</a>. The attribute <span class="name">prov:value</span> <em class="rfc2119" title="may">may</em> occur at most once in a set of attribute-value pairs.</p>
-<div class="anexample" id="example_52"><div class="anexampleTitle">Example 52<sup><a class="internalDFN" href="#example_52"><span class="diamond"> ◊</span></a></sup></div>
+<div class="anexample" id="example_53"><div class="anexampleTitle"><span class="insert">Example 53</span><sup><a class="internalDFN" href="#example_53"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
<p>The following example illustrates the provenance of the number <span class="name">4</span> obtained by an activity that computed the length of an input string <span class="name">"abcd"</span>.
The input and the output are expressed as entities <span class="name">ex:in</span> and <span class="name">ex:out</span>, respectively. They each have a <span class="name">prov:value</span> attribute associated with the corresponding value.
</p>
-<pre class="codeexample">entity(ex:in, [ prov:value="abcd" ])
-entity(ex:out, [ prov:value=4 ])
-activity(ex:len, [ prov:type="string-length" ])
+<pre class="codeexample">entity(ex:in, <span class="delete">[prov:value="abcd"])</span><span class="insert">[ prov:value="abcd" ])</span>
+entity(ex:out, <span class="delete">[prov:value=4])</span><span class="insert">[ prov:value=4 ])</span>
+activity(ex:len, <span class="delete">[prov:type="string-length"])
+used(ex:len,ex:in)
+wasGeneratedBy(ex:out,ex:len)
+wasDerivedFrom(ex:out,ex:in)</span><span class="insert">[ prov:type="string-length" ])
used(ex:len, ex:in)
wasGeneratedBy(ex:out, ex:len)
-wasDerivedFrom(ex:out, ex:in)
+wasDerivedFrom(ex:out, ex:in)</span>
</pre>
</div>
+<span class="delete">Should we also have prov:encoding?</span>
+
</div>
@@ -3633,112 +4716,165 @@
+
+
+
+
+
+
+
+
+
+
+
</div>
<div id="term-value" class="section">
-<h4><span class="secno">5.7.3 </span>Value</h4>
-
-<p><span class="glossary-ref"> A <dfn id="concept-value" title="value" class="internalDFN">value</dfn><sup><a class="internalDFN" href="#concept-value"><span class="diamond"> ◊</span></a></sup> is a constant such as a string, number, time, qualified name, IRI, and encoded binary data, whose interpretation is outside the scope of PROV. </span> Values can occur in attribute-value pairs. </p>
-
-<p>Each kind of such values is called a <em>datatype</em>.
- Use of the following data types is <em class="rfc2119" title="recommended">recommended</em>. </p>
+<h4><span class="secno"><span class="delete">4.7.5</span><span class="insert">5.7.3</span> </span>Value</h4>
+
+<p><span class="delete">
+By means of</span><span class="glossary-ref"><span class="insert"> A </span><dfn id="concept-value" title="value" class="internalDFN"><span class="insert">value</span></dfn><sup><a class="internalDFN" href="#concept-value"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="insert"> is a constant such as a string, number, time, qualified name, IRI, and encoded binary data, whose interpretation is outside the scope of PROV. </span></span><span class="insert"> Values can occur in</span> attribute-value <span class="delete">pairs, the PROV data model can refer to </span><span class="delete">values</span><span class="delete"> such as strings, numbers, time, qualified names, and IRIs.
+The interpretation of such values is outside the scope of PROV-DM.</span><span class="insert">pairs. </span></p>
+
+
+<p>Each kind of such values is called a <em>datatype</em>.<span class="insert">
+ Use of the following data types is </span><em class="rfc2119" title="recommended"><span class="insert">recommended</span></em><span class="insert">. </span></p>
<ul>
-<li> The RDF-compatible [<cite><a class="bibref" rel="biblioentry" href="#bib-RDF-CONCEPTS">RDF-CONCEPTS</a></cite>] types, including those taken from
-the set of XML Schema Datatypes [<cite><a class="bibref" rel="biblioentry" href="#bib-XMLSCHEMA11-2">XMLSCHEMA11-2</a></cite>];</li>
-<li> Qualified names introduced in this specification.</li>
+<li> The <span class="delete">datatypes are taken from
+the set of XML Schema Datatypes, version 1.1 [</span><span class="delete">XMLSCHEMA-2</span><span class="delete">] and the RDF specification</span><span class="insert">RDF-compatible</span> [<cite><a class="bibref" rel="biblioentry" href="#bib-RDF-CONCEPTS">RDF-CONCEPTS</a></cite><span class="delete">]. </span><span class="insert">] types, including those taken from
+the set of XML Schema Datatypes [</span><cite><a class="bibref" rel="biblioentry" href="#bib-XMLSCHEMA11-2"><span class="insert">XMLSCHEMA11-2</span></a></cite><span class="insert">];</span></li>
+<li><span class="insert"> Qualified names introduced in this specification.</span></li>
</ul>
<p>
-The normative definitions of these datatypes are provided by their respective specifications.
+The normative definitions of these datatypes are provided by <span class="delete">the</span><span class="insert">their</span> respective specifications.
</p>
-<p id="conformance-to-rdf-datatypes"><b>Conformance to RDF Datatypes</b> As of the publication of this document, RDF 1.1 Concepts and Abstract Syntax [<cite><a class="bibref" rel="biblioentry" href="#bib-RDF-CONCEPTS11">RDF-CONCEPTS11</a></cite>] is not yet a <acronym title="World Wide Web Consortium">W3C</acronym> Recommendation (see <a href="http://www.w3.org/TR/rdf11-concepts/">http://www.w3.org/TR/rdf11-concepts/</a> for the latest version).
-Both the PROV Working Group and the RDF Working Group are confident that there will be only minor changes before it becomes a <acronym title="World Wide Web Consortium">W3C</acronym> Recommendation. In order to take advantage of the anticipated corrections and new features sooner, while also providing stability in case the specification does not advance as expected, conformance to PROV as it relates to RDF Datatypes is defined as follows:</p>
-
-<ul>
-<li>If RDF 1.1 Concepts and Abstract Syntax becomes a <acronym title="World Wide Web Consortium">W3C</acronym> Recommendation, all references in PROV to
+<p id="conformance-to-rdf-datatypes"><b><span class="insert">Conformance to RDF Datatypes</span></b><span class="insert"> As of the publication of this document, RDF 1.1 Concepts and Abstract Syntax [</span><cite><a class="bibref" rel="biblioentry" href="#bib-RDF-CONCEPTS11"><span class="insert">RDF-CONCEPTS11</span></a></cite><span class="insert">] is not yet a </span><acronym title="World Wide Web Consortium"><span class="insert">W3C</span></acronym><span class="insert"> Recommendation (see </span><a href="http://www.w3.org/TR/rdf11-concepts/"><span class="insert">http://www.w3.org/TR/rdf11-concepts/</span></a><span class="insert"> for the latest version).</span>
+<span class="delete">Each datatype</span><span class="insert">Both the PROV Working Group and the RDF Working Group are confident that there will be only minor changes before it becomes a </span><acronym title="World Wide Web Consortium"><span class="insert">W3C</span></acronym><span class="insert"> Recommendation. In order to take advantage of the anticipated corrections and new features sooner, while also providing stability in case the specification does not advance as expected, conformance to PROV as it relates to RDF Datatypes</span> is <span class="delete">identified by its XML </span><span class="delete">xsd:QName</span><span class="delete">.</span><span class="insert">defined as follows:</span></p>
+
+
+
+
+<span class="delete">We note</span><ul>
+<li><span class="insert">If RDF 1.1 Concepts and Abstract Syntax becomes a </span><acronym title="World Wide Web Consortium"><span class="insert">W3C</span></acronym><span class="insert"> Recommendation, all references in PROV to
RDF Concepts and Abstract Syntax will be normative references to the 1.1 Recommendation.
-</li><li>Until that time, references in PROV to RDF Concepts and Abstract Syntax features operate as follows:
-<ul>
-<li> If RDF 1.0 defines the features, then the reference is normative to the 1.0 definition [<cite><a class="bibref" rel="biblioentry" href="#bib-RDF-CONCEPTS">RDF-CONCEPTS</a></cite>];</li>
-<li>otherwise, the feature is optional in PROV and the reference is informative only.</li>
+</span></li><li><span class="insert">Until</span> that <span class="delete">PROV-DM </span><span class="delete">time instants</span><span class="delete"> are defined according</span><span class="insert">time, references in PROV</span> to <span class="delete">xsd:dateTime</span><span class="insert">RDF Concepts and Abstract Syntax features operate as follows:
+</span><ul>
+<li><span class="insert"> If RDF 1.0 defines the features, then the reference is normative to the 1.0 definition</span> [<cite><span class="delete">XMLSCHEMA-2</span><a class="bibref" rel="biblioentry" href="#bib-RDF-CONCEPTS"><span class="insert">RDF-CONCEPTS</span></a></cite><span class="delete">].</span><span class="insert">];</span></li>
+<li><span class="insert">otherwise, the feature is optional in PROV and the reference is informative only.</span></li>
</ul>
</li></ul>
-<p>This "change in normative reference" is effective as of the publication of RDF 1.1 as a <acronym title="World Wide Web Consortium">W3C</acronym> Recommendation. However, <acronym title="World Wide Web Consortium">W3C</acronym> expects to publish a new edition of PROV once RDF 1.1 becomes a Recommendation to update the reference explicitly.</p>
-
-
-
-
-
-
-
-<div class="anexample" id="anexample-value"><div class="anexampleTitle">Example 53<sup><a class="internalDFN" href="#anexample-value"><span class="diamond"> ◊</span></a></sup></div>
+<p><span class="insert">This "change in normative reference" is effective as of the publication of RDF 1.1 as a </span><acronym title="World Wide Web Consortium"><span class="insert">W3C</span></acronym><span class="insert"> Recommendation. However, </span><acronym title="World Wide Web Consortium"><span class="insert">W3C</span></acronym><span class="insert"> expects to publish a new edition of PROV once RDF 1.1 becomes a Recommendation to update the reference explicitly.</span></p>
+
+
+
+
+<span class="delete">Table 6: PROV-DM Data Types</span>
+<span class="delete">xsd:decimal</span> <span class="delete">xsd:double</span> <span class="delete">xsd:dateTime</span>
+<span class="delete">xsd:integer</span> <span class="delete">xsd:float</span>
+<span class="delete">xsd:nonNegativeInteger</span> <span class="delete">xsd:string</span> <span class="delete">rdf:XMLLiteral</span>
+<span class="delete">xsd:nonPositiveInteger</span><span class="delete">xsd:normalizedString</span>
+<span class="delete">xsd:positiveInteger</span> <span class="delete">xsd:token</span>
+<span class="delete">xsd:negativeInteger</span> <span class="delete">xsd:language</span>
+<span class="delete">xsd:long</span> <span class="delete">xsd:Name</span>
+<span class="delete">xsd:int</span> <span class="delete">xsd:NCName</span>
+<span class="delete">xsd:short</span> <span class="delete">xsd:NMTOKEN</span>
+<span class="delete">xsd:byte</span> <span class="delete">xsd:boolean</span>
+<span class="delete">xsd:unsignedLong</span> <span class="delete">xsd:hexBinary</span>
+<span class="delete">xsd:unsignedInt</span> <span class="delete">xsd:base64Binary</span>
+<span class="delete">xsd:unsignedShort</span><span class="delete">xsd:anyURI</span>
+<span class="delete">xsd:unsignedByte</span> <span class="delete">xsd:QName</span>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<div class="anexample" id="anexample-value"><div class="anexampleTitle"><span class="insert">Example 54</span><sup><a class="internalDFN" href="#anexample-value"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
<p>
The following examples respectively are the string "abc", the integer number 1, and the IRI "http://example.org/foo".
</p><pre class="codeexample"> "abc"
- "1" %% xsd:integer
+ <span class="delete">1</span><span class="insert">"1" %% xsd:integer</span>
"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="http://www.w3.org/TR/prov-n/#prod-QUALIFIED_NAME">prov:QUALIFIED_NAME</a></span> [<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-N">PROV-N</a></cite>]).
+<p>The following example shows a value of type <span class="name"><span class="delete">xsd:QName</span><span class="insert">prov:QUALIFIED_NAME</span></span> (see
+<span class="delete">QName</span><span class="name"><a href="http://www.w3.org/TR/prov-n/#prod-QUALIFIED_NAME"><span class="insert">prov:QUALIFIED_NAME</span></a></span> [<cite><span class="delete">XMLSCHEMA-2</span><a class="bibref" rel="biblioentry" href="#bib-PROV-N"><span class="insert">PROV-N</span></a></cite>]).
The prefix <span class="name">ex</span> <em class="rfc2119" title="must">must</em> be bound to a <a href="#dfn-namespace" class="internalDFN">namespace</a> declared in a <a href="#dfn-namespaceDeclaration" class="internalDFN">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'
+ "ex:value" %% <span class="delete">xsd:QName</span><span class="insert">prov:QUALIFIED_NAME</span>
</pre>
+<span class="insert">Alternatively, the same value can be expressed using the following convenience notation.
+</span><pre class="codeexample"><span class="insert">
+ 'ex:value'
+</span></pre>
</div>
-<p>We note that PROV-DM <dfn title="time" id="dfn-time" class="internalDFN">time instants</dfn><sup><a class="internalDFN" href="#dfn-time"><span class="diamond"> ◊</span></a></sup> are defined according to xsd:dateTime [<cite><a class="bibref" rel="biblioentry" href="#bib-XMLSCHEMA11-2">XMLSCHEMA11-2</a></cite>].</p>
-
-
-<div class="anexample" id="anexample-time"><div class="anexampleTitle">Example 54<sup><a class="internalDFN" href="#anexample-time"><span class="diamond"> ◊</span></a></sup></div>
+
+
+
+
+<p><span class="insert">We note that PROV-DM </span><dfn title="time" id="dfn-time" class="internalDFN"><span class="insert">time instants</span></dfn><sup><a class="internalDFN" href="#dfn-time"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="insert"> are defined according to xsd:dateTime [</span><cite><a class="bibref" rel="biblioentry" href="#bib-XMLSCHEMA11-2"><span class="insert">XMLSCHEMA11-2</span></a></cite><span class="insert">].</span></p>
+
+
+<div class="anexample" id="anexample-time"><div class="anexampleTitle"><span class="insert">Example 55</span><sup><a class="internalDFN" href="#anexample-time"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
<p>
In the following example, the generation time of entity <span class="name">e1</span> is expressed according to
-<a href="http://www.w3.org/TR/xmlschema11-2/#dateTime">xsd:dateTime</a> [<cite><a class="bibref" rel="biblioentry" href="#bib-XMLSCHEMA11-2">XMLSCHEMA11-2</a></cite>].</p>
+<a href="http://www.w3.org/TR/xmlschema11-2/#dateTime">xsd:dateTime</a> [<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>
<pre class="codeexample">
wasGeneratedBy(e1,a1, 2001-10-26T21:32:52)
</pre>
</div>
-</div>
+<span class="delete">
+We need</span></div>
<div id="term-NamespaceDeclaration" class="section">
-<h4><span class="secno">5.7.4 </span>Namespace Declaration</h4>
-
-<p>A PROV-DM <dfn id="dfn-namespace" class="internalDFN">namespace</dfn><sup><a class="internalDFN" href="#dfn-namespace"><span class="diamond"> ◊</span></a></sup> is identified by an IRI [<cite><a class="bibref" rel="biblioentry" href="#bib-IRI">IRI</a></cite>]. In PROV-DM, attributes, identifiers, and values with <a title="qualified name" href="#concept-qualifiedName" class="internalDFN">qualified names</a> as data type can be placed in a namespace using the mechanisms described in this specification. </p>
-
-
-<p>A <dfn id="dfn-namespaceDeclaration" class="internalDFN">namespace declaration</dfn><sup><a class="internalDFN" href="#dfn-namespaceDeclaration"><span class="diamond"> ◊</span></a></sup> 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. </p>
-
-<p>A <dfn id="dfn-defaultNamespaceDeclaration" class="internalDFN">default namespace declaration</dfn><sup><a class="internalDFN" href="#dfn-defaultNamespaceDeclaration"><span class="diamond"> ◊</span></a></sup> consists of a namespace. Every un-prefixed qualified name
-refers to default namespace declaration.</p>
-
-<p>The <dfn title="prov-namespace" id="dfn-prov-namespace" class="internalDFN">PROV namespace</dfn><sup><a class="internalDFN" href="#dfn-prov-namespace"><span class="diamond"> ◊</span></a></sup> is identified by the URI <a href="http://www.w3.org/ns/prov#">http://www.w3.org/ns/prov#</a>.</p>
+<h4><span class="secno"><span class="insert">5.7.4 </span></span><span class="insert">Namespace Declaration</span></h4>
+
+<p><span class="insert">A PROV-DM </span><dfn id="dfn-namespace" class="internalDFN"><span class="insert">namespace</span></dfn><sup><a class="internalDFN" href="#dfn-namespace"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="insert"> is identified by an IRI [</span><cite><a class="bibref" rel="biblioentry" href="#bib-IRI"><span class="insert">IRI</span></a></cite><span class="insert">]. In PROV-DM, attributes, identifiers, and values with </span><a title="qualified name" href="#concept-qualifiedName" class="internalDFN"><span class="insert">qualified names</span></a><span class="insert"> as data type can be placed in a namespace using the mechanisms described in this specification. </span></p>
+
+
+<p><span class="insert">A </span><dfn id="dfn-namespaceDeclaration" class="internalDFN"><span class="insert">namespace declaration</span></dfn><sup><a class="internalDFN" href="#dfn-namespaceDeclaration"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><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</span> to <span class="delete">check</span><span class="insert">this namespace. </span></p>
+
+<p><span class="insert">A </span><dfn id="dfn-defaultNamespaceDeclaration" class="internalDFN"><span class="insert">default namespace declaration</span></dfn><sup><a class="internalDFN" href="#dfn-defaultNamespaceDeclaration"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="insert"> consists of a namespace. Every un-prefixed qualified name
+refers to default namespace declaration.</span></p>
+
+<p><span class="insert">The </span><dfn title="prov-namespace" id="dfn-prov-namespace" class="internalDFN"><span class="insert">PROV namespace</span></dfn><sup><a class="internalDFN" href="#dfn-prov-namespace"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="insert"> is identified by the URI </span><a href="http://www.w3.org/ns/prov#"><span class="insert">http://www.w3.org/ns/prov#</span></a><span class="insert">.</span></p>
</div>
<div id="term-qualified-name" class="section">
-<h4><span class="secno">5.7.5 </span>Qualified Name</h4>
-
-
-<span class="glossary-ref"> A <dfn id="concept-qualifiedName" class="internalDFN">qualified name</dfn><sup><a class="internalDFN" href="#concept-qualifiedName"><span class="diamond"> ◊</span></a></sup> is a name subject to <a href="#dfn-namespace" class="internalDFN">namespace</a> interpretation. It consists of a <a href="#dfn-namespace" class="internalDFN">namespace</a>, denoted by an optional prefix, and a local name. </span>
-
-<p>PROV-DM 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 href="#dfn-namespace" class="internalDFN">namespace</a> declared in a namespace declaration. In the absence of prefix, the qualified name
- refers to the <a title="default namespace declaration" href="#dfn-defaultNamespaceDeclaration" class="internalDFN">default namespace</a>.</p>
+<h4><span class="secno"><span class="insert">5.7.5 </span></span><span class="insert">Qualified Name</span></h4>
+
+
+<span class="glossary-ref"><span class="insert"> A </span><dfn id="concept-qualifiedName" class="internalDFN"><span class="insert">qualified name</span></dfn><sup><a class="internalDFN" href="#concept-qualifiedName"><span class="diamond"><span class="insert"> ◊</span></span></a></sup><span class="insert"> is a name subject to </span><a href="#dfn-namespace" class="internalDFN"><span class="insert">namespace</span></a><span class="insert"> interpretation. It consists of a </span><a href="#dfn-namespace" class="internalDFN"><span class="insert">namespace</span></a><span class="insert">, denoted by an optional prefix, and a local name. </span></span>
+
+<p><span class="insert">PROV-DM stipulates</span> that <span class="delete">we are including all xsd types that are the latest versions of XML Schema/RDF.
+</span><span class="insert">a qualified name can be mapped into an IRI
+ by concatenating the IRI associated with the prefix and the local part.</span></p>
+
+<p><span class="insert">A qualified name's prefix is </span><em class="rfc2119" title="optional"><span class="insert">optional</span></em><span class="insert">. If a prefix occurs in a
+ qualified name, it refers to a </span><a href="#dfn-namespace" class="internalDFN"><span class="insert">namespace</span></a><span class="insert"> declared in a namespace declaration. In the absence of prefix, the qualified name
+ refers to the </span><a title="default namespace declaration" href="#dfn-defaultNamespaceDeclaration" class="internalDFN"><span class="insert">default namespace</span></a><span class="insert">.</span></p>
</div>
+
+
</div>
@@ -3749,10 +4885,16 @@
<div id="extensibility-section" class="section">
-<h2><span class="secno">6. </span>PROV-DM Extensibility Points</h2>
-
-
-<p>The PROV data model provides extensibility points that allow designers to specialize it for specific applications or domains. We summarize these extensibility points here. </p>
+<h2><span class="secno"><span class="delete">5.</span><span class="insert">6.</span> </span>PROV-DM Extensibility Points</h2>
+
+
+<p>The PROV data model provides extensibility points that allow designers to specialize it <span class="delete">to</span><span class="insert">for</span> specific applications or domains. We summarize these extensibility points <span class="delete">here:
+
+</span><span class="insert">here. </span></p>
+<span class="delete"> Attribute-value lists occur in all types and relations of the data model. Applications designers are free to introduce further application-specific attributes. Attributes for a given application can be distinguished by qualifying them with a prefix denoting a namespace
+declared in a namespace declaration.
+
+</span>
<p>The <a title="prov-namespace" href="#dfn-prov-namespace" class="internalDFN">PROV namespace</a> declares a set of reserved attributes catering for extensibility: <a href="#term-attribute-type"><span class="name">prov:type</span></a>, <a href="#term-attribute-role"><span class="name">prov:role</span></a>, <a href="#term-attribute-location"><span class="name">prov:location</span></a>.</p>
@@ -3761,20 +4903,20 @@
<li>Sub-types and sub-relations can be expressed by means of the reserved attribute
<a href="#term-attribute-type"><span class="name">prov:type</span></a>.
-<div class="anexample" id="anexample-sub-relation"><div class="anexampleTitle">Example 55<sup><a class="internalDFN" href="#anexample-sub-relation"><span class="diamond"> ◊</span></a></sup></div>
+<div class="anexample" id="anexample-sub-relation"><div class="anexampleTitle"><span class="insert">Example 56</span><sup><a class="internalDFN" href="#anexample-sub-relation"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
<p>
In the following example, <span class="name">e2</span> is a translation of <span class="name">e1</span>,
expressed as a sub-type of derivation.
</p><pre class="codeexample">
- wasDerivedFrom(e2,e1, [prov:type='ex:Translation' ])
+ wasDerivedFrom(e2,e1, <span class="delete">[prov:type="ex:Translation" %% xsd:QName])</span><span class="insert">[prov:type='ex:Translation' ])</span>
</pre>
</div>
-<div class="anexample" id="anexample-sub-type"><div class="anexampleTitle">Example 56<sup><a class="internalDFN" href="#anexample-sub-type"><span class="diamond"> ◊</span></a></sup></div>
+<div class="anexample" id="anexample-sub-type"><div class="anexampleTitle"><span class="insert">Example 57</span><sup><a class="internalDFN" href="#anexample-sub-type"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
<p>
In the following example, <span class="name">e</span> is described as a Car, a type of entity.
</p><pre class="codeexample">
- entity(e, [prov:type='ex:Car' ])
+ entity(e, <span class="delete">[prov:type="ex:Car" %% xsd:QName])</span><span class="insert">[prov:type='ex:Car' ])</span>
</pre>
</div>
@@ -3783,32 +4925,41 @@
</li>
-<li>Application and domain specific roles can be expressed by means of the reserved attribute
-<a href="#term-attribute-role"><span class="name">prov:role</span></a>.
-
-<div class="anexample" id="anexample-usage-with-role"><div class="anexampleTitle">Example 57<sup><a class="internalDFN" href="#anexample-usage-with-role"><span class="diamond"> ◊</span></a></sup></div>
-<p>
-In the following example, two computers <span class="name">ex:laptop4</span> and <span class="name">ex:desktop9</span> are used in different roles in a work activity.
-</p><pre class="codeexample">
+
+
+
+
+<span class="delete">New namespaces and associated prefixes can be declared, allowing attributes and names to be qualified. </span>
+
+<li><span class="delete">Notes allow arbitrary metadata</span><span class="insert">Application and domain specific roles can be expressed by means of the reserved attribute
+</span><a href="#term-attribute-role"><span class="name"><span class="insert">prov:role</span></span></a><span class="insert">.
+
+</span><div class="anexample" id="anexample-usage-with-role"><div class="anexampleTitle"><span class="insert">Example 58</span><sup><a class="internalDFN" href="#anexample-usage-with-role"><span class="diamond"><span class="insert"> ◊</span></span></a></sup></div>
+<p><span class="insert">
+In the following example, two computers </span><span class="name"><span class="insert">ex:laptop4</span></span><span class="insert"> and </span><span class="name"><span class="insert">ex:desktop9</span></span><span class="insert"> are used in different roles in a work activity.
+</span></p><pre class="codeexample"><span class="insert">
activity(ex:work)
entity(ex:laptop4)
entity(ex:desktop9)
used(ex:work, ex:laptop4, [prov:role="day-to-day machine"])
used(ex:work, ex:desktop9, [prov:role="backup machine"])
-</pre>
+</span></pre>
</div>
</li>
-<li> Attribute-value lists occur in all types and most relations of the data model. Applications designers are free to introduce further application-specific attributes. Attributes for a given application can be distinguished by qualifying them with a prefix denoting a namespace
-declared in a namespace declaration. New namespaces and associated prefixes can be declared, allowing attributes and names to be qualified.
-</li>
+<li><span class="insert"> Attribute-value lists occur in all types and most relations of the data model. Applications designers are free</span> to <span class="insert">introduce further application-specific attributes. Attributes for a given application can </span>be <span class="insert">distinguished by qualifying them with a prefix denoting a namespace
+declared in a namespace declaration. New namespaces and </span>associated <span class="delete">with anything identifiable in PROV-DM. Notes consist of attribute-value pairs. Attributes are qualified by a
+namespace.</span><span class="insert">prefixes can be declared, allowing attributes and names to be qualified.
+</span></li>
+
+
</ul>
-<p>The PROV data model is designed to be application and technology independent, but implementers are welcome and encouraged to specialize PROV-DM to specific domains and applications. To ensure interoperability, specializations of
+<p>The PROV data model is designed to be application and technology independent, but <span class="delete">specializations of</span><span class="insert">implementers are welcome and encouraged to specialize</span> PROV-DM <span class="delete">are welcome</span><span class="insert">to specific domains</span> and <span class="delete">encouraged.</span><span class="insert">applications.</span> To ensure interoperability, specializations of
the PROV data model that exploit the extensibility points summarized in this section <em class="rfc2119" title="must">must</em> preserve the semantics specified in this document and in [<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-CONSTRAINTS">PROV-CONSTRAINTS</a></cite>]. </p>
@@ -3818,7 +4969,7 @@
<div id="valid-provenance" class="section">
-<h2><span class="secno">7. </span>Creating Valid Provenance</h2>
+<h2><span class="secno"><span class="delete">6.</span><span class="insert">7.</span> </span>Creating Valid Provenance</h2>
<ul>
@@ -3847,8 +4998,8 @@
<li>
-<p>The idea of bundling provenance descriptions is crucial to the PROV approach. Indeed, it allows multiple provenance perspectives to be provided for a given entity. It is also the mechanism by which provenance of provenance can be expressed.
-Descriptions in bundles are expected to satisfy constraints specified in the companion specification [<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-CONSTRAINTS">PROV-CONSTRAINTS</a></cite>].</p>
+<p>The idea of bundling provenance descriptions is crucial to the PROV approach. Indeed, it allows multiple provenance perspectives to be provided for a given entity. It is also the mechanism by which provenance of provenance can be expressed.<span class="delete"> Such a named bundle is referred</span><span class="insert">
+Descriptions in bundles are expected</span> to <span class="delete">as an </span><span class="delete">account</span><span class="delete"> and is regarded as an </span><span class="delete">Account</span><span class="delete"> so that its provenance can be expressed. The notion of account is</span><span class="insert">satisfy constraints</span> specified in the companion specification [<cite><a class="bibref" rel="biblioentry" href="#bib-PROV-CONSTRAINTS">PROV-CONSTRAINTS</a></cite><span class="delete">], as well as the constraints that </span><span class="delete">structurally well-formed</span><span class="delete"> descriptions </span><span class="delete">should</span><span class="delete"> satisfy.</span><span class="insert">].</span></p>
</li>
@@ -3859,14 +5010,230 @@
+<div class="appendix section" id="cross-references-to-prov-o-and-prov-n">
+<h2><span class="secno"><span class="insert">A. </span></span><span class="insert">Cross-References to PROV-O and PROV-N</span></h2>
+
+<p><span class="insert">PROV-DM is a conceptual data model which can be serialized in various ways.
+The following table contains the PROV-O classes and properties, as described in [</span><cite><a class="bibref" rel="biblioentry" href="#bib-PROV-O"><span class="insert">PROV-O</span></a></cite><span class="insert">], and PROV-N productions, as described in [</span><cite><a class="bibref" rel="biblioentry" href="#bib-PROV-N"><span class="insert">PROV-N</span></a></cite><span class="insert">] that correspond to PROV-DM concepts.</span></p>
+
+<div id="prov-dm-to-prov-o-and-prov-n-fig" style="text-align: left;">
+<table class="thinborder" style="margin-left: auto; margin-right: auto;">
+<caption id="prov-dm-to-prov-o-and-prov-n" data-count="8"><span><span class="insert">Table 8</span><sup><a class="internalDFN" href="#prov-dm-to-prov-o-and-prov-n"><span class="diamond"><span class="insert"> ◊:</span></span></a></sup> </span><span class="insert">Cross-References to PROV-O and PROV-N</span></caption>
+<tbody><tr><td><a><b><span class="insert">PROV-DM</span></b></a></td><td><b><span class="insert">PROV-O</span></b></td><td><b><span class="insert">PROV-N</span></b></td><td><b><span class="insert">Component</span></b></td></tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td></tr>
+
+<tr class="component1-color">
+<td><a title="Entity" href="#concept-entity" class="internalDFN"><span class="insert">Entity</span></a></td>
+<td><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#Entity"><span class="insert">Entity</span></a></td>
+<td><code><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/releases/WD-prov-n-20120724/Overview.html#prod-entityExpression"><span class="insert">entityExpression</span></a></code>
+</td><td rowspan="8"><a href="#component1"><span class="insert">Component 1:</span><br><span class="insert"> Entities/Activities</span></a></td></tr>
+
+<tr class="component1-color">
+<td><a title="Activity" href="#concept-activity" class="internalDFN"><span class="insert">Activity</span></a></td>
+<td><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#Entity"><span class="insert">Activity</span></a></td>
+<td><code><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/releases/WD-prov-n-20120724/Overview.html#prod-activityExpression"><span class="insert">activityExpression</span></a></code></td>
+</tr>
+
+<tr class="component1-color">
+<td><a title="Generation" href="#concept-generation" class="internalDFN"><span class="insert">Generation</span></a></td>
+<td><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#wasGeneratedBy"><span class="insert">wasGeneratedBy</span></a><span class="insert">, </span><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#Generation"><span class="insert">Generation</span></a></td>
+<td><code><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/releases/WD-prov-n-20120724/Overview.html#prod-generationExpression"><span class="insert">generationExpression</span></a></code></td>
+</tr>
+
+<tr class="component1-color">
+<td><a title="Usage" href="#concept-usage" class="internalDFN"><span class="insert">Usage</span></a></td>
+<td><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#used"><span class="insert">used</span></a><span class="insert">, </span><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#Usage"><span class="insert">Usage</span></a></td>
+<td><code><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/releases/WD-prov-n-20120724/Overview.html#prod-usageExpression"><span class="insert">usageExpression</span></a></code></td>
+</tr>
+
+<tr class="component1-color">
+<td><a title="Communication" href="#concept-communication" class="internalDFN"><span class="insert">Communication</span></a></td>
+<td><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#wasInformedBy"><span class="insert">wasInformedBy</span></a><span class="insert">, </span><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#Communication"><span class="insert">Communication</span></a></td>
+<td><code><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/releases/WD-prov-n-20120724/Overview.html#prod-communicationExpression"><span class="insert">communicationExpression</span></a></code></td>
+</tr>
+
+<tr class="component1-color">
+<td><a title="Start" href="#concept-start" class="internalDFN"><span class="insert">Start</span></a></td>
+<td><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#wasStartedBy"><span class="insert">wasStartedBy</span></a><span class="insert">, </span><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#Start"><span class="insert">Start</span></a></td>
+<td><code><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/releases/WD-prov-n-20120724/Overview.html#prod-startExpression"><span class="insert">startExpression</span></a></code></td>
+</tr>
+
+<tr class="component1-color">
+<td><a title="End" href="#concept-end" class="internalDFN"><span class="insert">End</span></a></td>
+<td><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#wasEndedBy"><span class="insert">wasEndedBy</span></a><span class="insert">, </span><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#End"><span class="insert">End</span></a></td>
+<td><code><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/releases/WD-prov-n-20120724/Overview.html#prod-endExpression"><span class="insert">endExpression</span></a></code></td>
+</tr>
+
+<tr class="component1-color">
+<td><a title="Invalidation" href="#concept-invalidation" class="internalDFN"><span class="insert">Invalidation</span></a></td>
+<td><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#wasInvalidatedBy"><span class="insert">wasInvalidatedBy</span></a><span class="insert">, </span><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#Invalidation"><span class="insert">Invalidation</span></a></td>
+<td><code><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/releases/WD-prov-n-20120724/Overview.html#prod-invalidationExpression"><span class="insert">invalidationExpression</span></a></code></td>
+</tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td>
+</tr>
+
+
+
+<tr class="component2-color">
+<td><a title="Derivation" href="#concept-derivation" class="internalDFN"><span class="insert">Derivation</span></a></td>
+<td><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#wasDerivedFrom"><span class="insert">wasDerivedFrom</span></a><span class="insert">, </span><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#Derivation"><span class="insert">Derivation</span></a></td>
+<td><code><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/releases/WD-prov-n-20120724/Overview.html#prod-derivationExpression"><span class="insert">derivationExpression</span></a></code></td>
+<td rowspan="4"><a href="#component2"><span class="insert">Component 2:</span><br><span class="insert"> Derivations</span></a></td>
+</tr>
+
+<tr class="component2-color">
+<td class="provType"><a title="Revision" href="#concept-revision" class="internalDFN"><span class="insert">Revision</span></a></td>
+<td><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#wasRevisionOf"><span class="insert">wasRevisionOf</span></a><span class="insert">, </span><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#Revision"><span class="insert">Revision</span></a></td>
+<td><span class="insert">type </span><code><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/releases/WD-prov-n-20120724/Overview.html#provn-type-Revision"><span class="insert">Revision</span></a></code></td>
+</tr>
+
+<tr class="component2-color">
+<td class="provType"><a title="Quotation" href="#concept-quotation" class="internalDFN"><span class="insert">Quotation</span></a></td>
+<td><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#wasQuotedFrom"><span class="insert">wasQuotedFrom</span></a><span class="insert">, </span><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#Quotation"><span class="insert">Quotation</span></a></td>
+<td><span class="insert">type </span><code><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/releases/WD-prov-n-20120724/Overview.html#provn-type-Quotation"><span class="insert">Quotation</span></a></code></td>
+</tr>
+
+<tr class="component2-color"><td class="provType"><a title="Primary Source" href="#concept-primary-source" class="internalDFN"><span class="insert">Primary Source</span></a></td>
+<td><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#hadPrimarySource"><span class="insert">hadPrimarySource</span></a><span class="insert">, </span><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#Source"><span class="insert">Source</span></a></td>
+<td><span class="insert">type </span><code><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/releases/WD-prov-n-20120724/Overview.html#provn-type-Primary-Source"><span class="insert">PrimarySource</span></a></code></td>
+</tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td>
+</tr>
+
+
+
+<tr class="component3-color" style="border-collapse: collapse; ">
+<td><a title="Agent" href="#concept-agent" class="internalDFN"><span class="insert">Agent</span></a></td>
+<td><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#Agent"><span class="insert">Agent</span></a></td>
+<td><code><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/releases/WD-prov-n-20120724/Overview.html#prod-agentExpression"><span class="insert">agentExpression</span></a></code></td>
+<td rowspan="9"><a href="#component3"><span class="insert">Component 3: </span><br><span class="insert">Agents, Responsibility, </span><br><span class="insert">Influence</span></a></td>
+</tr>
+
+<tr class="component3-color">
+<td><a title="Attribution" href="#concept-attribution" class="internalDFN"><span class="insert">Attribution</span></a></td>
+<td><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#wasAttributedTo"><span class="insert">wasAttributedTo</span></a><span class="insert">, </span><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#Attribution"><span class="insert">Attribution</span></a></td>
+<td><code><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/releases/WD-prov-n-20120724/Overview.html#prod-attributionExpression"><span class="insert">attributionExpression</span></a></code></td>
+</tr>
+
+<tr class="component3-color">
+<td><a title="Association" href="#concept-activityAssociation" class="internalDFN"><span class="insert">Association</span></a></td>
+<td><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#wasAssociatedWith"><span class="insert">wasAssociatedWith</span></a><span class="insert">, </span><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#Association"><span class="insert">Association</span></a></td>
+<td><code><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/releases/WD-prov-n-20120724/Overview.html#prod-associationExpression"><span class="insert">associationExpression</span></a></code></td>
+</tr>
+
+<tr class="component3-color">
+<td><a title="Delegation" href="#concept-delegation" class="internalDFN"><span class="insert">Delegation</span></a></td>
+<td><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#actedOnBehalfOf"><span class="insert">actedOnBehalfOf</span></a><span class="insert">, </span><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#Delegation"><span class="insert">Delegation</span></a></td>
+<td><code><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/releases/WD-prov-n-20120724/Overview.html#prod-delegationExpression"><span class="insert">delegationExpression</span></a></code></td>
+</tr>
+
+<tr class="component3-color">
+<td><a title="Plan" href="#concept-plan" class="internalDFN"><span class="insert">Plan</span></a></td>
+<td><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#Plan"><span class="insert">Plan</span></a></td>
+<td><span class="insert">type </span><code><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/releases/WD-prov-n-20120724/Overview.html#provn-type-Plan"><span class="insert">Plan</span></a></code></td>
+</tr>
+
+<tr class="component3-color">
+<td><a title="Person" href="#concept-person" class="internalDFN"><span class="insert">Person</span></a></td>
+<td><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#Person"><span class="insert">Person</span></a></td>
+<td><span class="insert">type </span><code><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/releases/WD-prov-n-20120724/Overview.html#provn-type-Person"><span class="insert">Person</span></a></code></td>
+</tr>
+
+<tr class="component3-color">
+<td><a title="Organization" href="#concept-organization" class="internalDFN"><span class="insert">Organization</span></a></td>
+<td><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#Organization"><span class="insert">Organization</span></a></td>
+<td><span class="insert">type </span><code><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/releases/WD-prov-n-20120724/Overview.html#provn-type-Organization"><span class="insert">Organization</span></a></code></td>
+</tr>
+
+<tr class="component3-color">
+<td><a title="software-agent" href="#concept-software-agent" class="internalDFN"><span class="insert">SoftwareAgent</span></a></td>
+<td><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#SoftwareAgent"><span class="insert">SoftwareAgent</span></a></td>
+<td><span class="insert">type </span><code><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/releases/WD-prov-n-20120724/Overview.html#provn-type-SoftwareAgent"><span class="insert">SoftwareAgent</span></a></code></td>
+</tr>
+
+<tr class="component3-color">
+<td><a title="Influence" href="#concept-influence" class="internalDFN"><span class="insert">Influence</span></a></td>
+<td><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#wasInfluencedBy"><span class="insert">wasInfluencedBy</span></a><span class="insert">, </span><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#Influence"><span class="insert">Influence</span></a></td>
+<td><code><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/releases/WD-prov-n-20120724/Overview.html#prod-influenceExpression"><span class="insert">influenceExpression</span></a></code></td>
+</tr>
+
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td>
+</tr>
+
+
+
+<tr class="component4-color">
+<td><a title="bundle" href="#concept-bundle" class="internalDFN"><span class="insert">Bundle constructor</span></a></td>
+<td> <a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#TimTODO"><em><span class="insert">(link to prov-o text required here)</span></em></a> </td>
+<td><code><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/releases/WD-prov-n-20120724/Overview.html#prod-namedBundle"><span class="insert">namedBundle</span></a></code></td>
+<td rowspan="2"><a href="#component5"><span class="insert">Component 4: </span><br><span class="insert"> Bundles</span></a></td>
+</tr>
+
+<tr class="component4-color"><td class="provType"><a title="bundle" href="#concept-bundle" class="internalDFN"><span class="insert">Bundle type</span></a></td>
+<td><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#Bundle"><span class="insert">Bundle</span></a></td>
+<td><span class="insert">type </span><code><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/releases/WD-prov-n-20120724/Overview.html#provn-type-Bundle"><span class="insert">Bundle</span></a></code></td>
+</tr>
+
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td>
+</tr>
+
+<tr class="component5-color">
+<td><a title="Alternate" href="#concept-alternate" class="internalDFN"><span class="insert">Alternate</span></a></td>
+<td><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#alternateOf"><span class="insert">alternateOf</span></a></td>
+<td><code><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/releases/WD-prov-n-20120724/Overview.html#prod-alternateExpression"><span class="insert">alternateExpression</span></a></code></td>
+<td rowspan="3"><a href="#component4"><span class="insert">Component 5: </span><br><span class="insert"> Alternate</span></a></td>
+</tr>
+
+<tr class="component5-color">
+<td><a title="Specialization" href="#concept-specialization" class="internalDFN"><span class="insert">Specialization</span></a></td>
+<td><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#specializationOf"><span class="insert">specializationOf</span></a></td>
+<td><code><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/releases/WD-prov-n-20120724/Overview.html#prod-specializationExpression"><span class="insert">specializationExpression</span></a></code></td>
+</tr>
+
+<tr class="component5-color">
+<td><a title="Mention" href="#concept-mention" class="internalDFN"><span class="insert">Mention</span></a></td>
+<td><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#mentionOf"><span class="insert">mentionOf</span></a><span class="insert">, </span><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#asInBundle"><span class="insert">asInBundle</span></a></td>
+<td><code><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/releases/WD-prov-n-20120724/Overview.html#prod-mentionExpression"><span class="insert">mentionExpression</span></a></code></td>
+</tr>
+<tr><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td><td style="border-width: 0px; "></td>
+</tr>
+
+
+
+<tr class="component6-color">
+<td><a title="Collection" href="#concept-collection" class="internalDFN"><span class="insert">Collection</span></a></td>
+<td><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#Collection"><span class="insert">Collection</span></a></td>
+<td><span class="insert">type </span><code><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/releases/WD-prov-n-20120724/Overview.html#provn-type-Collection"><span class="insert">Collection</span></a></code></td>
+<td rowspan="3"><a href="#component6"><span class="insert">Component 6: </span><br><span class="insert"> Collections</span></a></td>
+</tr>
+
+<tr class="component6-color">
+<td><a title="Empty Collection" href="#concept-empty-collection" class="internalDFN"><span class="insert">EmptyCollection</span></a></td>
+<td><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#EmptyCollection"><span class="insert">EmptyCollection</span></a></td>
+<td><span class="insert">type </span><code><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/releases/WD-prov-n-20120724/Overview.html#provn-type-EmptyCollection"><span class="insert">EmptyCollection</span></a></code></td>
+</tr>
+
+<tr class="component6-color">
+<td><a title="Membership" href="#concept-membership" class="internalDFN"><span class="insert">Membership</span></a></td>
+<td><a href="http://dvcs.w3.org/hg/prov/raw-file/tip/ontology/last-call/2012-07-03-internal-review/Overview.html#hadMember"><span class="insert">hadMember</span></a></td>
+<td><code><a href="http://dvcs.w3.org/hg/prov/raw-file/default/model/releases/WD-prov-n-20120724/Overview.html#prod-membershipExpression"><span class="insert">membershipExpression</span></a></code></td>
+</tr>
+</tbody></table>
+</div>
+
+
+</div>
+
<div class="appendix section" id="acknowledgements">
- <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. The editors extend special thanks to Sandro Hawke (<acronym title="World Wide Web Consortium">W3C</acronym>/<acronym title="Massachusetts Institute of Technology">MIT</acronym>), Ivan Herman (<acronym title="World Wide Web Consortium">W3C</acronym>/<acronym title="European Research Consortium for Informatics and Mathematics">ERCIM</acronym>), Tom Baker for their thorough reviews.
+ <h2><span class="secno"><span class="delete">A.</span><span class="insert">B.</span> </span>Acknowledgements</h2>
+ <p><span class="delete">
+ WG membership</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. The editors extend special thanks</span> to<span class="delete"> be listed here.</span><span class="insert"> 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">), 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">), Tom Baker for their thorough reviews.</span>
</p>
-
-<p>
+
+
+<p><span class="insert">
Members of the PROV Working Group at the time of publication of this document were:
Ilkay Altintas (Invited expert),
@@ -3890,9 +5257,9 @@
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>),
+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, (<acronym title="World Wide Web Consortium">W3C</acronym>/<acronym title="European Research Consortium for Informatics and Mathematics">ERCIM</acronym>),
+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),
@@ -3926,22 +5293,31 @@
Stephan Zednik (Rensselaer Polytechnic Institute),
Jun Zhao (University of Oxford),
Yuting Zhao (University of Aberdeen, Computing Science).
-</p>
+</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>
+<div id="references" class="appendix section"><h2><span class="secno"><span class="delete">B.</span><span class="insert">C.</span> </span>References</h2><div id="normative-references" class="section"><h3><span class="secno"><span class="delete">B.1</span><span class="insert">C.1</span> </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><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-UML">[UML]</dt><dd>Object Management Group <a href="http://www.omg.org/spec/UML/2.0/Superstructure/PDF/"><cite>Unified Modeling Language: Superstructure</cite></a>. version 2.0, 2005 URL: <a href="http://www.omg.org/spec/UML/2.0/Superstructure/PDF/">http://www.omg.org/spec/UML/2.0/Superstructure/PDF/</a>
+</dd><dt id="bib-UML"><span class="insert">[UML]</span></dt><dd><span class="insert">Object Management Group </span><a href="http://www.omg.org/spec/UML/2.0/Superstructure/PDF/"><cite><span class="insert">Unified Modeling Language: Superstructure</span></cite></a><span class="insert">. version 2.0, 2005 URL: </span><a href="http://www.omg.org/spec/UML/2.0/Superstructure/PDF/"><span class="insert">http://www.omg.org/spec/UML/2.0/Superstructure/PDF/</span></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-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-Logic">[Logic]</dt><dd>W. E. Johnson <a href="http://www.ditext.com/johnson/intro-3.html"><cite>Logic: Part III</cite></a>.1924. URL: <a href="http://www.ditext.com/johnson/intro-3.html">http://www.ditext.com/johnson/intro-3.html</a>
-</dd><dt id="bib-Mappings">[Mappings]</dt><dd>Satya Sahoo and Paul Groth and Olaf Hartig and Simon Miles and Sam Coppens and James Myers and Yolanda Gil and Luc Moreau and Jun Zhao and Michael Panzer and Daniel Garijo <a href="http://www.w3.org/2005/Incubator/prov/wiki/Provenance_Vocabulary_Mappings"><cite>Provenance Vocabulary Mappings</cite></a>. August 2010 URL: <a href="http://www.w3.org/2005/Incubator/prov/wiki/Provenance_Vocabulary_Mappings">http://www.w3.org/2005/Incubator/prov/wiki/Provenance_Vocabulary_Mappings</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"><span class="delete">B.2</span><span class="insert">C.2</span> </span>Informative references</h3><dl class="bibliography"><dt id="bib-Logic">[Logic]</dt><dd>W. E. Johnson <a href="http://www.ditext.com/johnson/intro-3.html"><cite>Logic: Part III</cite></a>.1924. URL: <a href="http://www.ditext.com/johnson/intro-3.html">http://www.ditext.com/johnson/intro-3.html</a>
+</dd><dt id="bib-Mappings"><span class="insert">[Mappings]</span></dt><dd><span class="insert">Satya Sahoo and Paul Groth and Olaf Hartig and Simon Miles and Sam Coppens and James Myers and Yolanda Gil and Luc Moreau and Jun Zhao and Michael Panzer and Daniel Garijo </span><a href="http://www.w3.org/2005/Incubator/prov/wiki/Provenance_Vocabulary_Mappings"><cite><span class="insert">Provenance Vocabulary Mappings</span></cite></a><span class="insert">. August 2010 URL: </span><a href="http://www.w3.org/2005/Incubator/prov/wiki/Provenance_Vocabulary_Mappings"><span class="insert">http://www.w3.org/2005/Incubator/prov/wiki/Provenance_Vocabulary_Mappings</span></a>
+</dd><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>. 2011, 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-N">[PROV-N]</dt><dd>Luc Moreau and Paolo Missier (eds.) <a href="http://www.w3.org/TR/prov-n/"><cite>PROV-N: The Provenance Notation</cite></a>. 2011, Working Draft. URL: <a href="http://www.w3.org/TR/prov-n/">http://www.w3.org/TR/prov-n/</a>
-</dd><dt id="bib-RDF-CONCEPTS11">[RDF-CONCEPTS11]</dt><dd>RDF 1.1 Concepts and Abstract Syntax <a href="http://www.w3.org/TR/rdf11-concepts/"><cite>RDF 1.1 Concepts and Abstract Syntax</cite></a>. URL: <a href="http://www.w3.org/TR/rdf11-concepts/">http://www.w3.org/TR/rdf11-concepts/</a>
+</dd><dt id="bib-PROV-N">[PROV-N]</dt><dd>Luc Moreau and Paolo Missier (eds.)<span class="insert"> James Cheney, Stian Soiland-Reyes </span><a href="http://www.w3.org/TR/prov-n/"><cite>PROV-N: The Provenance Notation</cite></a>. 2011, Working Draft. URL: <a href="http://www.w3.org/TR/prov-n/">http://www.w3.org/TR/prov-n/</a>
+</dd><dt id="bib-PROV-O">[PROV-O]</dt><dd>Satya Sahoo and Deborah McGuinness (eds.) Khalid Belhajjame, James Cheney, Daniel Garijo, Timothy Lebo, Stian Soiland-Reyes, and Stephan Zednik <a href="http://www.w3.org/TR/prov-o/"><cite>Provenance Formal Model</cite></a>. 2011, Working Draft. URL: <a href="http://www.w3.org/TR/prov-o/">http://www.w3.org/TR/prov-o/</a>
+</dd><dt id="bib-PROV-PRIMER">[PROV-PRIMER]</dt><dd>Yolanda Gil and Simon Miles (eds.) Khalid Belhajjame, Helena Deus, Daniel Garijo, Graham Klyne, Paolo Missier, Stian Soiland-Reyes, and Stephan Zednik <a href="http://www.w3.org/TR/prov-primer/"><cite>Prov Model Primer</cite></a>. 2011, Working Draft. URL: <a href="http://www.w3.org/TR/prov-primer/">http://www.w3.org/TR/prov-primer/</a>
+</dd><span class="delete">[PROV-SEM]</span><dt id="bib-RDF-CONCEPTS11"><span class="insert">[RDF-CONCEPTS11]</span></dt><dd><span class="delete">James Cheney </span><span class="insert">Richard Cyganiak and David Wood (eds.) RDF 1.1 Concepts and Abstract Syntax </span><a href="http://www.w3.org/TR/rdf11-concepts/"><cite><span class="delete">Formal Semantics Strawman</span><span class="insert">RDF 1.1 Concepts and Abstract Syntax</span></cite></a>. <span class="delete">2011, Work in progress. </span>URL: <span class="delete">http://www.w3.org/2011/prov/wiki/FormalSemanticsStrawman</span><a href="http://www.w3.org/TR/rdf11-concepts/"><span class="insert">http://www.w3.org/TR/rdf11-concepts/</span></a>
</dd></dl></div></div></body></html>
+
+