图名称 SPARQL 中的转义<



我不小心创建了一个图形,它的名称以<开头,以>结尾。

如果我试图通过——

从Virtuoso服务器上清除图形
clear graph <graph_name>

——或——

clear graph <<graph_name>>

——或——

clear graph <<graph_name>>

——它不起作用。它们都给出了类似的错误:

*** Error 37000: [Virtuoso Driver][Virtuoso Server]SQ074: Line 1: SPARQL compiler, line 1: syntax error at '<' before '<graph_name>

<>在uri中是非法的,因此如果直接使用解析器将会感到不安。

CLEAR可以看作是DELETE的简写形式,因此您可以尝试:

DELETE { GRAPH ?g { ?s ?p ?o } }
WHERE { GRAPH ?g { ?s ?p ?o } 
        FILTER (str(?g) = '<graph_name>')
      }

相关内容

  • 没有找到相关文章

最新更新