experimental startedAt etc.
--- a/ontology/ProvenanceFormalModel.html Thu Oct 20 15:39:27 2011 +0100
+++ b/ontology/ProvenanceFormalModel.html Thu Oct 20 17:41:27 2011 +0100
@@ -324,6 +324,17 @@
</div>
</section>
+ <section id="time">
+ <h4>Time</h4>
+ <div><b>Class Description</b></div>
+ <p><code>Time</code> is subclass of <code>time:Instant</code>
+ from [[!OWL-TIME]] which requires that the time is defined
+ using the <code>time:inXSDDateTime</code> property. This
+ class used with <code>startedAt</code> and other subproperties
+ of <code>hasTemporalValue</code> ensures compatibility with <code>xsd:dateTime</code> literals
+ expressions in [[PROV-DM]] ASN and other serialisations.
+ c</p>
+ </section>
<section id="revision">
@@ -579,11 +590,109 @@
style="height: 3em" alt="followed links ProcessExecution to ProcessExecution" />
</section>
- <section id="hastemporalvalue">
+ <section id="hastemporalvalue">
<h4>hasTemporalValue</h4>
- <p> This object property links an instance of ProcessExecution or Entity with TemporalEntity thereby allowing association of time value with instances of the two classes and their subclasses
+ <p> This object property links an instance of
+ <code>ProcessExecution</code> or <code>Entity</code> with an
+ <code>time:TemporalEntity</code> from [[!OWL-TIME]], thereby
+ allowing association of time value with instances of the
+ 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>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>
+ which mandates the use of the
+ <code>time:inXSDDateTime</code> data property.
</p>
- </section>
+ </section>
+ <section id="startedAt">
+ <h4>startedAt</h4>
+ <p> This object property defines the time when a
+ <code>ProcessExecution</code> started. The time is specified as an
+ <code>time:Instant</code> [[!OWL-TIME]], which MAY be a
+ <code>Time</code> subclass by specifying the time using a
+ <code>time:inXSDDateTime</code> data property.
+ </p>
+ <div class="exampleOuter">
+ <pre class="example">
+ <rdf:Description rdf:about="http://www.example.com/crimeFile#pe1">
+ <prov:startedAt rdf:parseType="Resource">
+ <rdf:type rdf:resource="http://www.w3.org/ns/prov-o/Time"/>
+ <time:inXSDDateTime>2011-10-20T16:26:45Z</time:inXSDDateTime>
+ </prov:startedAt>
+ </rdf:Description>
+ </pre>
+ </div>
+ </section>
+ <section id="endedAt">
+ <h4>endedAt</h4>
+ <p> This object property defines the time when a
+ <code>ProcessExecution</code> ended. The time is specified as an
+ <code>time:Instant</code> [[!OWL-TIME]], which MAY be a
+ <code>Time</code> subclass by specifying the time using a
+ <code>time:inXSDDateTime</code> data property.
+ </p>
+ <div class="exampleOuter">
+ <pre class="example">
+ <rdf:Description rdf:about="http://www.example.com/crimeFile#pe1">
+ <prov:endedAt rdf:parseType="Resource">
+ <rdf:type rdf:resource="http://www.w3.org/ns/prov-o/Time"/>
+ <time:inXSDDateTime>2011-11-21T18:36:52Z</time:inXSDDateTime>
+ </prov:endedAt>
+ </rdf:Description>
+ </pre>
+ </div>
+ </section>
+ <section id="wasGeneratedAt">
+ <h4>wasGeneratedAt</h4>
+ <p> This object property defines the time when a
+ <code>Entity</code> was generated (as specified using
+ <code>wasGeneratedBy</code>), meaning the instant when the entity
+ first existed (and could be used by other process
+ executions). The time is specified as an
+ <code>time:Instant</code> [[!OWL-TIME]], which MAY be a
+ <code>Time</code> subclass by specifying the time using a
+ <code>time:inXSDDateTime</code> data property.
+ </p>
+ <div class="exampleOuter">
+ <pre class="example">
+ <rdf:Description rdf:about="http://www.example.com/crimeFile#e1">
+ <prov:wasGeneratedAt rdf:parseType="Resource">
+ <rdf:type rdf:resource="http://www.w3.org/ns/prov-o/Time"/>
+ <time:inXSDDateTime>2011-10-20T17:14:12Z</time:inXSDDateTime>
+ </prov:wasGeneratedAt>
+ </rdf:Description>
+ </pre>
+ </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.
+ 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
+ <code>time:Instant</code> [[!OWL-TIME]], which MAY be a
+ <code>Time</code> subclass by specifying the time using a
+ <code>time:inXSDDateTime</code> data property.
+ </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">
+ <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>
+ </rdf:Description>
+ </pre>
+ </div>
+ </section>
</section>
--- a/ontology/ProvenanceOntology.owl Thu Oct 20 15:39:27 2011 +0100
+++ b/ontology/ProvenanceOntology.owl Thu Oct 20 17:41:27 2011 +0100
@@ -23,6 +23,7 @@
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<owl:Ontology rdf:about="">
<owl:versionInfo rdf:datatype="&xsd;string">0.02</owl:versionInfo>
+ <owl:imports rdf:resource="&time" />
<rdfs:comment xml:lang="en"
>This document is published by the Provenance Working Group (http://www.w3.org/2011/prov/wiki/Main_Page).
@@ -68,6 +69,7 @@
<rdfs:label xml:lang="en">preceded</rdfs:label>
<rdfs:domain rdf:resource="ProcessExecution"/>
<rdfs:range rdf:resource="ProcessExecution"/>
+ <rdfs:subPropertyOf rdf:resource="&time;intervalAfter" />
</owl:ObjectProperty>
@@ -118,13 +120,43 @@
<owl:Class>
<owl:unionOf rdf:parseType="Collection">
<rdf:Description rdf:about="Entity"/>
- <rdf:Description rdf:about="ProcessExecution"/>
+ <rdf:Description rdf:about="ProcessExecution"/>
</owl:unionOf>
</owl:Class>
</rdfs:domain>
</owl:ObjectProperty>
-
+ <!-- adapted from components/Time.ttl and
+ components/Time/example-3-extension.ttl -->
+ <owl:ObjectProperty rdf:about="startedAt">
+ <rdfs:subPropertyOf rdf:resource="hasTemporalValue" />
+ <rdfs:subPropertyOf rdf:resource="&time;hasBeginning" />
+ <rdfs:domain rdf:resource="ProcessExecution"/>
+ <rdfs:range rdf:resource="&time;Instant"/>
+ </owl:ObjectProperty>
+ <owl:ObjectProperty rdf:about="endedAt">
+ <rdfs:subPropertyOf rdf:resource="hasTemporalValue" />
+ <rdfs:subPropertyOf rdf:resource="&time;hasEnd" />
+ <rdfs:domain rdf:resource="ProcessExecution"/>
+ <rdfs:range rdf:resource="&time;Instant"/>
+ </owl:ObjectProperty>
+ <owl:ObjectProperty rdf:about="wasGeneratedAt">
+ <rdfs:subPropertyOf rdf:resource="hasTemporalValue" />
+ <rdfs:subPropertyOf rdf:resource="&time;hasBeginning" />
+ <rdfs:domain rdf:resource="Entity"/>
+ <rdfs:range rdf:resource="&time;Instant"/>
+ </owl:ObjectProperty>
+ <owl:ObjectProperty rdf:about="assumedRoleAt">
+ <rdfs:subPropertyOf rdf:resource="hasTemporalValue" />
+ <rdfs:subPropertyOf rdf:resource="&time;hasBeginning" />
+ <rdfs:domain rdf:resource="EntityInRole"/>
+ <rdfs:range rdf:resource="&time;Instant"/>
+ </owl:ObjectProperty>
+
+ <owl:Class rdf:about="Time">
+ <rdfs:subClassOf rdf:resource="&time;Instant" />
+ </owl:Class>
+
<!-- http://www.w3.org/ns/prov-o/used -->
@@ -230,24 +262,6 @@
- <!--
- ///////////////////////////////////////////////////////////////////////////////////////
- //
- // Data properties
- //
- ///////////////////////////////////////////////////////////////////////////////////////
- -->
-
-
-
-
- <!-- http://www.w3.org/2006/time#inXSDDateTime -->
-
- <owl:DatatypeProperty rdf:about="&time;inXSDDateTime">
- <rdfs:range rdf:resource="&xsd;dateTime"/>
- <rdfs:domain rdf:resource="&time;Instant"/>
- </owl:DatatypeProperty>
-
<!--
@@ -263,36 +277,6 @@
<!-- http://www.w3.org/2006/time#Instant -->
- <owl:Class rdf:about="&time;Instant">
- <rdfs:subClassOf rdf:resource="&time;TemporalEntity"/>
- </owl:Class>
-
-
-
- <!-- http://www.w3.org/2006/time#Interval -->
-
- <owl:Class rdf:about="&time;Interval">
- <rdfs:subClassOf rdf:resource="&time;TemporalEntity"/>
- </owl:Class>
-
-
-
- <!-- http://www.w3.org/2006/time#TemporalEntity -->
-
- <owl:Class rdf:about="&time;TemporalEntity">
- <owl:equivalentClass>
- <owl:Class>
- <owl:unionOf rdf:parseType="Collection">
- <rdf:Description rdf:about="&time;Instant"/>
- <rdf:Description rdf:about="&time;Interval"/>
- </owl:unionOf>
- </owl:Class>
- </owl:equivalentClass>
- <rdfs:comment xml:lang="en"
- >Time represents temporal information about entities in the Provenance model.</rdfs:comment>
- </owl:Class>
-
-
<!-- http://www.w3.org/ns/prov-o/Agent -->