<?xml version="1.0"?>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns="http://www.owl-ontologies.com/unnamed.owl#"
  xml:base="http://www.owl-ontologies.com/unnamed.owl">
  <owl:Ontology rdf:about=""/>
  <owl:Class rdf:ID="Probe_parts_of_Liver">
    <owl:equivalentClass>
      <owl:Restriction>
        <owl:onProperty>
          <owl:TransitiveProperty rdf:ID="is_part_of"/>
        </owl:onProperty>
        <owl:someValuesFrom>
          <owl:Class rdf:ID="Liver"/>
        </owl:someValuesFrom>
      </owl:Restriction>
    </owl:equivalentClass>
    <rdfs:subClassOf>
      <owl:Class rdf:ID="Probe"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Probe_things_with_plasma_as_ingrdients">
    <owl:equivalentClass>
      <owl:Restriction>
        <owl:someValuesFrom>
          <owl:Class rdf:ID="Plasma"/>
        </owl:someValuesFrom>
        <owl:onProperty>
          <owl:TransitiveProperty rdf:ID="has_ingredient"/>
        </owl:onProperty>
      </owl:Restriction>
    </owl:equivalentClass>
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Probe"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Collective">
    <rdfs:subClassOf>
      <owl:Class rdf:ID="Domain_entity"/>
    </rdfs:subClassOf>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Collectives as described in the accompanying paper.  In a more complete ontology would be a subclass of Collection.

Collectives are not mathematical sets but collectives of grains, e.g. grains of sand on a beach, cells in a tissue, etc. </rdfs:comment>
  </owl:Class>
  <owl:Class rdf:ID="Beach">
    <rdfs:subClassOf>
      <owl:Class rdf:ID="Non_biological_object"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:about="#Domain_entity">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >A convnient top entithy separating off other purely implementational classes etc. 

The ontology below is a severely abbreviated version of a roughly DOLCE compatible upper ontology supplemented by collectivity.</rdfs:comment>
  </owl:Class>
  <owl:Class rdf:ID="Non_material_object">
    <rdfs:subClassOf>
      <owl:Class rdf:ID="Physical_entity"/>
    </rdfs:subClassOf>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Holes, lines, etc. After DOLCE
</rdfs:comment>
  </owl:Class>
  <owl:Class rdf:ID="Lobe_of_liver">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >A lobe of liver

Here chosen as a representative  determinate part. </rdfs:comment>
    <owl:equivalentClass>
      <owl:Class>
        <owl:intersectionOf rdf:parseType="Collection">
          <owl:Class rdf:ID="Lobe"/>
          <owl:Restriction>
            <owl:someValuesFrom>
              <owl:Class rdf:about="#Liver"/>
            </owl:someValuesFrom>
            <owl:onProperty>
              <owl:TransitiveProperty rdf:ID="is_determinate_part_of"/>
            </owl:onProperty>
          </owl:Restriction>
        </owl:intersectionOf>
      </owl:Class>
    </owl:equivalentClass>
  </owl:Class>
  <owl:Class rdf:ID="Mixture">
    <rdfs:subClassOf>
      <owl:Class rdf:ID="Amount_of_matter"/>
    </rdfs:subClassOf>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >See paper.  Anything that is a mixture of two or more amounts of matter
</rdfs:comment>
  </owl:Class>
  <owl:Class rdf:about="#Amount_of_matter">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >From DOLCE.  This version of the ontology takes a "Cognitivist" or "Multicative" view. </rdfs:comment>
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Physical_entity"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Probe_gross_parts_of_Liver">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Probe"/>
    </rdfs:subClassOf>
    <owl:equivalentClass>
      <owl:Restriction>
        <owl:someValuesFrom>
          <owl:Class rdf:about="#Liver"/>
        </owl:someValuesFrom>
        <owl:onProperty>
          <owl:ObjectProperty rdf:ID="is_gross_part_of"/>
        </owl:onProperty>
      </owl:Restriction>
    </owl:equivalentClass>
  </owl:Class>
  <owl:Class rdf:ID="Organ_part">
    <rdfs:subClassOf>
      <owl:Class rdf:ID="Biological_physical_object"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Substance">
    <rdfs:subClassOf rdf:resource="#Amount_of_matter"/>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >The distinction between "Substance" and "Tissue" is taken from the FMA.  </rdfs:comment>
  </owl:Class>
  <owl:Class rdf:ID="Body_part">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Biological_physical_object"/>
    </rdfs:subClassOf>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >From FMA
