本文へスキップ

JSON-LDからN-Quadsへの変換 — Numio

jsonld.toRDF で JSON-LD を N-Quads 形式の RDF に変換します。各ステートメントは主語・述語・目的語(名前付きグラフならグラフ名も)の 1 行になり、@id のないノードは _:b0 のような空白ノードになります。

JSON-LD の構造化データを、N-Quads をインポートできるトリプルストアや RDF ライブラリに読み込む。

JSON-LD

N-Quads

こんなときに使えます

  • JSON-LD の構造化データを、N-Quads をインポートできるトリプルストアや RDF ライブラリに読み込む。
  • 検索エンジンや RDF ツールが JSON-LD からどの RDF トリプルを抽出するかを正確に確認する。

使い方

  1. JSON-LD ドキュメントを JSON-LD エディターに貼り付けます。
  2. N-Quads の出力を確認します。@type は rdf:type のトリプルになり、ネストしたオブジェクトはリンクされた空白ノードになります。
  3. 各行を .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 は削除されます。

仕様を確認する