是否有RDF引擎会验证格式错误的rdf:JSON类型字面量?
关于RDF引擎验证rdf:JSON类型字面量的问题
示例RDF数据
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>. @prefix ex: <http://example.com/>. @prefix xsd: <http://www.w3.org/2001/XMLSchema#>. ex:bob ex:has '{"name": robert"}'^^rdf:JSON . ex:bob ex:at "204453"^^xsd:dateTime .
Apache Jena对xsd:dateTime的验证示例
使用Jena的riot命令验证上述数据时,会检测出xsd:dateTime字面量的格式错误:
$ ~/Downloads/apache-jena-4.7.0/bin/riot --validate file.ttl 11:48:47 WARN riot :: [line: 6, col: 14] Lexical form '204453' not valid for datatype XSD dateTime
问题解答
存在能够验证rdf:JSON类型字面量的RDF引擎:
- Apache Jena:新版本(如4.10.0及以上)的
riot --validate命令会校验rdf:JSON字面量的语法合法性。针对你提供的不规范JSON({"name": robert"}缺少字符串引号),会抛出对应的警告或错误,提示JSON格式不符合规范。 - RDF4J:在解析或验证RDF数据时,同样会检查rdf:JSON字面量的语法正确性,若格式不规范会返回验证失败的结果。
内容的提问来源于stack exchange,提问作者justin2004
相关产品推荐
相关产品推荐

