我想在端点运行以下sparql查询:
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
SELECT DISTINCT ?name WHERE{?person foaf:name ?name.FILTER regex(str(?name), "+ns+","i")}
我在Visual Studio上使用C#进行编码,并将此查询发送到端点。它应该在没有任何区分大小写的情况下检查结果,但是以这种方式编写查询会在visual studio中出错。我该如何纠正?
答案 0 :(得分:2)
更新(根据作者的澄清说明“问题所在”):
您需要正确转义“符号,以便它包含在SPARQL查询字符串中。目前[i]之前的[”]表示文本字符串的结尾。难怪你收到错误信息。
有关转义规则,请参阅MSDN: String literals:
检查Querying with SPARQL examples的DotNetRdf文档。
它显示了如何运行SPARQL查询(使用DotNetRdf)以及如何将变量值注入查询(您尝试使用“+ ns +”和“i”)。
此外: