JSON-LD
JSON-LD (JavaScript Object Notation for Linked Data) は JSON を利用して Linked Data を表現する手法である。JSON-LD の目標のひとつは、開発者が既存の JSON を JSON-LD に変換する際の労力をできる限り減らすことであった。[1] JSON-LD は従来の JSON と同様の方法でデータをシリアライズすることができる。[2] 当初は JSON for Linked Data Community Group によって開発されていた[3]が、その後、評価・改善・標準化のため[4]に RDF Working Group に移され[5]、現在は JSON-LD Working Group によってメンテナンスされている。[6] JSON-LD はW3C勧告である。 設計JSON-LD は JSON から RDF モデルへの追加のマッピングを提供する、「コンテキスト」(context) の概念に基づいて設計されている。コンテキストはJSON ドキュメント内のオブジェクトプロパティをオントロジー内の概念に結びつける。JSON-LD 記法を RDF に変換するために、JSON-LD は値を指定した型やタグ付けされた言語に強制することができる。コンテキストは直接 JSON-LD ドキュメントに埋め込むことも、別のファイルに入れて、他のドキュメント(HTTP リンクヘッダを介した従来の JSON ドキュメント)から参照することもできる。 例{
"@context": {
"name": "http://xmlns.com/foaf/0.1/name",
"homepage": {
"@id": "http://xmlns.com/foaf/0.1/workplaceHomepage",
"@type": "@id"
},
"Person": "http://xmlns.com/foaf/0.1/Person"
},
"@id": "https://me.example.com",
"@type": "Person",
"name": "John Smith",
"homepage": "https://www.example.com/"
}
上の例では、FOAF (Friend of a Friend) オントロジーに基づいて表された人間である。まず、name と homepage という二つの JSON プロパティと Person という型は FOAF 語彙の概念にマッピングされ、homepage プロパティの値は @id 型であると指定されている。言い換えれば、homepage の id はコンテキストの定義によって IRI であることを指定されている。RDF モデルに基づいて、ドキュメントの中で表される人物を IRI によって明確に識別することができる。解決可能な IRI を使うことで、さらに多くの情報を含むRDF ドキュメントを参照読み込みできるため、クライアントはそれらのリンクに従うだけで新しいデータを発見できる。この原則は Follow Your Nose として知られている。[7] この例のようにすべてのデータに意味論的な注釈を付けることによって、RDF プロセッサはドキュメントが人物 ( 事例この記法は Schema.org[8]、 Google Knowledge Graph[9]、[10] で主に検索エンジン最適化活動で利用されている。 また、健康情報学[11]や出所情報を表すアプリケーションなどにも使われている。[12] 他にも Activity Streams という、潜在的・完了済みの行動に関する情報のやりとりのためのフォーマットの基礎でもあり、[13] 分散型 SNS プロトコルである ActivityPub で利用されている。[14] さらに、モノのインターネット (IoT) の文脈でも利用され、JSON-LD ドキュメントである Thing Description[15] では、ネットワークに面した IoT デバイスのインターフェースを表現するのに利用される。 参照
参考文献
外部リンク |