StateKing
是一个类,所以如果你想拥有一个使用它作为范围的属性,它需要是一个对象属性而不是数据属性。
下面的代码是使用 Manchester 语法表示的本体,如果将其保存为 .owl,您将能够使用 Protege 4 打开它。
<?xml version="1.0"?>
<!DOCTYPE rdf:RDF [
<!ENTITY owl "http://www.w3.org/2002/07/owl#" >
<!ENTITY dc "http://purl.org/dc/elements/1.1/" >
<!ENTITY xsd "http://www.w3.org/2001/XMLSchema#" >
<!ENTITY xml "http://www.w3.org/XML/1998/namespace" >
<!ENTITY rdfs "http://www.w3.org/2000/01/rdf-schema#" >
<!ENTITY rdf "http://www.w3.org/1999/02/22-rdf-syntax-ns#" >
]>
<rdf:RDF xmlns="http://www.example.org/demo.owl#"
xml:base="http://www.example.org/demo.owl"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:owl="http://www.w3.org/2002/07/owl#"
xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:xml="http://www.w3.org/XML/1998/namespace">
<owl:Ontology rdf:about="http://www.example.org/demo.owl"/>
<owl:ObjectProperty rdf:about="http://www.example.org/demo.owl#kind">
<rdfs:range rdf:resource="http://www.example.org/demo.owl#StateKing"/>
</owl:ObjectProperty>
<owl:Class rdf:about="http://www.example.org/demo.owl#StateKing">
<owl:equivalentClass>
<owl:Class>
<owl:oneOf rdf:parseType="Collection">
<rdf:Description rdf:about="http://www.example.org/demo.owl#join"/>
<rdf:Description rdf:about="http://www.example.org/demo.owl#state"/>
<rdf:Description rdf:about="http://www.example.org/demo.owl#choise"/>
<rdf:Description rdf:about="http://www.example.org/demo.owl#final"/>
<rdf:Description rdf:about="http://www.example.org/demo.owl#initial"/>
<rdf:Description rdf:about="http://www.example.org/demo.owl#junction"/>
<rdf:Description rdf:about="http://www.example.org/demo.owl#fork"/>
</owl:oneOf>
</owl:Class>
</owl:equivalentClass>
</owl:Class>
<owl:Class rdf:about="&owl;Thing"/>
<owl:Thing rdf:about="http://www.example.org/demo.owl#choise">
<rdf:type rdf:resource="&owl;NamedIndividual"/>
</owl:Thing>
<owl:Thing rdf:about="http://www.example.org/demo.owl#final">
<rdf:type rdf:resource="&owl;NamedIndividual"/>
</owl:Thing>
<owl:Thing rdf:about="http://www.example.org/demo.owl#fork">
<rdf:type rdf:resource="&owl;NamedIndividual"/>
</owl:Thing>
<owl:Thing rdf:about="http://www.example.org/demo.owl#initial">
<rdf:type rdf:resource="&owl;NamedIndividual"/>
</owl:Thing>
<owl:Thing rdf:about="http://www.example.org/demo.owl#join">
<rdf:type rdf:resource="&owl;NamedIndividual"/>
</owl:Thing>
<owl:Thing rdf:about="http://www.example.org/demo.owl#junction">
<rdf:type rdf:resource="&owl;NamedIndividual"/>
</owl:Thing>
<owl:Thing rdf:about="http://www.example.org/demo.owl#state">
<rdf:type rdf:resource="&owl;NamedIndividual"/>
</owl:Thing>
</rdf:RDF>