Copyright © 2012-2026 World Wide Web Consortium. W3C® liability, trademark and permissive document license rules apply.
N-Quads 是一种基于行的纯文本格式,用于编码 RDF 数据集。
RDF 1.2 N-Quads 引入了三元组项 作为第四类 RDF 术语, 它可以用作另一个 对象 的 三元组, 从而可以对其他语句作出语句。 RDF 1.2 N-Quads 还增加了对 带方向的语言标记字符串的支持。
本节描述本文档在发布时的状态。当前 W3C 出版物的列表以及本技术报告的最新修订版可在 W3C 标准和草案 索引中找到。
本文档是 RDF 1.2 文档套件的一部分。 N-Quads 格式是一种基于行的 RDF 语法, 它是 N-Triples [RDF12-N-TRIPLES] 的扩展。 主要区别在于,N-Quads 允许在表示一个 RDF 数据集的单个文档中编码多个图。
本文档由 RDF 与 SPARQL 工作组作为 工作草案发布,使用 推荐标准 轨道。
作为工作草案发布并不意味着 得到 W3C 及其成员的认可。
这是一份草案文档,可能会在任何时候被其他文档更新、替换或废弃。 将本文档作为非进行中的工作来引用是不合适的。 此即将发布的推荐标准的未来更新可能会纳入 新特性。
本文档由一个依据 W3C 专利 政策 运作的组制作。 W3C 维护一份与该组交付成果相关的 任何专利 披露的公开列表; 该页面还包括 披露专利的说明。实际知晓某项专利的个人,如果其认为该专利包含 必要权利要求, 必须依照 W3C 专利政策第 6 节 披露该信息。
本文档受 2025 年 8 月 18 日 W3C 流程文档管辖。
本节是非规范性的。
本文档定义了 N-Quads,一种用于 RDF [RDF12-CONCEPTS] 的具体语法, 也是 N-Triples [RDF12-N-TRIPLES] 的扩展。 N-Quads 是一种易于解析、基于行的 RDF 数据集 具体语法 [RDF12-CONCEPTS]。
与 N-Triples 一样,N-Quads 文档可以包含一种解析指令, 用于声明内容的 RDF 版本。 参见2.2 版本声明。
N-Quads 语句是 RDF 术语的序列,表示一个 RDF
三元组的
主语、
谓语和
宾语,
以及一个可选的
图名,
用于标识在 RDF 数据集内与该三元组相关联的
命名图,
也称为 四元组。
这些项可以由空白(spaces和/或 tabs)分隔。
该序列以句点(.)结束,
后面可选地跟随空白和/或注释,
以及一个换行符(在文档末尾可选)。
<http://one.example/subject1> <http://one.example/predicate1> <http://one.example/object1> <http://example.org/graph3> . # comments here
# or on a line by themselves
_:subject1 <http://an.example/predicate1> "object1" <http://example.org/graph1> .
_:subject2 <http://an.example/predicate2> "object2" <http://example.org/graph5> .
由 N-Quads 文档表示的 RDF
数据集恰好包含每个与 N-Quads
statement 产生式匹配的
四元组。
本规范扩展了 RDF 1.1 N-Quads [N-QUADS] 中定义的原始 N-Quads 语法, 以支持 RDF 1.2 概念与抽象数据模型 [RDF12-CONCEPTS] 引入的新特性。 此扩展完全向后兼容。
本节是非规范性的。
N-Quads 文档允许以文本形式写下一个
RDF
数据集。
RDF 数据集由简单语句组成,
这些简单语句由
主语、
谓语、
宾语、
一个可选的
图
名
和可选的空行构成。
注释可以写在不属于
另一个词法标记的 # 之后,并持续到行尾。
简单语句使用可选的命名图, 扩展了 [RDF12-N-TRIPLES] 中的 简单三元组定义。
最简单的语句是由
(主语、
谓语、
宾语)术语组成的序列,
形成一个 RDF
三元组,
以及一个可选的
图名
(一个空白节点标识符
或 IRI)
构成,用于表示该三元组所属的
数据集中的
命名图,
并以句点(.)结束。
空白(spaces和/或 tabs)可以围绕各术语,
除非在语法中注明其具有重要意义。
注释被视为空白,并且可以写在不属于
另一个词法标记的 # 之后,一直持续到行尾。
图名可以省略,在这种情况下,三元组被认为是 RDF 数据集的 默认图 的一部分。
<http://example.org/#spiderman> <http://www.perceive.net/schemas/relationship/enemyOf> <http://example.org/#green-goblin> <http://example.org/graphs/spiderman> .
N-Quads 语言自其起源以来已经演进,RDF 1.2
添加了新的语法。
RDF 1.2 N-Quads 引入了
VERSION 指令,
以及可选的 version 媒体类型参数。
在分别序列化和解析带有新特性的 N-Quads 时,例如
初始文本方向
或三元组项,
作者和解析器可以使用这些指令来声明和检测新语法形式的使用;
类似地,
HTTP 客户端和服务器可以使用 version 媒体类型
参数。
与 N-Triples 一样,版本声明区分大小写。
VERSION "1.2"
<http://example.org/#spiderman> <http://www.perceive.net/schemas/relationship/enemyOf> <http://example.org/#green-goblin> <http://example.org/#graph> .
通过 HTTP 提供内容时,服务器可以使用可选的 version 媒体类型参数
声明版本:
GET /document.nq HTTP/1.1
Host: example.com
Accept: application/n-quads; version=1.2
有关使用版本声明的更多考量,请参见 [RDF12-TURTLE] 中的 版本声明。
三元组项
被表示为一个 tripleTerm,其中包含
subject、
predicate 和
object,
前面加上 <<(,
后面跟随 )>>。
请注意,三元组项
可以嵌套。
_:e38 <ex:familyName> "Smith" .
_:anno <http://www.w3.org/1999/02/22-rdf-syntax-ns#reifies> <<( _:e38 <http://example.com/jobTitle> "Designer" )>> .
_:anno <http://example.com/accordingTo> _:e22 .
与 N-Triples 中一样,IRI 只能写作已解析的
IRI。
IRI 前面带有 <,
后面跟随 >,
并且可以包含数字转义序列。
例如 <http://example.org/#green-goblin>。
与 N-Triples 中一样, 字面量用于标识字符串、 数字、日期等值。
字面量(语法产生式 Literal)
具有一个词法形式,后面跟随
语言标签
(可能包含初始文本方向)、
一个数据类型 IRI,
或者两者都没有。
词法形式的表示由一个
起始定界符 "、
一串允许的字符,或
数字转义序列或
字符串转义序列,
以及一个结束定界符组成。
字面量不得包含字符 "、
LF 或
CR,
除非它们以转义形式出现。
此外,\
不得出现在任何带引号字面量中,除非作为转义序列的一部分;
" 字符
只能使用转义序列包含在带引号字面量中。
对应的词法形式
是处理任何转义序列之后,定界符之间的字符。
如果存在,LANG_DIR
终结符匹配语言标签
以及可选的初始文本方向。
语言标签
前面带有 @,
并且如果存在,初始文本方向
会通过 --
与语言标签分隔。
如果没有语言标签,则可以有一个数据类型 IRI,
前面带有 ^^。
如果既没有数据类型 IRI,也没有语言标签,那么
它就是一个简单字面量,
其数据类型为 http://www.w3.org/2001/XMLSchema#string。
与 N-Triples 中一样,
RDF 空白节点表示为
_:
后跟与
BLANK_NODE_LABEL
产生式匹配的空白节点标签。
非正式地说,
_:
之后的第一个字符要么是
PN_CHARS_U
匹配的字符,要么是一个数字。任何后续字符(如果存在)由
PN_CHARS
或 . 匹配,
但 .
不允许作为最后一个字符。
会为文档中每个唯一的 空白节点标识符分配一个新的 RDF 空白节点。 重复使用同一个 空白节点标识符 会标识同一个空白节点。
_:alice <http://xmlns.com/foaf/0.1/knows> _:bob .
_:bob <http://xmlns.com/foaf/0.1/knows> _:alice .
本节定义了 N-Quads 的一种规范形式, 其布局已完全指定。 该语言的语法保持不变。
规范 N-Quads 扩展了
[RDF12-N-TRIPLES] 中的
规范 N-Triples,
以包含 graphLabel。
虽然 N-Quads 语法允许对 RDF 数据的表示和布局作出选择,
但 N-Quads 的规范形式为任何四元组提供唯一的语法表示。
每个码点
只能由
UCHAR、
ECHAR
或未编码字符中的一种来表示,
其中相关产生式允许对表示方式作出选择。
每个四元组都完全表示在单独一行中,并使用指定的空白。
规范 N-Quads 对布局有以下附加约束:
subject、
predicate、
object
和 graphLabel
之后,不得使用空白;
其中任何一个之后的空白必须是一个单独的 space。
VERSION 指令。
http://www.w3.org/2001/XMLSchema#string
数据类型的
字面量
不得使用 数据类型 IRI 作为
literal 的一部分,
并且仅使用 STRING_LITERAL_QUOTE 表示。
HEX 必须仅使用数字
([0–9])
和大写字母([A–F])。
LANG_DIR 中的字母字符必须仅使用
小写字母([a–z]),
并将任何大写字母大小写映射为小写。
STRING_LITERAL_QUOTE 内:
EOL 必须是一个单独的 LF。
EOL 必须提供。除标记为非规范性的章节外,本规范中的所有编写指南、图表、示例和注释均为非规范性的。除此之外,本规范中的所有内容都是规范性的。
本文档中的关键词 MAY、MUST、MUST NOT 和 SHOULD 应按 BCP 14 [RFC2119] [RFC8174] 中所述解释,且仅当它们如这里所示以全 大写形式出现时才如此解释。
本规范为以下对象定义一致性标准:
符合要求的 N-Quads 文档是一个 RDF
字符串,
它符合 5. N-Quads 语法
中定义的语法和附加约束,
并以 nquadsDoc 产生式开始。
N-Quads 文档会序列化一个 RDF 数据集。
N-Quads 文档没有提供序列化 RDF 数据集中可能存在的空图的方法。
符合要求的 规范 N-Quads 文档是一个遵循规范 N-Quads 附加约束的 N-Quads 文档。
符合要求的 N-Quads 解析器是一个能够代表应用程序 读取 N-Quads 文档的系统。 它会使序列化的 RDF 数据集 (如 6. 解析 中所定义) 对应用程序可用,通常通过某种形式的 API。
标识 N-Quads 语言的 IRI 是:http://www.w3.org/ns/formats/N-Quads
N-Quads 的媒体类型是 application/n-quads。
N-Quads 的内容编码始终为 UTF-8。
媒体类型注册表单见 N-Quads 媒体类型。
原始规范
N-Quads:
用上下文扩展 N-Triples
提议使用媒体类型 text/x-nquads,并采用
7 位 US-ASCII 编码。
N-Quads 文档是一个以 UTF-8 [RFC3629] 编码的 RDF
字符串。
只允许
U+0000 到 U+D7FF
以及 U+E000 到 U+10FFFF
范围内的 Unicode 标量值。
这排除了
代理码点,
范围为 U+D800 到 U+DFFF。
终结符之外允许使用空白(spaces和/或 tabs)。
下面以大写形式表示的规则名指示空白在何处具有重要意义。
在产生式 STRING_LITERAL_QUOTE
中,空白具有重要意义。
空行,由仅包含空白和/或
注释组成,
可以出现在允许 statement 产生式出现的任何位置,
并被视为空白。
与 N-Triples [RDF12-N-TRIPLES]
一样,N-Quads 只允许水平空白(spaces 或 tabs)。
N-Quads 中的注释从
# 开始,
该字符位于 IRIREF 或 STRING_LITERAL_QUOTE 之外,
并一直持续到行尾
——由字符
CR 或
LF 标记——
或者在注释标记之后没有行尾时持续到文件末尾。
注释被视为空白。
此处使用的 EBNF 在 XML 1.0 [EBNF-NOTATION] 中定义。
转义序列规则与 N-Triples [RDF12-N-TRIPLES] 和 Turtle
[RDF12-TURTLE] 相同。
但是,由于只允许
STRING_LITERAL_QUOTE
产生式,因此字面量中的换行必须被转义。
'VERSION' 终结符位于单引号中,
以表示它区分大小写。
| [1] | nquadsDoc |
::= | statement?
(EOL statement)* EOL?
|
| [2] | statement |
::= | directive |
quad
|
| [3] | directive |
::= | versionDirective |
| [4] | versionDirective |
::= | 'VERSION' versionSpecifier |
| [5] | versionSpecifier |
::= | STRING_LITERAL_QUOTE |
| [6] | quad |
::= | subject predicate object graphLabel? '.' |
| [7] | subject |
::= | IRIREF | BLANK_NODE_LABEL |
| [8] | predicate |
::= | IRIREF |
| [9] | object |
::= | IRIREF | BLANK_NODE_LABEL | literal | tripleTerm
|
| [10] | graphLabel |
::= | IRIREF | BLANK_NODE_LABEL |
| [11] | literal |
::= | STRING_LITERAL_QUOTE (('^^' IRIREF)
| LANG_DIR)?
|
| [12] | tripleTerm |
::= | '<<(' subject predicate object ')>>' |
| [14] | IRIREF |
::= | '<' ([^#x00-#x20<>"{}|^`\]
| UCHAR)* '>'
|
| [15] | BLANK_NODE_LABEL |
::= | '_:' (PN_CHARS_U | [0-9]) ((PN_CHARS
| '.')* PN_CHARS)?
|
| [16] | LANG_DIR |
::= | '@' [a-zA-Z]+ ('-' [a-zA-Z0-9]+)* ('--' [a-zA-Z]+)? |
| [17] | STRING_LITERAL_QUOTE |
::= | '"' ([^#x22#x5C#x0A#x0D] | ECHAR | UCHAR)* '"' |
| [18] | UCHAR |
::= | ('\u' HEX HEX HEX HEX) | ('\U' HEX HEX HEX HEX HEX HEX HEX HEX) |
| [19] | ECHAR |
::= | '\' [tbnrf\"'] |
| [20] | PN_CHARS_BASE |
::= | [A-Z] |
| |
[a-z] |
||
| |
[#xC0-#xD6] |
||
| |
[#xD8-#xF6] |
||
| |
[#xF8-#x02FF] |
||
| |
[#x0370-#x037D] |
||
| |
[#x037F-#x1FFF] |
||
| |
[#x200C-#x200D] |
||
| |
[#x2070-#x218F] |
||
| |
[#x2C00-#x2FEF] |
||
| |
[#x3001-#xD7FF] |
||
| |
[#xF900-#xFDCF] |
||
| |
[#xFDF0-#xFFFD] |
||
| |
[#x00010000-#x000EFFFF] |
||
| [21] | PN_CHARS_U |
::= | PN_CHARS_BASE | '_' |
| [22] | PN_CHARS |
::= | PN_CHARS_U | '-' | [0-9] | #xB7 | [#x0300-#x036F] | [#x203F-#x2040] |
| [23] | HEX |
::= | [0-9] | [A-F] | [a-f] |
| [24] | EOL |
::= | [#x0D#x0A]+ |
此语法的文本版本可在此处获得。
本文档使用一些特定的终结符字面量字符串 [EBNF-NOTATION]。 为了明确这些终结符字面量字符串所使用的 Unicode 码点,下表 描述了本文档中使用的特定字符和序列。
| 码位 | 字形 | 说明 |
|---|---|---|
U+0008 |
BS |
退格 |
U+0009 |
HT |
水平制表符 |
U+000A |
LF |
换行 |
U+000B |
VT |
垂直制表符 |
U+000C |
FF |
换页 |
U+000D |
CR |
回车 |
U+0022 |
" |
引号 |
U+0023 |
# |
数字符号 |
U+002D |
- |
连字符 |
U+002E |
. |
句点 |
U+0030 |
0 |
数字零 |
U+0039 |
9 |
数字九 |
U+003B |
: |
冒号 |
U+003C |
< |
小于号 |
U+003E |
> |
大于号 |
U+0040 |
@ |
at 符号 |
U+0041 |
A |
拉丁大写字母 A |
U+0046 |
F |
拉丁大写字母 F |
U+005C |
\ |
反斜杠 |
U+005F |
_ |
下划线 |
U+0061 |
a |
拉丁小写字母 a |
U+007A |
z |
拉丁小写字母 z |
U+007F |
DEL |
删除 |
U+00B7 |
· |
间隔点 |
U+203F |
‿ |
下连符 |
U+2040 |
⁀ |
字符连符 |
其他短终结符字面量字符串由特定的 Unicode 字符序列组成:
spaceU+0020<<(U+003C,
后跟一个左括号字符,其码点为 U+0028)>>U+0029,
后跟两个连接在一起的大于号字符,每个字符的码点为 U+003EU+003E^^U+005E_:_ 后跟 :--- 字符解析 N-Quads 需要由两个项目组成的状态:
bnodeLabels
— 从字符串到空白节点的映射。xsd:string curVersion –
用于将文档解析为 四元组的 RDF 版本。
如果作为媒体类型的一部分指定,
curVersion 的默认值取自 version 参数。
version 的可接受值在 [RDF12-CONCEPTS] 中的
2.1 版本标签中定义。
版本声明只是一个提示;
本规范不强制要求任何基于 curVersion 的解析器行为,
但当解析器遇到与 curVersion 值不匹配的特性时,
可以发出错误或警告。
此表将产生式和词法标记映射到 RDF 术语 或 RDF 术语的组成部分, 如6. 解析中所列:
| 产生式 | 类型 | 过程 |
|---|---|---|
| versionSpecifier | 字面量 | curVersion 取自一个字面量,
使用匹配的 RDF 字符串
词法形式和 xsd:string 数据类型。
|
| BLANK_NODE_LABEL | 空白节点 |
_: 后的字符串
是 bnodeLabels 中的一个键。
如果映射中没有对应的空白节点,
则分配一个。
|
| IRIREF | IRI |
取 <
与 > 之间的字符,
并对转义序列进行反转义,
以形成 IRI。
所得 IRI 必须符合
通用 IRI 语法的语法限制,
并且应该符合 [RFC3986]
的第 3.3 节,
且符合相应 IRI 方案规范所施加的任何更窄限制。
|
| LANG_DIR | 语言标签 |
@ 后面的字符
构成语言标签
以及可选的初始文本方向,
如果匹配的字符包含
--。语言标签 必须根据 [BCP47] 的 第 2.2.9 节 形成良好。 如果存在,初始文本方向 必须是 ltr 或 rtl。
|
| STRING_LITERAL_QUOTE | RDF 词法形式 |
取最外层引号(")之间的字符,
并对转义序列进行反转义,
以形成词法形式的
字符串。
|
| literal | 字面量 |
该字面量具有第一个规则参数
STRING_LITERAL_QUOTE
的词法形式,
并且根据输入匹配到的规则,
要么具有来自 LANG_DIR
的语言标签
以及可选的初始文本方向,
要么具有 iri 的数据类型 IRI。
如果
LANG_DIR
规则匹配,
则语言标签
和初始文本方向
取自 LANG_DIR。
如果没有初始文本方向,
则数据类型为 rdf:langString。
如果存在初始文本方向,
则数据类型为 rdf:dirLangString。
如果既没有匹配 LANG_DIR,
也没有匹配数据类型 IRI,
则该字面量的数据类型为 xsd:string。
|
| tripleTerm | 三元组项 |
三元组项
由从
subject、
predicate 和
object 产生式构造出的术语组成。
|
由于检测输入错误的处理器可能导致 数据集包含的三元组少于输入中描述的数量 (包括完全没有三元组), 因此消费者在使用所得数据集时, 应考虑任何被发出的错误信息; 所得数据集可能不完整,和/或包含 类型不当 或格式不良的术语。
N-Quads 文档定义了一个
RDF 数据集,
该数据集由 RDF 图组成,而 RDF 图由一组
RDF
三元组组成。
statement 产生式生成一个
由为
subject、
predicate 和
object
构造出的术语定义的三元组。
该 RDF 三元组会被添加到由
产生式 graphLabel 标记的
图中;
如果不存在 graphLabel,则该三元组会被添加到 RDF 数据集的默认图中。
本节是非规范性的。
N-Quads 格式用于表达任意应用程序数据, 其中可能包括个人身份信息(PII) 或其他可能被视为敏感的信息。 建议发布此类信息的作者仔细 考虑发布此类信息的需求和用途, 以及数据预期被消费并可能被披露的地区所适用的法规(例如 GDPR、 CCPA、 其他法规), 特别是是否需要授权措施来访问数据。
本节是非规范性的。
STRING_LITERAL_QUOTE
产生式允许使用未转义的控制字符。
尽管本规范不会直接将此内容暴露给最终用户,
但它可能通过用户代理呈现,这可能导致所呈现的文本
因这些字符的呈现而被混淆。
N-Quads 是一种通用断言语言; 应用程序可以评估给定数据,以推断更多断言或解引用 IRI, 从而引发该 IRI 方案的安全考量。 特别请注意 [RFC3023] 第 10 节中关于 HTTP IRI 的隐私问题。 从不准确或恶意数据源获得的数据可能导致不准确或误导性的结论, 以及对非预期 IRI 的解引用。 必须注意使对所咨询资源的信任与 数据预期用途的敏感性保持一致; 对潜在医学治疗的推断可能需要不同于 旅行规划推断的信任级别。
N-Quads 语言用于表达任意应用程序数据; 安全考量会随使用领域而异。 适用于文本的安全工具和协议 (例如 PGP 加密、校验和验证、受密码保护的压缩) 也可用于 N-Quads 文档。 必须施加反映嵌入信息敏感性的安全/隐私协议。
N-Quads 可以表达会呈现给用户的数据,例如 RDF Schema 标签。 渲染从不受信任的 N-Quads 文档中检索到的字符串, 或使用未转义字符的应用程序, 应该使用警告和其他适当手段,以限制恶意字符串 被用来误导读者的可能性。 XML 媒体类型注册中的安全考量([RFC3023] 第 10 节) 围绕任意数据和标记的表达提供了额外指导。
N-Quads 使用 IRI 作为术语标识符。 解释以 N-Quads 表达的数据的应用程序应该处理 国际化 资源标识符(IRI) [RFC3987] 第 8 节,以及 统一资源 标识符(URI):通用语法 [RFC3986] 第 7 节中的安全问题。
多个 IRI 可能 具有相同外观。 不同文字系统中的字符可能看起来相似(例如, 西里尔字母“о”可能看起来类似于拉丁字母“o”)。 一个字符后跟组合字符,可能与另一个字符具有相同的视觉表示 (例如,拉丁小写字母“E”后跟组合锐音符 与带锐音符的拉丁小写字母“E”具有相同视觉表示)。 任何编写或解释 N-Quads 数据的人或应用程序 都必须谨慎使用与预期语义匹配的 IRI, 并避免使用可能看起来相似的 IRI。 关于匹配视觉上相似字符的更多信息可见于 Unicode 安全考量 [UNICODE-SECURITY] 和 国际化 资源标识符(IRI) [RFC3987] 第 8 节。
N-Quads 的互联网媒体类型(以前称为 MIME 类型)是“application/n-quads”。
以下信息已提交给互联网工程指导组(IESG),以供审查、 批准并向 IANA 注册。
versionversion 的可接受值
在 [RDF12-CONCEPTS] 中的
2.1 版本标签中定义。
profile\uXXXX(U+0000 到 U+FFFF)
或 \UXXXXXXXX 语法(用于最高到 U+10FFFF 的码点)
表示,其中 X 是十六进制数字 [0-9A-F]
profile 参数可由客户端用于在内容协商过程中表达其偏好,
并可由服务器用于指示关于响应的
附加信息。
如果客户端给出了 profile 参数,服务器应该
返回一个遵循列表中服务器可识别的所有 profile 的文档。
服务器不应仅基于 profile 值而响应错误。
如果服务器给出了 profile 参数,客户端可以选择忽略它。
建议 profile URI 可被解引用, 并在该 URI 处提供有用的文档。
当作为
媒体类型参数
[RFC4288] 用于
HTTP Content-Type 标头
或
HTTP Accept 标头
[RFC7231]
中时,如果 profile 参数的值包含特殊字符,例如空白,
包括用于分隔多个 profile URI 的任何空格,
则需要将该值放在引号(ASCII
")中。
需要特别注意,profile 参数的值
包含一个或多个 URI,而不是 IRI。因此,可能需要
按照 [RFC3987]
中的第 3 节 IRI
与 URI 之间的关系
所规定,在 IRI 和 URI 之间进行转换。
本节是非规范性的。
本节是非规范性的。
RDF 1.1 版的编辑感谢以下人员作出的宝贵 贡献:Gregg Kellogg、Andy Seaborne、Eric Prud'hommeaux、Dave Beckett、David Robillard、Gregory Williams、 Antoine Zimmermann、Sandro Hawke、Richard Cyganiak、Pat Hayes、 Henry S. Thompson、Bob Ferris、Henry Story、Andreas Harth、Lee Feigenbaum、Peter Ansell、Evan Patton 和 David Booth。
本规范是由 Guus Schreiber 和 David Wood 主持的 RDF 工作组成员广泛审议的成果。 它借鉴了 Richard Cyganiak、Andreas Harth 和 Aidan Hogan 编辑的 N-Quads: 用上下文扩展 N-Triples 中的早期规范。
本节是非规范性的。
RDF 1.2 版的编辑感谢 Andy Seaborne 作出的宝贵贡献。
除编辑外,以下人员也为本规范作出了贡献: Andy Seaborne、Denis Ah-Kang、Jim Smart、Niklas Lindström、Peter F. Patel-Schneider、Pierre-Antoine Champin、Ted Thibodeau Jr 和 Thomas Tanon
RDF 与 SPARQL 工作组的成员包括
James Anderson、Dörthe Arndt、Jerven Bolleman、Erich Bremer、Pierre-Antoine Champin、Souripriya Das、
Enrico Franconi、Adrian Gschwend、Olaf Hartig、Gregg Kellogg†、Ora Lassila、Niklas Lindström、Thomas
Lörtsch、Peter Patel-Schneider、Dave Raggett、Felix Sasaki、Andy Seaborne、Ruben Taelman、Thomas
Pellissier Tanon、Ted Thibodeau Jr、Dominik Tomaszuk、Gregory Williams、William Van Woensel 和 Antoine
Zimmermann
† Gregg Kellogg 于 2025 年 9 月去世。我们感激地铭记他对 RDF 及更广泛相关标准生态系统的巨大贡献。
是否确认任务组成员?贡献者列表并不容易找到。
本节是非规范性的。
本规范扩展了 RDF 1.1
N-Quads
[N-QUADS]
中定义的原始 N-Quads 语法,
以支持 RDF 1.2
概念与抽象数据模型
[RDF12-CONCEPTS]
引入的新特性。
此扩展完全向后兼容:
任何符合旧版本的文档都符合新版本,并会解析为同一个图。
此外,任何符合新版本且只包含 RDF 1.1 特性的文档也
符合旧版本
(VERSION 指令除外;见2.2 版本声明)。
最后,所有新的语法构造在旧语法中都无效。
这意味着任何使用 RDF 1.2 特性的 N-Quads 文档都不
符合本规范的先前版本,也不能在先前版本下被
解释为不同的图。
更具体地说,已经作出了以下变更:
PN_CHARS_U
语法产生式,以与 Turtle 保持一致。
以前,PN_CHARS_U
在 N-Triples 和 N-Quads 中包含“:”,但在 Turtle 和 TriG 中不包含。
PN_CHARS_U 是
BLANK_NODE_LABEL 的组成部分。
LANGTAG 终结符产生式改为
LANG_DIR,
以包含可选的初始文本方向。
profile 媒体类型参数,
允许客户端和服务器为 N-Quads 表示传达附加 profile 信息,
而不改变其语义。本节是非规范性的。
本节是非规范性的。
本规范中没有列出任何议题。
Referenced in:
Referenced in:
Referenced in:
Referenced in:
Referenced in:
Referenced in:
Referenced in:
Referenced in:
Referenced in:
Referenced in: