Ledger Entryの共通フィールド
レジャーの状態データの各エントリは、同じ共通フィールドのセットと、レジャーエントリのタイプに基づく追加フィールドを持ちます。フィールド名は大文字と小文字を区別します。すべてのレジャーエントリの共通フィールドは以下の通りです。
Field | JSONの型 | 内部の型 | 必須? | 説明 |
---|---|---|---|---|
index or LedgerIndex | 文字列 | Hash256 | いいえ | このレジャーエントリの一意のID。JSONでは、このフィールドはコンテキストやAPIメソッドによって異なる名前で表現されます。(コード上では"任意(optional)"と指定されていますが、XRP Ledgerの歴史のごく初期からのレガシーデータでない限り、すべてのレジャーエントリは一意であるべきです)。 |
LedgerEntryType | 文字列 | UInt16 | はい | レジャーエントリのタイプ。有効なレジャーエントリのタイプにはAccountRoot 、Offer 、RippleState などがあります。 |
Flags | 数値 | UInt32 | はい | このレジャーエントリのビットフラグのセット。 |
注意: JSONでは、レジャーエントリIDはindex
またはLedgerIndex
フィールドになります。これはledger_index
フィールドのレジャーインデックスとは異なります。
Ledger Entry ID
各レジャーエントリには一意のIDがあります。IDは、エントリの重要な内容と名前空間識別子をハッシュすることで得られます。レジャーエントリのタイプは、使用する名前空間識別子と、ハッシュに含めるコンテンツを決定します。これにより、すべてのIDが一意になります。ハッシュ関数はSHA-512Halfです。
一般的に、レジャーエントリのIDはJSONのindex
フィールドとして、オブジェクトの内容と同じレベルで返されます。トランザクションのメタデータでは、JSONにおけるレジャーオブジェクトのIDはLedgerIndex
です。
オファーディレクトリには特別なIDがあり、ハッシュの一部がそのディレクトリ内のオファーの取引レートに置き換えられます。
フラグ
フラグはオン/オフ設定で、ビットOR演算を使用して1つの数値に結合されるバイナリ値として表されます。レジャーエントリのフラグのビット値は、トランザクションでそれらのフラグを有効または無効にするために使用される値とは異なります。レジャーの状態フラグには、**lsf
**で始まる名前があります。
フラグフィールドに指定できる値は、レジャーエントリのタイプによって異なります。一部のレジャーエントリのタイプでは、フラグが定義されていません。このような場合、Flags
フィールドは常に値0
になります。