AT ProtocolのLexicon Lexicon | AT Protocol
- Lexiconは、atprotoレコード、HTTPエンドポイント(XRPC)、イベントストリームメッセージを記述するためのスキーマ定義言語で、atprotoデータモデルを基にしています。
- Lexiconは時間の経過と共に変化することが許されています
- 前方と後方の互換性を確保するために一部の制約が存在します。基本的な原則としては、古いデータは更新されたLexiconのもとでも依然として有効であり、新しいデータは古いLexiconのもとでも有効でなければなりません。
- 新しいフィールドは任意でなければならない
- 必須のフィールドは削除できない。
- 型は変更できない
- フィールドは改名できない
- より大きな破壊的な変更が必要な場合は、新しいLexicon名を使用しなければなりません。
- Lexiconの権限はNSIDによって決定され、ドメイン権限のDNS制御に根ざしています。
- その権限はLexicon定義の最終的な制御権を有し、Lexiconスキーマ定義の保守と配布の責任を負います。
- プロトコルの実装は、Lexiconに対して無効なデータを完全に無効とみなし、個々のデータに対して修復や部分的な処理を試みるべきではありません。
- Lexiconに従わないデータの予期しないフィールドは無視されるべきです。スキーマの検証を行う際、それらは最悪の場合に警告として扱うべきです。これは、制御権を持つ機関によるスキーマの進化を可能にし、古いLexiconの場合に堅牢であるためです。
- 未来の変更の可能性として、予期しない追加フィールドに対する検証ルールが変更されるかもしれません。たとえば、スキーマが「閉じている」ことを示すためのメカニズムや、非公式の拡張を示すためのフィールド名プレフィックス(x-)の周りの規則などが考えられます。