リンクトデータ通知

通信プロトコルを規定するW3C勧告
リンクトデータ通知
略語LDN
ステータスW3C勧告
開始年2016年; 10年前[1] [2] (2016年
初版2016年7月26日; 9年前[1] [2] (2016年7月26日
最新バージョンW3C勧告
2017年5月2日; 8年前[3] ( 2017-05-02 )
プレビュー版編集者による草稿
2017年4月30日; 8年前 ( 2017-04-30 )
組織
委員会ソーシャルウェブワーキンググループ
編集者
  • サーヴェン・カパディスリ[3]
  • エイミー・ガイ[3]
基本標準
関連規格
ドメインセマンティックウェブ通信プロトコル
ウェブサイトwww.w3.org/TR/ldn/

リンクトデータ通知LDN[3]は、HTTPURIRDFに基づく通信プロトコルを記述したW3C 勧告であり、サーバー(受信者)がアプリケーション(送信者)からプッシュされたメッセージを受信する方法と、他のアプリケーション(消費者)がそれらのメッセージを取得する方法について規定しています。HTMLページなどの任意のWebリソースは、通知メッセージの受信エンドポイント(受信トレイ)をアドバタイズできます。メッセージはRDFで表現され、任意のデータを含めることができます

動機

ウェブ、複数の組織や個人によって公開されるウェブリソースの分散型システムです。ウェブページやより正式に構造化されたリンクトデータなどのウェブリソースには、ウェブ上の他のリソースへのリンクが頻繁に含まれており、さまざまな方法でコメントや説明が付けられることがあります。しかし、受信側は通常、このようなリンク作成について通知されないため、手動による介入なしにバックリンクを提供することはできません。ニュース記事へのコメントなど、ソーシャルメディアプラットフォーム内でのやり取りは、現在、プラットフォーム内に「ロック」されており、ウェブ全体からアクセスすることは困難です

いくつかのリンクバックメカニズムが存在し、ブログ システム間でよく使用されます。たとえば、ブログ A の投稿に対するブログ B の「応答」投稿により、B のプラットフォームは元のブログ A に表示されるピンバックを送信します。ただし、これらのメカニズムは、一般に構造化された情報の送信に制限があり、通知自体は分散型 Web の一部ではなく、サードパーティ アプリケーションでの使用が難しい場合があります。

LDNの主な目的は、分散型Webアプリケーション[4]間の通知をサポートすることです。これには、独自のHTTPサーバーを持たないWebブラウザなど、応答メッセージ用のHTTPリンクを生成できないアプリケーションも含まれます。もう一つの目的は、通知を任意の制御語彙を用いたRDF文として構造化することです。これにより、利用側アプリケーションは理解できる特定の情報を選択できます。

プロトコル

  • 送信または受信者は、既存のHTTPリソースに対して、GETまたはを実行します。受信トレイURIは次のいずれかから検出されます HEAD
    • Link: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 で応答します。
  • コンシューマーは、 を使用して検出された受信トレイURIから RDF を取得しGET、次の操作を実行します。
    • コンシューマーレスポンス本文を解析し、プロパティ を持つRDF文を検索しますhttp://www.w3.org/ns/ldp#contains。これらの文の目的語は、承認されたLDN通知へのURIを提供します。
    • コンシューマー、リンクされた通知のいずれかを取得しGET、アプリケーション固有の方法で RDF を処理します。
    • 通知はアクセス可能なままなので、他の Web リソースにリンクしたり、説明したりすることができます。

各段階で、送信者と消費者はコンテンツ ネゴシエーションを実行して、相互に合意した任意の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]

参考文献

  1. ^ ab 「リンクトデータ通知の公開履歴 - W3C」。W3C . nd . 2021年4月21日閲覧
  2. ^ ab Capadisli, Sarven; Guy, Amy 編 (2016-07-26). 「Linked Data Notifications」. W3Cソーシャルウェブワーキンググループ. https://www.w3.org/TR/ldn/ . 2021年4月21日閲覧。
  3. ^ abcd Capadisli, Sarven; Guy, Amy 編 (2017-05-02). 「Linked Data Notifications」. W3Cソーシャルウェブワーキンググループ. https://www.w3.org/TR/ldn/ . 2021年4月21日閲覧。
  4. ^ 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=無視されました(ヘルプ
  5. ^ 「LDNテストレポートと概要」linkedresearch.org . 2016年9月18日. 2017年5月26日閲覧
「https://en.wikipedia.org/w/index.php?title=Linked_Data_Notifications&oldid=1171913963」より取得