使用jena编辑现有资源的uri

时间:2012-10-16 12:36:27

标签: model resources uri jena

我尝试修改本体模型的现有资源的uri。我想到了创建一个新模型,新资源(包括新的所需uri)并复制旧资源的内容。

通过迭代和添加语句,不能正常工作。还有另一种解决方法吗?

我正在使用java和RDF / XML模型中的jena。

3 个答案:

答案 0 :(得分:4)

正如您所发现的,资源是不可变的。你可以使用ResourceUtils.renameResource(resource, newName).带来相同的效果。这会通过你的模型删除提及旧资源的语句,并添加新的等价物,这与你将要重命名一样接近。

示例:

Resource renamed = 
  ResourceUtils.renameResource(originalResource, "http://example.com/new");

答案 1 :(得分:1)

使用ResourceUtils.renameResource(oldResource, newURI)。它会为你完成所有三元组的迭代。

答案 2 :(得分:0)

如果您在大型数据库上执行此操作,最好将数据库转储到Turtle或N-Triples,运行文本更改脚本,然后重新加载数据库。