</rdfs:comment>
  </owl:Class>
  <owl:Class rdf:ID="Tissue">
    <rdfs:subClassOf rdf:resource="#Amount_of_matter"/>
  </owl:Class>
  <owl:Class rdf:ID="Liver_parenchymal_cell">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:ObjectProperty rdf:ID="is_grain_of"/>
        </owl:onProperty>
        <owl:someValuesFrom>
          <owl:Class>
            <owl:intersectionOf rdf:parseType="Collection">
              <owl:Class rdf:about="#Collective"/>
              <owl:Restriction>
                <owl:someValuesFrom>
                  <owl:Class rdf:ID="Liver_parencymal_tissue"/>
                </owl:someValuesFrom>
                <owl:onProperty>
                  <owl:ObjectProperty rdf:ID="is_ingredient_of"/>
                </owl:onProperty>
              </owl:Restriction>
            </owl:intersectionOf>
          </owl:Class>
        </owl:someValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >The cells that make up the liver parenchyma, that is the major tissue of the liver. </rdfs:comment>
    <rdfs:subClassOf>
      <owl:Class rdf:ID="Cell"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Blood">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Differentiated as a substance rather than tissue following the FMA</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#Substance"/>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:someValuesFrom>
          <owl:Class>
            <owl:intersectionOf rdf:parseType="Collection">
              <owl:Class rdf:ID="Proportion"/>
              <owl:Restriction>
                <owl:someValuesFrom>
                  <owl:Class rdf:about="#Plasma"/>
                </owl:someValuesFrom>
                <owl:onProperty>
                  <owl:ObjectProperty rdf:ID="is_of_ingredient"/>
                </owl:onProperty>
              </owl:Restriction>
            </owl:intersectionOf>
          </owl:Class>
        </owl:someValuesFrom>
        <owl:onProperty>
          <owl:ObjectProperty rdf:ID="has_proportion"/>
        </owl:onProperty>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:ObjectProperty rdf:about="#has_proportion"/>
        </owl:onProperty>
        <owl:someValuesFrom>
          <owl:Class>
            <owl:intersectionOf rdf:parseType="Collection">
              <owl:Class rdf:about="#Proportion"/>
              <owl:Restriction>
                <owl:onProperty>
                  <owl:ObjectProperty rdf:about="#is_of_ingredient"/>
                </owl:onProperty>
                <owl:someValuesFrom>
                  <owl:Class>
                    <owl:intersectionOf rdf:parseType="Collection">
                      <owl:Class rdf:about="#Collective"/>
                      <owl:Restriction>
                        <owl:onProperty>
                          <owl:ObjectProperty rdf:ID="has_grain"/>
                        </owl:onProperty>
                        <owl:allValuesFrom>
                          <owl:Class rdf:about="#Cell"/>
                        </owl:allValuesFrom>
                      </owl:Restriction>
                    </owl:intersectionOf>
                  </owl:Class>
                </owl:someValuesFrom>
              </owl:Restriction>
            </owl:intersectionOf>
          </owl:Class>
        </owl:someValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:about="#Plasma">
    <rdfs:subClassOf rdf:resource="#Substance"/>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:someValuesFrom>
          <owl:Class>
            <owl:intersectionOf rdf:parseType="Collection">
              <owl:Class rdf:about="#Proportion"/>
              <owl:Restriction>
                <owl:onProperty>
                  <owl:ObjectProperty rdf:ID="of_mixture"/>
                </owl:onProperty>
                <owl:someValuesFrom rdf:resource="#Blood"/>
              </owl:Restriction>
            </owl:intersectionOf>
          </owl:Class>
        </owl:someValuesFrom>
        <owl:onProperty>
          <owl:ObjectProperty rdf:ID="is_proportion"/>
        </owl:onProperty>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:about="#Liver">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:someValuesFrom>
          <owl:Class rdf:about="#Lobe"/>
        </owl:someValuesFrom>
        <owl:onProperty>
          <owl:TransitiveProperty rdf:ID="has_determinate_part"/>
        </owl:onProperty>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Class rdf:ID="Organ"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Liver_parenchyma">
    <rdfs:subClassOf rdf:resource="#Organ_part"/>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:TransitiveProperty rdf:about="#is_determinate_part_of"/>
        </owl:onProperty>
        <owl:someValuesFrom rdf:resource="#Liver"/>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:someValuesFrom>
          <owl:Class rdf:about="#Liver_parencymal_tissue"/>
        </owl:someValuesFrom>
        <owl:onProperty>
          <owl:ObjectProperty rdf:ID="is_constituted_by"/>
        </owl:onProperty>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Liver parenchyma - following the FMA, the portion of the liver that is made of up parenchymal tissue.   

