如何使用SPARQL INSERT DATA查询插入带语言标记的文字?

时间:2014-05-21 14:47:12

标签: label sparql sesame rdfs

我在SPARQL中查询Sesame triplestore的问题。 我在Sesame工作台的“SPARQL Update”选项中输入此查询:

INSERT DATA { <http://www.example#test> rdfs:label "test_label"@en }

我会得到这个RDF结果:

<rdf:Description rdf:about="http://www.example#test">
     <rdfs:label xml:lang="en">test_label</rdfs:label>
</rdf:Description>

但我不知道如何编写查询以添加xml:lang="en"

根据我的查询,我有这个错误:

org.openrdf.query.UpdateExecutionException: org.openrdf.sail.SailException:
org.openrdf.rio.RDFParseException: Expected ':', found ' '

我无法为查询找到正确的语法。

1 个答案:

答案 0 :(得分:2)

您拥有的SPARQL更新查询是正确的。该错误是由Sesame版本2.7.11中的错误引起的(请参阅SES-2063)。

下一个补丁版本中将提供修复程序。与此同时,解决方法是重新构建您的查询,如下所示:

 INSERT { <http://www.example#test> rdfs:label "test_label"@en } WHERE {}