| リンクトデータ通知 | |
|---|---|
| 略語 | LDN |
| ステータス | W3C勧告 |
| 開始年 | 2016年[1] [2] (2016年) |
| 初版 | 2016年7月26日[1] [2] (2016年7月26日) |
| 最新バージョン | W3C勧告 2017年5月2日[3] ( 2017-05-02 ) |
| プレビュー版 | 編集者による草稿 2017年4月30日 ( 2017-04-30 ) |
| 組織 | |
| 委員会 | ソーシャルウェブワーキンググループ |
| 編集者 |
|
| 基本標準 | |
| 関連規格 | |
| ドメイン | セマンティックウェブ、通信プロトコル |
| ウェブサイト | www.w3.org/TR/ldn/ |
リンクトデータ通知(LDN)[3]は、HTTP、URI、RDFに基づく通信プロトコルを記述したW3C 勧告であり、サーバー(受信者)がアプリケーション(送信者)からプッシュされたメッセージを受信する方法と、他のアプリケーション(消費者)がそれらのメッセージを取得する方法について規定しています。HTMLページなどの任意のWebリソースは、通知メッセージの受信エンドポイント(受信トレイ)をアドバタイズできます。メッセージはRDFで表現され、任意のデータを含めることができます
動機
ウェブは、複数の組織や個人によって公開されるウェブリソースの分散型システムです。ウェブページやより正式に構造化されたリンクトデータなどのウェブリソースには、ウェブ上の他のリソースへのリンクが頻繁に含まれており、さまざまな方法でコメントや説明が付けられることがあります。しかし、受信側は通常、このようなリンク作成について通知されないため、手動による介入なしにバックリンクを提供することはできません。ニュース記事へのコメントなど、ソーシャルメディアプラットフォーム内でのやり取りは、現在、プラットフォーム内に「ロック」されており、ウェブ全体からアクセスすることは困難です
いくつかのリンクバックメカニズムが存在し、ブログ システム間でよく使用されます。たとえば、ブログ A の投稿に対するブログ B の「応答」投稿により、B のプラットフォームは元のブログ A に表示されるピンバックを送信します。ただし、これらのメカニズムは、一般に構造化された情報の送信に制限があり、通知自体は分散型 Web の一部ではなく、サードパーティ アプリケーションでの使用が難しい場合があります。
LDNの主な目的は、分散型Webアプリケーション[4]間の通知をサポートすることです。これには、独自のHTTPサーバーを持たないWebブラウザなど、応答メッセージ用のHTTPリンクを生成できないアプリケーションも含まれます。もう一つの目的は、通知を任意の制御語彙を用いたRDF文として構造化することです。これにより、利用側アプリケーションは理解できる特定の情報を選択できます。
プロトコル
- 送信者または受信者は、既存のHTTPリソースに対して、
GETまたはを実行します。受信トレイURIは次のいずれかから検出されますHEADLink:HTTPレスポンスヘッダー内の関係http://www.w3.org/ns/ldp#inbox- RDFプロパティを使用してHTTPボディに埋め込まれたRDFステートメント
http://www.w3.org/ns/ldp#inbox
- 送信者は新しい通知 (例: JSON-LDとして) を作成し、それを受信トレイ
POSTURIに送信します。- 受信者は、投稿された通知を含む新しい HTTP リソースを作成し、
201 Created作成された URI で応答します。
- 受信者は、投稿された通知を含む新しい HTTP リソースを作成し、
- コンシューマーは、 を使用して検出された受信トレイURIから RDF を取得し
GET、次の操作を実行します。- コンシューマーはレスポンス本文を解析し、プロパティ を持つRDF文を検索します
http://www.w3.org/ns/ldp#contains。これらの文の目的語は、承認されたLDN通知へのURIを提供します。 - コンシューマーは、リンクされた通知のいずれかを取得し
GET、アプリケーション固有の方法で RDF を処理します。 - 通知はアクセス可能なままなので、他の Web リソースにリンクしたり、説明したりすることができます。
- コンシューマーはレスポンス本文を解析し、プロパティ を持つRDF文を検索します
各段階で、送信者と消費者はコンテンツ ネゴシエーションを実行して、相互に合意した任意のRDFシリアル化形式で送受信できますが、準拠する LDN 受信者は少なくともJSON-LD をサポートする必要があります。
例
送信者または利用者は、指定されたURIの受信トレイを見つけます。この例では、次のHEADメソッド
を使用します
ヘッダー https://example.org/article/5 HTTP / 1.1
HTTP / 1.1 200 OK
リンク: <https://example.org/inbox/7>; rel="http://www.w3.org/ns/ldp#inbox"
送信者は、検出された受信トレイに通知を送信します。この例では、Schema.orgボキャブラリを使用しています。
POST https://example.org/inbox/7 HTTP / 1.1
コンテンツタイプ: application/ld+json
{ "@context" : "http://schema.org" 、"@type" : "ReviewAction" 、"object" : { "@id" : "https://example.org/article/5" }、"agent" : { "@type" : "Person" 、"name" : "Alice" }、"result" : { "@type" : "Review" 、"reviewBody" : "この記事は今まで見た中で最高です!" } }
HTTP / 1.1 201 作成
場所: http://example.org/inbox/f44f3f11
消費者は、検出された受信トレイの内容を一覧表示して、次の 3 つの通知を見つけます。
GET https://example.org/inbox/7 HTTP / 1.1
コンテンツタイプ: application/ld+json
HTTP / 1.1 200 OK
コンテンツタイプ: application/ld+json
{
"@context" : "http://www.w3.org/ns/ldp" 、"@id" : "https://example.org/inbox/7" 、"contains" : [ "https://example.org/inbox/5c6ca040" 、"https://cdn.example.org/inbox/92d72f00" 、"https://example.org/inbox/f44f3f11" 、] }
元のリソース、受信トレイ、通知のURIは、必ずしも同じHTTPサーバー上にホストされている必要はありません(例えば、CDN上にホストされている場合もあります)。コンシューマーは、取得したい通知のリンクをたどります。
この例では、コンシューマーはf44f3f11コンテンツ ネゴシエーションによってTurtle RDF 形式を
優先して新しい通知を取得します。
GET https://example.org/inbox/f44f3f11 HTTP / 1.1
Accept : application/ld+json;q=0.9, text/turtle;q=1.5
HTTP / 1.1 200 OK
コンテンツタイプ: text/turtle
@prefix schema: < http://schema.org/> . [スキーマ: ReviewAction ;スキーマ: agent [スキーマ: Person ;スキーマ: name "Alice" ];スキーマ: object <https://example.org/article/5> ;スキーマ: result [スキーマ: Review ;スキーマ: reviewBody "この記事は今まで見た中で最高です!" ] ] .
実装
送信者、消費者、受信者をカバーする LDN実装はいくつか存在します[4] [5]。これには以下が含まれます
- dokieli(送信者、消費者)
- errol(送信者)
- Fedora Commons(受信者)
- Apache Marmotta(受信機)
- Carbon LDP(受信者)
- リンク編集ルール(送信者)
- Solid(送信者、受信者、消費者)
- Virtuoso Universal Server(受信者、コンシューマー)
リンクトデータプラットフォーム(LDP)の実装は、LDNがLDPの厳密なサブセットであるため、リンクトデータ通知の受信者にも適合します。 [4]
参考文献
- ^ ab 「リンクトデータ通知の公開履歴 - W3C」。W3C . nd . 2021年4月21日閲覧
- ^ ab Capadisli, Sarven; Guy, Amy 編 (2016-07-26). 「Linked Data Notifications」. W3Cソーシャルウェブワーキンググループ. https://www.w3.org/TR/ldn/ . 2021年4月21日閲覧。
- ^ abcd Capadisli, Sarven; Guy, Amy 編 (2017-05-02). 「Linked Data Notifications」. W3Cソーシャルウェブワーキンググループ. https://www.w3.org/TR/ldn/ . 2021年4月21日閲覧。
- ^ abc Capadisli, Sarven; Guy, Amy; Lange, Christoph; Auer, Sören; Sambra, Andrei; Berners-Lee, Tim (2017-05-28). 「Linked Data Notifications: A Resource-Centric Communication Protocol」. The Semantic Web . Lecture Notes in Computer Science. Vol. 10249. pp. 537– 553. doi : 10.1007/978-3-319-58068-5_33 . ISBN 978-3-319-58067-8http://csarven.ca/linked-data-notifications.
{{cite book}}:|journal=無視されました(ヘルプ) - ^ 「LDNテストレポートと概要」linkedresearch.org . 2016年9月18日. 2017年5月26日閲覧。