--- a/model/prov-dm.html Wed Mar 28 11:55:14 2012 +0100
+++ b/model/prov-dm.html Wed Mar 28 12:46:00 2012 +0100
@@ -1168,7 +1168,7 @@
<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 component 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)
+ wasGeneratedBy(e,-,2001-10-26T21:32:52)
</pre>
</div>
@@ -1223,7 +1223,7 @@
<div class="glossary-ref" data-ref="glossary-start"></div>
-<p>An activity <dfn title="wasStartedBy">start</dfn><span class="withPn">, written <span class="pnExpression">wasStartedBy(id,a,e,t,attrs)</span> in PROV-N,</span> contains:</p>
+<p><div class="attributes" id="attributes-start">An activity <dfn title="wasStartedBy">start</dfn><span class="withPn">, written <span class="pnExpression">wasStartedBy(id,a,e,t,attrs)</span> in PROV-N,</span> contains:</p>
<ul>
<li><span class='attribute' id="start.id">id</span>: an OPTIONAL identifier for the activity start;</li>
<li><span class='attribute' id="start.activity">activity</span>: an identifier (<span class="name">a</span>) for the started activity;</li>
@@ -1231,6 +1231,7 @@
<li><span class='attribute' id="start.time">time</span>: the OPTIONAL time (<span class="name">t</span>) at which the activity was started; </li>
<li><span class='attribute' id="start.attributes">attributes</span>: an OPTIONAL set (<span class="name">attrs</span>) of attribute-value pairs describing modalities according to which the activity was started.
</ul>
+</div>
<div class="anexample">
<p>
@@ -1242,7 +1243,7 @@
</pre>
Furthermore, if the activity happens to consume the message content, then the message would also be regarded as an input to the activity, which we describe as follows:
<pre class="codeexample">
-used(a1,e1)
+used(a1,e1,-)
</pre>
</div>
@@ -1308,7 +1309,7 @@
-<div class="attributes" id="attributes-wasInformedBy">
+<p><div class="attributes" id="attributes-wasInformedBy">
A <dfn title="wasInformedBy">communication</dfn><span class="withPn">, written as
<span class="pnExpression">wasInformedBy(id,a2,a1,attrs)</span> in PROV-N,</span> contains:
<ul>
@@ -1325,8 +1326,8 @@
<p>
Consider two long running services, which we represent by activities <span class="name">s1</span> and <span class="name">s2</span>.
<pre class="codeexample">
-activity(s1,,,[prov:type="service"])
-activity(s2,,,[prov:type="service"])
+activity(s1, [prov:type="service"])
+activity(s2, [prov:type="service"])
wasInformedBy(s2,s1)
</pre>
The last line indicates that some entity was generated by <span class="name">s1</span> and used by <span class="name">s2</span>.
@@ -1340,7 +1341,7 @@
-<div class="attributes" id="attributes-startByActivity">
+<p><div class="attributes" id="attributes-startByActivity">
A <dfn title="wasStartedByActivity">start by activity</dfn><span class="withPn">, written as
<span class="pnExpression">wasStartedByActivity(id, a2, a1, attrs)</span> in PROV-N,</span> contains:
<ul>
@@ -1373,7 +1374,7 @@
<p>The second component of PROV-DM is concerned with <a title="agent">agents</a> and the notions of
<a>Attribution</a>, <a>Association</a>, <a>Responsibility</a>, relating agents to entities, activities, and agents, respectively.
-Figure <a href="#figure-component2">figure-component2</a> depicts the second component, with some "UML classes" (Entity, Activity, Agent, and Plan) and associations between them. So-called "association classes" are used to express n-ary relations.
+Figure <a href="#figure-component2">figure-component2</a> depicts the second component, with four "UML classes" (Entity, Activity, Agent, and Plan) and associations between them. So-called "UML association classes" are used to express n-ary relations.
</p>
@@ -1401,7 +1402,7 @@
<p>
It is useful to define some basic categories of agents from an interoperability perspective.
-There are three types of agents since they are common across most anticipated domains of use:
+There are three types of agents that are common across most anticipated domains of use:
<ul>
<li><span class="name">Person</span>: agents of type Person are people.</li>
<li><span class="name">Organization</span>: agents of type Organization are social institutions such as companies, societies etc.</li>
@@ -1547,12 +1548,15 @@
</pre>
</div>
+
+<!-- too strong, move to part 2.
<p>Further considerations:</p>
<ul>
<li>If an activity is not specified, then the subordinate agent is considered to act on behalf of
the responsible agent, in all the activities the subordinate agent is associated with.
</li>
</ul>
+-->
</section>
@@ -1565,7 +1569,7 @@
<p>The third component of PROV-DM is concerned with <a title="derivation">derivations</a> between <a title="entity">entities</a>, and subtypes of derivations <a>Revision</a>, <a>Quotation</a>, <a>Original Source</a>, and <a>Traceability</a>.
-Figure <a href="#figure-component3">figure-component3</a> overviews the third component, with three "UML classes" (Entity, Activity, and Agent) and associations between them. So-called "association classes" are used to express n-ary relations.
+Figure <a href="#figure-component3">figure-component3</a> overviews the third component, with three "UML classes" (Entity, Activity, and Agent) and associations between them. So-called "UML association classes" are used to express n-ary relations.
</p>
@@ -1685,7 +1689,7 @@
<p>Quotation
is a particular case of <a href="#Derivation-Relation">derivation</a> in which entity <span class="name">e2</span> is derived from an original entity <span class="name">e1</span> by copying, or "quoting", some or all of it.
- A <dfn title="wasQuotedFrom">quotation</dfn> relation <span class="withPn">, written <span class="pnExpression">wasQuotedFrom(id,e2,e1,ag2,ag1,attrs)</span> in PROV-N,</span> contains:</p>
+ A <dfn title="wasQuotedFrom">quotation</dfn> relation<span class="withPn">, written <span class="pnExpression">wasQuotedFrom(id,e2,e1,ag2,ag1,attrs)</span> in PROV-N,</span> contains:</p>
<ul>
<li><span class='attribute' id="quotation.id">id</span>: an OPTIONAL identifier for the relation;</li>
<li><span class='attribute' id="quotation.quote">quote</span>: an identifier (<span class="name">e2</span>) for the entity that represents the quote (the partial copy);
@@ -1805,7 +1809,7 @@
<p>The fourth component of PROV-DM is concerned with
relations <a>specialization</a> and <a>alternate</a> between entities.
Figure <a href="#figure-component4">figure-component4</a> overviews
-the component.
+the component, which consists of a single "UML Class" and two associations.
</p>
@@ -1835,7 +1839,10 @@
<span class="glossary-ref" data-ref="glossary-specialization"></span>
-Examples of constraints include a time period, an abstraction, and a context associated with the entity.
+
+
+<p>
+Examples of constraints include a time period, an abstraction, and a context associated with the entity.</p>
@@ -1857,7 +1864,7 @@
<pre class="codeexample">
specializationOf(ex:bbcNews2012-03-23, bbc:news/)
</pre>
-Given that the BBC news does not define a URI for today's news page, we are creating a qualified name in the namespace <span class="name">ex</span>.
+Given that the BBC news does not define a URI for this day's news page, we are creating a qualified name in the namespace <span class="name">ex</span>.
</div>
@@ -1895,8 +1902,8 @@
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, [ prov:type="a news item"])
-entity(bbc:news/mobile/science-environment-17526723, [ prov:type="a news item"])
+entity(bbc:news/science-environment-17526723, [ prov:type="a news item for desktop"])
+entity(bbc:news/mobile/science-environment-17526723, [ prov:type="a news item for mobile devices"])
alternateOf(bbc:news/science-environment-17526723, bbc:news/mobile/science-environment-17526723)
</pre>
<p>They are both specialization of an (unspecified) entity. </p>
@@ -1916,9 +1923,6 @@
</section>
-<div class='issue'>A discussion on alternative definition of these relations has not yet reached a satisfactory conclusion. This is <a
-href="http://www.w3.org/2011/prov/track/issues/29">ISSUE-29</a>. Also <a href="http://www.w3.org/2011/prov/track/issues/96">ISSUE-96</a>.</div>
-
</section>
@@ -2140,10 +2144,6 @@
-<p>A separate PROV-DM relation is used to associate a note with something that is identifiable.
-</p>
-
-
<div class="anexample" id="anexample-note1">
<p>
The following note consists of a set of application-specific attribute-value pairs, intended
@@ -2155,7 +2155,7 @@
</pre>
<p>The note is associated with the entity <span class="name">tr:WD-prov-dm-20111215</span>.
Relation <a title="annotation">hasAnnotation</a> is
-discussed in Section <a href="#term-annotation">Annotation</a>. The note's identifier and attributes are declared in a separate namespace denoted by prefix <span class="name">ex2</span>.
+discussed in the <a href="#term-annotation">next section</a>. The note's identifier and attributes are declared in a separate namespace denoted by prefix <span class="name">ex2</span>.
</p>
</div>
@@ -2166,7 +2166,7 @@
hasAnnotation(ex:Simon,ex3:n2)
hasAnnotation(ex:Paolo,ex3:n2)
</pre>
-<p>The note's identifier and attributes are declares in a separate namespace denoted by prefix <span class="name">ex3</span>.</p>
+<p>The note's identifier and attributes are declared in a separate namespace denoted by prefix <span class="name">ex3</span>.</p>
</div>
@@ -2233,7 +2233,7 @@
<section id="term-NamespaceDeclaration">
<h3>Namespace Declaration</h3>
-<p>A PROV-DM <dfn id="dfn-namespace">namespace</dfn> is identified by an IRI reference [[!IRI]]. In PROV-DM, attributes, identifiers, and values with <a title="qualified name">qualified names</a> as data type can be placed in a namespace using the mechanisms described in this specification. </p>
+<p>A PROV-DM <dfn id="dfn-namespace">namespace</dfn> is identified by an IRI [[!IRI]]. In PROV-DM, attributes, identifiers, and values with <a title="qualified name">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">namespace declaration</dfn> consists of a binding between a prefix and a namespace. Every qualified name with this prefix in the scope of this
@@ -2245,6 +2245,23 @@
</section>
+<section id="term-qualified-name">
+<h4>Qualified Name</h4>
+
+
+<span class="glossary-ref" data-ref="glossary-qualifiedName"></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 OPTIONAL. If a prefix occurs in a
+ qualified name, it refers to a <a>namespace</a> declared in a namespace declaration. In the absence of prefix, the qualified name
+ refers to the <a title="default namespace declaration">default namespace</a>.</p>
+
+</section>
+
+
+
<section id="term-identifier">
<h4>Identifier</h4>
@@ -2253,17 +2270,6 @@
name</a>.
</p>
-<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.</p>
-
-
-<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 OPTIONAL. If a prefix occurs in a
- qualified name, it refers to a <a>namespace</a> declared in a namespace declaration. In the absence of prefix, the qualified name
- refers to the <a title="default namespace declaration">default namespace</a>.</p>
-
</section>
<section id="term-attribute">
@@ -2275,11 +2281,48 @@
<p>The PROV data model introduces a pre-defined set of attributes in the <a href="#prov-dm-namespace">PROV-DM namespace</a>, which we define below.
The interpretation of any attribute declared in another namespace is out of scope.</p>
+
+<section id="term-attribute-label">
+<h4>prov:label</h4>
+
+<p> The attribute <dfn title="dfn-label"><span class="name">prov:label</span></dfn> provides a human-readable representation of a PROV-DM element or relation. The value associated with the attribute <span class="name">prov:label</span> MUST be a string.</p>
+
+<div class="anexample">
+<p>The following entity is provided with a label attribute.</p>
+<pre class="codeexample">
+ entity(ex:e1, [prov:label="This is a label"])
+</pre>
+</div>
+
+
+</section>
+
+
+<section id="term-attribute-location">
+<h4>prov:location</h4>
+
+<p>A <dfn title="dfn-Location">location</dfn> can be an identifiable geographic place (ISO 19112), but it can also be a non-geographic place such as a directory, row, or column. 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 <dfn title="dfn-location"><span class="name">prov:location</span></dfn> is an OPTIONAL attribute of entity and activity. The value associated with the attribute <span class="name">prov:location</span> MUST be a PROV-DM <a title="value">Value</a>, expected to denote a location.
+</p>
+
+<div class="anexample">
+<p>The following expression describes entity Mona Lisa, a painting, with a location attribute. </p>
+<pre class="codeexample">
+ entity(ex:MonaLisa, [prov:location="Le Louvres, Paris", prov:type="StillImage"])
+</pre>
+</div>
+</section>
+
+
<section id="term-attribute-role">
<h4>prov:role</h4>
<p>The attribute <dfn title="dfn-role"><span class="name">prov:role</span></dfn> denotes the function of an entity with respect to an activity, in the context of a usage, generation,
-activity association, activity start, and activity end. 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
+ association, start, and end. 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 MUST be a PROV-DM <a title="value">Value</a>.</p>
<div class="anexample">
@@ -2304,45 +2347,25 @@
agent(ag, [prov:type="prov:SoftwareAgent" %% xsd:QName])
</pre>
</div>
-</section>
-
-
-<section id="term-attribute-label">
-<h4>prov:label</h4>
-
-<p> The attribute <dfn title="dfn-label"><span class="name">prov:label</span></dfn> provides a human-readable representation of a PROV-DM element or relation. The value associated with the attribute <span class="name">prov:label</span> MUST be a string.</p>
-
-<div class='issue'>
- This is <a href="http://www.w3.org/2011/prov/track/issues/219">ISSUE-219</a>. </div>
-</section>
-
-
-
-<section id="term-attribute-location">
-<h4>prov:location</h4>
-
-<p>A <dfn title="dfn-Location">location</dfn> can be an identifiable geographic place (ISO 19112), but it can also be a non-geographic place such as a directory, row, or column. 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 attributes. </p>
-
-
-<p>
-The attribute <dfn title="dfn-location"><span class="name">prov:location</span></dfn> is an OPTIONAL attribute of entity and activity. The value associated with the attribute <span class="name">prov:location</span> MUST be a PROV-DM <a title="value">Value</a>, expected to denote a location.
-</p>
-
-<div class="anexample">
-<p>The following expression describes entity Mona Lisa, a painting, with a location attribute. </p>
-<pre class="codeexample">
- entity(ex:MonaLisa, [prov:location="Le Louvres, Paris", prov:type="StillImage"])
-</pre>
-</div>
-</section>
-
+
+<p>The following types are pre-defined in PROV, and are valid values for the <span class="name">prov:type</span> attribute.</p>
+<ul>
+<li>prov:Plan</li>
+<li>prov:Account</li>
+<li>prov:SoftwareAgent</li>
+<li>prov:Organization</li>
+<li>prov:Person</li>
+</ul>
</section>
+
+
+
+
</section>
<section id="term-value">
@@ -2351,10 +2374,11 @@
<p>
By means of attribute-value pairs, the PROV data model can refer to <dfn title="value">values</dfn> such as strings, numbers, time, qualified names, and IRIs.
The interpretation of such values is outside the scope of PROV-DM.</p>
-<p>Each kind of such values is called a <em>datatype</em>. Each datatype is identified by an <a>qualified name</a>.</p>
-
-<p>The data types are taken from
+<p>Each kind of such values is called a <em>datatype</em>. The datatypes are taken from
the set of XML Schema Datatypes, version 1.1 [[!XMLSCHEMA-2]] and the RDF specification [[!RDF-CONCEPTS]]. The normative definitions of these datatypes are provided by the respective specifications.
+Each datatype is identified by its XML <a href="http://www.w3.org/TR/xmlschema-2/#QName">xsd:QName</a>.</p>
+
+<p>
</p>
<p>We note that PROV-DM <dfn title="dfn-time">time instants</dfn> are defined according to xsd:dateTime [[!XMLSCHEMA-2]].</p>
@@ -2376,7 +2400,7 @@
<tr><td><a href="http://www.w3.org/TR/xmlschema-2/#unsignedLong">xsd:unsignedLong</a></td> <td><a href="http://www.w3.org/TR/xmlschema-2/#hexBinary">xsd:hexBinary</a></td> </tr>
<tr><td><a href="http://www.w3.org/TR/xmlschema-2/#unsignedInt">xsd:unsignedInt</a></td> <td><a href="http://www.w3.org/TR/xmlschema-2/#base64Binary">xsd:base64Binary</a></td> </tr>
<tr><td><a href="http://www.w3.org/TR/xmlschema-2/#unsignedShort">xsd:unsignedShort</a></td><td><a href="http://www.w3.org/TR/xmlschema-2/#anyURI">xsd:anyURI</a></td> </tr>
-<tr><td><a href="http://www.w3.org/TR/xmlschema-2/#unsignedByte">xsd:unsignedByte</a></td> <td><a href="http://www.w3.org/TR/xmlschema-2/#anyURI">xsd:QName</a></td></tr>
+<tr><td><a href="http://www.w3.org/TR/xmlschema-2/#unsignedByte">xsd:unsignedByte</a></td> <td><a href="http://www.w3.org/TR/xmlschema-2/#QName">xsd:QName</a></td></tr>
</table>
@@ -2410,6 +2434,11 @@
wasGeneratedBy(e1,a1, 2001-10-26T21:32:52)
</pre>
</div>
+
+<div class="note">
+We need to check that we are including all xsd types that are accept in the lastest version of RDF.
+</div>
+</section>
</section>
@@ -2430,18 +2459,13 @@
application-specific attributes, according to their perspective on the world. Attributes for a given application can be distinguished by qualifying them with a prefix denoting a namespace
declared in a namespace declaration.
-<p>The <a href="#prov-dm-namespace">PROV-DM namespace</a> declares a set of reserved attributes catering for extensibility: <span class="name">type</span>, <span
+<p>The <a href="#prov-dm-namespace">PROV-DM namespace</a> declares a set of reserved attributes catering for extensibility: <span class="name">type</span>, <span class="name">role</span>, <span
class="name">location</span>.</li>
-<li> Sets of Attribute-value pairs offer a mechanism to
-describe modalities of use, generation, activity association, and responsibility chain.
-Such attributes are also qualified by namespaces.
-
-<p>To this end, the <a href="#prov-dm-namespace">PROV-DM namespace</a> declares a reserved attribute: <span class="name">role</span>.</p></li>
-
-
-<li>Notes allow arbitrary metadata to be associated with anything identifiable in PROV-DM. Notes consist of name-value pairs. Like attributes, names are qualified by a
+
+
+<li>Notes allow arbitrary metadata to be associated with anything identifiable in PROV-DM. Notes consist of attribute-value pairs. Attributes are qualified by a
namespace.</li>
@@ -2462,7 +2486,7 @@
<section id="FurtherConsiderations">
-<h4>Data Model Constraints</h4>
+<h4>Towards a Refinement of the PROV Data Model</h4>
<ul>