首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Jena tdbloader加载三元组时设置基URI

使用Jena tdbloader加载三元组时设置基URI
EN

Stack Overflow用户
提问于 2016-10-27 09:32:43
回答 1查看 436关注 0票数 1

当我使用tdbloadertdbloader2将数据加载到Fuseki时,我希望设置基本url。目前,本地路径被用作基本路径,这不是我想要的。示例:

代码语言:javascript
复制
# mytriple.ttl

@prefix owl: <http://www.w3.org/2002/07/owl#> .
<#myitem> a owl:Thing .

./tdbloader --loc /path/to/database /path/to/local/file/mytriple.ttl

代码语言:javascript
复制
# sparql query example

PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>    
PREFIX owl: <http://www.w3.org/2002/07/owl#>
SELECT ?subject ?predicate ?object
WHERE {
  ?subject ?predicate ?object .
  ?subject a owl:Thing .
}

查询结果:

<file:///path/to/local/file/mytriple.ttl#myitem> rdf:type owl:Thing

这是(1)数据库中不太干净;(2)当需要指定基时,当我想查询特定项时,它会导致可维护性问题:

代码语言:javascript
复制
PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
SELECT ?subject ?predicate ?object
WHERE {
  ?subject a owl:Thing .
  <file:///path/to/local/file/mytriple.ttl#myitem> ?predicate ?object .
}

代码语言:javascript
复制
PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
BASE <file:///path/to/local/file/mytriple.ttl>
SELECT ?subject ?predicate ?object
WHERE {
  ?subject a owl:Thing .
  <#myitem> ?predicate ?object .
}

如何在tdbloader中指定不同的基,例如<mydomain:myontology#>

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-10-27 12:40:38

BASE@base语句放入数据中。这样,数据是稳定的-当在任何地方使用时,它将提供相同的三元组。

要避免编辑文件,请执行以下操作:

代码语言:javascript
复制
cat "MyBase.ttl" "MyData.ttl" > D.ttl 
tdbloader --loc DB D.ttl
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40281032

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档