0

私は Jena を使用してオントロジーを読んでいますが、これまでのところ非常にうまく機能しています。残念ながら、モデルで定義したコンパクト URI の使用方法を理解できませんでした。setNSPrefix(String prefix, String uri)モデルのメソッドを使用してプレフィックスを定義しました。プレフィックスを使用してステートメントを取得しようとすると、何も得られません。また、Statement を正常に取得すると、定義したコンパクトな URI ではなく完全な URI が含まれます。xsd uriに対しても実行しますhttp://www.w3.org/2001/XMLSchema#

たとえば、私は uri を使用しておりhttp://www.example.com#、プレフィックス マッピングを として定義しています。ex私の Statement はhttp://www.example.com#father http://www.example.com#parentOf http://www.example.com#child、父が主語、parentOf が述語、子が目的語です。を使用して取得しようとしてex:fatherも結果が得られず、Statement を取得すると、主語、述語、および目的語の完全な URI が存在します。を実行するときに uri の代わりにプレフィックスを使用するのを見たことがありmodel.write(OutputStream)ますが、それは特に役に立ちません。私がやろうとしてきたように、プリフィックスを uri の代わりに使用することはできますか、それとも Jena が提供するものではないでしょうか?

4

1 に答える 1

1

プレフィックスを使用してステートメントを取得しようとすると、何も得られません。

あなたはできません、例えば、

model.getResource("ex:foo")`

あなたがしなければなりません

model.getResource("http://example.org/foo");

もちろん、それをもっと簡単にすることができます。

String EX = "http://example.org/";
model.getResource(EX+"foo");

接頭辞は、シリアライゼーションを読み書きしやすくするためのものです。

于 2015-02-23T18:33:51.020 に答える