In response to changes suggested by Curt: http://lists.w3.org/Archives/Public/public-prov-wg/2012Apr/0428.html
authorGraham Klyne
Thu, 26 Apr 2012 14:53:22 +0100
changeset 2563 ba89f8345d59
parent 2562 fa65e90b7236
child 2564 9e3f2a1a8574
In response to changes suggested by Curt: http://lists.w3.org/Archives/Public/public-prov-wg/2012Apr/0428.html
paq/working/prov-aq.html
--- a/paq/working/prov-aq.html	Thu Apr 26 14:14:11 2012 +0100
+++ b/paq/working/prov-aq.html	Thu Apr 26 14:53:22 2012 +0100
@@ -182,7 +182,7 @@
     </section>
 
     <section id="sotd">
-      This document is part of a set of specifications produced by the W3C provenance working group aiming to define interoperable interchange of provenance information in heterogeneous environments such as the Web.  It describes the use of existing web mechanisms for discovery and retrieval of provenance information. 
+      This document is part of a set of specifications produced by the W3C provenance working group to define interoperable interchange of provenance information in heterogeneous environments such as the Web.  It describes the use of existing web mechanisms for discovery and retrieval of provenance information. 
       
       <h4>PROV Family of Specifications</h4>
 The PROV family of specifications aims to define the various aspects that are necessary to achieve the vision of inter-operable
@@ -247,7 +247,7 @@
             <dt><dfn>Target-URI</dfn></dt>
             <dd>a URI denoting a <a class="internalDFN">resource</a> (including any <a class="internalDFN">constrained resource</a>), which identifies that resource for the purpose of finding and expressing <a class="internalDFN">provenance information</a> (see <a href="#provenance-entities-resources" class="sectionRef"></a> for discussion)</dd>
             <dt><dfn>Provenance service</dfn></dt>
-            <dd>a service that provides <class="internalDFN">provenance information</a> given a <a class="internalDFN">target-uri</a>.</dd>
+            <dd>a service that provides <class="internalDFN">provenance information</a> given a <a class="internalDFN">target-URI</a>.</dd>
             <dt><dfn>Service-URI</dfn></dt>
             <dd>the URI of a <a class="internalDFN">provenance service</a>.</dd>
 <!--
@@ -267,7 +267,7 @@
           Fundamentally, <a class="internalDFN">provenance information</a> is <em>about</em> <a class="internalDFN">resource</a>s.  In general, resources may vary over time and context.  E.g., a resource describing the weather in London changes from day-to-day, or a listing of restaurants near you will vary depending on your location.  Provenance information, to be useful, must be persistent and not itself dependent on context.  Yet we may still want to make provenance assertions about dynamic or context-dependent resources (e.g. a weather forecast for London on a particular day may have been derived from a particular set of Meteorological Office data).
         </p>
         <p>
-          Provenance descriptions of dynamic and context-dependent resources are possible through a notion of constrained resources.  A <a class="internalDFN">constrained resource</a> is simply a resource (in the sense defined by [[WEBARCH]], <a href="http://www.w3.org/TR/webarch/#id-resources">section 2.2</a>) that is a contextualized view or instance of some other resource.  For example, a W3C specification typically undergoes several public revisions before it is finalized.  A URI that refers to the "current" revision might be thought of as denoting the specification through its lifetime.  Each individual revision would also have its own <a class="internalDFN">target-uri</a> denoting the specification at that particular stage in its development.  Using these, we can make provenance assertions that a particular revision was published on a particular date, and was last modified by a particular editor.  Target-URIs may use any URI scheme, and are not required to be dereferencable.
+          Provenance descriptions of dynamic and context-dependent resources are possible through a notion of constrained resources.  A <a class="internalDFN">constrained resource</a> is simply a resource (in the sense defined by [[WEBARCH]], <a href="http://www.w3.org/TR/webarch/#id-resources">section 2.2</a>) that is a contextualized view or instance of some other resource.  For example, a W3C specification typically undergoes several public revisions before it is finalized.  A URI that refers to the "current" revision might be thought of as denoting the specification throughout its lifetime.  Each individual revision would also have its own <a class="internalDFN">target-URI</a> denoting the specification at that particular stage in its development.  Using these, we can make provenance assertions that a particular revision was published on a particular date, and was last modified by a particular editor.  Target-URIs may use any URI scheme, and are not required to be dereferencable.
         </p>
         <p>
            Requests for provenance about a resource may return provenance information that uses one or more target-URIs to refer to versions of that resource.  Some given provenance information may use multiple target-URIs if there are assertions referring to the same underlying resource in different contexts.  For example, provenance information describing a W3C document might include information about all revisions of the document using statements that use the different target-URIs of the various revisions.
@@ -280,9 +280,13 @@
       <section>
         <h2>Interpreting provenance information</h2>
         <p>
-          Any given <a class="internalDFN">provenance information</a> may contain information about several resources, referring to them using their various <a class="internalDFN">target-uri</a>s.
+          Any given <a class="internalDFN">provenance information</a> may contain information about several resources, referring to them using their various <a class="internalDFN">target-URI</a>s.
           Thus, when interpreting provenance information, it is important to be aware that statements about several resources may be present, and to be accordingly selective when using the information provided.  (In some exceptional cases, it may be that the provenance information returned does not contain any information relating to a specific associated resource.)
         </p>
+        <p>
+          Provenance information is not of itself guaranteed to be authoritative or correct. Trust in provenance information must be determined separately from trust in the original resource. Just as in the web at large, it is a user's responsibility to determine an appropriate level of trust in any other resource; e.g. based on the domain that serves it, or an associated digital signature. (See also <a href="#security-considerations" class="sectionRef"></a>.)
+        </p>
+
       </section>
 
     </section>
@@ -318,10 +322,10 @@
       <p>Provenance information about a resource may be provided by several parties other than the provider of that resource, each using different locations, and each with different concerns.  (It is possible that these different parties may provide contradictory provenance information.)
       </p>
       <p>
-      Once provenance information about a resource is retrieved, one may also need to know how to locate information about that resource within the provenance information. This may be a <a class="internalDFN">constrained resource</a> identified by a separate <a class="internalDFN">target-uri</a>.
+      Once provenance information about a resource is retrieved, one may also need to know how to locate information about that resource within the provenance information. This may be a <a class="internalDFN">constrained resource</a> identified by a separate <a class="internalDFN">target-URI</a>.
       </p>
       <p>
-        We start by considering mechanisms for the resource provider to indicate a <a class="internalDFN">provenance-URI</a> or <a class="internalDFN">Service-URI</a> along with a <a class="internalDFN">target-uri</a>.  
+        We start by considering mechanisms for the resource provider to indicate a <a class="internalDFN">provenance-URI</a> or <a class="internalDFN">Service-URI</a> along with a <a class="internalDFN">target-URI</a>.  
         Three mechanisms are described here:
         <ul>
           <li>The requester knows the resource URI <em>and</em> the resource is accessible using HTTP</li>
@@ -341,11 +345,11 @@
         </p>
         <p>
           A <code>provenance</code> link relation type for referencing provenance information is registered according to the template in <a href="#iana-considerations" class="sectionRef"></a>, and may be used as shown:
-          <pre class="pattern">Link: <cite>provenance-URI</cite>; rel="provenance"; anchor="<cite>target-uri</cite>"</pre>
-          When used in conjunction with an HTTP success response code (<code>2xx</code>), this HTTP header field indicates that <code><cite>provenance-URI</cite></code> is the URI of some provenance information associated with the requested resource and that the associated resource is identified within the referenced provenance information as <code><cite>target-uri</cite></code>. (See also <a href="#interpreting-provenance-information" class="sectionRef"></a>.)
+          <pre class="pattern">Link: <cite>provenance-URI</cite>; rel="provenance"; anchor="<cite>target-URI</cite>"</pre>
+          When used in conjunction with an HTTP success response code (<code>2xx</code>), this HTTP header field indicates that <code><cite>provenance-URI</cite></code> is the URI of some provenance information associated with the requested resource and that the associated resource is identified within the referenced provenance information as <code><cite>target-URI</cite></code>. (See also <a href="#interpreting-provenance-information" class="sectionRef"></a>.)
         </p>
         <p>
