データ語彙
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 |
x、y、width、
heightを0から1で表す位置
|
現在の送信処理はStoryオブジェクトに語彙定義を直接含めます。
受信側がyurucommu.comへコンテキストを取りに来ることを
必須条件にはしていません。
提案中のコミュニティ語彙
次の語彙はJSON-LDコンテキストとして公開されていますが、現在の コミュニティGroupアクターは値を出力しません。
apc:roomsapc:joinPolicyapc:postPolicyapc:visibility
実装者向け:
コンテキストに語彙が載っているだけでは、その機能が実装済みという意味には
なりません。現在のコミュニティ連合は、標準の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": []
}
独自語彙を使わない機能
-
DMは直接宛先を持つ標準の
Noteとして送信し、 専用のDM名前空間を使いません。 - QRでのアカウント交換はクライアントがプロフィールURLを共有する機能で、 ActivityPubの語彙を追加しません。
- 公開コミュニティの現在のGroupアクターは、 上記の提案中APCプロパティを出力しません。
相互運用の注意
JSON-LDとして未知の語彙を読み飛ばせても、Storyの表示や操作が 別の実装で再現されるとは限りません。相互運用を判断するときは、 コンテキストの存在ではなく、相手が対応する型とプロパティを 実際に処理するかを確認してください。