<?xml version="1.0"?>
<!DOCTYPE rdf:RDF [
   <!ENTITY cobra  "http://cobra.umbc.edu/ont/2004/05/">   
   <!ENTITY soupa  "http://pervasive.semanticweb.org/ont/dev/">   
   <!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 act    "http://pervasive.semanticweb.org/ont/dev/action#">
   <!ENTITY per    "http://pervasive.semanticweb.org/ont/dev/person#">
   <!ENTITY agt    "http://pervasive.semanticweb.org/ont/dev/agent#">
   <!ENTITY pol    "http://pervasive.semanticweb.org/ont/dev/policy#">
   <!ENTITY loc    "http://pervasive.semanticweb.org/ont/dev/location#">
   <!ENTITY ebact  "http://cobra.umbc.edu/ont/2004/05/ebiquity-actions#">
   <!ENTITY ebm    "http://cobra.umbc.edu/ont/2004/05/ebiquity-meetings#">
   ]>
<!--
    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:per    = "&per;"
   xmlns:pol    = "&pol;"
   xmlns:act    = "&act;"
   xmlns:agt    = "&agt;"
   xmlns:loc    = "&loc;"
   xmlns:ebm    = "&ebm;"
   xmlns        = "&ebact;"
   xml:base     = "http://cobra.umbc.edu/ont/2004/05/ebiquity-actions">

  <owl:Ontology rdf:about="&cobra;ebiquity-actions">
    <owl:versionInfo>cvs:$Revision: 1.2 $, $Date: 2004/05/25 19:52:23 $</owl:versionInfo>
    <rdfs:label>UMBC eBiquity Group Meeting Ontology</rdfs:label>
    <rdfs:comment></rdfs:comment>      
    <owl:imports rdf:resource="&soupa;policy"/>
    <owl:imports rdf:resource="&soupa;person"/>
    <owl:imports rdf:resource="&soupa;action"/>
    <owl:imports rdf:resource="&soupa;location"/>
    <owl:imports rdf:resource="&cobra;ebiquity-meetings"/>
  </owl:Ontology>

  <owl:Class rdf:ID="Communicate">
     <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:about="&act;Action"/>

        <owl:Restriction>
           <owl:onProperty rdf:resource="&act;actor"/>
           <owl:allValuesFrom>
              <owl:Class>
                 <owl:unionOf rdf:parseType="Collection">
                    <owl:Class rdf:about="&per;Person"/>
                    <owl:Class rdf:about="&agt;Agent"/>
                 </owl:unionOf>
              </owl:Class>
           </owl:allValuesFrom>
        </owl:Restriction>          

        <owl:Restriction>
           <owl:onProperty rdf:resource="&act;actor"/>
           <owl:cardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:cardinality>
        </owl:Restriction>          

        <owl:Restriction>
           <owl:onProperty rdf:resource="&act;recipient"/>
           <owl:allValuesFrom>
              <owl:Class>
                 <owl:unionOf rdf:parseType="Collection">
                    <owl:Class rdf:about="&per;Person"/>
                    <owl:Class rdf:about="&agt;Agent"/>
                 </owl:unionOf>
              </owl:Class>
           </owl:allValuesFrom>
        </owl:Restriction>
        
        <owl:Restriction>
           <owl:onProperty rdf:resource="&act;recipient"/>
           <owl:cardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:cardinality>
        </owl:Restriction>          

        <owl:Restriction>
           <owl:onProperty rdf:resource="&act;target"/>
           <owl:someValuesFrom rdf:resource="#Information"/>
        </owl:Restriction>                    
     </owl:intersectionOf>
  </owl:Class>


  <owl:Class rdf:ID="BrokerCommunicateAction">
     <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:about="#Communicate"/>
       
        <owl:Restriction>
           <owl:onProperty rdf:resource="&act;actor"/>
           <owl:allValuesFrom rdf:resource="&ebm;ContextBroker"/>
        </owl:Restriction>

        <owl:Restriction>
           <owl:onProperty rdf:resource="&act;actor"/>
           <owl:cardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:cardinality>
        </owl:Restriction>    
     </owl:intersectionOf>
  </owl:Class>
  

  <owl:Class rdf:ID="Information"/>

  <owl:Class rdf:about="&loc;LocationContext">
     <rdfs:subClassOf rdf:resource="#Information"/>
  </owl:Class>

  <owl:Class rdf:about="&per;ContactProfile">
     <rdfs:subClassOf rdf:resource="#Information"/>
  </owl:Class>

  <owl:Class rdf:ID="ShareLocationInfo">
     <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:about="#BrokerCommunicateAction"/>
       
        <owl:Restriction>
           <owl:onProperty rdf:resource="&act;target"/>
           <owl:someValuesFrom rdf:resource="&loc;LocationContext"/>
        </owl:Restriction>
     </owl:intersectionOf>
  </owl:Class>


  <owl:Class rdf:ID="ShareContactInfo">
     <owl:intersectionOf rdf:parseType="Collection">
        <owl:Class rdf:about="#BrokerCommunicateAction"/>
        
        <owl:Restriction>
           <owl:onProperty rdf:resource="&act;target"/>
           <owl:someValuesFrom rdf:resource="&per;ContactProfile"/>
        </owl:Restriction>
     </owl:intersectionOf>
  </owl:Class>
  
</rdf:RDF>