-        If no <code>anchor</code> parameter is provided then the <code><cite>target-uri</cite></code> is assumed to be the URI of the resource, used in the corresponding HTTP request.
+        If no <code>anchor</code> parameter is provided then the <code><cite>target-URI</cite></code> is assumed to be the URI of the resource, used in the corresponding HTTP request.
         </p>
         <p>
           At this time, the meaning of these links returned with other HTTP response codes is not defined: future revisions of this specification may define interpretations for these.
@@ -366,7 +370,7 @@
               The resource provider may indicate that provenance information about the resource is provided by a <a class="internalDFN">provenance service</a>. This is done through the use of a <code>provenance-service</code> link relation type following the same pattern as above:
             </p>
             <pre class="pattern">
-Link: <cite>provenance-service-URI</cite>; anchor="<cite>target-uri</cite>"; rel="provenance-service"</pre>
+Link: <cite>provenance-service-URI</cite>; anchor="<cite>target-URI</cite>"; rel="provenance-service"</pre>
             <p>
               The <code>provenance-service</code> link identifies the <a class="internalDFN">service-URI</a>.  Dereferencing this URI yields a service description that provides further information to enable a client to determine a <a class="internalDFN">provenance-URI</a> or retrieve <a class="internalDFN">provenance information</a> for a <a class="internalDFN">resource</a>; see <a href="#provenance-services" class="sectionRef"></a> for more details.
             </p>
@@ -380,13 +384,13 @@
       <section>
         <h2>Resource represented as HTML</h2>
         <p>
-          For a document presented as HTML or XHTML, without regard for how it has been obtained, provenance information may be associated with a resource by adding a <code>&lt;Link&gt;</code> element to the HTML <code>&lt;head&gt;</code> section.
+          For a document presented as HTML or XHTML, without regard for how it has been obtained, provenance information may be associated with a resource by adding a <code>&lt;link&gt;</code> element to the HTML <code>&lt;head&gt;</code> section.
           Two new link relation types for referencing provenance information are registered according to the template in <a href="#iana-considerations" class="sectionRef"></a>, and may be used as shown:
           <pre class="pattern">
   &lt;html xmlns="http://www.w3.org/1999/xhtml"&gt;
      &lt;head&gt;
         &lt;link rel="provenance" href="<cite>provenance-URI</cite>"&gt;
-        &lt;link rel="anchor" href="<cite>target-uri</cite>"&gt;
+        &lt;link rel="anchor" href="<cite>target-URI</cite>"&gt;
         &lt;title&gt;Welcome to example.com&lt;/title&gt;
      &lt;/head&gt;
      &lt;body&gt;
@@ -398,7 +402,7 @@
           The <code><cite>provenance-URI</cite></code> given by the <code>provenance</code> link element identifies the provenance-URI for the document.
         </p>
         <p>
-          The <code><cite>target-uri</cite></code> given by the <code>anchor</code> link element specifies an identifier for the document that may be used within the provenance information when referring to the document.
+          The <code><cite>target-URI</cite></code> given by the <code>anchor</code> link element specifies an identifier for the document that may be used within the provenance information when referring to the document.
         </p>
         <p>
           An HTML document header MAY include multiple <code>provenance</code> link elements, indicating a number of different provenance sources that are known to the creator of the document, each of which may provide provenance information about the document. 
@@ -409,7 +413,7 @@
         </p>
 -->
         <p>
-          If no "anchor" link element is provided then the <code><cite>target-uri</cite></code> is assumed to be the URI of the document. It is RECOMMENDED that this convention be used only when the document is static and has a stable URI that is reasonably expected to be available to anyone accessing the document (e.g. when delivered from a web server, or as part of a MIME structure containing content identifiers [[RFC2392]]).
+          If no "anchor" link element is provided then the <code><cite>target-URI</cite></code> is assumed to be the URI of the document. It is RECOMMENDED that this convention be used only when the document is static and has a stable URI that is reasonably expected to be available to anyone accessing the document (e.g. when delivered from a web server, or as part of a MIME structure containing content identifiers [[RFC2392]]).
         </p>
 
         <section>
@@ -421,7 +425,7 @@
   &lt;html xmlns="http://www.w3.org/1999/xhtml"&gt;
      &lt;head&gt;
         &lt;link rel="provenance-service" href="<cite>service-URI</cite>"&gt;
-        &lt;link rel="anchor" href="<cite>target-uri</cite>"&gt;
+        &lt;link rel="anchor" href="<cite>target-URI</cite>"&gt;
         &lt;title&gt;Welcome to example.com&lt;/title&gt;
      &lt;/head&gt;
      &lt;body&gt;
@@ -440,18 +444,18 @@
       <section>
         <h2>Resource represented as RDF</h2>
         <p>
-          If a resource is represented as RDF (in any of its recognized syntaxes, including RDFa), it may contain references to its own provenance using additional RDF statements.  For this purpose three new RDF properties, <code>prov:hasProvenance</code>, <code>prov:hasAnchor</code>, and <code>prov:hasProvenanceService</code>, are defined in the following.
+          If a resource is represented as RDF (in any of its recognized syntaxes, including RDFa), it may contain references to its own provenance using additional RDF statements.  For this purpose three new RDF properties, <code>prov:hasProvenance</code>, <code>prov:hasAnchor</code>, and <code>prov:hasProvenanceService</code>, are defined as follows.
           (These terms may be used to indicate provenance of other resources too, but discussion of such usage is beyond the scope of this section.)
         </p>
         <p>
           The RDF property <code>prov:hasProvenance</code> is defined as a relation between two resources, where the object of the property is a resource that provides provenance information about the subject resource.  Multiple <code>prov:hasProvenance</code> assertions may be made about a subject resource.  This property corresponds to a <a href="#registration-template-for-link-relation---provenance">provenance link relation</a> used with an HTTP <code>Link</code> header field, or HTML <code>&lt;link&gt;</code> element.
         </p>
         <p>
-          Property <code>prov:hasAnchor</code> specifies a <a class="internalDFN">target-uri</a> used in the provenance information to refer to the containing RDF document.
+          Property <code>prov:hasAnchor</code> specifies a <a class="internalDFN">target-URI</a> used in the provenance information to refer to the containing RDF document.
           This corresponds to use of the <code>anchor</code> parameter in an HTTP provenance <code>Link</code> header field, or an <a href="#registration-template-for-link-relation---anchor">anchor link relation</a> in an HTML <code>&lt;link&gt;</code> element, which similarly indicate a URI used by the provenance information to refer to the described document.
         </p>
         <p>
-          Property <code>prov:hasProvenanceService</code> specifies a <a class="internalDFN">service-URI</a>s associated with the RDF document for possible access to provenance information.  This property corresponds to a <a href="#registration-template-for-link-relation---provenance-service">provenance-service link relation</a> used with an HTTP <code>Link</code> header field, or HTML <code>&lt;link&gt;</code> element.
+          Property <code>prov:hasProvenanceService</code> specifies a <a class="internalDFN">service-URI</a> associated with the RDF document for possible access to provenance information.  This property corresponds to a <a href="#registration-template-for-link-relation---provenance-service">provenance-service link relation</a> used with an HTTP <code>Link</code> header field, or HTML <code>&lt;link&gt;</code> element.
         </p>
         <pre class="example code">
     @prefix prov: &lt;<provns/>&gt;
@@ -472,7 +476,7 @@
           If a resource is represented using a data format other than HTML or RDF, and no URI for the resource is known, provenance discovery becomes trickier to achieve.  This specification does not define a specific mechanism for such arbitrary resources, but this section discusses some of the options that might be considered.
         </p>
         <p>
-          For formats which have provision for including metadata within the file (e.g. JPEG images, PDF documents, etc.), use the format-specific metadata to include a <a class="internalDFN">target-uri</a>, <a class="internalDFN">provenance-URI</a> and/or <a class="internalDFN">service-URI</a>. Format-specific metadata provision might also be used to include <a class="internalDFN">provenance information</a> directly in the resource.
+          For formats which have provision for including metadata within the file (e.g. JPEG images, PDF documents, etc.), use the format-specific metadata to include a <a class="internalDFN">target-URI</a>, <a class="internalDFN">provenance-URI</a> and/or <a class="internalDFN">service-URI</a>. Format-specific metadata provision might also be used to include <a class="internalDFN">provenance information</a> directly in the resource.
         </p>
         <p>
           Use a generic packaging format that can combine an arbitrary data file with a separate metadata file in a known format, such as RDF.  At this time, it is not clear what format that should be, but some possible candidates are:
@@ -503,17 +507,17 @@
       </p>
       <p>The introduction of this protocol is motivated by the following possible considerations:
         <ul>
-        <li>the naming authority associated with the <a class="internalDFN">target-uri</a> is not the same as the service offering provenance information</li>
+        <li>the naming authority associated with the <a class="internalDFN">target-URI</a> is not the same as the service offering provenance information</li>
         <li>multiple services have <a class="internalDFN">provenance information</a> about the same resource</li>
-        <li>the service associated with the target-uri is not accessible for adding additional information when handling retrieval requests</li>
-        <li>there is no dereferencable <a class="internalDFN">provenance-uri</a> containing provenance information for a particular resource</li>
+        <li>the service associated with the target-URI is not accessible for adding additional information when handling retrieval requests</li>
+        <li>there is no dereferencable <a class="internalDFN">provenance-URI</a> containing provenance information for a particular resource</li>
         <li>provenance services may provide additional extensibility points for control over returned provenance information.</li>
         </ul>
       </p>
 
      <section>
         <h2>HTTP GET</h2>
-        <p>This protocol combines the <a class="internalDFN">target-uri</a> with the <a class="internalDFN">service-URI</a> to formulate an HTTP GET request, according to the following convention:
+        <p>This protocol combines the <a class="internalDFN">target-URI</a> with the <a class="internalDFN">service-URI</a> to formulate an HTTP GET request, according to the following convention:
           <pre class="pattern">
   GET /provenance/service?<b>target</b>=http://www.example.com/entity HTTP/1.1
   Host: example.com</pre>
@@ -553,7 +557,7 @@
     prov:provenanceUriTemplate "<cite>service-URI</cite>?target={+uri}" .</pre>
         <p>where <cite><code>service-URI</code></cite> is the URI of the provenance service.  Note that the object of the <code>prov:provenanceUriTemplate</code> statement is a literal text value, not a URI.
         </p>
-        <p>A client may retrieve this service description and extract the associated value for <code>prov:provenance-uri-template</code>.  This value is a string containing a URI template [[URI-template]] (level 2). A URI for the desired provenance information is obtained by expanding the URI template with the variable <code>uri</code> set to the resource-URI for which provenance is required.  If the target-URI contains '#' or '&amp;' these  must be %-escaped as <code>%23</code> or <code>%26</code> respectively before template expansion.
+        <p>A client may retrieve this service description and extract the associated value for <code>prov:provenance-URI-template</code>.  This value is a string containing a URI template [[URI-template]] (level 2). A URI for the desired provenance information is obtained by expanding the URI template with the variable <code>uri</code> set to the resource-URI for which provenance is required.  If the target-URI contains '#' or '&amp;' these  must be %-escaped as <code>%23</code> or <code>%26</code> respectively before template expansion.
         </p>
         <p class="TODO">
           @@TODO: sync up term definitions with provenance ontology specification.
@@ -573,7 +577,7 @@
           Simply identifying and retrieving provenance information as a resource on the Web may not always meet the requirements of a particular application or service, e.g.:
           <ul>
             <li>the resource for which provenance information is required is not identified by a known URI</li>
-            <li>the provenance information for an resource is not directly identified by a known URI</li>
+            <li>the provenance information for a resource is not directly identified by a known URI</li>
             <li>a requirement to access provenance information for a number of distinct but related resources in a single atomic operation</li>
             <li><i>etc.</i></li>
           </ul>
@@ -594,9 +598,9 @@
           The following subsections illustrate use cases for querying a SPARQL-based provenance query service.
         </p>
         <section>
-          <h2>Find a provenance-URI given a target-uri</h2>
+          <h2>Find a provenance-URI given a target-URI</h2>
           <p>
