

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# Neptune 中由 SPARQL 使用的 RDF 媒体类型
<a name="sparql-media-type-support"></a>

资源描述框架 (RDF) 数据可以通过多种不同方式序列化，SPARQL 可以使用或输出其中的大部分方式：

## Neptune SPARQL 使用的 RDF 序列化格式
<a name="sparql-serialization-formats"></a>
+ **RDF/XML** – RDF 的 XML 序列化，在 [RDF 1.1 XML 语法](https://www.w3.org/TR/rdf-syntax-grammar/)中定义。媒体类型：`application/rdf+xml`。典型文件扩展名：`.rdf`。
+ **N-Triples** – 基于行的纯文本格式，用于编码 RDF 图形，在 [RDF 1.1 N-Triples](https://www.w3.org/TR/n-triples/) 中定义。媒体类型：`application/n-triples`、`text/turtle` 或 `text/plain`。典型文件扩展名：`.nt`。
+ **N-Quads** – 基于行的纯文本格式，用于编码 RDF 图形，在 [RDF 1.1 N-Quads](https://www.w3.org/TR/n-quads/) 中定义。它是 N-Triples 的扩展。媒体类型：`application/n-quads` 或 `text/x-nquads`（使用 7 位 US-ASCII 编码时）。典型文件扩展名：`.nq`。
+ **Turtle** – 在 [RDF 1.1 Turtle](https://www.w3.org/TR/turtle/) 中定义的 RDF 文本语法，允许 RDF 图形完全使用紧凑自然的文本形式编写，并为常用使用模式和数据类型使用缩写。Turtle 提供了与 N-Triples 格式以及 SPARQL 的三元组模式语法一定水平的兼容性。媒体类型：`text/turtle`。典型文件扩展名：`.ttl`。
+ **TriG** – 在 [RDF 1.1 TriG](https://www.w3.org/TR/trig/) 中定义的 RDF 文本语法，允许 RDF 图形完全使用紧凑自然的文本形式编写，并为常用使用模式和数据类型使用缩写。TriG 是 Turtle 格式的扩展。媒体类型：`application/trig`。典型文件扩展名：`.trig`。
+ **N3 (Notation3)** – 在 [Notation3 (N3)：易于阅读的 RDF 语法](https://www.w3.org/TeamSubmission/n3/)中定义的一种断言和逻辑语言。N3 通过添加公式（作为图形本身的文字）、变量、逻辑含义和功能谓词，扩展了 RDF 数据模型，并且提供了对 RDF/XML 的文本语法替代。媒体类型：`text/n3`。典型文件扩展名：`.n3`。
+ **JSON-LD** - 在 [JSON-LD 1.0](https://www.w3.org/TR/json-ld/) 中定义的数据序列化和消息传送格式。媒体类型：`application/ld+json`。典型文件扩展名：`.jsonld`。
+ **TriX** – XML 格式的 RDF 序列化，在 [TriX：XML 格式的 RDF Triples](https://www.hpl.hp.com/techreports/2004/HPL-2004-56.html) 中定义。媒体类型：`application/trix`。典型文件扩展名：`.trix`。
+ **SPARQL JSON 结果** - RDF 序列化，使用 [SPARQL 1.1 查询结果 JSON 格式](https://www.w3.org/TR/sparql11-results-json)。媒体类型：`application/sparql-results+json`。典型文件扩展名：`.srj`。
+ **RDF4J 二进制格式** — 一种用于编码 RDF 数据的二进制格式，记录在 [RDF4J 二进制 RDF](https://rdf4j.org/documentation/reference/rdf4j-binary) 格式中。媒体类型：`application/x-binary-rdf`。

## Neptune SPARQL 使用的 SPARQL 结果序列化格式
<a name="sparql-serialization-formats-neptune-output"></a>
+ **SPARQL XML 结果** - SPARQL 查询语言提供的变量绑定和布尔值结果格式的 XML 格式，在 [SPARQL 查询结果 XML 格式（第二版）](https://www.w3.org/TR/rdf-sparql-XMLres/)中定义。媒体类型：`application/sparql-results+xml`。典型文件扩展名：`.srx`。
+ **SPARQL CSV 和 TSV 结果** - 使用逗号分隔值和制表符分隔值来表示 `SELECT` 查询的 SPARQL 查询结果，在 [SPARQL 1.1 查询结果 CSV 和 TSV 格式](https://www.w3.org/TR/sparql11-results-csv-tsv/)中定义。媒体类型：对于逗号分隔值为 `text/csv`，对于制表符分隔值为 `text/tab-separated-values`。典型文件扩展名：对于逗号分隔值为 `.csv`，对于制表符分隔值为 `.tsv`。
+ **二进制结果表** - 对 SPARQL 查询的输出进行编码的二进制格式。媒体类型：`application/x-binary-rdf-results-table`。
+ **SPARQL JSON 结果** - RDF 序列化，使用 [SPARQL 1.1 查询结果 JSON 格式](https://www.w3.org/TR/sparql11-results-json/)。媒体类型：`application/sparql-results+json`。

## Neptune 可用于导入 RDF 数据的媒体类型
<a name="sparql-serialization-formats-input"></a>

**[Neptune 批量加载程序](bulk-load.md)支持的媒体类型**
+ [N-Triples](https://www.w3.org/TR/n-triples/)
+ [N-Quads](https://www.w3.org/TR/n-quads/)
+ [RDF/XML](https://www.w3.org/TR/rdf-syntax-grammar/)
+ [Turtle](https://www.w3.org/TR/turtle/)

**SPARQL UPDATE LOAD 可以导入的媒体类型**
+ [N-Triples](https://www.w3.org/TR/n-triples/)
+ [N-Quads](https://www.w3.org/TR/n-quads/)
+ [RDF/XML](https://www.w3.org/TR/rdf-syntax-grammar/)
+ [Turtle](https://www.w3.org/TR/turtle/)
+ [TriG](https://www.w3.org/TR/trig/)
+ [N3](https://www.w3.org/TeamSubmission/n3/)
+ [JSON-LD](https://www.w3.org/TR/json-ld/)

## Neptune 可用于导出查询结果的媒体类型
<a name="sparql-serialization-formats-output"></a>

要指定 SPARQL 查询响应的输出格式，请随查询请求发送 `"Accept: {{media-type}}"` 标头。例如：

```
curl -H "Accept: application/nquads" ...
```

**SPARQL SELECT 可从 Neptune 输出的 RDF 媒体类型**
+ [SPARQL JSON 结果](https://www.w3.org/TR/sparql11-results-json)（这是默认值）
+ [SPARQL XML 结果](https://www.w3.org/TR/rdf-sparql-XMLres/)
+ **二进制结果表**（媒体类型 `application/x-binary-rdf-results-table`）
+ [逗号分隔值 (CSV)](https://www.w3.org/TR/sparql11-results-csv-tsv/)
+ [制表符分隔值 (TSV)](https://www.w3.org/TR/sparql11-results-csv-tsv/)

**SPARQL ASK 可从 Neptune 输出的 RDF 媒体类型**
+ [SPARQL JSON 结果](https://www.w3.org/TR/sparql11-results-json)（这是默认值）
+ [SPARQL XML 结果](https://www.w3.org/TR/rdf-sparql-XMLres/)
+ **布尔值**（媒体类型：`text/boolean`，表示“true”或“false”）

**SPARQL CONSTRUCT 可从 Neptune 输出的 RDF 媒体类型**
+ [N-Quads](https://www.w3.org/TR/n-quads/)（这是默认值）
+ [RDF/XML](https://www.w3.org/TR/rdf-syntax-grammar/)
+ [JSON-LD](https://www.w3.org/TR/json-ld/)
+ [N-Triples](https://www.w3.org/TR/n-triples/)
+ [Turtle](https://www.w3.org/TR/turtle/)
+ [N3](https://www.w3.org/TeamSubmission/n3/)
+ [TriX](https://www.hpl.hp.com/techreports/2004/HPL-2004-56.html)
+ [TriG](https://www.w3.org/TR/trig/)
+ [SPARQL JSON 结果](https://www.w3.org/TR/sparql11-results-json)
+ [RDF4J 二进制 RDF 格式](https://rdf4j.org/documentation/reference/rdf4j-binary)

**SPARQL DESCRIBE 可从 Neptune 输出的 RDF 媒体类型**
+ [N-Quads](https://www.w3.org/TR/n-quads/)（这是默认值）
+ [RDF/XML](https://www.w3.org/TR/rdf-syntax-grammar/)
+ [JSON-LD](https://www.w3.org/TR/json-ld/)
+ [N-Triples](https://www.w3.org/TR/n-triples/)
+ [Turtle](https://www.w3.org/TR/turtle/)
+ [N3](https://www.w3.org/TeamSubmission/n3/)
+ [TriX](https://www.hpl.hp.com/techreports/2004/HPL-2004-56.html)
+ [TriG](https://www.w3.org/TR/trig/)
+ [SPARQL JSON 结果](https://www.w3.org/TR/sparql11-results-json)
+ [RDF4J 二进制 RDF 格式](https://rdf4j.org/documentation/reference/rdf4j-binary)