drafting bundle proposal
authorLuc Moreau <l.moreau@ecs.soton.ac.uk>
Wed, 02 May 2012 09:53:50 +0100
changeset 2670 1893fe276aac
parent 2669 ab4cf511cae8
child 2671 315658007964
child 2673 ad10792d4f64
drafting bundle proposal
model/glossary.html
model/glossary.js
model/working-copy/wd6-bundle.html
--- a/model/glossary.html	Tue May 01 21:01:01 2012 +0100
+++ b/model/glossary.html	Wed May 02 09:53:50 2012 +0100
@@ -49,7 +49,7 @@
 </span>
 
 
-
+<!-- to disappear ??? --->
 <span class="glossary" id="glossary-account">  
 An <dfn id="concept-account">account</dfn> is an entity that contains a bundle of provenance descriptions. 
 </span>
@@ -203,3 +203,8 @@
 <dfn id="concept-invalidation">Invalidation</dfn>
 is the start of the destruction, cessation, or expiry of an existing entity by an activity.
 The entity is no longer available for use after invalidation. Any generation or usage of an entity precedes its invalidation.</span>
+
+
+<span class="glossary" id="glossary-bundle">  
+A <dfn id="concept-bundle">bundle</dfn> is a set of provenance descriptions. A named bundle has an identifier that identifies a unique set of descriptions.   
+</span>
--- a/model/glossary.js	Tue May 01 21:01:01 2012 +0100
+++ b/model/glossary.js	Wed May 02 09:53:50 2012 +0100
@@ -3,7 +3,7 @@
 //  with <script src="glossary.js" class="remove"></script>
 //Insert glossary definitions with the following 
 // <div class="glossary-ref" ref="glossary-generation"></div>
-glossary_hg='http://dvcs.w3.org/hg/prov/file/22e94d82afe8/model/glossary.html';
+glossary_hg='http://dvcs.w3.org/hg/prov/file/ab4cf511cae8/model/glossary.html';
 glossary_string= 
 ' ' + 
 '<html> ' + 
@@ -46,14 +46,17 @@
 'A <dfn id="concept-collection">collection</dfn> is an entity that provides a structure to some constituents, which are themselves entities. These constituents are said to be <dfn>member of</dfn> the collections.  ' + 
 '</span> ' + 
 ' ' + 
+' ' + 
 '<span class="glossary" id="glossary-empty-collection">   ' + 
 'An <dfn id="concept-empty-collection">empty collection</dfn> is a collection without member.  ' + 
 '</span> ' + 
-' ' +
-'<span class="glossary" id="glossary-dictionary">  ' +
-'A <dfn id="concept-dictionary">dictionary</dfn> is a collection whose members are indexed by keys. '+
-'</span>' +
 ' ' + 
+'<span class="glossary" id="glossary-dictionary">   ' + 
+'A <dfn id="concept-dictionary">dictionary</dfn> is a collection whose members are indexed by keys.  ' + 
+'</span> ' + 
+' ' + 
+' ' + 
+'<!-- to disappear ??? ---> ' + 
 '<span class="glossary" id="glossary-account">   ' + 
 'An <dfn id="concept-account">account</dfn> is an entity that contains a bundle of provenance descriptions.  ' + 
 '</span> ' + 
@@ -207,4 +210,9 @@
 '<dfn id="concept-invalidation">Invalidation</dfn> ' + 
 'is the start of the destruction, cessation, or expiry of an existing entity by an activity. ' + 
 'The entity is no longer available for use after invalidation. Any generation or usage of an entity precedes its invalidation.</span> ' + 
+' ' + 
+' ' + 
+'<span class="glossary" id="glossary-bundle">   ' + 
+'A <dfn id="concept-bundle">bundle</dfn> is a set of provenance descriptions. A named bundle has an identifier that identifies a unique set of descriptions.    ' + 
+'</span> ' + 
 ' ' ;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/model/working-copy/wd6-bundle.html	Wed May 02 09:53:50 2012 +0100