-            If the requester has a <a class="internalDFN">target-uri</a>, a simple SPARQL query may be used to return the corresponding <a class="internalDFN">provenance-URI</a>. E.g., if the original resource has a target-uri <code>http://example.org/resource</code>:
+            If the requester has a <a class="internalDFN">target-URI</a>, a simple SPARQL query may be used to return the corresponding <a class="internalDFN">provenance-URI</a>. E.g., if the original resource has a target-URI <code>http://example.org/resource</code>:
             <pre class="example code">
   @prefix prov: &lt;<provns/>&gt;
   SELECT ?provenance_uri WHERE
@@ -623,7 +627,7 @@
         </section>
 
         <section>
-          <h2>Obtain provenance information directly given a target-uri</h2>
+          <h2>Obtain provenance information directly given a target-URI</h2>
           <p>
             This scenario retrieves provenance information directly given the URI of a resource, and may be useful where the provenance information has not been assigned a specific URI, or when the calling application is interested only in specific elements of provenance information.
           </p>
@@ -662,15 +666,15 @@
           <h2>Via Web Retrieval</h2>
           <p>Publishers are not required to publish all the provenance information associated with a given resource at a particular <a class="internalDFN">provenance-URI</a>. The amount of provenance information exposed is application dependent. However, it is possible to incrementally retrieve (i.e. walk the provenance graph) by progressively looking up provenance information using HTTP. The pattern is as follows:
             <ol>
-              <li>For a given resource (<code>resource-uri</code>) retrieve it's associated <code>provenance-uri-1</code> and its associated <code>target-uri-1</code> using a returned HTTP <code>Link:</code> header field (<a href="#resource-accessed-by-http" class="sectionRef"></a>)</li>
-              <li>Dereference <code>provenance-uri-1</code></li>
+              <li>For a given resource (<code>resource-URI</code>) retrieve it's associated <code>provenance-URI-1</code> and its associated <code>target-URI-1</code> using a returned HTTP <code>Link:</code> header field (<a href="#resource-accessed-by-http" class="sectionRef"></a>)</li>
+              <li>Dereference <code>provenance-URI-1</code></li>
               <li>Navigate the provenance information</li>
-              <li>When reaching a dead-end during navigation, that is on encountering a reference to a resource (<code>target-uri-2</code>) with no provided provenance information, find its provenance-URI and continue from Step 2.  (Note: an HTTP HEAD request for <code>target-uri-2</code> may be used to obtain the <code>Link:</code> headers without retrieving the resource representation.)</li>
+              <li>When reaching a dead-end during navigation, that is on encountering a reference to a resource (<code>target-URI-2</code>) with no provided provenance information, find its provenance-URI and continue from Step 2.  (Note: an HTTP HEAD request for <code>target-URI-2</code> may be used to obtain the <code>Link:</code> headers without retrieving the resource representation.)</li>
             </ol>
           </p>
           <p>To reduce the overhead of multiple HTTP requests, a provenance information publishers are encouraged to link entities to their associated provenance information using the <code>prov:hasProvenance</code> predicate. Thus, the same pattern above applies, except instead of having to retrieve a new <code>Link</code> header field, one can immediately access the resource's associated provenance.
           </p>
-          <p>The same approach can be adopted when using the <a class="internalDFN">provenance service</a> API (<a href="#provenance-services" class="sectionRef"></a>). However, instead of performing an HTTP HEAD or GET against a resource one queries the provenance service using the given <a class="internalDFN">target-uri</a>.
+          <p>The same approach can be adopted when using the <a class="internalDFN">provenance service</a> API (<a href="#provenance-services" class="sectionRef"></a>). However, instead of performing an HTTP HEAD or GET against a resource one queries the provenance service using the given <a class="internalDFN">target-URI</a>.
           </p>
         </section>
 
@@ -792,6 +796,9 @@
       <p class="TODO">
         @@TODO ... privacy, access control to provenance (note to self: discussed in Edinburgh linked data provenance workshop).  In particular, note that the fact that a resource is openly accessible does not mean that its provenance information should also be.
       </p>
+      <p class="TODO">
+        @@TODO Expand on trust-in-provenance issues. Suggested by Curt: Just as provenance information can help determine trust of the information content of a resource, provenance information related to the provenance itself ("provenance of provenance") can help determine trust of the provenance.
+      </p>
     </section>
  
 <!-- ===================================================================================== -->