OWLオントロジからアセンブリを構築していますが、オントロジを解析するときに型が宣言され、いくつかの値が与えられている "データ型プロパティ"でエラーメッセージが表示されます。私はProtege v3.4を使って私のオントロジを書いた。OWLアセンブラ生成問題(OWLGrinder)
たとえば、エラーを発生させるデータ型プロパティの1つは、 "文字列"型の "Language"で、値は "英語& Farsi"です。参照は、以下に示す弟分で作られています:
<rdf:RDF xml:base="http://www.owl-ontologies.com/Ontology1243411901.owl"
xmlns="http://www.owl-ontologies.com/Ontology1243411901.owl#"
xmlns:owl="http://www.w3.org/2002/07/owl#"
xmlns:protege="http://protege.stanford.edu/plugins/owl/protege#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:swrl="http://www.w3.org/2003/11/swrl#"
xmlns:swrlb="http://www.w3.org/2003/11/swrlb#" xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
xmlns:xsp="http://www.owl-ontologies.com/2005/08/07/xsp.owl#">
そして「言語」プロパティを下記します
<owl:DatatypeProperty rdf:ID="language">
<rdfs:range>
<owl:DataRange>
<owl:oneOf rdf:parseType="Resource">
<rdf:rest rdf:parseType="Resource">
<rdf:rest rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#nil"/>
<rdf:first rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Farsi</rdf:first>
</rdf:rest>
<rdf:first rdf:datatype="http://www.w3.org/2001/XMLSchema#string">English</rdf:first>
</owl:oneOf>
</owl:DataRange>
</rdfs:range>
<rdfs:domain>
<owl:Class>
<owl:unionOf rdf:parseType="Collection">
<owl:Class rdf:about="#Teacher"/>
<owl:Class rdf:about="#ClassOfCourse"/>
<owl:Class rdf:about="#LearningResource"/>
<owl:Class rdf:about="#Discussion"/>
<owl:Class rdf:about="#Student"/>
</owl:unionOf>
</owl:Class>
</rdfs:domain>
</owl:DatatypeProperty>
私はちょうどOWLGrinderに1つのオントロジーを追加します。このエラーは、次の生成時に生成されます。
Assembly generation failed.
OWL property 'http://www.owl-ontologies.com/Ontology1243411901.owl#language' has a range declaration that points to _:bnode10579059 but its definition is missing.
Are you missing an ontology which declares this class?
[Generate]ボタンを押すたびに「_:bnode」の前の数字が変わります。 "Language"プロパティから値を削除すると、次のDataTypeプロパティに関連して別のエラーが発生します。 OWLGrinderで定義されている(およびいくつかの値が指定されている)すべてのDataTypeプロパティでエラーが発生していることを意味します。
私は誰かがこのエラーのハンドリングに私を導くことができるかどうか疑問に思っていました。
ありがとうございました。この問題は、すべてのデータ型の範囲に対して1つのクラスを作成することで解決されます。 – Ehsan