首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在RDF N-Triples中,是否可以接受任意字符串作为引用?

在RDF N-Triples中,是否可以接受任意字符串作为引用?
EN

Stack Overflow用户
提问于 2016-07-26 23:41:46
回答 1查看 54关注 0票数 3

在IRFRDF1.1N-Triple文档中,用于非文字主语/宾语/谓语的W3C结果被定义为尖括号(<>) 1中的字符串,即使它被称为IRI。

这就是为什么一些示例文件2具有简单的标识符,而其他解析器,如RDFLib,如果标识符不是具有方案:节的有效IRI,则会抛出异常?尽管RDF规范中使用了术语,但具有无效的非文字的RDF文件仍然是格式良好的IRI吗?

1

2

EN

回答 1

Stack Overflow用户

发布于 2016-07-27 08:27:26

这就是为什么一些示例文件只有简单的标识符,而其他解析器,如RDFLib,如果标识符不是使用

:节的有效IRI,就会抛出异常?

不是的。严格地说,您指向的示例文件不是语法正确的N-Triples。实际上,它根本不是N-Triple,而是N-Quads --一种不同的语法格式。但即使是N-Triples,这种形式的IRIs也是不正确的。

N-Triple建议说“IRI只能写成绝对IRI”(参见section 2.2) --绝对IRI在RFC3987中有语法上的定义。这是规范的,即使语法产品本身并不强制执行它。

但是,您在示例文件中看到的IRI可以被解释为相对IRI引用,并且一些N-Triples解析器已经进行了一定程度的扩展,以允许使用基本IRI取消相对IRI的引用。这可能就是为什么你有时会在野外看到这些语法错误的N-Triples文件的原因。它是该格式的非标准扩展。

RDF文件是否包含无效的非文字,尽管

规范中使用了术语,但IRIs仍然是格式良好的?

这取决于您使用的语法格式。在特定的具体语法中,格式良好性是文档的一个属性,N-Triple的规则与Turtle或RDF/XML的规则不同。

RDF本身在其抽象语法中强制要求IRIs符合RFC3987并且是绝对的,因此任何在处理时产生未解析的相对IRIs或不符合RFC的IRIs的RDF文档即使不是格式良好的,也肯定是无效的。

一些具体的语法格式(如RDF/XML、TriG、Turtle等)为IRI提供不同的速记机制(前缀名称、相对IRI+基础IRI等)。然而,正如我们在上面看到的,N-Triples没有这种内置的速记机制,所以任何非绝对的IRI都会使文档的格式不正确。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38594364

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档