<?xml version='1.0' encoding='ISO-8859-1'?>
<!DOCTYPE uridef[
  <!ENTITY rdf "http://www.w3.org/1999/02/22-rdf-syntax-ns">
  <!ENTITY rdfs "http://www.w3.org/2000/01/rdf-schema">
  <!ENTITY daml "http://www.daml.org/2001/03/daml+oil">
  <!ENTITY center-ont "http://www.daml.ri.cmu.edu/ont/homework/cmu-ri-center-ont">
  <!ENTITY project-ont "http://www.daml.ri.cmu.edu/ont/homework/cmu-ri-project-ont">
  <!ENTITY people-ont "http://www.daml.ri.cmu.edu/ont/homework/cmu-ri-people-ont">
  <!ENTITY publications-ont "http://www.daml.ri.cmu.edu/ont/homework/cmu-ri-publications-ont">
  <!ENTITY courses-ont "http://www.daml.ri.cmu.edu/ont/homework/cmu-ri-courses-ont">
  <!ENTITY DEFAULT "http://www.daml.ri.cmu.edu/ont/homework/cmu-ri-labgroup-ont">
  <!ENTITY THIS "http://www.daml.ri.cmu.edu/ont/homework/cmu-ri-labgroup-ont">
]>
 
<!--
This document uses entity types as a shorthand for URIs.
Download the source for a version with unexpanded entities.
                   -->
<rdf:RDF
  xmlns:rdf     ="&rdf;#"
  xmlns:rdfs    ="&rdfs;#"
  xmlns:daml    ="&daml;#"
  xmlns         ="&DEFAULT;#">

  <daml:Ontology about="">
    <daml:versionInfo>
      $Id: cmu-ri-labgroup-ont.daml, v 0.1 2001/08/27 12:18:07 terryp Exp $
    </daml:versionInfo>
    <rdfs:comment>
      Ontology desribing the information available for each of the labs
      or reserach groups at the Robotics Institute.  This is based on
      the data made available from the RI web site (www.ri.cmu.edu) at
      CMU.  This ontology partially fullfills the requirements for
      HomeWork 3 as part of the DARPA DAML effort.
      Contact terry@acm.org for details.
    </rdfs:comment>
    <daml:imports rdf:resource="&rdf;" />
    <daml:imports rdf:resource="&rdfs;" />
    <daml:imports rdf:resource="&daml;" />
  </daml:Ontology>
  
  <!--
    Note on naming convention:
    	class ids start with an upper case character
  	properties start with a lower case character
  -->
  
  <!-- ############ ########### ############ ############ ########### -->
  <!-- CLASS: Literal -->
  <!-- Define an equivalentTo class to simplfy definitions -->
  
  <rdfs:Class rdf:ID="Literal">
    <daml:equivalentTo rdf:resource="&rdfs;#Literal"/>
  </rdfs:Class>
  
  <!-- ############ ########### ############ ############ ########### -->
  <!-- CLASS: Lab -->
  <!-- Based on the Robotics Institute Home Pages. -->
  
  <rdfs:Class rdf:ID="Lab">
    <rdfs:label>Lab</rdfs:label>
    <rdfs:comment>
      A Robotics Institute Research Lab
    </rdfs:comment>
    <daml:equivalentTo rdf:resource="#Group"/>
  </rdfs:Class>
  
  <!-- ############ ########### ############ ############ ########### -->
  <!-- CLASS: Group -->
  <!-- Based on the Robotics Institute Home Pages. -->
  
  <rdfs:Class rdf:ID="Group">
    <rdfs:label>Group</rdfs:label>
    <rdfs:comment>
      A Robotics Institute Research Group
    </rdfs:comment>
    <daml:equivalentTo rdf:resource="#Lab"/>
  </rdfs:Class>
  
  <!-- ############ ########### ############ ############ ########### -->
  <!-- Properties -->

  <rdf:Property rdf:ID="hasAssociatedCenter">
    <rdfs:domain rdf:resource="#Lab"/>
    <rdfs:range rdf:resource="&center-ont;#Center"/>
  </rdf:Property>
  
  <rdf:Property rdf:ID="hasContact">
    <rdfs:domain rdf:resource="#Lab"/>
    <rdfs:range rdf:resource="&people-ont;#Member"/>
  </rdf:Property>
  
  <rdf:Property rdf:ID="hasDescription">
    <rdfs:domain rdf:resource="#Lab"/>
    <rdfs:range rdf:resource="#Literal"/>
  </rdf:Property>
  
  <rdf:Property rdf:ID="hasHead">
    <rdfs:domain rdf:resource="#Lab"/>
    <rdfs:range rdf:resource="&people-ont;#Member"/>
  </rdf:Property>
  
  <rdf:Property rdf:ID="hasMainURL">
   <rdfs:domain rdf:resource="#Lab"/>
   <rdfs:range rdf:resource="#Literal"/>
  </rdf:Property>
  
  <rdf:Property rdf:ID="hasMember">
    <rdfs:domain rdf:resource="#Lab"/>
    <rdfs:range rdf:resource="&people-ont;#Member"/>
  </rdf:Property>
  
  <rdf:Property rdf:ID="hasProject">
    <rdfs:domain rdf:resource="#Lab"/>
    <rdfs:range rdf:resource="&project-ont;#Project"/>
  </rdf:Property>
  
  <rdf:Property rdf:ID="hasPublication">
    <rdfs:domain rdf:resource="#Lab"/>
    <rdfs:range rdf:resource="&publications-ont;#CMU_Publication_Entry"/>
  </rdf:Property>
  
  <rdf:Property rdf:ID="hasRIURL">
    <rdfs:domain rdf:resource="#Lab"/>
    <rdfs:range rdf:resource="#Literal"/>
  </rdf:Property>
  
  <rdf:Property rdf:ID="hasTeachingMember">
    <rdfs:comment>
      This property refers to instances who are both members of the lab (i.e. the
      restriction on the property 'hasMember') and who are instructors (i.e. the
      restriction on the property 'hasInstructor') inferred from the course list
      ontology (such as cmu-ri-courses-00-01.daml)
    </rdfs:comment>
    <rdfs:domain rdf:resource="#Lab"/>
    <rdfs:range>
      <daml:Restriction>
        <daml:onProperty rdf:resource="#hasMember"/>
        <daml:toClass rdf:resource="&people-ont;#Member"/>
      </daml:Restriction>
      <daml:Restriction>
        <daml:onProperty rdf:resource="&courses-ont;#hasInstructor"/>
        <daml:toClass rdf:resource="&people-ont;#Member"/>
      </daml:Restriction>
    </rdfs:range>
  </rdf:Property>
  
  <rdf:Property rdf:ID="hasTitle">
    <rdfs:domain rdf:resource="#Lab"/>
    <rdfs:range rdf:resource="#Literal"/>
  </rdf:Property>
  
</rdf:RDF>
