<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE rdf:RDF [
          <!ENTITY xsd		"http://www.w3.org/2001/XMLSchema#" >
	  <!ENTITY rdf		"http://www.w3.org/1999/02/22-rdf-syntax-ns#" >
	  <!ENTITY rdfs		"http://www.w3.org/2000/01/rdf-schema#" >
	  <!ENTITY dc		"http://purl.org/dc/elements/1.1/" >
	  <!ENTITY owl		"http://www.w3.org/2002/07/owl#" >]>

<rdf:RDF
 xmlns="http://book.ontologymatching.org/exercise/admin.owl#"
 xml:base="http://book.ontologymatching.org/exercise/admin.owl#"
 xmlns:rdf	="&rdf;"
 xmlns:xsd	="&xsd;"
 xmlns:rdfs	="&rdfs;"
 xmlns:owl	="&owl;"
 xmlns:dc	="&dc;">

  <!-- ################### ONTOLOGY ################### -->

  <owl:Ontology rdf:about="">
    <dc:creator>Jérôme Euzenat</dc:creator>
    <dc:description>An administration ontology</dc:description>
    <dc:date>2008/04/15 (rev. 2010/08/02)</dc:date>
    <rdfs:label>University administration ontology</rdfs:label>
    <rdfs:comment>An exercise for the Ontology matching book.</rdfs:comment>
    <owl:versionInfo>$Id$</owl:versionInfo>
  </owl:Ontology>

  <!-- In OWL-DL all items must be declared -->
  <owl:DatatypeProperty rdf:about="&dc;creator" />
  <owl:DatatypeProperty rdf:about="&dc;contributor" />
  <owl:DatatypeProperty rdf:about="&dc;description" />
  <owl:DatatypeProperty rdf:about="&dc;date" />

  <!-- ################### CLASSES ################### -->

  <owl:Class rdf:ID="People">
    <rdfs:label xml:lang="en">person</rdfs:label>
    <rdfs:label xml:lang="fr">personne</rdfs:label>
    <rdfs:comment xml:lang="en">The people known of our institution</rdfs:comment>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#firstname" />
        <owl:minCardinality 
          rdf:datatype="&xsd;nonNegativeInteger">1</owl:minCardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#lastname" />
        <owl:minCardinality 
          rdf:datatype="&xsd;nonNegativeInteger">1</owl:minCardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#id" />
        <owl:maxCardinality 
          rdf:datatype="&xsd;nonNegativeInteger">1</owl:maxCardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>

  <owl:Class rdf:ID="Student">
    <rdfs:label xml:lang="en">student</rdfs:label>
    <rdfs:label xml:lang="fr">étudiant</rdfs:label>
    <rdfs:comment xml:lang="en">Student registered by our institution</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#People" />
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#attends" />
        <owl:minCardinality 
          rdf:datatype="&xsd;nonNegativeInteger">1</owl:minCardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>

  <owl:Class rdf:ID="Faculty">
    <rdfs:label xml:lang="en">faculty</rdfs:label>
    <rdfs:label xml:lang="en">full professor</rdfs:label>
    <rdfs:label xml:lang="fr">professeur</rdfs:label>
    <rdfs:comment xml:lang="en">Tenured professors by our institution</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#People" />
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#teaches" />
        <owl:minCardinality 
          rdf:datatype="&xsd;nonNegativeInteger">1</owl:minCardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty rdf:resource="#room" />
        <owl:minCardinality 
          rdf:datatype="&xsd;nonNegativeInteger">1</owl:minCardinality>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>

  <owl:Class rdf:ID="Science">
    <rdfs:label xml:lang="en">science professor</rdfs:label>
    <rdfs:label xml:lang="fr">professeur scientifique</rdfs:label>
    <rdfs:comment xml:lang="en">Professor in a science department.</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#Faculty" />
  </owl:Class>

  <owl:Class rdf:ID="Biology">
    <rdfs:label xml:lang="en">biology professor</rdfs:label>
    <rdfs:label xml:lang="fr">professeur de biologie</rdfs:label>
    <rdfs:comment xml:lang="en">Professor in a biology department.</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#Science" />
  </owl:Class>

  <owl:Class rdf:ID="ComputerScience">
    <rdfs:label xml:lang="en">computer science professor</rdfs:label>
    <rdfs:label xml:lang="fr">professeur d'informatique</rdfs:label>
    <rdfs:comment xml:lang="en">Professor in a computer science department.</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#Science" />
  </owl:Class>

  <owl:Class rdf:ID="Philosophy">
    <rdfs:label xml:lang="en">philosophy professor</rdfs:label>
    <rdfs:label xml:lang="fr">professeur de philosophie</rdfs:label>
    <rdfs:comment xml:lang="en">Professor in a phiosophy department.</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#Faculty" />
  </owl:Class>

  <owl:Class rdf:ID="Boxology">
    <rdfs:label xml:lang="en">boxology professor</rdfs:label>
    <rdfs:label xml:lang="fr">professeur de boxologie</rdfs:label>
    <rdfs:comment xml:lang="en">Professor in a boxology department.</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#Faculty" />
  </owl:Class>

  <owl:Class rdf:ID="Staff">
    <rdfs:label xml:lang="en">staff member</rdfs:label>
    <rdfs:label xml:lang="fr">ATOS</rdfs:label>
    <rdfs:comment xml:lang="en">Permenent employee supporting our organisation work.</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#People" />
  </owl:Class>

  <owl:Class rdf:ID="Course">
    <rdfs:label xml:lang="en">course</rdfs:label>
    <rdfs:label xml:lang="fr">cours</rdfs:label>
    <rdfs:comment xml:lang="en">A series of lectures on a particular topic.</rdfs:comment>
  </owl:Class>

  <owl:Class rdf:ID="Office">
    <rdfs:label xml:lang="en">office</rdfs:label>
    <rdfs:label xml:lang="fr">bureau</rdfs:label>
    <rdfs:comment xml:lang="en">A place where people can work individually and have small meetings.</rdfs:comment>
  </owl:Class>

  <!-- ################### PROPERTIES ################### -->

  <owl:DatatypeProperty rdf:ID="firstname">
    <rdfs:domain rdf:resource="#People" />
    <rdfs:range rdf:resource="&xsd;string" />
    <rdfs:label xml:lang="en">firstname</rdfs:label>
    <rdfs:comment xml:lang="en">The first name of a person.</rdfs:comment>
  </owl:DatatypeProperty>

  <owl:DatatypeProperty rdf:ID="lastname">
    <rdfs:domain rdf:resource="#People" />
    <rdfs:range rdf:resource="&xsd;string" />
    <rdfs:label xml:lang="en">lastname</rdfs:label>
    <rdfs:comment xml:lang="en">The last name of a person.</rdfs:comment>
  </owl:DatatypeProperty>

  <owl:DatatypeProperty rdf:ID="id">
    <rdfs:domain rdf:resource="#People" />
    <rdfs:range rdf:resource="&xsd;anyURI" />
    <rdfs:label xml:lang="en">id</rdfs:label>
    <rdfs:comment xml:lang="en">The unique id identifying one of our employees.</rdfs:comment>
  </owl:DatatypeProperty>

  <owl:DatatypeProperty rdf:ID="birthdate">
    <rdfs:domain rdf:resource="#People" />
    <rdfs:range rdf:resource="&xsd;date" />
    <rdfs:label xml:lang="en">birthdate</rdfs:label>
    <rdfs:comment xml:lang="en">The birth date of a person.</rdfs:comment>
  </owl:DatatypeProperty>

  <owl:ObjectProperty rdf:ID="attends">
    <rdfs:domain rdf:resource="#Student" />
    <rdfs:range rdf:resource="#Course" />
    <rdfs:label xml:lang="en">course</rdfs:label>
    <rdfs:comment xml:lang="en">A course that a student attends.</rdfs:comment>
  </owl:ObjectProperty>

  <owl:ObjectProperty rdf:ID="teaches">
    <rdfs:domain rdf:resource="#Faculty" />
    <rdfs:range rdf:resource="#Course" />
    <rdfs:label xml:lang="en">course</rdfs:label>
    <rdfs:comment xml:lang="en">A course that a professor teaches.</rdfs:comment>
  </owl:ObjectProperty>

  <owl:ObjectProperty rdf:ID="room">
    <rdfs:domain rdf:resource="#Faculty" />
    <rdfs:range rdf:resource="#Office" />
    <rdfs:label xml:lang="en">room</rdfs:label>
    <rdfs:comment xml:lang="en">The room assigned to a professor.</rdfs:comment>
  </owl:ObjectProperty>

  <!-- ################### INSTANCES ################### -->

  <ComputerScience rdf:about="#445">
    <rdfs:label>G. Cetriolo</rdfs:label>
    <firstname>G</firstname>
    <lastname>Cetriolo</lastname>
    <birthdate>04/07/1978</birthdate>
    <id>445</id>
  </ComputerScience>

  <Biology rdf:about="#1678">
    <rdfs:label>P. Pomodoro</rdfs:label>
    <firstname>P</firstname>
    <lastname>Pomodoro</lastname>
    <birthdate>01/08/1972</birthdate>
    <id>1678</id>
  </Biology>

  <ComputerScience rdf:about="#1998">
    <rdfs:label>Pr Carla Cipolla</rdfs:label>
    <firstname>C</firstname>
    <lastname>Cipolla</lastname>
    <birthdate>13/06/1977</birthdate>
    <id>1998</id>
  </ComputerScience>

  <Philosophy rdf:about="#128">
    <rdfs:label>P. Carciofo</rdfs:label>
    <firstname>P</firstname>
    <lastname>Carciofo</lastname>
    <birthdate>03/09/1982</birthdate>
    <id>128</id>
  </Philosophy>

  <Student rdf:about="#1664">
    <rdfs:label>C. Fragola</rdfs:label>
    <firstname>C</firstname>
    <lastname>Fragola</lastname>
    <birthdate>12/12/1985</birthdate>
    <id>1664</id>
  </Student>

  <Biology rdf:about="#88">
    <rdfs:label>A. Verdura</rdfs:label>
    <firstname>A</firstname>
    <lastname>Verdura</lastname>
    <birthdate>07/09/1981</birthdate>
    <id>88</id>
  </Biology>

  <Student rdf:about="#1178">
    <rdfs:label>S. Zucchini</rdfs:label>
    <firstname>S</firstname>
    <lastname>Zucchini</lastname>
    <birthdate>16/04/1987</birthdate>
    <id>1178</id>
  </Student>

  <ComputerScience rdf:about="#unknown">
    <rdfs:label>F. di Guava</rdfs:label>
    <firstname>F</firstname>
    <lastname>di Guava</lastname>
    <birthdate>23/02/1966</birthdate>
  </ComputerScience>

  <Staff rdf:about="#178">
    <rdfs:label>C. Melocoton</rdfs:label>
    <firstname>C</firstname>
    <lastname>Melocoton</lastname>
    <birthdate>14/01/1962</birthdate>
    <id>178</id>
  </Staff>

</rdf:RDF>
