Annotation of daml-2000-10/daml-ex.daml, revision 1.1

1.1     ! connolly    1: <rdf:RDF
        !             2:   xmlns:rdf ="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
        !             3:   xmlns     ="http://www.daml.org/2000/10/daml-ont#"
        !             4:   xmlns:daml="http://www.daml.org/2000/10/daml-ont#"
        !             5:   >
        !             6: 
        !             7: <Ontology about="">
        !             8:   <versionInfo>$Id: daml-ex.daml,v 1.2 2000/10/07 03:21:17 connolly Exp $</versionInfo>
        !             9:   <comment>An example ontology</comment>
        !            10:   <imports resource="http://www.daml.org/2000/10/daml-ont"/>
        !            11: </Ontology>
        !            12: 
        !            13: <Class ID="Animal">
        !            14:   <label>Animal</label>
        !            15:   <comment>This class of animals is illustrative of a number of
        !            16:        ontological idioms.</comment>
        !            17: </Class>
        !            18: 
        !            19: <Class ID="Male">
        !            20:   <subClassOf resource="#Animal"/>
        !            21: </Class>
        !            22: 
        !            23: <Class ID="Female">
        !            24:   <subClassOf resource="#Animal"/>
        !            25:   <disjointFrom resource="#Male"/>
        !            26: </Class>
        !            27: 
        !            28: <Property ID="parent">
        !            29:   <domain resource="#Animal"/>
        !            30:   <cardinality>2</cardinality>
        !            31: </Property>
        !            32: 
        !            33: <Class ID="Person">
        !            34:   <subClassOf resource="#Animal"/>
        !            35:   <restrictedBy>
        !            36:     <Restriction>
        !            37:       <onProperty resource="#parent"/>
        !            38:       <toClass resource="#Person"/>
        !            39:     </Restriction>
        !            40:   </restrictedBy>
        !            41: </Class>
        !            42: 
        !            43: <Property ID="father">
        !            44:   <subProperty resource="#parent"/>
        !            45:   <range resource="#Man"/>
        !            46:   <cardinality>1</cardinality>
        !            47: </Property>
        !            48: 
        !            49: <UniqueProperty ID="mother">
        !            50:   <subProperty resource="#parent"/>
        !            51:   <range resource="#Woman"/>
        !            52: </UniqueProperty>
        !            53: 
        !            54: <!-- need an example for UnambiguousProperty -->
        !            55: 
        !            56: <Property ID="child">
        !            57:   <inverseOf resource="#parent"/>
        !            58: </Property>
        !            59: 
        !            60: <TransitiveProperty ID="ancestor">
        !            61:   <label>ancestor</label>
        !            62: </TransitiveProperty>
        !            63: 
        !            64: <TransitiveProperty ID="descendant"/>
        !            65: 
        !            66: <Property ID="mom">
        !            67:   <equivalentTo resource="#mother"/>
        !            68: </Property>
        !            69: 
        !            70: <Property ID="occupation">
        !            71:   <maxCardinality>1</maxCardinality>
        !            72: </Property>
        !            73: 
        !            74: <Class ID="Car">
        !            75:   <comment>no car is a person</comment>
        !            76:   <subClassOf>
        !            77:     <Class>
        !            78:       <complementOf resource="#Person"/>
        !            79:     </Class>
        !            80:   </subClassOf>
        !            81: </Class>
        !            82: 
        !            83: <Class ID="Man">
        !            84:   <subClassOf resource="#Person"/>
        !            85:   <subClassOf resource="#Male"/>
        !            86: </Class>
        !            87: 
        !            88: <Class ID="Woman">
        !            89:   <subClassOf resource="#Person"/>
        !            90:   <subClassOf resource="#Female"/>
        !            91: </Class>
        !            92: 
        !            93: <!-- @@CAVEAT: daml:collection is an extension of RDF 1.0 syntax;
        !            94:      don't expect existing tools to support it.
        !            95:      @@TODO: specify how it works, implement it. -->
        !            96: 
        !            97: <Class about="#Person">
        !            98:   <comment>every person is a man or a woman</comment>
        !            99:   <disjointUnionOf parseType="daml:collection">
        !           100:     <Class about="#Man"/>
        !           101:     <Class about="#Woman"/>
        !           102:   </disjointUnionOf>
        !           103: </Class>
        !           104: 
        !           105: <Person ID="Adam">
        !           106:   <label>Adam</label>
        !           107:   <comment>Adam is a person.</comment>
        !           108: </Person>
        !           109: 
        !           110: <Property ID="height">
        !           111:   <domain resource="#Person"/>
        !           112:   <range resource="#Height"/>
        !           113: </Property>
        !           114: 
        !           115: <Class ID="Height">
        !           116:   <oneOf parseType="daml:collection">
        !           117:     <Height ID="short"/>
        !           118:     <Height ID="medium"/>
        !           119:     <Height ID="tall"/>
        !           120:   </oneOf>
        !           121: </Class>
        !           122: 
        !           123: <Class ID="TallThing">
        !           124:   <restrictedBy>
        !           125:     <Restriction>
        !           126:       <onProperty resource="#height"/>
        !           127:       <toValue resource="#tall"/>
        !           128:     </Restriction>
        !           129:   </restrictedBy>
        !           130: </Class>
        !           131: 
        !           132: <!-- @@ need example of hasValue qualification -->
        !           133: 
        !           134: <!-- @@ lack Disjoint example -->
        !           135: 
        !           136: <Class ID="TallMan">
        !           137:   <intersectionOf parseType="daml:collection">
        !           138:     <Class about="#TallThing"/>
        !           139:     <Class about="#Man"/>
        !           140:   </intersectionOf>
        !           141: </Class>
        !           142: 
        !           143: <!-- @@ example of subProperty, label, comment, etc. from RDF/RDFS -->
        !           144: 
        !           145: </rdf:RDF>
        !           146: 

Webmaster