GitHub
実装済み・提案を併記

データ語彙

yurucommuが公開しているJSON-LDコンテキストと、 現在のActivityPub出力で実際に使っている語彙を区別して説明します。

公開URL

用途 URL 現在の位置付け
まとめて参照 https://yurucommu.com/ns/context.jsonld Story語彙と提案中のコミュニティ語彙を収録
Story https://yurucommu.com/ns/story/context.jsonld 現在のStory出力で使う語彙
コミュニティ https://yurucommu.com/ns/apc/context.jsonld 公開済みだが、現在のGroupアクターでは未使用の提案語彙

現在使っているStory語彙

語彙 URI 用途
Story https://yurucommu.com/ns/story#Story Noteと併記するStoryの型
displayDuration https://yurucommu.com/ns/story#displayDuration 1枚を表示する時間。値はxsd:duration
overlays https://yurucommu.com/ns/story#overlays 順序を持つオーバーレイの一覧
position https://yurucommu.com/ns/story#position xywidthheightを0から1で表す位置

現在の送信処理はStoryオブジェクトに語彙定義を直接含めます。 受信側がyurucommu.comへコンテキストを取りに来ることを 必須条件にはしていません。

提案中のコミュニティ語彙

次の語彙はJSON-LDコンテキストとして公開されていますが、現在の コミュニティGroupアクターは値を出力しません。

実装者向け: コンテキストに語彙が載っているだけでは、その機能が実装済みという意味には なりません。現在のコミュニティ連合は、標準のGroup、Follow、 Accept、Reject、Undo、Announceを中心に動作します。

コンテキストを参照する例

{
  "@context": [
    "https://www.w3.org/ns/activitystreams",
    "https://yurucommu.com/ns/story/context.jsonld"
  ],
  "type": ["Story", "Note"],
  "displayDuration": "PT5S",
  "overlays": []
}

独自語彙を使わない機能

相互運用の注意

JSON-LDとして未知の語彙を読み飛ばせても、Storyの表示や操作が 別の実装で再現されるとは限りません。相互運用を判断するときは、 コンテキストの存在ではなく、相手が対応する型とプロパティを 実際に処理するかを確認してください。