JSON-LDからN-Quadsへの変換 — Numio
jsonld.toRDF で JSON-LD を N-Quads 形式の RDF に変換します。各ステートメントは主語・述語・目的語(名前付きグラフならグラフ名も)の 1 行になり、@id のないノードは _:b0 のような空白ノードになります。
JSON-LD の構造化データを、N-Quads をインポートできるトリプルストアや RDF ライブラリに読み込む。
こんなときに使えます
- JSON-LD の構造化データを、N-Quads をインポートできるトリプルストアや RDF ライブラリに読み込む。
- 検索エンジンや RDF ツールが JSON-LD からどの RDF トリプルを抽出するかを正確に確認する。
使い方
- JSON-LD ドキュメントを JSON-LD エディターに貼り付けます。
- N-Quads の出力を確認します。@type は rdf:type のトリプルになり、ネストしたオブジェクトはリンクされた空白ノードになります。
- 各行を .nq ファイルにコピーします。
JSON-LD
{
"@context": {"@vocab": "http://schema.org/"},
"@type": "Person",
"name": "Jane Doe",
"address": {
"@type": "PostalAddress",
"addressLocality": "Seattle"
}
}N-Quads
_:b0 <http://schema.org/address> _:b1 . _:b0 <http://schema.org/name> "Jane Doe" . _:b0 <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://schema.org/Person> . _:b1 <http://schema.org/addressLocality> "Seattle" . _:b1 <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://schema.org/PostalAddress> .
仕様と制限
空白ノードのラベル(_:b0、_:b1)は変換中に割り当てられ、正規化されていません。安定したラベルが必要なら normalized のページを使ってください。
トリプルはデフォルトグラフにあるので、各行に 4 番目の要素はありません。名前付きグラフ(@id を持つ @graph)ではグラフ IRI が加わります。
jsonld.js を使ってブラウザで実行されます。https://schema.org/ のようなリモートの @context はブラウザが取得します。ダウンロードに失敗すると、その context URL を含むエラーが表示されます。
FAQ
N-Quads の出力は有効な N-Triples ですか?
この例のようにすべてがデフォルトグラフにある場合、各行は有効な N-Triples でもあります。名前付きグラフのデータには、N-Triples で許されないグラフ列が加わります。
普通の文字列や数値はどう書かれますか?
文字列は "Jane Doe" のようなプレーンリテラルになります。JSON の整数、小数、真偽値は型付きリテラルになります:"3"^^xsd:integer、"1.5E0"^^xsd:double、"true"^^xsd:boolean(完全な IRI で書かれます)。
一部のキーがないのはなぜですか?
トリプルになるのは @context によって IRI に展開されるキーだけです。定義されていない term は削除されます。