我有以下 RDF:
<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:ppl="http://www.blah.com/people#">
<rdfs:Class rdf:ID="Person">
<ppl:Name/>
<ppl:LastName/>
</rdfs:Class>
<rdfs:Class rdf:ID="John">
<rdfs:subClassOf rdf:resource="#Person"/>
<ppl:name>John</ppl:name>
<ppl:LastName>Smith</ppl:LastName>
</rdfs:Class>
</rdf:RDF>
这看起来不错,但我想避免做一个 subClassOf John 的可能性。例如,这不应该工作:
<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:ppl="http://www.blah.com/people2#">
<rdfs:Class rdf:ID="Person">
<ppl:Name/>
<ppl:LastName/>
</rdfs:Class>
<rdfs:Class rdf:ID="John">
<rdfs:subClassOf rdf:resource="#Person"/>
<ppl:name>John</ppl:name>
<ppl:LastName>Smith</ppl:LastName>
</rdfs:Class>
<rdfs:Class rdf:ID="Peter">
<rdfs:subClassOf rdf:resource="#John"/>
<ppl:name>Peter</ppl:name>
<ppl:LastName>Smith</ppl:LastName>
</rdfs:Class>
</rdf:RDF>
我该如何添加该限制?
编辑:
在cygri的回答之后,我尝试了一种不同的方法:
<rdf:Description ID="John">
<rdf:type rdf:resource="#Person"/>
<ppl:name>John</ppl:name>
<ppl:LastName>Smith</ppl:LastName>
</rdf:Description>
<rdf:Description ID="Peter">
<rdf:type rdf:resource="#John"/>
<ppl:name>Peter</ppl:name>
<ppl:LastName>Smith</ppl:LastName>
</rdf:Description>
但这仍然有效:(