Warning:
This wiki has been archived and is now read-only.

PrimerExampleOWLXML

From OWL
Jump to: navigation, search
<?xml version="1.0"?>
 
<!DOCTYPE Ontology [
    <!ENTITY owl "http://www.w3.org/2002/07/owl#" >
    <!ENTITY owl11 "http://www.w3.org/2006/12/owl11#" >
    <!ENTITY xsd "http://www.w3.org/2001/XMLSchema#" >
    <!ENTITY f "http://example.com/owl/families#" >
    <!ENTITY g "http://example.com/owl2/families#" >
    <!ENTITY dc "http://purl.org/dc/elements/1.1/#" >
]>
 
<Ontology xml:base="http://www.w3.org/2006/12/owl11-xml#"
     xmlns="http://www.w3.org/2006/12/owl11-xml#"
     xmlns:owl="http://www.w3.org/2002/07/owl#"
     xmlns:owl11="http://www.w3.org/2006/12/owl11#"
     xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
     xmlns:f="http://example.com/owl/families#"
     xmlns:g="http://example.com/owl2/families#"
     xmlns:dc="http://purl.org/dc/elements/1.1/#"
     URI="http://example.com/owl/families">
 
    <Import URI="http://example.com/owl2/families.owl" />

    <Declaration>
        <ObjectProperty URI="&f;hasAncestor"/>
    </Declaration>
    <IrreflexiveObjectProperty>
        <ObjectProperty URI="&f;hasAncestor"/>
    </IrreflexiveObjectProperty>
    <TransitiveObjectProperty>
        <ObjectProperty URI="&f;hasAncestor"/>
    </TransitiveObjectProperty>

    <Declaration>
        <ObjectProperty URI="&f;hasChild"/>
    </Declaration>
    <ObjectPropertyDomain>
        <ObjectProperty URI="&f;hasChild"/>
        <OWLClass URI="&f;Person"/>
    </ObjectPropertyDomain>
    <ObjectPropertyRange>
        <ObjectProperty URI="&f;hasChild"/>
        <OWLClass URI="&f;Person"/>
    </ObjectPropertyRange>
    <SubObjectPropertyOf>
        <ObjectProperty URI="&f;hasChild"/>
        <ObjectProperty URI="&f;hasAncestor"/>
    </SubObjectPropertyOf>
    <EquivalentObjectProperties>
        <ObjectProperty URI="&f;hasChild"/>
        <ObjectProperty URI="&g;child"/>
    </EquivalentObjectProperties>

    <Declaration>
        <ObjectProperty URI="&f;hasDaughter"/>
    </Declaration>
    <ObjectPropertyDomain>
        <ObjectProperty URI="&f;hasDaughter"/>
        <OWLClass URI="&f;Person"/>
    </ObjectPropertyDomain>
    <ObjectPropertyDomain>
        <ObjectProperty URI="&f;hasDaughter"/>
        <OWLClass URI="&f;Parent"/>
    </ObjectPropertyDomain>
    <ObjectPropertyRange>
        <ObjectProperty URI="&f;hasDaughter"/>
        <OWLClass URI="&f;Person"/>
    </ObjectPropertyRange>
    <ObjectPropertyRange>
        <ObjectProperty URI="&f;hasDaughter"/>
        <ObjectIntersectionOf>
            <OWLClass URI="&f;Person"/>
            <ObjectHasValue>
                <ObjectProperty URI="&f;hasGender"/>
                <Individual URI="&f;female"/>
            </ObjectHasValue>
        </ObjectIntersectionOf>
    </ObjectPropertyRange>
    <SubObjectPropertyOf>
        <ObjectProperty URI="&f;hasDaughter"/>
        <ObjectProperty URI="&f;hasChild"/>
    </SubObjectPropertyOf>
    <SubObjectPropertyOf>
        <SubObjectPropertyChain>
            <ObjectProperty URI="&f;hasSpouse"/>
            <ObjectProperty URI="&f;hasDaughter"/>
        </SubObjectPropertyChain>
        <ObjectProperty URI="&f;hasDaughter"/>
    </SubObjectPropertyOf>

    <Declaration>
        <ObjectProperty URI="&f;hasGender"/>
    </Declaration>

    <Declaration>
        <ObjectProperty URI="&f;hasHusband"/>
    </Declaration>
    <InverseObjectProperties>
        <ObjectProperty URI="&f;hasHusband"/>
        <ObjectProperty URI="&f;hasWife"/>
    </InverseObjectProperties>

    <Declaration>
        <ObjectProperty URI="&f;hasSon"/>
    </Declaration>
    <ObjectPropertyDomain>
        <ObjectProperty URI="&f;hasSon"/>
        <OWLClass URI="&f;Person"/>
    </ObjectPropertyDomain>
    <ObjectPropertyDomain>
        <ObjectProperty URI="&f;hasSon"/>
        <OWLClass URI="&f;Parent"/>
    </ObjectPropertyDomain>
    <ObjectPropertyRange>
        <ObjectProperty URI="&f;hasSon"/>
        <OWLClass URI="&f;Person"/>
    </ObjectPropertyRange>
    <ObjectPropertyRange>
        <ObjectProperty URI="&f;hasSon"/>
        <ObjectIntersectionOf>
            <ObjectHasValue>
                <ObjectProperty URI="&f;hasGender"/>
                <Individual URI="&f;male"/>
            </ObjectHasValue>
            <OWLClass URI="&f;Person"/>
        </ObjectIntersectionOf>
    </ObjectPropertyRange>
    <SubObjectPropertyOf>
        <ObjectProperty URI="&f;hasSon"/>
        <ObjectProperty URI="&f;hasChild"/>
    </SubObjectPropertyOf>
    <DisjointObjectProperties>
        <ObjectProperty URI="&f;hasSon"/>
        <ObjectProperty URI="&f;hasDaughter"/>
    </DisjointObjectProperties>
    <SubObjectPropertyOf>
        <SubObjectPropertyChain>
            <ObjectProperty URI="&f;hasSpouse"/>
            <ObjectProperty URI="&f;hasSon"/>
        </SubObjectPropertyChain>
        <ObjectProperty URI="&f;hasSon"/>
    </SubObjectPropertyOf>

    <Declaration>
        <ObjectProperty URI="&f;hasSpouse"/>
    </Declaration>
    <IrreflexiveObjectProperty>
        <ObjectProperty URI="&f;hasSpouse"/>
    </IrreflexiveObjectProperty>
    <SymmetricObjectProperty>
        <ObjectProperty URI="&f;hasSpouse"/>
    </SymmetricObjectProperty>

    <Declaration>
        <ObjectProperty URI="&f;hasWife"/>
    </Declaration>
    <AsymmetricObjectProperty>
        <ObjectProperty URI="&f;hasWife"/>
    </AsymmetricObjectProperty>
    <FunctionalObjectProperty>
        <ObjectProperty URI="&f;hasWife"/>
    </FunctionalObjectProperty>
    <InverseFunctionalObjectProperty>
        <ObjectProperty URI="&f;hasWife"/>
    </InverseFunctionalObjectProperty>
    <IrreflexiveObjectProperty>
        <ObjectProperty URI="&f;hasWife"/>
    </IrreflexiveObjectProperty>
    <ObjectPropertyDomain>
        <ObjectProperty URI="&f;hasWife"/>
        <OWLClass URI="&f;Person"/>
    </ObjectPropertyDomain>
    <ObjectPropertyDomain>
        <ObjectProperty URI="&f;hasWife"/>
        <OWLClass URI="&f;Man"/>
    </ObjectPropertyDomain>
    <ObjectPropertyRange>
        <ObjectProperty URI="&f;hasWife"/>
        <OWLClass URI="&f;Person"/>
    </ObjectPropertyRange>
    <ObjectPropertyRange>
        <ObjectProperty URI="&f;hasWife"/>
        <OWLClass URI="&f;Woman"/>
    </ObjectPropertyRange>
    <SubObjectPropertyOf>
        <ObjectProperty URI="&f;hasWife"/>
        <ObjectProperty URI="&f;loves"/>
    </SubObjectPropertyOf>
    <SubObjectPropertyOf>
        <ObjectProperty URI="&f;hasWife"/>
        <ObjectProperty URI="&f;hasSpouse"/>
    </SubObjectPropertyOf>

    <Declaration>
        <ObjectProperty URI="&f;loves"/>
    </Declaration>
    <ObjectPropertyDomain>
        <ObjectProperty URI="&f;loves"/>
        <OWLClass URI="&f;Person"/>
    </ObjectPropertyDomain>

    <Declaration>
        <DataProperty URI="&f;hasAge"/>
    </Declaration>
    <FunctionalDataProperty>
        <DataProperty URI="&f;hasAge"/>
    </FunctionalDataProperty>
    <DataPropertyDomain>
        <DataProperty URI="&f;hasAge"/>
        <OWLClass URI="&f;Person"/>
    </DataPropertyDomain>
    <DataPropertyRange>
        <DataProperty URI="&f;hasAge"/>
        <Datatype URI="&xsd;integer"/>
    </DataPropertyRange>
    <EquivalentDataProperties>
        <DataProperty URI="&f;hasAge"/>
        <DataProperty URI="&g;age"/>
    </EquivalentDataProperties>

    <Declaration>
        <OWLClass URI="&f;Adult"/>
    </Declaration>
    <EquivalentClasses>
        <OWLClass URI="&f;Adult"/>
        <ObjectIntersectionOf>
            <DataSomeValuesFrom>
                <DataProperty URI="&f;hasAge"/>
                <DatatypeRestriction>
                    <Datatype URI="&xsd;integer"/>
                    <DatatypeFacetRestriction facet="&owl11;minInclusive">
                        <Constant datatypeURI="&xsd;int">21</Constant>
                    </DatatypeFacetRestriction>
                </DatatypeRestriction>
            </DataSomeValuesFrom>
            <OWLClass URI="&f;Person"/>
        </ObjectIntersectionOf>
    </EquivalentClasses>
    <EquivalentClasses>
        <OWLClass URI="&f;Adult"/>
        <OWLClass URI="&g;Grownup"/>
    </EquivalentClasses>

    <Declaration>
        <OWLClass URI="&f;Child"/>
    </Declaration>
    <EquivalentClasses>
        <OWLClass URI="&f;Child"/>
        <ObjectIntersectionOf>
            <ObjectComplementOf>
                <DataSomeValuesFrom>
                    <DataProperty URI="&f;hasAge"/>
                    <DatatypeRestriction>
                        <Datatype URI="&xsd;integer"/>
                        <DatatypeFacetRestriction facet="&owl11;minInclusive">
                            <Constant datatypeURI="&xsd;int">21</Constant>
                        </DatatypeFacetRestriction>
                    </DatatypeRestriction>
                </DataSomeValuesFrom>
            </ObjectComplementOf>
            <OWLClass URI="&f;Person"/>
        </ObjectIntersectionOf>
    </EquivalentClasses>

    <Declaration>
        <OWLClass URI="&f;CivilMarriage"/>
    </Declaration>
    <DisjointClasses>
        <OWLClass URI="&f;CivilMarriage"/>
        <OWLClass URI="&f;ReligiousMarriage"/>
    </DisjointClasses>

    <Declaration>
        <OWLClass URI="&f;Man"/>
    </Declaration>
    <EquivalentClasses>
        <OWLClass URI="&f;Man"/>
        <ObjectIntersectionOf>
            <ObjectHasValue>
                <ObjectProperty URI="&f;hasGender"/>
                <Individual URI="&f;male"/>
            </ObjectHasValue>
            <OWLClass URI="&f;Person"/>
        </ObjectIntersectionOf>
    </EquivalentClasses>

    <Declaration>
        <OWLClass URI="&f;Marriage"/>
    </Declaration>
    <EquivalentClasses>
        <OWLClass URI="&f;Marriage"/>
        <ObjectUnionOf>
            <OWLClass URI="&f;CivilMarriage"/>
            <OWLClass URI="&f;ReligiousMarriage"/>
        </ObjectUnionOf>
    </EquivalentClasses>

    <Declaration>
        <OWLClass URI="&f;Narcissist"/>
    </Declaration>
    <EquivalentClasses>
        <OWLClass URI="&f;Narcissist"/>
        <ObjectIntersectionOf>
            <OWLClass URI="&f;Person"/>
            <ObjectExistsSelf>
                <ObjectProperty URI="&f;loves"/>
            </ObjectExistsSelf>
        </ObjectIntersectionOf>
    </EquivalentClasses>

    <Declaration>
        <OWLClass URI="&f;Parent"/>
    </Declaration>
    <EquivalentClasses>
        <OWLClass URI="&f;Parent"/>
        <ObjectIntersectionOf>
            <ObjectMinCardinality cardinality="1">
                <ObjectProperty URI="&f;hasChild"/>
                <OWLClass URI="&f;Person"/>
            </ObjectMinCardinality>
            <OWLClass URI="&f;Person"/>
        </ObjectIntersectionOf>
    </EquivalentClasses>

    <Declaration>
        <OWLClass URI="&f;Person"/>
    </Declaration>
    <SubClassOf>
        <OWLClass URI="&f;Person"/>
        <ObjectIntersectionOf>
            <DataExactCardinality cardinality="1">
                <DataProperty URI="&f;hasAge"/>
            </DataExactCardinality>
            <ObjectExactCardinality cardinality="1">
                <ObjectProperty URI="&f;hasGender"/>
            </ObjectExactCardinality>
            <ObjectAllValuesFrom>
                <ObjectProperty URI="&f;hasGender"/>
                <ObjectOneOf>
                    <Individual URI="&f;female"/>
                    <Individual URI="&f;male"/>
                </ObjectOneOf>
            </ObjectAllValuesFrom>
        </ObjectIntersectionOf>
    </SubClassOf>

    <Declaration>
        <OWLClass URI="&f;ReligiousMarriage"/>
    </Declaration>

    <Declaration>
        <OWLClass URI="&f;Teenager"/>
    </Declaration>
    <EquivalentClasses>
        <OWLClass URI="&f;Teenager"/>
        <ObjectIntersectionOf>
            <DataSomeValuesFrom>
                <DataProperty URI="&f;hasAge"/>
                <DatatypeRestriction>
                    <Datatype URI="&xsd;integer"/>
                    <DatatypeFacetRestriction facet="&owl11;minInclusive">
                        <Constant datatypeURI="&xsd;int">13</Constant>
                    </DatatypeFacetRestriction>
                    <DatatypeFacetRestriction facet="&owl11;maxExclusive">
                        <Constant datatypeURI="&xsd;int">20</Constant>
                    </DatatypeFacetRestriction>
                </DatatypeRestriction>
            </DataSomeValuesFrom>
            <OWLClass URI="&f;Person"/>
        </ObjectIntersectionOf>
    </EquivalentClasses>

    <Declaration>
        <OWLClass URI="&f;Woman"/>
    </Declaration>
    <EquivalentClasses>
        <OWLClass URI="&f;Woman"/>
        <ObjectIntersectionOf>
            <OWLClass URI="&f;Person"/>
            <ObjectHasValue>
                <ObjectProperty URI="&f;hasGender"/>
                <Individual URI="&f;female"/>
            </ObjectHasValue>
        </ObjectIntersectionOf>
    </EquivalentClasses>

    <Declaration>
        <OWLClass URI="&f;YoungChild"/>
    </Declaration>
    <EquivalentClasses>
        <OWLClass URI="&f;YoungChild"/>
        <ObjectIntersectionOf>
            <ObjectComplementOf>
                <ObjectUnionOf>
                    <OWLClass URI="&f;Teenager"/>
                    <OWLClass URI="&f;Adult"/>
                </ObjectUnionOf>
            </ObjectComplementOf>
            <OWLClass URI="&f;Person"/>
        </ObjectIntersectionOf>
    </EquivalentClasses>


    <Declaration>
        <Individual URI="&f;Bill"/>
    </Declaration>
    <ClassAssertion>
        <ObjectComplementOf>
            <OWLClass URI="&f;Narcissist"/>
        </ObjectComplementOf>
        <Individual URI="&f;Bill"/>
    </ClassAssertion>
    <ObjectPropertyAssertion>
        <ObjectProperty URI="&f;hasGender"/>
        <Individual URI="&f;Bill"/>
        <Individual URI="&f;male"/>
    </ObjectPropertyAssertion>
    <DataPropertyAssertion>
        <DataProperty URI="&f;hasAge"/>
        <Individual URI="&f;Bill"/>
        <Constant datatypeURI="&xsd;integer">13</Constant>
    </DataPropertyAssertion>

    <Declaration>
        <Individual URI="&f;Ellen"/>
    </Declaration>
    <ClassAssertion>
        <DataSomeValuesFrom>
            <DataProperty URI="&f;hasAge"/>
            <DatatypeRestriction>
                <Datatype URI="&xsd;integer"/>
                <DatatypeFacetRestriction facet="&owl11;minInclusive">
                    <Constant datatypeURI="&xsd;int">15</Constant>
                </DatatypeFacetRestriction>
                <DatatypeFacetRestriction facet="&owl11;maxInclusive">
                    <Constant datatypeURI="&xsd;int">21</Constant>
                </DatatypeFacetRestriction>
            </DatatypeRestriction>
        </DataSomeValuesFrom>
        <Individual URI="&f;Ellen"/>
    </ClassAssertion>

    <Declaration>
        <Individual URI="&f;Emily"/>
    </Declaration>
    <ClassAssertion>
        <DataSomeValuesFrom>
            <DataProperty URI="&f;hasAge"/>
            <DataOneOf>
                <Constant datatypeURI="&xsd;integer">39</Constant>
                <Constant datatypeURI="&xsd;integer">49</Constant>
            </DataOneOf>
        </DataSomeValuesFrom>
        <Individual URI="&f;Emily"/>
    </ClassAssertion>

    <Declaration>
        <Individual URI="&f;Jack"/>
    </Declaration>
    <NegativeDataPropertyAssertion>
        <DataProperty URI="&f;hasAge"/>
        <Individual URI="&f;Jack"/>
        <Constant datatypeURI="&xsd;integer">53</Constant>
    </NegativeDataPropertyAssertion>

    <Declaration>
        <Individual URI="&f;Jeff"/>
    </Declaration>
    <ClassAssertion>
        <ObjectExactCardinality cardinality="2">
            <ObjectProperty URI="&f;hasChild"/>
        </ObjectExactCardinality>
        <Individual URI="&f;Jeff"/>
    </ClassAssertion>
    <ObjectPropertyAssertion>
        <ObjectProperty URI="&f;hasChild"/>
        <Individual URI="&f;Jeff"/>
        <Individual URI="&f;Ellen"/>
    </ObjectPropertyAssertion>
    <ObjectPropertyAssertion>
        <ObjectProperty URI="&f;hasChild"/>
        <Individual URI="&f;Jeff"/>
        <Individual URI="&f;Jack"/>
    </ObjectPropertyAssertion>
    <ObjectPropertyAssertion>
        <ObjectProperty URI="&f;hasWife"/>
        <Individual URI="&f;Jeff"/>
        <Individual URI="&f;Emily"/>
    </ObjectPropertyAssertion>
    <ObjectPropertyAssertion>
        <ObjectProperty URI="&f;loves"/>
        <Individual URI="&f;Jeff"/>
        <Individual URI="&f;Jeff"/>
    </ObjectPropertyAssertion>
    <DataPropertyAssertion>
        <DataProperty URI="&f;hasAge"/>
        <Individual URI="&f;Jeff"/>
        <Constant datatypeURI="&xsd;integer">77</Constant>
    </DataPropertyAssertion>
    <DifferentIndividuals>
        <Individual URI="&f;Jeff"/>
        <Individual URI="&f;Emily"/>
        <Individual URI="&f;Jack"/>
        <Individual URI="&f;Ellen"/>
        <Individual URI="&f;Susan"/>
    </DifferentIndividuals>

    <Declaration>
        <Individual URI="&f;John"/>
    </Declaration>
    <ClassAssertion>
        <OWLClass URI="&f;Person"/>
        <Individual URI="&f;John"/>
    </ClassAssertion>
    <ObjectPropertyAssertion>
        <ObjectProperty URI="&f;hasDaughter"/>
        <Individual URI="&f;John"/>
        <Individual URI="&f;Susan"/>
    </ObjectPropertyAssertion>
    <ObjectPropertyAssertion>
        <ObjectProperty URI="&f;hasGender"/>
        <Individual URI="&f;John"/>
        <Individual URI="&f;male"/>
    </ObjectPropertyAssertion>
    <ObjectPropertyAssertion>
        <ObjectProperty URI="&f;hasSon"/>
        <Individual URI="&f;John"/>
        <Individual URI="&f;Bill"/>
    </ObjectPropertyAssertion>
    <ObjectPropertyAssertion>
        <ObjectProperty URI="&f;hasWife"/>
        <Individual URI="&f;John"/>
        <Individual URI="&f;Mary"/>
    </ObjectPropertyAssertion>
    <DataPropertyAssertion>
        <DataProperty URI="&f;hasAge"/>
        <Individual URI="&f;John"/>
        <Constant datatypeURI="&xsd;integer">33</Constant>
    </DataPropertyAssertion>
    <SameIndividuals>
        <Individual URI="&f;John"/>
        <Individual URI="&f;Jack"/>
    </SameIndividuals>
    <DifferentIndividuals>
        <Individual URI="&f;John"/>
        <Individual URI="&f;Mary"/>
        <Individual URI="&f;Bill"/>
        <Individual URI="&f;Susan"/>
    </DifferentIndividuals>

    <Declaration>
        <Individual URI="&f;Mary"/>
    </Declaration>
    <ObjectPropertyAssertion>
        <ObjectProperty URI="&f;hasDaughter"/>
        <Individual URI="&f;Mary"/>
        <Individual URI="&f;Susan"/>
    </ObjectPropertyAssertion>
    <ObjectPropertyAssertion>
        <ObjectProperty URI="&f;hasGender"/>
        <Individual URI="&f;Mary"/>
        <Individual URI="&f;female"/>
    </ObjectPropertyAssertion>
    <ObjectPropertyAssertion>
        <ObjectProperty URI="&f;hasSon"/>
        <Individual URI="&f;Mary"/>
        <Individual URI="&f;Bill"/>
    </ObjectPropertyAssertion>
    <DataPropertyAssertion>
        <DataProperty URI="&f;hasAge"/>
        <Individual URI="&f;Mary"/>
        <Constant datatypeURI="&xsd;integer">31</Constant>
    </DataPropertyAssertion>

    <Declaration>
        <Individual URI="&f;Susan"/>
    </Declaration>
    <ObjectPropertyAssertion>
        <ObjectProperty URI="&f;hasGender"/>
        <Individual URI="&f;Susan"/>
        <Individual URI="&f;female"/>
    </ObjectPropertyAssertion>
    <DataPropertyAssertion>
        <DataProperty URI="&f;hasAge"/>
        <Individual URI="&f;Susan"/>
        <Constant datatypeURI="&xsd;integer">8</Constant>
    </DataPropertyAssertion>

    <Declaration>
        <Individual URI="&f;female"/>
    </Declaration>
    <SameIndividuals>
        <Individual URI="&f;female"/>
        <Individual URI="&g;feminine"/>
    </SameIndividuals>
    <DifferentIndividuals>
        <Individual URI="&f;female"/>
        <Individual URI="&f;male"/>
    </DifferentIndividuals>

    <Declaration>
        <Individual URI="&f;male"/>
    </Declaration>
    <SameIndividuals>
        <Individual URI="&f;male"/>
        <Individual URI="&g;masculine"/>
    </SameIndividuals>

</Ontology>