--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/model/ProvenanceModel.html Mon Jul 18 18:00:29 2011 +0100
@@ -0,0 +1,515 @@
+<!DOCTYPE html>
+<html><head>
+ <title>Provenance 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,
+ -->
+ <script src="http://dev.w3.org/2009/dap/ReSpec.js/js/respec.js" class="remove"></script>
+ <script class="remove">
+ 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: "PIL-Model",
+
+ // if your specification has a subtitle that goes below the main
+ // formal title, define it here
+ subtitle : "Initial draft for internal discussion",
+
+ // if you wish the publication date to be other than today, set this
+ // publishDate: "2009-08-06",
+
+ // if the specification's copyright date is a range of years, specify
+ // the start date here:
+ // copyrightStart: "2005"
+
+ // if there is a previously published draft, uncomment this and set its YYYY-MM-DD date
+ // and its maturity status
+ // previousPublishDate: "1977-03-15",
+ // previousMaturity: "WD",
+
+ // if there a publicly available Editor's Draft, this is the link
+ edDraftURI: "http://www.w3.org/2011/prov/wiki/D1--NOT-YET-AVAILABLE",
+
+ // 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"],
+
+ // 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, UK" },
+ { name: "Paolo Missier", url: "http://www.cs.ncl.ac.uk/people/Paolo.Missier",
+ company: "Newcastle University, UK" },
+ ],
+
+ // 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: "TBD"},
+ ],
+
+ // name of the WG
+ wg: "Provenance Working Group",
+
+ // URI of the public WG page
+ wgURI: "http://www.w3.org/2011/prov/wiki/Main_Page",
+
+ // 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: "",
+ };
+ </script>
+ </head>
+ <body>
+ <section id="abstract">
+<p>This document defines a data model for Provenance.</p>
+
+<p>
+This is a document for internal discussion, which will ultimately
+evolve in the first Public Working Draft of the Conceptual Model.</p>
+ </section>
+
+ <section>
+ <h2>Introduction<br>
+</h2>
+ <p>
+ The Provenance language that is being defined by this WG, with name to be determined, is an <em>assertion language</em> which allows asserters to make assertions about <em>Entities</em> and activities in the real world (as they view it) and how they influence each other. <br>
+</p>
+ </section>
+
+ <section>
+<h2>Motivation and Requirements</h2>
+ </section>
+
+ <section>
+<h2>Example</h2>
+ </section>
+
+
+ <section >
+<h2>About the Provenance Language</h2>
+
+<p>In the world (whether real or not), there are entities, which can be
+physical, digital, conceptual, or otherwise, and activities involving
+entities. Words such entity or activity should be understood with
+their informal meaning.</p>
+
+<p>Furthermore, this specification is concerned with <em>situated
+entities</em>, that is, entities, with their state, and situation in
+the world, as perceived by their asserters. (NOTE: alternative term could be characterized entity).</p>
+
+<p>PIL is a language by which:
+<menu>
+<li> representations of the world can be expressed according to a
+ constrained vocabulary
+<li> these representations are subjective, they are the point of view
+ of their asserters, and in that sense constitute assertions about
+ the world.
+</menu>
+</p>
+
+<p>All assertions in PIL have to be interpreted as something that has happened.</p>
+
+<p> No assumption is made on how PIL Assertions are asserted. They can
+be can be made by any means: observing, guessing, lying, or any other
+way.</p>
+
+ </section>
+
+
+
+ <section id="data-model-concepts">
+
+
+<h2>Provenance Data Model</h2>
+
+<em>For each construct, I tried to follow the template: short
+definition/data structure components/properties/inference. </em>
+
+ <section>
+
+<h3>BOB</h3>
+
+<p>A <dfn id="dfn-bob">BOB</dfn> represents an identifiable situated entity.</p>
+
+<p>A BOB assertion
+ is about a situated entity, whose state and in the world are variant;
+ a BOB assertion is made at a particular point and is invariant.
+ It includes a set of characteristics, predicate-value pairs, which hold about the situated entity;
+</p>
+
+<p>A BOB assertion:
+<ul>
+<li> MAY contain an identity;</li>
+<li> contains a set of characteristics, predicate-value pairs.</li>
+</ul>
+
+
+<p>A situated entity MUST exist instantaneously or for a continuous time interval. If a BOB's characteristics hold over multiple time intervals, then we are dealing with multiple situated entities, each with their respective identity.</p>
+
+<p>Identity in a BOB assertion is OPTIONAL to allow for a so far unidentified (though still identifiable!) entities.<p>
+
+<p>There is no assumption that the set of characteristics is complete,
+that the characteristics are independent/orthogonal of each other, or
+that the characteristics hold for a continuous time interval.</p>
+
+
+
+ </section>
+
+ <section id="concept-ProcessExecution">
+
+<h3>Process Execution</h3>
+<p>A <dfn id="dfn-ProcessExecution">process execution</dfn> represents an identifiable activity that performs a piece of work.
+</p>
+
+<p>The activity that a process execution represents has a duration, delimited by its start and its end; hence, it occurs over a continuous time interval.</p>
+
+<p> A process execution assertion:
+<ul>
+<li> MAY contain an identity;
+<li> MAY contain a recipe link;
+<li> MAY contain a start time;
+<li> MAY contain an end time.
+</ul>
+</p>
+
+<p>Identity in a process execution assertion is OPTIONAL to allow for
+unidentified (though still identifiable!) process executions.<p>
+
+<p>From the assertion of a process execution, one can infer that the start precedes the end of the represented activity. </p>
+
+</section>
+
+<section id="concept-Generation">
+<h3>Generation<br>
+</h3>
+
+
+
+<p><dfn id="dfn-Generation">Generation</dfn> represents the creation of a new situated entity by an activity. This situated entity did not exist before creation.</p>
+
+<p>A Generation assertion:
+<ul>
+<li> contains a process execution;
+<li> contains a BOB, representing the situated entity that is consumed;
+<li> contains a role, distinguishing all possible generations of a same BOB by a same process execution;
+<li> MAY contain a "generation time", the time at which the situated entity was consumed.</p>
+</ul>
+</p>
+
+
+<p>A given BOB can be generated at most by one process execution.</p>
+
+<p>Given an assertion <b>Generated(x,pe,r)</b> or <b>Generated(x,pe,r,t)</b>, the
+activity denoted by <b>pe</b> and the entities used by <b>pe</b> dermine values of some of <b>x</b>'s characteristics.</p>
+
+<p>Given an assertion <b>Generated(x,pe,r)</b> or <b>Generated(x,pe,r,t)</b>, one can
+infer that the generation of the entity denoted by <b>x</b> precedes the end
+of <b>pe</b> and follows the beginning of <b>pe</b>.
+</p>
+
+</section>
+
+
+<section id="concept-Use">
+<h3>Use</h3>
+
+<p><dfn id="dfn-Use">Use</dfn> represents the consumption of a situated entity by an activity.</p>
+
+
+<p>A Use assertion:
+<ul>
+<li> contains a process execution;
+<li> contains a BOB, representing the situated entity that is used;
+<li> contains a role, distinguishing all possible uses of a same BOB by a same process execution;
+<li> MAY contain a "use time", the time at which the situated entity was used.</p>
+</ul>
+</p>
+
+<p>A given process execution is allowed to use a given BOB multiple
+times, but each of those uses must have a different role.</p>
+
+
+
+
+
+<p>Given an assertion <b>Use(pe,x,r)</b> or <b>Use(pe,x,r,t)</b>, the
+activity denoted by <b>pe</b> exploits/reads the values of some of
+<b>x</b>'s characteristics.</p>
+
+<p>Given an assertion <b>Use(pe,x,r)</b> or <b>Use(pe,x,r,t)</b>, one can
+infer that the use of the entity denoted by <b>x</b> precedes the end
+of <b>pe</b> and follows the beginning of <b>pe</b>. Furthermore, we
+can infer that the generation of the entity <b>x</b> always precedes
+its use. </p>
+
+</section>
+
+
+
+<section id="concept-Derivation">
+<h3>Derivation</h3>
+
+<p><dfn id="dfn-Derivation">Derivation</dfn> expresses that some situated entity is transformed from, created from, or affected by another situated entity. </p>
+
+<p>A Derivation assertion:
+<ul>
+<li> contains a BOB, denoting the generated situated entity;
+<li> contains a BOB, denoting the used situated entity.
+</ul>
+</p>
+
+
+
+<p>From an assertion <b>Derived(B,A)</b>, the values of some
+characteristics of B are at least partially determined by the values
+of some characteristics of A.</p>
+
+
+
+<p>Given an assertion <b>Derived(B,A)</b>, one can infer that the use
+of situated entity denoted by <b>A</b> precedes the generation of
+the situated entity denoted by <b>B</b>.
+
+</section>
+
+<section id="concept-Agent">
+<h3>Agent</h3>
+
+
+
+<p>An <dfn id="dfn-Agent">agent</dfn> is a situated entity capable of
+activity.</p>
+
+
+<p>A situated entity can be asserted to be an agent or can be inferred to be
+an agent by involvement in a process execution. </p>
+</section>
+
+<section id="concept-IVPOf">
+
+<h3>IVP of</h3>
+
+<p><dfn id="dfn-IVPof">IVP of</dfn> represents a relationship between two situated entities that are the same entity over some continuous time interval.</p>
+
+<p>An IVP of assertion, noted <b>IVPof(B,A)</b>:
+<ul>
+<li> contains a BOB, denoting ...
+<li> contains a BOB, denoting ...
+</ul>
+</p>
+
+
+<p>Let A and B be two entity states. An assertion "B is an IVP of A"
+indicates that, for its asserter, A and B represent the same entity in
+the world, and the entity states modelled by A and B are consistent.</p>
+
+
+<p>
+An assertion "B is an IVP of A" holds, <em>only if</em>:
+<ol>
+ <li>the characteristics A and B share must have equal values
+ </li><li>something that changed in A has become a characteristics of B
+</li></ol>
+Furthermore, B has invariant properties that have no correspondent for A
+</p>
+</section>
+
+<section id="concept-Time">
+<h3>Time</h3>
+
+<p><dfn id="dfn-time">Time</dfn> is defined according to ISO 8601.</p>
+
+<p>It is OPTIONAL to assert time in use, generation, and process execution.</p>
+
+
+</section>
+
+<section id="concept-RecipeLink">
+<h3>Recipe Link</h3>
+
+<p>A <dfn id="dfn-RecipeLink">recipe link</dfn> is an association between a process execution and a process specification that underpins the process execution.
+</p>
+
+<p>
+It is OPTIONAL to assert recipe links.
+</p>
+
+
+<p>
+Process specifications, as referred to by recipe links, are out of scope of this specification.
+</p>
+
+</section>
+
+<section id="concept-Role">
+<h3>Role</h3>
+
+<p>A <dfn id="dfn-Role">role</dfn> is the function assumed by a BOB or
+an agent with respect to a specific process execution.</p>
+
+<p>Use, Generation, and Control assertions MUST contain a role.</p>
+
+<p>There is at most one occurrence of a given role for all Use, Generation and Control assertions for a given process execution.</p>
+
+<p>A role's meaning is specific to the process execution it relates
+to. From this specification's viewpoint, a role's meaning is out of
+scope; thus, roles are considered as syntactic attributes.</p>
+
+
+
+
+
+</section>
+
+<section id="concept-Location">
+<h3>Location</h3>
+
+<p><dfn id="dfn-Location">Location</dfn> is an identifiable geographic place (ISO 19112). As such, there are numerous ways in which location can be specified, such as by a coordinate, address, landmark, row, column, and so forth.</p>
+
+
+
+<p>
+Location is an OPTIONAL characteristics of
+BOB, process execution, and agent.
+</p>
+
+
+
+</section>
+
+<section id="concept-OrderingOfProcesses">
+<h3>Ordering of Processes</h3>
+</section>
+
+<p>Various relationships of temporal nature exist between process executions.
+<dfn id="ControlOrdering">Control ordering</dfn> means that the end of
+a process execution precedes the start of another process execution,
+by a same agent.
+<dfn id="InformationOrdering">Information flow</dfn> means that a situated entity was generated by a process execution before it was used by another process execution.
+</p>
+
+<p>An assertion isScheduledAfter:
+<ul>
+<li> contains a process execution;
+<li> contains a process execution.
+</ul>
+</p>
+
+<p>An assertion isInformedBy:
+<ul>
+<li> contains a process execution;
+<li> contains a process execution.
+</ul>
+</p>
+
+
+<section id="concept-Revision">
+<h3>Revision</h3>
+
+<p> <dfn id="dfn-Revision">Revision</dfn> represents the creation of a situated entity considered to be a variant of another. </p>
+
+<p>An assertion isRevisionOf:
+<ul>
+<li> contains a BOB, denoting a older version of an entity;
+<li> contains a BOB, denoting a newer version of an entity;
+<li> MAY contain a responsible agent.
+</ul>
+</p>
+
+
+<p>
+From an assertion <b>isRevisionOf(new,old,ag)</b>, one can infer that:
+<ul>
+<li> The situated entity denoted by <b>new</b> is derived from the situated entity denoted by <b>old</b>
+<li> There exists a BOB <b>X</b>, such that:
+<ul>
+<li> <b>new</b> isIVP of <b>X</b>;
+<li> <b>old</b> isIVP of <b>X</b>;
+<li> <b>X</b> MAY have been asserted.
+</ul>
+</ul>
+</p>
+
+
+
+
+
+</section>
+
+<section id="concept-Participation">
+<h3>Participation</h3>
+</section>
+
+<section id="concept-Control">
+<h3>Control</h3>
+
+<p> <dfn id="dfn-Control">Control</dfn> represents the starting or ending of a process execution by an agent. </p>
+
+<p>An assertion <b>startedBy(pe,ag,r)</b>:
+<ul>
+<li> contains a process execution;
+<li> contains an agent;
+<li> contains a role.
+</ul>
+</p>
+
+<p>An assertion <b>endedBy(pe,ag,r)</b>:
+<ul>
+<li> contains a process execution;
+<li> contains an agent;
+<li> contains a role.
+</ul>
+</p>
+
+<p>
+The convenience assertion <b>controlledBy(pe,ag,r)</b> is
+equivalent to <b>startedBy(pe,ag,r)</b> and <b>endedBy(pe,ag,r)</b>.
+</p>
+
+<p><em> Can multiple agents control a process execution? If so, what does it mean to have a start/end time?</em> </p>
+
+</section>
+
+<section id="concept-ProvenanceContainer">
+<h3>Provenance Container</h3>
+</section>
+
+<section id="concept-ViewsOrAccount">
+<h3>View Or Account</h3>
+</section>
+
+<section id="concept-Collection">
+<h3>Collection</h3>
+</section>
+
+
+
+ </section>
+
+<section class="appendix">
+ <h2>Acknowledgements</h2>
+ <p>
+ WG membership to be listed here.
+ </p>
+ </section>
+
+ </body></html>