NIP-33は元々パラメータ付き置換可能イベントを定義していました。これはrelayが(pubkey, kind, dタグ)のタプルごとに1つのイベントのみを保持するイベントクラスです。このコンセプトはその後「アドレス可能イベント」に改名され、NIP-01に統合されました。NIP-33のドキュメントは現在NIP-01にリダイレクトされますが、コードベースやドキュメントでは依然として一般的な参照先です。

仕組み

アドレス可能イベントは30000-39999の範囲のkindを使用します。各イベントはdタグを持ち、その値は著者のpubkeyとkind番号とともに一意のアドレスを形成します。relayが既存の(pubkey, kind, dタグ)タプルに一致する新しいイベントを受信すると、古いイベントを新しいイベント(created_atによる)に置き換えます。これにより、アドレス可能イベントはプロフィール、設定、アプリ設定、分類リスティングなど、最新バージョンのみが重要な可変状態に適しています。

クライアントはアドレス可能イベントを<kind>:<pubkey>:<dタグ>の形式のaタグで参照し、オプションでrelayヒントを追加します。

一般的な用途

  • Kind 30023 長文記事
  • Kind 30078 アプリ固有データ(NIP-78で使用)
  • Kind 31923 カレンダーイベント(NIP-52)
  • Kind 31990 ハンドラー推奨(NIP-89)
  • Kind 30009 バッジ定義(NIP-58)
  • Kind 31991 エージェント実行設定(Notedeck Agentium)

NIP-01との関係

NIP-33は統合作業の一環としてNIP-01にマージされました。NIP-01の仕様は現在、通常イベント(そのまま保持)、置換可能イベント((pubkey, kind)ごとに1つ)、アドレス可能イベント((pubkey, kind, dタグ)ごとに1つ)の3つのイベント保持カテゴリを定義しています。NIP-33はアドレス可能イベントの概念の有効な略称として残っています。


主要ソース:

掲載号:

関連項目: