У меня есть следующий RDF:RDF избежать ИСС: subClassOf
<?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 Джон. Например, это не должно работать:
<?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>
Как я могу добавить, что ограничение?
EDIT:
После cygri's answer я попробовал другой подход:
<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>
Но это все еще работает :(
Можете ли вы предоставить фрагмент xml, чтобы сделать человека человеком? – Macarse
Я только что редактировал свой вопрос с другим подходом, но он все еще не работает должным образом. – Macarse