collections
authorLuc Moreau <l.moreau@ecs.soton.ac.uk>
Wed, 28 Mar 2012 13:55:51 +0100
changeset 2049 ac0553656641
parent 2048 6d2ebefedff9
child 2050 70412d398aa9
collections
model/prov-dm.html
--- a/model/prov-dm.html	Wed Mar 28 13:39:14 2012 +0100
+++ b/model/prov-dm.html	Wed Mar 28 13:55:51 2012 +0100
@@ -1930,7 +1930,7 @@
 <h3>Component 5: Collections</h3>
 
 <p>The fifth component of PROV-DM is concerned with the notion of collections. 
-A collection is an entity that has some parts. The parts are themselves entities, and therefore their provenance can be expressed. In many applications, it is also of interest to be able to express the provenance of the collection  itself: e.g. who maintains the collection, which part it contains at which point in time, how it was assembled. The purpose of Component 5 is to define the types and relations that are useful to express the provenance of collections. </p>
+A collection is an entity that has some parts. The parts are themselves entities, and therefore their provenance can be expressed. In many applications, it is also of interest to be able to express the provenance of the collection  itself: e.g. who maintains the collection, which part it contains at which point in time, and how it was assembled. The purpose of Component 5 is to define the types and relations that are useful to express the provenance of collections. </p>
 
 <p>Figure <a href="#figure-component5">figure-component5</a> overviews
 the component, which consists of two "UML Class" and three associations.
@@ -1945,18 +1945,20 @@
 </div>
 
 
-<p>The intent of these relations and types is to express the <em>history of changes that occurred to a collection</em>. Indirectly, such history provides a way to reconstruct, the contents of a collection.</p>
+<p>The intent of these relations and types is to express the <em>history of changes that occurred to a collection</em>. 
+Changes to collections are about the insertion of parts to collections and the removal of parts from collections.
+ For the purpose of provenance, a collection entity is viewed as a snapshot of a collection. Insertion and removal operations result in new snapshots, each snapshot forming an identifiable collection entity.
+Indirectly, such history provides a way to reconstruct, the contents of a collection.</p>
 
 <section id="term-collection">
 <h3>Collection</h3>
 
 <span class="glossary-ref" data-ref="glossary-collection"></span>
 
-<p> Thus, for the purpose of provenance a collection entity is viewed an immutable representation of the state of a collection data structure, following a sequence of insertion and deletion operations.
-
-<br/>A collection entity is an entity that has a logical internal structure consisting of key-value pairs, often referred to as a <strong>map</strong>. This collection type provides a generic indexing structure that can be used to model commonly used data structures, including associative lists (also known as "dictionaries" in some programming languages), relational tables, ordered lists, and more (the specification of such specialized structures in terms of key-value pairs is out of the scope of this document).
-
-The following new entity types are introduced:
+
+<p>A collection is an entity that has a logical internal structure consisting of key-value pairs, often referred to as a <strong>map</strong>. This collection type is an abstraction of a generic indexing structure that can be used to model commonly used data structures, including associative lists (also known as "dictionaries" in some programming languages), relational tables, ordered lists, and more (the specification of such specialized structures in terms of key-value pairs is out of the scope of this document).,</p>
+
+<p>PROV-DM defines the following types related to collections:</p>
 
 <ul>
   <li> <span class="name">prov:Collection</span>  denotes an entity of type collection, i.e. an entity that  can participate in  relations amongst collections;
@@ -1964,15 +1966,18 @@
   <li><span class="name">prov:EmptyCollection</span> denotes an empty collection.
 </ul>
 
+
+
+
+
 <!--
 In addition, the attribute  <span class="name">prov:content</span> is introduced to allow the explicit specification of the collection's content. The example below illustrates the syntax.
 -->
 
 <div class="anexample">
 <pre class="codeexample">
-   entity(c, [prov:type="EmptyCollection"])    // e is an empty collection
-   entity(c1, [prov:type="Collection"])   // c1 is a collection, with unknown content
-<!--   entity(c2, [prov:type="Collection", prov:content="{ ("k1", v1), ("k2", v2), ("k3", v3)} ])  -->
+entity(c,  [prov:type="EmptyCollection" %% xsd:QName])  // e is an empty collection
+entity(c1, [prov:type="Collection"  %% xsd:QName])      // c1 is a collection, with unknown content
 </pre>
 </div>