【问题标题】:Deleting rdf triples using statement ID in jena在jena中使用语句ID删除rdf三元组
【发布时间】:2014-03-18 05:08:31
【问题描述】:

我是硕士生,我的项目是在耶拿开发故事模型。现在我的任务是使用 Id 删除一条语句。如果这是一个声明:

{member1, member2, member3,  member4, statementID}

例如:

[Alice, saw, mouse, garden]. 

statementID 对用户不可见。

在我的模型中,上面的语句保存为[ID, Property, Value]

[statementID, hasSubject, Alice] ; 
[statementID, hasEvent, saw] ; 
[statementID, hasBeneficiary, Mouse] ; 
[statementID, hasLocation, garden]

这样就有很多[bob, like, alice][Edwin, meet, mouse, garden]等语句。为了删除选定的语句,我必须构建一个方法来查找选定语句 ID 的所有三元组并删除它们。我的教授建议我使用 Sparql 查询来查找选定语句 ID 的三元组,因为我已经开始阅读有关 sparql 查询的新主题。

【问题讨论】:

  • 请展示一些代表语句的RDF数据;识别您要删除的三元组听起来并不难,但是如果没有您的数据示例,就很难准确说出查询将是什么。
  • 为什么这个问题的全部内容突然被删掉了?回答完后请不要破坏问题...

标签: rdf sparql jena ontology


【解决方案1】:

如果没有具体的数据示例,很难准确说出您的查询将是什么。即便如此,听起来您只是要求删除所有主题为特定statementId 的三元组。那就是:

delete { <statementId> ?p ?o }
where { <statementId> ?p ?o }

有关更多信息和示例,请参阅 SPARQL 1.1 规范中的 3.1.3.1 DELETE (Informative)

【讨论】:

    猜你喜欢
    • 2012-05-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-06
    • 2013-02-14
    相关资源
    最近更新 更多