将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片段部分。
我试图向Jena提供基本URI:
Model model = fileManager.loadModel(url, "http://kulturarvsdata.se/resurser/aukt/geo/county#", "RDF/XML");
但这没什么区别。
我是否误解了某些东西,或者有没有办法说服Jena保留URI片段?
答案 0 :(得分: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:about
解析了http://kulturarvsdata.se/resurser/aukt/geo/county#
URI。并注意我说'已解决'而不是'连接'这是前缀的作用。相对于基数解析01
会给出http://kulturarvsdata.se/resurser/aukt/geo/01
。
基地末端的片段(#
)在实践中没有任何作用。您需要做的是用以下内容替换您的内容:
<County rdf:about="#01">...
(基本上你不能使用文档库来使所有链接都在内部。内部链接必须使用片段)