Iam硕士生我的项目是在jena开发故事模型。现在我的任务是使用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查询的内容了。
答案 0 :(得分:1)
如果没有具体的数据示例,很难确切地说出您的查询结果。即便如此,听起来你只是要求删除所有特定statementId
主题的三元组。那就是:
delete { <statementId> ?p ?o }
where { <statementId> ?p ?o }
有关更多信息和示例,请参阅SPARQL 1.1规范中的3.1.3.1 DELETE (Informative)。