This may be one more level than is necessary.  There is some question as to whether parencyma and parynchymal tissue need to be differentiated. 

To be discussed.  The separation is made here as a demonstration.  Eliding it would be easy. </rdfs:comment>
  </owl:Class>
  <owl:Class rdf:about="#Organ">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Biological_physical_object"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:about="#Liver_parencymal_tissue">
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:TransitiveProperty rdf:about="#has_ingredient"/>
        </owl:onProperty>
        <owl:someValuesFrom>
          <owl:Class>
            <owl:intersectionOf rdf:parseType="Collection">
              <owl:Class rdf:about="#Collective"/>
              <owl:Restriction>
                <owl:onProperty>
                  <owl:ObjectProperty rdf:about="#has_grain"/>
                </owl:onProperty>
                <owl:allValuesFrom rdf:resource="#Liver_parenchymal_cell"/>
              </owl:Restriction>
            </owl:intersectionOf>
          </owl:Class>
        </owl:someValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf rdf:resource="#Tissue"/>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:ObjectProperty rdf:ID="constitutes"/>
        </owl:onProperty>
        <owl:someValuesFrom rdf:resource="#Liver_parenchyma"/>
      </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Organelle">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Biological_physical_object"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:ID="Reified_relation">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >All relations represented as classes.  Here only proportions. </rdfs:comment>
    <rdfs:subClassOf rdf:resource="#Domain_entity"/>
  </owl:Class>
  <owl:Class rdf:about="#Cell">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Usual biological definition of cell.  Roughly from FMA. </rdfs:comment>
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Biological_physical_object"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:about="#Biological_physical_object">
    <rdfs:subClassOf>
      <owl:Class rdf:ID="Physical_object"/>
    </rdfs:subClassOf>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Biological physical objects. 

In many biomedical ontologies, the bio/non-bio distinction is useful and worth making.
</rdfs:comment>
  </owl:Class>
  <owl:Class rdf:about="#Probe">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Probes are classes included to test the ontology.  They are all defined and should have the correct entities under them when classified.

The debugging framework in Protege OWL can be set up to test probes systematically. </rdfs:comment>
  </owl:Class>
  <owl:Class rdf:ID="Probe_Ingredients_of_blood">
    <rdfs:subClassOf rdf:resource="#Probe"/>
    <owl:equivalentClass>
      <owl:Restriction>
        <owl:someValuesFrom rdf:resource="#Blood"/>
        <owl:onProperty>
          <owl:ObjectProperty rdf:about="#is_ingredient_of"/>
        </owl:onProperty>
      </owl:Restriction>
    </owl:equivalentClass>
  </owl:Class>
  <owl:Class rdf:ID="Blood_cell">
    <rdfs:subClassOf rdf:resource="#Cell"/>
  </owl:Class>
  <owl:Class rdf:ID="Organism">
    <rdfs:subClassOf rdf:resource="#Biological_physical_object"/>
  </owl:Class>
  <owl:Class rdf:about="#Proportion">
    <rdfs:subClassOf rdf:resource="#Reified_relation"/>
  </owl:Class>
  <owl:Class rdf:ID="Red_blood_cell">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Red blood cells

All red blood cells are part of, or at least begin as  as part of collectives that are a portion of blood. </rdfs:comment>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:someValuesFrom>
          <owl:Class>
            <owl:intersectionOf rdf:parseType="Collection">
              <owl:Class rdf:about="#Collective"/>
              <owl:Restriction>
                <owl:someValuesFrom>
                  <owl:Class>
                    <owl:intersectionOf rdf:parseType="Collection">
                      <owl:Class rdf:about="#Proportion"/>
                      <owl:Restriction>
                        <owl:someValuesFrom rdf:resource="#Blood"/>
                        <owl:onProperty>
                          <owl:ObjectProperty rdf:about="#of_mixture"/>
                        </owl:onProperty>
                      </owl:Restriction>
                    </owl:intersectionOf>
                  </owl:Class>
                </owl:someValuesFrom>
                <owl:onProperty>
                  <owl:ObjectProperty rdf:about="#is_proportion"/>
                </owl:onProperty>
              </owl:Restriction>
            </owl:intersectionOf>
          </owl:Class>
        </owl:someValuesFrom>
        <owl:onProperty>
          <owl:ObjectProperty rdf:about="#is_grain_of"/>
        </owl:onProperty>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf rdf:resource="#Blood_cell"/>
  </owl:Class>
  <owl:Class rdf:ID="Collective_of_Red_blood_cells">
    <owl:equivalentClass>
      <owl:Class>
        <owl:intersectionOf rdf:parseType="Collection">
          <owl:Class rdf:about="#Collective"/>
          <owl:Restriction>
            <owl:onProperty>
              <owl:ObjectProperty rdf:about="#is_grain_of"/>
            </owl:onProperty>
            <owl:allValuesFrom rdf:resource="#Red_blood_cell"/>
          </owl:Restriction>
        </owl:intersectionOf>
      </owl:Class>
    </owl:equivalentClass>
    <rdfs:subClassOf>
      <owl:Restriction>
        <owl:onProperty>
          <owl:ObjectProperty rdf:about="#is_proportion"/>
        </owl:onProperty>
        <owl:someValuesFrom>
          <owl:Class>
            <owl:intersectionOf rdf:parseType="Collection">
              <owl:Class rdf:about="#Proportion"/>
              <owl:Restriction>
                <owl:someValuesFrom rdf:resource="#Blood"/>
                <owl:onProperty>
                  <owl:ObjectProperty rdf:about="#of_mixture"/>
                </owl:onProperty>
              </owl:Restriction>
            </owl:intersectionOf>
          </owl:Class>
        </owl:someValuesFrom>
      </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >The collective of red blood cells

By axiom is said always to be a portion of a Blood.  This notion needs to be taken normatively or in the sense of persistent parthood, e.g. that collectives of red blood cells always arise as portions of blood. </rdfs:comment>
  </owl:Class>
  <owl:Class rdf:about="#Physical_entity">
    <rdfs:subClassOf rdf:resource="#Domain_entity"/>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Physical as opposed to non-physical entities.  This demo ontology omits non-physical entities. </rdfs:comment>
  </owl:Class>
  <owl:Class rdf:ID="White_blood_cell">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >As for red blood cell, but not filled in here for performance reasons</rdfs:comment>
    <rdfs:subClassOf rdf:resource="#Blood_cell"/>
  </owl:Class>
  <owl:Class rdf:about="#Physical_object">
    <rdfs:subClassOf rdf:resource="#Physical_entity"/>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Phsical objects with mass etc. </rdfs:comment>
  </owl:Class>
  <owl:Class rdf:ID="Probe_parts_of_blood">
    <owl:equivalentClass>
      <owl:Restriction>
        <owl:onProperty>
          <owl:TransitiveProperty rdf:about="#is_part_of"/>
        </owl:onProperty>
        <owl:someValuesFrom rdf:resource="#Blood"/>
      </owl:Restriction>
    </owl:equivalentClass>
    <rdfs:subClassOf rdf:resource="#Probe"/>
  </owl:Class>
  <owl:Class rdf:ID="Probe_determinate_parts_of_Liver">
    <owl:equivalentClass>
      <owl:Restriction>
        <owl:onProperty>
          <owl:TransitiveProperty rdf:about="#is_determinate_part_of"/>
        </owl:onProperty>
        <owl:someValuesFrom rdf:resource="#Liver"/>
      </owl:Restriction>
    </owl:equivalentClass>
    <rdfs:subClassOf rdf:resource="#Probe"/>
  </owl:Class>
  <owl:Class rdf:ID="grain_of_sand">
    <rdfs:subClassOf>
      <owl:Class rdf:about="#Non_biological_object"/>
    </rdfs:subClassOf>
  </owl:Class>
  <owl:Class rdf:about="#Non_biological_object">
    <rdfs:subClassOf rdf:resource="#Physical_object"/>
  </owl:Class>
  <owl:Class rdf:about="#Lobe">
    <rdfs:subClassOf rdf:resource="#Organ_part"/>
  </owl:Class>
  <owl:ObjectProperty rdf:about="#constitutes">
    <rdfs:domain rdf:resource="#Amount_of_matter"/>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Relation between Amount of matter and physical object in the cognitivist / multiplicative formulation of an ontology. </rdfs:comment>
    <rdfs:subPropertyOf>
      <owl:ObjectProperty rdf:about="#is_gross_part_of"/>
    </rdfs:subPropertyOf>
    <owl:inverseOf>
      <owl:ObjectProperty rdf:about="#is_constituted_by"/>
    </owl:inverseOf>
    <rdfs:range rdf:resource="#Physical_object"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="#is_constituted_by">
    <owl:inverseOf rdf:resource="#constitutes"/>
    <rdfs:range rdf:resource="#Amount_of_matter"/>
    <rdfs:domain rdf:resource="#Physical_object"/>
    <rdfs:subPropertyOf>
      <owl:ObjectProperty rdf:ID="has_gross_part"/>
    </rdfs:subPropertyOf>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="#is_ingredient_of">
    <rdfs:range>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:about="#Proportion"/>
          <owl:Class rdf:about="#Amount_of_matter"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:range>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#TransitiveProperty"/>
    <rdfs:domain>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:about="#Amount_of_matter"/>
          <owl:Class rdf:about="#Proportion"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:domain>
    <rdfs:subPropertyOf>
      <owl:ObjectProperty rdf:about="#is_gross_part_of"/>
    </rdfs:subPropertyOf>
    <owl:inverseOf>
      <owl:TransitiveProperty rdf:about="#has_ingredient"/>
    </owl:inverseOf>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="#is_gross_part_of">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#TransitiveProperty"/>
    <rdfs:subPropertyOf>
      <owl:TransitiveProperty rdf:about="#is_part_of"/>
    </rdfs:subPropertyOf>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >The parts including ingredients, constituent parts and determinatge parts, but not granular parts.
</rdfs:comment>
    <owl:inverseOf>
      <owl:ObjectProperty rdf:about="#has_gross_part"/>
    </owl:inverseOf>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="#is_proportion">
    <rdfs:domain rdf:resource="#Amount_of_matter"/>
    <rdfs:range rdf:resource="#Proportion"/>
    <rdfs:subPropertyOf rdf:resource="#is_ingredient_of"/>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    > NB problems with removing proportion from domain.
Domain and ranges constrained by universal properties in classes</rdfs:comment>
    <owl:inverseOf>
      <owl:ObjectProperty rdf:about="#is_of_ingredient"/>
    </owl:inverseOf>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="#has_grain">
    <owl:inverseOf>
      <owl:ObjectProperty rdf:about="#is_grain_of"/>
    </owl:inverseOf>
    <rdfs:subPropertyOf>
      <owl:TransitiveProperty rdf:ID="has_part"/>
    </rdfs:subPropertyOf>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="#of_mixture">
    <owl:inverseOf>
      <owl:ObjectProperty rdf:about="#has_proportion"/>
    </owl:inverseOf>
    <rdfs:domain rdf:resource="#Proportion"/>
    <rdfs:range rdf:resource="#Amount_of_matter"/>
    <rdfs:subPropertyOf rdf:resource="#is_ingredient_of"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="#is_grain_of">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >The relation between a grain and a collective.  

The boundary property that indicates a shift in level of collectivity ("granularity"). 

The loss of ndividual grains does not diminish the whole. Collectives have emergent properties not directly predictable from the grainsl. </rdfs:comment>
    <rdfs:subPropertyOf>
      <owl:TransitiveProperty rdf:about="#is_part_of"/>
    </rdfs:subPropertyOf>
    <owl:inverseOf rdf:resource="#has_grain"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="#has_proportion">
    <rdfs:domain rdf:resource="#Amount_of_matter"/>
    <rdfs:range rdf:resource="#Proportion"/>
    <owl:inverseOf rdf:resource="#of_mixture"/>
    <rdfs:subPropertyOf>
      <owl:TransitiveProperty rdf:about="#has_ingredient"/>
    </rdfs:subPropertyOf>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="inverse_relational_property">
    <owl:inverseOf>
      <owl:ObjectProperty rdf:ID="relational_property"/>
    </owl:inverseOf>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#TransitiveProperty"/>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >See documentation for relational properties. </rdfs:comment>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="#has_gross_part">
    <rdfs:subPropertyOf>
      <owl:TransitiveProperty rdf:about="#has_part"/>
    </rdfs:subPropertyOf>
    <owl:inverseOf rdf:resource="#is_gross_part_of"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#TransitiveProperty"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="has_part_directly">
    <rdfs:subPropertyOf>
      <owl:TransitiveProperty rdf:about="#has_part"/>
    </rdfs:subPropertyOf>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="#is_of_ingredient">
    <rdfs:range rdf:resource="#Amount_of_matter"/>
    <owl:inverseOf rdf:resource="#is_proportion"/>
    <rdfs:subPropertyOf>
      <owl:TransitiveProperty rdf:about="#has_ingredient"/>
    </rdfs:subPropertyOf>
    <rdfs:domain rdf:resource="#Proportion"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:about="#relational_property">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#TransitiveProperty"/>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Parent relational property - 

as opposed to refining properties (roughly modifiers) 

as opposed to 'attributive properties' the properties required to link entities to their attributes in translations of UML models - roughly but not always refining properties. </rdfs:comment>
    <owl:inverseOf rdf:resource="#inverse_relational_property"/>
  </owl:ObjectProperty>
  <owl:TransitiveProperty rdf:about="#has_part">
    <owl:inverseOf>
      <owl:TransitiveProperty rdf:about="#is_part_of"/>
    </owl:inverseOf>
    <rdfs:domain>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:about="#Physical_entity"/>
          <owl:Class rdf:about="#Proportion"/>
          <owl:Class rdf:about="#Collective"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:domain>
    <rdfs:range>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:about="#Collective"/>
          <owl:Class rdf:about="#Physical_entity"/>
          <owl:Class rdf:about="#Proportion"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:range>
    <rdfs:subPropertyOf rdf:resource="#inverse_relational_property"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#ObjectProperty"/>
  </owl:TransitiveProperty>
  <owl:TransitiveProperty rdf:about="#has_determinate_part">
    <owl:inverseOf>
      <owl:TransitiveProperty rdf:about="#is_determinate_part_of"/>
    </owl:inverseOf>
    <rdfs:subPropertyOf rdf:resource="#has_gross_part"/>
    <rdfs:range rdf:resource="#Physical_object"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#ObjectProperty"/>
    <rdfs:domain rdf:resource="#Physical_object"/>
  </owl:TransitiveProperty>
  <owl:TransitiveProperty rdf:about="#is_part_of">
    <rdfs:subPropertyOf rdf:resource="#relational_property"/>
    <rdfs:domain>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:about="#Physical_entity"/>
          <owl:Class rdf:about="#Proportion"/>
          <owl:Class rdf:about="#Collective"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:domain>
    <rdfs:range>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:about="#Physical_entity"/>
          <owl:Class rdf:about="#Proportion"/>
          <owl:Class rdf:about="#Collective"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:range>
    <owl:inverseOf rdf:resource="#has_part"/>
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >The parent generic part-whole relation

A transitive relation.  Neither antisymmetry nor reflexivity can be represented. </rdfs:comment>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#ObjectProperty"/>
  </owl:TransitiveProperty>
  <owl:TransitiveProperty rdf:about="#is_determinate_part_of">
    <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Countable discrete parts such that the whole is diminished by the loss of one of them.  See paper</rdfs:comment>
    <rdfs:range rdf:resource="#Physical_object"/>
    <rdfs:subPropertyOf rdf:resource="#is_gross_part_of"/>
    <rdfs:domain rdf:resource="#Physical_object"/>
    <owl:inverseOf rdf:resource="#has_determinate_part"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#ObjectProperty"/>
  </owl:TransitiveProperty>
  <owl:TransitiveProperty rdf:about="#has_ingredient">
    <owl:inverseOf rdf:resource="#is_ingredient_of"/>
    <rdfs:range>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:about="#Proportion"/>
          <owl:Class rdf:about="#Amount_of_matter"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:range>
    <rdfs:domain>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:about="#Proportion"/>
          <owl:Class rdf:about="#Amount_of_matter"/>
        </owl:unionOf>
      </owl:Class>
    </rdfs:domain>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#ObjectProperty"/>
    <rdfs:subPropertyOf rdf:resource="#has_gross_part"/>
  </owl:TransitiveProperty>
</rdf:RDF>

<!-- Created with Protege (with OWL Plugin 2.0 beta, Build 253)  http://protege.stanford.edu -->

