2

RDF-XMLをJenaモデルに読み込むときに問題が発生します。私が使う

FileManager fileManager = FileManager.get();
Model model = fileManager.loadModel(url);

次のようなリソースURI

http://kulturarvsdata.se/resurser/aukt/geo/county#01

次のようになります

http://kulturarvsdata.se/resurser/aukt/geo/01

Jenaモデルのリソースでは、つまり、URIフラグメント部分が削除されます。

私はベースURIをイエナに明示的に提供しようとしました:

Model model = fileManager.loadModel(url, "http://kulturarvsdata.se/resurser/aukt/geo/county#", "RDF/XML");

しかし、それは違いはありません。

私は何かを誤解しましたか、それともURIフラグメントを保存するようにイエナを説得する方法はありますか?

4

1 に答える 1

3

あなたの問題は、ベースURIがturtleやSPARQLのプレフィックスのように機能しないことだと思います。

http://kulturarvsdata.se/resurser/aukt/geo/countyが始まります:

<rdf:RDF xml:base="http://kulturarvsdata.se/resurser/aukt/geo/county#">
    ...

次に、リソースがあります。

   <County rdf:about="01">...

そのrdf:aboutURIは、提供されたベースを基準にして解決されhttp://kulturarvsdata.se/resurser/aukt/geo/county#ます。そして、プレフィックスが行うことである「連結」ではなく「解決済み」と言ったことに注意してください。01ベースを基準にして解決すると、が得られhttp://kulturarvsdata.se/resurser/aukt/geo/01ます。

ベースの最後にあるフラグメント(#)は、実際には何もしません。あなたがする必要があるのはあなたの約を次のものに置き換えることです:

<County rdf:about="#01">...

(基本的に、ドキュメントベースを使用してすべてのリンクを内部にすることはできません。内部リンクはフラグメントを使用する必要があります)

于 2013-02-25T16:15:22.773 に答える