SPARQL查询以删除资源中的所有空白节点
我正在编写一个SPARQL查询,它应该删除此资源中的所有三元组SPARQL查询以删除资源中的所有空白节点,sparql,rdf,turtle-rdf,blank-nodes,Sparql,Rdf,Turtle Rdf,Blank Nodes,我正在编写一个SPARQL查询,它应该删除此资源中的所有三元组 prefix oslc: <http://open-services.net/ns/core#> prefix example: <http://rdf.company.com/ns/something/net#> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dcterms: <http://purl.org/dc/terms
prefix oslc: <http://open-services.net/ns/core#>
prefix example: <http://rdf.company.com/ns/something/net#>
prefix xsd: <http://www.w3.org/2001/XMLSchema#>
prefix dcterms: <http://purl.org/dc/terms/>
prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
example:Resource2
a oslc:ResourceShape ;
oslc:describes example:Resource2 ;
oslc:property [ a oslc:Property ;
oslc:isMemberProperty true ;
oslc:name "pgn" ;
oslc:occurs oslc:Zero-or-one ;
oslc:valueType xsd:integer ] ;
dcterms:title "Resource2"^^rdf:XMLLiteral .
这很明显,因为过滤器指定了一个特定的主题,而空白节点没有该主题
知道如何删除空白节点吗?我希望您没有嵌套的空白节点。试试这个:
前缀示例:
删除{
?s?p?o。
?o?p1?o1。
}
在哪里{
值(?s){(示例:Resource2)}
?s?p?o。
可选的{
?o?p1?o1。
过滤器(为空白(?o))
}
}
相关问题:
DELETE
{ ?s ?p ?o }
WHERE
{
?s ?p ?o .
FILTER ( ?s IN ( <http://rdf.company.com/ns/something/net#Resource2>))
}
[ a oslc:Property ;
oslc:isMemberProperty true ;
oslc:name "pgn" ;
oslc:occurs oslc:Zero-or-one ;
oslc:valueType xsd:integer ]