2

OWLオントロジーからアセンブリーを構築していますが、オントロジーを解析すると、タイプが宣言され、いくつかの値が指定されている「データ型プロパティー」でエラー・メッセージが発生します。Protegev3.4を使用してオントロジーを作成しました。

たとえば、エラーを発生させるデータ型プロパティの1つは、タイプが「string」で値が「English&Farsi」のような「Language」です。以下に、protegeによって作成された参照を示します。

<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#">

そして、「Language」プロパティは以下に言及されています:

<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?

「生成」ボタンを押すたびに、「_:bnode」の前の数字が変わります。「Language」プロパティから値を削除すると、次のDataTypeプロパティに関連する別のエラーが発生します。これは、定義されている(そしていくつかの値が指定されている)すべてのDataTypeプロパティがOWLGrinderでエラーを起こしていることを意味します。

誰かがこのエラーを処理するために私を導くことができるかどうか疑問に思いました。

4

4 に答える 4

2

私は OWLGrinder に詳しくありませんが、(匿名ノードに URI を与える) などの名前付きクラスを宣言してみて、それを述語ExpectedLanguagesの範囲として使用できます。language簡略化された例 ( Turtle形式):

:ExpectedLanguages
    a owl:DataRange ;
    owl:oneOf (
        "Farsi"^^xsd:string
        "English"^^xsd:string
    );
.

:languages
    rdfs:range :ExpectedLanguages ;
.

OWL 列挙型データ型を使用するには、コード/パーサー/リーゾナーが少なくとも OWL-DL に準拠している必要があります。

_:bnodeXXX(空白ノード/匿名ノード) が毎回新しい ID を持つ理由は、空白であるためです。ただし、メモリ内の RDF グラフ (モデル) 内でそれを識別する目的で、モデルが分析されている間に各ノード (匿名または名前付き) を一意に識別できるように、ロード時に匿名ノードごとに ID を生成する必要があります。そのため、着信参照と発信参照を識別できます。

于 2009-06-01T05:52:16.817 に答える
1

現在、 ROWLEX OwlGrinder は、範囲がリテラルまたは通常のクラスであることを想定しています。範囲として割り当て内に列挙を含む「LanguageList」ラッパー クラスを作成することをお勧めします。私はこれをテストしませんでしたが、うまくいくと思います。

于 2009-06-01T07:06:12.987 に答える
1

Intellidimensionは、OWL-Lite、OWL-Full、または OWL-DL を .NET クラスに変換できる SDK を提供します。あなたはそれを見てみたいかもしれません。

Sidenote
オントロジーのドメインのセマンティクスを混乱させていると思います。「言語はTeacher、ClassOfCourse、LearningResource、Discussion、Studentにのみ存在する可能性がある」と言おうとしているように見えますが、実際には「インスタンスを説明するために言語が使用されている場合、そのインスタンスはUnionOf Teacherであると推測できます。 、ClassOfCourse、LearningResource、Discussion、および Student.". これは、OWL の機能 (スキーマ/検証) ではないにもかかわらず、ドメインがプロパティの使用を制限する必要があるように感じられるため、OWL のセマンティクスのよくある誤解です。OWL は、使用法から推測すべきことを記述するためだけに使用され、使用法を規定するものではありません。

OWLガイドで説明されているドメインのセマンティクス。

言語プロパティのドメインで UnionOf を使用することにより、「言語プロパティを使用して記述されるものはすべて、教師、または ClassOfCourse、または LearningResource、またはディスカッション、または学生である」と言っています。これは通常意味がないと主張します。

UnionOf セマンティクスは、OWL ガイドで説明されています。

範囲は、プロパティの範囲を特定の型として定義すると、そのプロパティによって参照されるすべてのリテラル/リソースが範囲宣言で定義された型であると推測できるという点で似ています。

OWLガイドに記載されている範囲。

于 2009-07-22T10:25:45.253 に答える
0

私はあなたのオントロジーをhttp://www.mygrid.org.uk/OWL/Validatorにコピー/貼り付けしました:このオントロジーは(少なくとも)OWL-liteオントロジーではないと言っています。Protegeの設定に問題がある可能性がありますか?

于 2009-05-29T21:15:00.027 に答える