Query service - editorial updates per Stian's comments 35-41, including re-work of motivation
authorGraham Klyne
Tue, 26 Feb 2013 14:40:02 +0000
changeset 5751 ae119d2377ca
parent 5750 c103d31270a7
child 5752 206caf60d43a
Query service - editorial updates per Stian's comments 35-41, including re-work of motivation
paq/prov-aq.html
--- a/paq/prov-aq.html	Tue Feb 26 13:34:47 2013 +0000
+++ b/paq/prov-aq.html	Tue Feb 26 14:40:02 2013 +0000
@@ -266,7 +266,10 @@
           </li>
         </ul>
       <p>
-        For ease of reference, the main body of this document contains some links to external web pages.  Such links are distinguished from internal references thus: <a href="http://www.w3.org/2011/prov/wiki/Main_Page" class="externalRef">W3C Provenance Working Group</a>
+        Most mechanisms described in this note are independent of the provenance format used, and may be used to access provenance in any available format.  For interoperable provenance publication, use of PROV-O represented in a standardized RDF format is recommended.  Where alternative formats are available, selection may be made by content negotiation.
+      </p>
+      <p>
+        For ease of reference, the main body of this document contains some links to external web pages.  Such links are distinguished from internal references thus: <a href="http://www.w3.org/2011/prov/wiki/Main_Page" class="externalRef">W3C Provenance Working Group</a>.
       </p>
 
       <section>
@@ -701,30 +704,43 @@
       <p>
         This section describes a simple HTTP query protocol for accessing provenance records, and also a mechanism for locating a SPARQL service endpoint [[SPARQL-SD]]. The HTTP protocol specifies HTTP operations for retrieving provenance records from a provenance query service, following the approach of the SPARQL Graph Store HTTP Protocol [[SPARQL-HTTP]].
       </p>
-      <p>The introduction of query services is motivated by the following possible considerations: </p>
+      <p>
+        The introduction of query services is motivated by the following possible considerations: 
+      </p>
       <ul>
-      <li>the naming authority associated with the <a class="internalDFN">entity-URI</a> is not the same as the service offering <a class="internalDFN">provenance record</a>s</li>
-      <li>multiple services have provenance records about the same resource</li>
-      <li>the service associated with the entity-URI is not accessible for adding additional information when handling retrieval requests</li>
-      <li>there is no known dereferencable <a class="internalDFN">provenance-URI</a> returning a provenance record for a particular resource</li>
-      <li>query services may provide additional control over what provenance is returned.</li>
+        <li>
+          third-party providers of provenance descriptions may be unable to use the mechanisms of Section 3 because the corresponding <a class="internalDFN">entity-URI</a> is outside their control;
+        </li>
+        <li>
+          services unknown to the original publisher may have provenance records about the same resource;
+        </li>
+        <li>
+          there is no known dereferencable <a class="internalDFN">provenance-URI</a> or a particular entity;
+        </li>
+        <li>
+          query services may provide additional filters over what provenance is returned; and
+        </li>
+        <li>
+          query services may support more expressive selections, such as "which
+entities were derived from entities attributed to agent X".
+        </li>
       </ul>
       <p>
-        The query mechanisms provided by a <a class="internalDFN">provenance query service</a> are described by an RDF-format service description, which is obtained by dereferencing a <a class="internalDFN">service-URI</a>.  A service description may contain information about additional mechanisms that are not described here.  In keeping with REST practice, alternative non-RDF service description formats not described here may be offered and accessed using HTTP content negotiation.
+        The patterns for using provenance query services are designed around REST principles [[REST]], which aim to minimize coupling between client and server implementation details.
+      </p>
+      <p>
+        The query mechanisms provided by a <a class="internalDFN">provenance query service</a> are described by a service description, which is obtained by dereferencing a <a class="internalDFN">service-URI</a>.  A service description may contain information about additional mechanisms that are not described here.  In keeping with REST practice for web applications, alternative service descriptions using different formats may be offered and accessed using HTTP content negotiation.  We describe below a service description format that uses RDF to describe two query mechanisms.
       </p>
       <p>
         The general procedure for using a provenance query service is:
       </p>
       <ol>
         <li>retrieve the service description;</li>
-        <li>within the service description, locate information about a recognized query mechanism, ignoring unrecognized descriptions;</li>
-        <li>if a recognized query mechanism is described, extract information needed to use that mechanism (e.g. a URI template or a SPARQL service endpoint URI); and</li>
-        <li>use the information obtained to query for required provenance.</li>
+        <li>within the service description, locate information about a recognized query mechanism (ignoring unrecognized descriptions if the description covers multiple service options);</li>
+        <li>if a recognized query mechanism is found, extract information needed to use that mechanism (e.g. a URI template or a SPARQL service endpoint URI); and</li>
+        <li>use the information obtained to query for required provenance, using the selected query mechanism.</li>
       </ol>
       <p>
-        The patterns for using provenance query services are designed around REST principles [[REST]], which aim to minimize coupling between client and server implementation details.
-      </p>
-      <p>
         The remainder of this section covers the following topics:
       </p>
       <ul>
@@ -737,7 +753,7 @@
       <section>
         <h2>Provenance query service description</h2>
         <p>
-          Dereferencing a provenance query service URI yields a service description. The service description should be available as RDF (in any of its common serializations as determined by HTTP content negotiation), and it should contain descriptions of one or more available query mechanisms.  Each available query mechanism is associated with an RDF resource of a given type, as described below.
+          Dereferencing a <a class="internalDFN">service-URI</a> yields a service description. The service description described here may be supplied as RDF (in any of its common serializations as determined by HTTP content negotiation), and it may contain descriptions of one or more available query mechanisms.  Each query mechanism is associated with an RDF resource of a given type, as described below.
         </p>
         <p>While use of RDF for service descriptions is a recommended option, this specification does not preclude the use of non-RDF formats that a service may choose to offer, and which may be selected using HTTP content negotiation.
         </p>