--- a/ontology/ProvenanceFormalModel.html Fri Oct 21 11:53:20 2011 +0100
+++ b/ontology/ProvenanceFormalModel.html Fri Oct 21 17:52:20 2011 +0100
@@ -195,7 +195,7 @@
It has been suggested that [[PROV-DM]] and PROV-O should instead use
the namespace <code>http://www.w3.org/ns/prov/</code> for terms that are
common in both models. This is <a
- href="http://www.w3.org/2011/prov/track/issues/90">PROV-ISSUE-90</a>
+ href="http://www.w3.org/2011/prov/track/issues/90">ISSUE-90</a>
</div>
</section>
</section> <!-- PROV Ontology -->
@@ -358,7 +358,8 @@
<div class='note'> According to the definitions of ProvenanceContainer and Account, both contain a set of provenance assertions and have an identifier. Hence, ProvenanceContainer class can also be used to create instances of accounts.
</div>
- <div class='issue'>Scope and Identifiers. This is <a href="http://www.w3.org/2011/prov/track/issues/81">ISSUE-81</a>.</div>
+ <div class='issue'>Scope and Identifiers.
+ This is <a href="http://www.w3.org/2011/prov/track/issues/81">ISSUE-81</a>.</div>
<section>
<h4>Modeling ProvenanceContainer and Account as RDF Graph</h4>
<p>Placeholder for Tim's description</p>
@@ -401,16 +402,16 @@
<pre class="example">
<rdf:Description rdf:about="http://www.example.com/crimeFile#BobAsAuthor">
<rdf:type rdf:resource="http://www.w3.org/ns/prov-o/EntityInRole"/>
- <prov:assumedBy rdf:resource="http://www.example.com/crimeFile#Bob"/>
+ <prov:wasAssumedBy rdf:resource="http://www.example.com/crimeFile#Bob"/>
<prov:assumedRole rdf:resource="http://www.example.com/crime#author"/>
</rdf:Description>
</pre>
</div>
<p>
- An <code>EntityInRole</code> can be used together with
+ An <code>EntityInRole</code> is used together with
<code>used</code>, <code>wasGeneratedBy</code> and
<code>wasControlledBy</code> to specify that the
- <code>assumedBy</code> entity
+ <code>wasAssumedBy</code> entity
participated in the relation in a given <em>role</em>. The role is
specified using <code>assumedRole</code>, referring to a
<code>Role</code>.
@@ -420,10 +421,10 @@
<rdf:Description rdf:about="http://www.example.com/crimeFile#pe1">
<prov:used rdf:parseType="Resource">
<rdf:type rdf:resource="http://www.w3.org/ns/prov-o/EntityInRole"/>
- <prov:assumedBy rdf:resource="http://www.example.com/crimeFile#Bob"/>
+ <prov:wasAssumedBy rdf:resource="http://www.example.com/crimeFile#Bob"/>
<prov:assumedRole rdf:resource="http://www.example.com/crime#author"/>
<crime:parameter>p1</crime:parameter>
- </prov:assumedRoleAt>
+ </prov:used>
</rdf:Description>
</pre>
</div>
@@ -618,7 +619,7 @@
two classes and their subclasses. This property can be
considered an abstract property, specialised by
<code>startedAt</code>, <code>endedAt</code>,
- <code>iwasGeneratedAt</code> and
+ <code>wasGeneratedAt</code> and
<code>assumedRoleAt</code> where the time MUST be specified as
an <code>time:Instant</code> or more specifically MAY be
specified using the PROV-O subclass <code>Time</code>
@@ -675,6 +676,9 @@
<code>Time</code> subclass by specifying the time using a
<code>time:inXSDDateTime</code> data property.
</p>
+ <p>
+ Note that by constraint
+ </p>
<div class="exampleOuter">
<pre class="example">
<rdf:Description rdf:about="http://www.example.com/crimeFile#e1">
@@ -686,11 +690,79 @@
</pre>
</div>
</section>
+ <section id="wasAssumedBy">
+ <h4>wasAssumedBy</h4>
+ <p>This object property defines which
+ <code>Entity</code> assumed a <em>role</em>, forming
+ a placeholder <code>EntityInRole</code> for use in
+ relations such as <code>used</code> and
+ <code>wasGeneratedBy</code>.
+ <code>wasAssumedBy</code> is a required, functional property of
+ <code>EntityInRole</code>, so an <code>EntityInRole</code>
+ is assumed by one and only one <code>Entity</code>.
+ <code>wasAssumedBy</code> is a subproperty of <code>wasComplementOf</code>.
+ </p>
+ <div class="exampleOuter">
+ <pre class="example">
+ <rdf:Description rdf:about="http://www.example.com/crimeFile#pe1">
+ <prov:used>
+ <rdf:Description rdf:about="http://www.example.com/crimeFile#BobAsAuthor">
+ <rdf:type rdf:resource="http://www.w3.org/ns/prov-o/EntityInRole"/>
+ <strong><prov:wasAssumedBy rdf:resource="http://www.example.com/crimeFile#Bob"/></strong>
+ <prov:assumedRole rdf:resource="http://www.example.com/crime#author"/>
+ <rdf:Description rdf:about="http://www.example.com/crimeFile#pe1">
+ <prov:used>
+ </rdf:Description>
+ </pre>
+ </div>
+ <p>
+ The example above corresponds to the PROV-ASN assertion:
+ <code>used(pe1, bob, qualifier(role="author")</code>
+ </p>
+ </section>
+ <section id="assumedRole">
+ <h4>assumedRole</h4>
+ <p>This object property defines which
+ <code>Role</code> has been assumed in an
+ <code>EntityInRole</code>. This property is applied in
+ relations such as <code>used</code> and
+ <code>wasGeneratedBy</code>.
+ </p>
+ <p>
+ The definition and interpretation of the <code>Role</code>
+ is outside the scope for PROV-O. The <code>Role</code> class is
+ a placeholder that can be extended and specialized.
+ </p>
+ <div class="exampleOuter">
+ <pre class="example">
+ <rdf:Description rdf:about="http://www.example.com/crimeFile#pe1">
+ <prov:used>
+ <rdf:Description rdf:about="http://www.example.com/crimeFile#BobAsAuthor">
+ <rdf:type rdf:resource="http://www.w3.org/ns/prov-o/EntityInRole"/>
+ <prov:wasAssumedBy rdf:resource="http://www.example.com/crimeFile#Bob"/>
+ <strong><prov:assumedRole rdf:resource="http://www.example.com/crime#author"/></strong>
+ <rdf:Description rdf:about="http://www.example.com/crimeFile#pe1">
+ <prov:used>
+ </rdf:Description>
+ </pre>
+ </div>
+ <p>
+ The example above corresponds to the PROV-ASN assertion:
+ <code>used(pe1, bob, qualifier(role="author")</code>
+ </p>
+ <div class="issue">
+ It has been suggested that roles should be represented as
+ classes, allowing hierarchies and composition of roles. <a
+ href="http://www.w3.org/TR/owl2-new-features/#F12:_Punning">OWL2 punning</a>
+ would allow both <code>:entityInRole rdf:type :ExampleRole</code> and
+ <code>:entityInRole prov:assumedRole :ExampleRole</code>.
+ </div>
+ </section>
<section id="assumedRoleAt">
<h4>assumedRoleAt</h4>
- <p> This object property defines the time when a
- <code>Entity</code> assumed a role, ie. when the
- <code>EntityInRole</code> was generated.
+ <p> This object property defines the first time an
+ <code>Entity</code> assumed a <em>role</em>, ie. when the
+ <code>EntityInRole</code> which <code>wasAssumedBy</code> was active.
This is intended to be used together with a
<code>used</code> statement to define the instant when an
entity was first used. The time is specified as an
@@ -698,16 +770,24 @@
<code>Time</code> subclass by specifying the time using a
<code>time:inXSDDateTime</code> data property.
</p>
+ <p>
+ According to the constraint <a
+ href="#provenance-constraint-on-wasgeneratedby-generation-unicity">generation-unicity</a>
+ from [[PROV-DM]] an entity can only be generated once by a single process
+ execution. This ontology further assumes that all
+ assertions about that generation must have the same
+ start time.
+ </p>
<div class="exampleOuter">
<pre class="example">
<rdf:Description rdf:about="http://www.example.com/crimeFile#pe1">
<prov:used rdf:parseType="Resource">
<rdf:type rdf:resource="http://www.w3.org/ns/prov-o/EntityInRole"/>
- <prov:assumedRoleAt rdf:parseType="Resource">
+ <strong><prov:assumedRoleAt rdf:parseType="Resource"></strong>
<rdf:type rdf:resource="http://www.w3.org/ns/prov-o/Time"/>
- <time:inXSDDateTime>2011-10-20T17:14:12Z</time:inXSDDateTime>
- </prov:assumedRoleAt>
- </prov:assumedRoleAt>
+ <strong><time:inXSDDateTime>2011-10-20T17:14:12Z</time:inXSDDateTime></strong>
+ </prov:assumedRoleAt>
+ </prov:used>
</rdf:Description>
</pre>
</div>
@@ -1172,17 +1252,13 @@
</dd>
<dt>wf:sawValue</dt>
<dd>
- A subproperty of <i>prov:wasComplementOf</i> which
+ A subproperty of <i>prov:wasAssumedBy</i> which
indicates that an <i>wf:Value</i> was
<i>wf:seenAtPort</i> within an
<i>wf:ValueAtPort</i>. This ValueAtPort is a complement of the
pointed at Value because one can consider this
entity to to have the same attributes, but in
addition the <i>wf:seenAtPort</i> property is fixed.
- <div class='issue'>Should be subproperty of
- not-yet-existing prov:assumedBy or similar -Stian -
- part of <a
- href="http://www.w3.org/2011/prov/track/issues/103">ISSUE-103</a></div>
</dd>
<dt>wf:wasSeenAtPort</dt>