addressed comments in thread http://lists.w3.org/Archives/Public/public-prov-wg/2013Feb/0095.html
authorPaul Groth <p.t.groth@vu.nl>
Tue, 19 Feb 2013 11:59:40 +0100
changeset 5583 196d84d984d6
parent 5581 cdf10b849f3e
child 5584 6db9affb3a92
addressed comments in thread http://lists.w3.org/Archives/Public/public-prov-wg/2013Feb/0095.html
reports/prov-implementations.html
--- a/reports/prov-implementations.html	Tue Feb 19 11:00:16 2013 +0100
+++ b/reports/prov-implementations.html	Tue Feb 19 11:59:40 2013 +0100
@@ -80,7 +80,7 @@
 <body xmlns:prov="http://www.w3.org/ns/prov-o/"> 
 
     <section id="abstract">
-      <p>This document reports on implementations and usage of the PROV Family of Documents [[PROV-OVERVIEW]]. In particular, it's aim is to demonstrate that the features defined in PROV are implementable and interoperable. Features are defined as: the constructs specified in [[PROV-DM]] and their realisation in OWL (see [[PROV-O]]) and in the [[PROV-N]] syntax; the constraints defined within [[PROV-CONSTRAINTS]]. Interoperability is defined through both the interchange of provenance information and the coverage of test cases.     </p>
+      <p>This document reports on implementations and usage of the four normative specifications ([[PROV-DM]], [[PROV-N]], [[PROV-O]], [[PROV-CONSTRAINTS]]) of the PROV Family of Documents [[PROV-OVERVIEW]]. In particular, it's aim is to demonstrate that the features defined in PROV are implementable and interoperable. Features are defined as: the constructs specified in [[PROV-DM]] and their realisation in OWL (see [[PROV-O]]) and in the [[PROV-N]] syntax; the constraints defined within [[PROV-CONSTRAINTS]]. Interoperability is defined through both the interchange of provenance information and the coverage of test cases.     </p>
     </section>
 	<section id="sotd">
       During the Candidate Recommendation period of PROV, implementation experience was reported. This document summarises those experiences. 
@@ -92,11 +92,11 @@
     <h2>Introduction</h2>
     The goal of PROV is to enable interoperable interchange of provenance on the Web. We take two approaches to documenting the implementation and interoperability of PROV. 
     <ol>
-    <li> For the data model [[PROV-DM]] and the two working group defined serializations, we document that there are multiple implementations that support each of the constructs defined by the data model and that there are at least two implementations that are reported to exchange these constructs. </li>
-    <li> We document that the PROV-Constraints specification is implementable. To evaluate the coverage of implementations, the <a href="https://dvcs.w3.org/hg/prov/raw-file/default/testcases/process.html">PROV-Constraints Test Cases</a> are used as a point of reference. There are 280 test cases in total, which map to the the constraints defined by the document. </li>
+    <li> For the data model [[PROV-DM]] and the two working group defined serializations, we document the existence of multiple implementations that support each of the constructs within the data model and that there exists at least two implementations that are reported to exchange these constructs. </li>
+    <li> We document that the PROV-Constraints specification is implementable by documenting the existence of at least two implementations that report to support all the defined constraints. To evaluate the coverage of implementations, the <a href="https://dvcs.w3.org/hg/prov/raw-file/default/testcases/process.html">PROV-Constraints Test Cases</a> are used as a point of reference. There are 280 test cases in total, which map to the the constraints defined by the document. </li>
     </ol>
 <p>
-PROV is useful not only for applications/programs but also for exposing provenance within dataset and as a foundation for other vocabularies. We also document that usage as well. 
+PROV is useful not only for applications/programs but also for exposing provenance within datasets and as a foundation for other vocabularies. We also document that usage as well. 
 </p>
 <section id="surverys">
 <p>
@@ -115,15 +115,19 @@
 <section id="Exit-Criteria">
 <h2> Meeting the Exit Criteria</h2>
 <p>
-At the start of the Candidate Recommendation phase, the Working Group defined <a href="http://www.w3.org/2011/prov/wiki/ProvCRExitCriteria">a series of exit criteria</a>. These exit criteria can be summarized as for each feature defined by PROV there are at least two implementations that support the feature and that there exists one interoperability pair that can exchange that feature. Section <a href="#prov-terms">3.1</a> shows that a minimum of 4 implementations produce and consume all constructs defined in PROV-DM. PROV-O is implemented by over 40 implementations and PROV-N is implemented by 7 implementations. 
+At the start of the Candidate Recommendation phase, the Working Group defined <a href="http://www.w3.org/2011/prov/wiki/ProvCRExitCriteria">a series of exit criteria</a>. These exit criteria can be summarized as for each feature defined by PROV there are at least two implementations that support the feature and that there exists one interoperability pair that can exchange that feature. Section <a href="#prov-terms">3.1</a> shows that a minimum of 4 implementations both produce and consume all constructs defined in PROV-DM. PROV-O is implemented by over 40 implementations and PROV-N is implemented by 7 implementations. 
 </p>
 
 <p>
-In terms of implementation pairs, Section <a href="#prov-exchange">4</a> enumerates which pairs of implementations report exchanging provenance. Here, we meet the exit criteria in that each feature is exchanged by at least two implementations. For PROV-O, the implementations are from three separate institutions. For PROV-N, there are implementations in different programming languages from the same institution which exchange all constructs and an implementation from a different institution that exchanges some constructs. We believe that this meets the goals of the exit criteria to demonstrate interoperability. 
+In terms of implementation pairs, Section <a href="#prov-exchange">4</a> enumerates which pairs of implementations report exchanging provenance. Here, we meet the exit criteria in that each feature is exchanged by at least two implementations.  
 </p>
 
-Finally, three validators have implemented all of the constraints defined in PROV-Constraints passing the requisite test cases, thus, passing the exit criteria. The implementations are in Java, Prolog and SPARQL.
-
+<p>
+Finally, three validators have implemented all of the constraints defined in PROV-Constraints passing the requisite test cases, thus, passing the exit criteria.  The working group recognizes that implementing the PROV-Constraints document requires substantial effort. It is nice to see that three radically different appraoches were chosen to implement this specification: SPARQL, Java, Prolog, which speaks to the implementability of this specification.
+</p>
+<p>
+For a systematic enumeration of how the exit criteria were met, please see <a href="http://www.w3.org/2011/prov/wiki/MeetingProvCRExitCriteria"> http://www.w3.org/2011/prov/wiki/MeetingProvCRExitCriteria</a>
+</p>
 </section>
 
     </section>
@@ -3039,7 +3043,7 @@
       <table id="exchange-table" class="simple">
         <caption>
         Table 6: Implementations exchanging PROV with the representation(s) exchanged in 
-        parentheses.
+        parentheses. An implementation that supports every feature defined by the representation is denoted with All. 
         </caption>
         <tr>
           <th width="32" scope="col">&nbsp;</th>
@@ -3091,7 +3095,7 @@
           <ul>
             <li>All PROV-O terms generated by PROVoKing (King's College London)</li>
             <li>All PROV-N terms generated by the Provenance Server and the PROV-Python library (University of Southampton, Python code base)</li>
-            <li>Some PROV-N terms generated by APROVeD (Ghent University)</li>
+            <li>The subset of PROV-N terms generated by APROVeD (Ghent University)</li>
             <li>All PROV-N terms from the examples in the PROV-DM documents</li>
           </ul>
         </li>