@@ -0,0 +1,444 @@
+<!DOCTYPE html
+>
+
+<html><head> 
+    <title>PROV-DM: The PROV Data Model</title> 
+    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
+    <!-- 
+      === NOTA BENE ===
+      For the three scripts below, if your spec resides on dev.w3 you can check them
+      out in the same tree and use relative links so that they'll work offline,
+     -->
+<!-- PM -->
+    <style type="text/css">
+      .note { font-size:small; margin-left:50px }
+     </style>
+
+    <script src="http://dev.w3.org/2009/dap/ReSpec.js/js/respec.js" class="remove"></script> 
+    <script src="http://www.w3.org/2007/OWL/toggles.js" class="remove"></script> 
+    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" class="remove"></script>
+
+    <script src="../glossary.js" class="remove"></script>
+
+    <script class="remove">
+      function updateGlossaryRefs() {
+        $('.glossary-ref').each(function(index) {
+          var ref=$(this).attr('data-ref');
+          var span=$(this).attr('data-withspan')
+          $(this).removeAttr('data-withspan');
+          $(this).removeAttr('data-ref');
+
+          $('#'+ref+'.glossary').contents().clone().appendTo($(this));
+//          $(this).attr("prov:hadOriginalSource",glossary_hg);
+          if (span) {
+            $(this).children('dfn').replaceWith(function(){return $('<span>').addClass('dfn').append($(this).contents())});
+          }
+        });
+      }
+      $(document).ready(function(){
+        // if glossary is in a string:
+        $('#glossary_div').html(glossary_string)
+        updateGlossaryRefs();
+      });
+
+    </script>
+
+    <script class="remove"> 
+      var addExtraReferences = function() {
+          for (var k in extraReferences)
+              berjon.biblio[k] = extraReferences[k];
+      };
+      var extraReferences = {
+        "CLOCK":
+         "Lamport, L. "+
+         "<a href=\"http://research.microsoft.com/users/lamport/pubs/time-clocks.pdf\"><cite>Time, clocks, and the ordering of events in a distributed system</cite></a>."+
+         "Communications of the ACM 21 (7): 558–565. 1978. "+
+         "URL: <a href=\"http://research.microsoft.com/users/lamport/pubs/time-clocks.pdf\">http://research.microsoft.com/users/lamport/pubs/time-clocks.pdf</a> " +
+         "DOI: doi:10.1145/359545.359563.",
+        "CSP":
+         "Hoare, C. A. R. "+
+         "<a href=\"http://www.usingcsp.com/cspbook.pdf\"><cite>Communicating Sequential Processes</cite></a>."+
+         "Prentice-Hall. 1985"+
+         "URL: <a href=\"http://www.usingcsp.com/cspbook.pdf\">http://www.usingcsp.com/cspbook.pdf</a>",
+        "Logic":
+          "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>",
+        "PROV-SEM":
+          "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>",
+
+        "PROV-PRIMER":
+          "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>",
+
+        "PROV-O":
+          "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>",
+
+
+        "PROV-CONSTRAINTS":
+          "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>",
+
+        "PROV-N":
+          "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>",
+
+        "PROV-AQ":
+          "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>",
+      };
+      var respecConfig = {
+          // specification status (e.g. WD, LCWD, NOTE, etc.). If in doubt use ED.
+          specStatus:           "ED",
+          
+          // the specification's short name, as in http://www.w3.org/TR/short-name/
+          shortName:            "prov-dm",
+ 
+          // if your specification has a subtitle that goes below the main
+          // formal title, define it here
+      subtitle   :  "working towards WD6 --- Working Copy",
+
+ 
+          // if you wish the publication date to be other than today, set this
+//          publishDate:  "2012-05-03",
+ 
+          // if the specification's copyright date is a range of years, specify
+          // the start date here:
+          copyrightStart: "2011",
+ 
+          // if there is a previously published draft, uncomment this and set its YYYY-MM-DD date
+          // and its maturity status
+          previousPublishDate:  "2012-05-03",
+          previousMaturity:  "WD",
+ 
+          // if there a publicly available Editor's Draft, this is the link
+          edDraftURI:           "http://dvcs.w3.org/hg/prov/raw-file/default/model/prov-dm.html",
+ 
+          // if this is a LCWD, uncomment and set the end of its review period
+          // lcEnd: "2009-08-05",
+ 
+          // if you want to have extra CSS, append them to this list
+          // it is recommended that the respec.css stylesheet be kept
+          extraCSS:             ["http://dev.w3.org/2009/dap/ReSpec.js/css/respec.css", "../extra-dm.css"],
+ 
+          // editors, add as many as you like
+          // only "name" is required
+          editors:  [
+              { name: "Luc Moreau", url: "http://www.ecs.soton.ac.uk/~lavm/",
+                company: "University of Southampton" },
+              { name: "Paolo Missier", url: "http://www.cs.ncl.ac.uk/people/Paolo.Missier",
+                company: "Newcastle University" },
+          ],
+ 
+          // authors, add as many as you like. 
+          // This is optional, uncomment if you have authors as well as editors.
+          // only "name" is required. Same format as editors.
+ 
+          authors:  [
+              { name: "Khalid Belhajjame", url: "http://semanticweb.org/wiki/Khalid_Belhajjame",
+                company: "University of Manchester" },
+              { name: "Reza B'Far",
+                company: "Oracle Corporation" },
+              { name: "Stephen Cresswell",
+                company: "legislation.gov.uk"},
+              { name: "Yolanda Gil",
+                company: "Invited Expert", url:"http://www.isi.edu/~gil/"},
+              { name: "Paul Groth", url: "http://www.few.vu.nl/~pgroth/",
+                company: "VU University of Amsterdam" },
+              { name: "Graham Klyne",
+                company: "University of Oxford" },
+              { name: "Jim McCusker", url: "http://tw.rpi.edu/web/person/JamesMcCusker",
+                company: "Rensselaer Polytechnic Institute" },
+              { name: "Simon Miles", 
+                company: "Invited Expert", url:"http://www.inf.kcl.ac.uk/staff/simonm/" },
+              { name: "James Myers", url:"http://www.rpi.edu/research/ccni/",
+                company: "Rensselaer Polytechnic Institute"},
+              { name: "Satya Sahoo", url:"http://cci.case.edu/cci/index.php/Satya_Sahoo",
+                company: "Case Western Reserve University" },
+              { name: "Curt Tilmes", 
+                company: "National Aeronautics and Space Administration" },
+          ],
+          
+          // name of the WG
+          wg:           "Provenance Working Group",
+          
+          // URI of the public WG page
+          wgURI:        "http://www.w3.org/2011/prov/",
+          
+          // name (with the @w3c.org) of the public mailing to which comments are due
+          wgPublicList: "public-prov-wg",
+          
+          // URI of the patent status for this WG, for Rec-track documents
+          // !!!! IMPORTANT !!!!
+          // This is important for Rec-track documents, do not copy a patent URI from a random
+          // document unless you know what you're doing. If in doubt ask your friendly neighbourhood
+          // Team Contact.
+          wgPatentURI:  "http://www.w3.org/2004/01/pp-impl/46974/status",
+
+          // Add extraReferences to bibliography database
+          preProcess: [addExtraReferences],
+      };
+    </script> 
+  </head> 
+  <body> 
+
+    <section id="abstract">
+<p>
+PROV-DM, the PROV data model, is a data model for provenance that describes
+the entities, people and activities involved in
+producing a piece of data or thing. 
+PROV-DM is structured in six components, dealing with: 
+(1) entities and activities, and the time at which they were created, used, or ended;
+(2) agents bearing responsibility for entities that were generated and activities that happened;
+(3) derivations of entities from entities;
+(4) properties to link entities that refer to the same thing;
+(5) collections forming a logical structure for its members;
+(6) a simple annotation mechanism.
+</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
+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 descriptions 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>
+
+    </section> 
+
+<section id="sotd">
+<h4>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 OWL-RL 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>
+</ul>
+<h4>How to read the PROV Family of Specifications</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 OWL-RL 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>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>
+</ul>
+
+
+<h4>Fourth Public Working Draft</h4>
+<p>This 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.</p>
+</section>
+
+
+
+
+<!-- <div class="buttonpanel"> 
+<form action="#"><p> 
+<input id="hide-asn" onclick="set_display_by_class('div','withAsn','none');set_display_by_class('span','withAsn','none'); set_display_by_id('hide-asn','none'); set_display_by_id('show-asn','');" type="button"
+value="Hide ASN" /> 
+<input id="show-asn" onclick="set_display_by_class('div','withAsn',''); set_display_by_class('span','withAsn','');  set_display_by_id('hide-asn',''); set_display_by_id('show-asn','none');" style="display: none"
+type="button" value="Show ASN" /> 
+</p> 
+</form> 
+</div>     
+-->
+
+
+
+
+
+    <section id="introduction"> 
+      <h2>Introduction<br>
+</h2> 
+
+
+</section> 
+
+
+
+<section id='starting-points'> 
+<h1>PROV Starting Points</h1>
+
+<section > 
+<h3>...</h3>
+</section>
+<section > 
+<h3>...</h3>
+</section>
+<section > 
+<h3>...</h3>
+</section>
+
+<section id="section-types-entities-agents"> 
+<h2>Further Entities: Collections and Bundles</h2>
+
+
+
+<!-- alternative names: provenance record, bundle -->
+<p>
+<span class="glossary-ref" data-ref="glossary-bundle"  data-withspan="true">
+</span>A bundle is an entity to allow provenance of provenance to be expressed.
+
+<div class="conceptexample" id="bundle-example">
+<p>
+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 Bundle), by which provenance of provenance can then be
+expressed.
+</p>
+</div>
+
+</section>
+
+
+</section>
+
+
+<section id="prov-dm-example"> 
+<h2>Illustration of PROV-DM by an Example</h2>
+
+<section id="section-example-a"> 
+<h3>...</h3>
+</section>
+
+<section id="section-example-b"> 
+<h3>...</h3>
+</section>
+
+<section id="section-example-c"> 
+<h3>Attribution of Provenance</h3>
+
+<p>The two previous sections  provide  two different perspectives on the provenance of a document By design, the PROV approach allows for the provenance of a subject to be provided by multiple sources. 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
+generated, etc. In other words, we need to be able to express the provenance of provenance.</p>
+
+<p>PROV-DM offers a construct to bundle up provenance descriptions and name them. </p>
+
+<pre>
+bundle ex:author-view
+
+  agent(ex:Paolo,   [ prov:type="Person" ])
+  agent(ex:Simon,   [ prov:type="Person" ])
+
+
+...
+
+endBundle
+</pre>
+
+Likewise, the process view can be expressed as a separate named bundle.
+<pre>
+bundle ex:process-view
+
+   agent(w3:Consortium, [ prov:type="Organization" ])
+
+...
+
+endBundle
+</pre>
+
+<p>To express their respective provenance, these bundles must be seen as entities, and all the constructs of PROV-DM are now available to characterize their provenance. In the example below, <span class="name">ex:w3c-publication1.pn</span> is attributed to the agent <span class="name">w3:Consortium</span>, whereas <span class="name">ex:w3c-publication3.pn</span> to <span class="name">ex:Simon</span>.
+
+<pre>
+entity(ex:process-view, [prov:type='prov:Bundle' ])
+wasAttributedTo(ex:process-view, w3:Consortium)
+
+entity(ex:author-view, [prov:type='prov:Bundle' ])
+wasAttributedTo(ex:author-view, ex:Simon)
+</pre>
+
+<div class="note">
+<p>TODO: full details of bundles can be found at  <a href="examples/w3c-publication1.pn">ex:process-view</a> and <a href="examples/w3c-publication3.pn">ex:author-view</a>.</p>
+</div
+
+
+</section>
+
+</section>
+
+</section>
+
+<section id="data-model-components"> 
+
+<h2>PROV-DM Types and Relations</h2>
+
+    </section> 
+
+
+<section id="bundles"> 
+
+<h2>Provenance of Provenance</h2>
+
+
+
+    </section> 
+
+
+
+
+<section id="valid-provenance">
+<h4>Creating Valid Provenance</h4>
+
+
+<ul>
+
+<li>
+
+
+<li>
+
+<li> 
+<div class="note">TO UPDATE
+</div
+<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. Such a named bundle is referred to as an <dfn>account</dfn> and is regarded as an <a title="concept-account">Account</a> so that its provenance can be expressed.   The notion of account is specified in the companion specification [[PROV-CONSTRAINTS]], as well as the constraints that  <dfn>structurally well-formed</dfn> descriptions SHOULD satisfy.</p>
+</li>
+
+
+</ul>
+
+
+</section>
+
+<div id="glossary_div" class="remove">
+<!-- glossary loaded from glossary.js will be hooked up here,
+     class remove, will remove this element from the final output.
+-->
+</div>
+
+<section class="appendix"> 
+      <h2>Acknowledgements</h2> 
+      <p> 
+        WG membership to be listed here.
+      </p> 
+    </section> 
+
+ </body>
+</html>