コンテンツにスキップ

JSON-LD

出典: フリー百科事典『ウィキペディア(Wikipedia)』
JSON-LD 1.1
ステータス W3C Recommendation
開始年 2010
編集者
著者 Manu Sporny, Dave Longley, Gregg Kellogg, Markus Lanthaler, Niklas Lindström
元になった標準
ドメイン Semantic Web, Data Serialization
略称 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 プロセッサはドキュメントが人物 (@type) についての情報を含むことを識別することができ、プロセッサが FOAF 語彙を理解する場合にどのプロパティがその人物の name や homepage を指定しているのか判断することができる。

事例

[編集]

この記法は Schema.org[8]Google Knowledge Graph[9][10] で主に検索エンジン最適化活動で利用されている。 また、健康情報学[11]や出所情報を表すアプリケーションなどにも使われている。[12] 他にも Activity Streams という、潜在的・完了済みの行動に関する情報のやりとりのためのフォーマットの基礎でもあり、[13] 分散型 SNS プロトコルである ActivityPub で利用されている。[14] さらに、モノのインターネット (IoT) の文脈でも利用され、JSON-LD ドキュメントである Thing Description[15] では、ネットワークに面した IoT デバイスのインターフェースを表現するのに利用される。

参照

[編集]
  • Hypertext Application Language

参考文献

[編集]
  1. JSON-LD Syntax 1.1 (2010年7月16日). 2020年12月10日閲覧。
  2. On Using JSON-LD to Create Evolvable RESTful Services”. 2023年11月9日閲覧。, M. Lanthaler and C. Gütl in Proceedings of the 3rd International Workshop on RESTful Design (WS-REST 2012) at WWW2012.
  3. JSON for Linking Data Community Group”. json-ld.org. 2023年11月9日閲覧。
  4. JSON-LD 1.0, A JSON-based Serialization for Linked Data, W3C Recommendation 16 January 2014, (2014-01-16) 2020年12月10日閲覧。
  5. RDF Working Group”. w3.org. 2023年11月9日閲覧。
  6. JSON-LD Working Group”. w3.org. 2023年11月9日閲覧。
  7. Linked Data Patterns, Chapter 5: Follow Your Nose (2023年6月7日). 2023年6月7日閲覧。
  8. Data Model (英語). Schema.org. 2018年6月20日閲覧。
  9. Understanding structured data”. Bendev Junior. 2023年11月9日閲覧。
  10. Method Entities in Search (英語). Google Developers. 2017年10月17日閲覧。
  11. Xin, Jiwen; Afrasiabi, Cyrus; Lelong, Sebastien; Adesara, Julee; Tsueng, Ginger; Su, Andrew I.; Wu, Chunlei (2018-02-01). “Cross-linking BioThings APIs through JSON-LD to facilitate knowledge exploration”. BMC Bioinformatics 19 (1): 30. doi:10.1186/s12859-018-2041-5 {{doi}}: 明示されていないフリーアクセスDOI (カテゴリ). PMC 5796402. PMID 29390967.
  12. Huynh, Trung Dong; Michaelides, Danius T.; Moreau, Luc (2016) (英語), PROV-JSONLD: A JSON and Linked Data Representation for Provenance, Lecture Notes in Computer Science, 9672, Springer International Publishing, pp. 173–177, doi:10.1007/978-3-319-40593-3_15, ISBN 9783319405926
  13. Prodromou, Evan (May 2017). “Activity Streams 2.0”. W3C Recommendation.
  14. Tallon, Jessica (Jan 2018). “ActivityPub”. W3C Recommendation.
  15. Web of Things (WoT) Thing Description, W3C Proposed Recommendation”. www.w3.org. 2020年3月26日閲覧。

外部リンク

[編集]