<?xml version="1.0"?>
<!DOCTYPE rdf:RDF [
   <!ENTITY pso    "http://pervasive.semanticweb.org/ont/2004/01/">
   <!ENTITY rdf    "http://www.w3.org/1999/02/22-rdf-syntax-ns#">
   <!ENTITY rdfs   "http://www.w3.org/2000/01/rdf-schema#">
   <!ENTITY xsd    "http://www.w3.org/2001/XMLSchema#"> 
   <!ENTITY owl    "http://www.w3.org/2002/07/owl#"> 
   <!ENTITY tme    "http://pervasive.semanticweb.org/ont/2004/01/time#">
   ]>
<!--
    This ontology document is licensed under the Creative Commons
    Attribution License. To view a copy of this license, visit 
    http://creativecommons.org/licenses/by/1.0/ or send a letter to
    Creative Commons, 559 Nathan Abbott Way, Stanford, California
    94305, USA. 
-->
<rdf:RDF
   xmlns:rdf  = "&rdf;"
   xmlns:rdfs = "&rdfs;"
   xmlns:owl  = "&owl;"
   xmlns:xsd  = "&xsd;"
   xmlns      = "&tme;"
   xml:base   = "http://pervasive.semanticweb.org/ont/2004/01/time">

  <owl:Ontology rdf:about="&pso;time">
    <owl:versionInfo>cvs:$Revision: 1.2 $, $Date: 2004/01/30 22:39:49 $</owl:versionInfo>
    <rdfs:label>PERVASIVE-SO Time Ontology</rdfs:label>
    <rdfs:comment></rdfs:comment>     
  </owl:Ontology>
  
  <owl:Class rdf:ID="Instant">
    <rdfs:label>Instant</rdfs:label>
    <rdfs:subClassOf rdf:resource="#TemporalEntity"/>
    <rdfs:subClassOf rdf:resource="#InstantThing"/>
  </owl:Class>
  
  <owl:Class rdf:ID="Interval">
    <rdfs:label>Interval</rdfs:label>
    <rdfs:subClassOf rdf:resource="#TemporalEntity"/>
    <rdfs:subClassOf rdf:resource="#IntervalThing"/>
  </owl:Class>
  
  <owl:Class rdf:ID="InstantEvent">
    <rdfs:label>InstantEvent</rdfs:label>
    <rdfs:subClassOf rdf:resource="#InstantThing"/>
    <rdfs:subClassOf rdf:resource="#Event"/>
  </owl:Class>
  
  <owl:Class rdf:ID="IntervalEvent">
    <rdfs:label>IntervalEvent</rdfs:label>
    <rdfs:subClassOf rdf:resource="#IntervalThing"/>
    <rdfs:subClassOf rdf:resource="#Event"/>
  </owl:Class>
  
  <owl:Class rdf:ID="TemporalEntity">    
    <rdfs:label>TemporalEntity</rdfs:label>
    <owl:unionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Instant"/>
      <owl:Class rdf:about="#Interval"/>
    </owl:unionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="Event">    
    <rdfs:label>Event</rdfs:label>
    <owl:unionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#InstantEvent"/>
      <owl:Class rdf:about="#IntervalEvent"/>
    </owl:unionOf>
  </owl:Class>
  
  <owl:Class rdf:ID="InstantThing">
    <rdfs:label>InstantThing</rdfs:label>
    <owl:unionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Instant"/>
      <owl:Class rdf:about="#InstantEvent"/>
    </owl:unionOf>
    <rdfs:subClassOf rdf:resource="#TemporalThing"/>
  </owl:Class>

  <owl:Class rdf:ID="IntervalThing">    
    <rdfs:label>IntervalThing</rdfs:label>
    <owl:unionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#Interval"/>
      <owl:Class rdf:about="#IntervalEvent"/>
    </owl:unionOf>
    <rdfs:subClassOf rdf:resource="#TemporalThing"/>
  </owl:Class>

  <owl:Class rdf:ID="TemporalThing">    
    <rdfs:label>TemporalThing</rdfs:label>
    <owl:unionOf rdf:parseType="Collection">
      <owl:Class rdf:about="#InstantThing"/>
      <owl:Class rdf:about="#IntervalThing"/>
    </owl:unionOf>
  </owl:Class>

  <owl:DatatypeProperty rdf:ID="dateTimeValue">
    <rdfs:label>dateTimeValue</rdfs:label>
    <rdfs:domain rdf:resource="#InstantThing"/>
    <rdfs:range rdf:resource="&xsd;dateTime"/>

    <rdf:type rdf:resource="&owl;FunctionalProperty" />
  </owl:DatatypeProperty>

  <owl:DatatypeProperty rdf:ID="startDateTimeValue">
    <rdfs:label>startDateTimeValue</rdfs:label>
    <rdfs:domain rdf:resource="#IntervalThing"/>
    <rdfs:range rdf:resource="&xsd;dateTime"/> 

   <rdf:type rdf:resource="&owl;FunctionalProperty" />
  </owl:DatatypeProperty> 

  <owl:DatatypeProperty rdf:ID="endDateTimeValue">
    <rdfs:label>endDateTimeValue</rdfs:label>
    <rdfs:domain rdf:resource="#IntervalThing"/>
    <rdfs:range rdf:resource="&xsd;dateTime"/>

   <rdf:type rdf:resource="&owl;FunctionalProperty" />
  </owl:DatatypeProperty>

</rdf:RDF>
