Skip to content

Commit

Permalink
cip-19: adressing review from @adlerjohn
Browse files Browse the repository at this point in the history
  • Loading branch information
Wondertan committed Mar 27, 2024
1 parent 0b8371b commit 2655fa2
Showing 1 changed file with 6 additions and 5 deletions.
11 changes: 6 additions & 5 deletions cips/cip-19.md
Original file line number Diff line number Diff line change
Expand Up @@ -111,14 +111,15 @@ container MAY define multiple serialization formats.
#### Share Identifiers

Share identifiers identify [share containers](#share-containers). Identifiers are not collision-resistant and there MAY
be different identifiers referencing the same container.
be different identifiers referencing the same container. There SHOULD NOT be multiple containers identified by the same
identifier.

Identifiers MAY embed each other to narrow down the scope of needed shares. For example, [SampleID](#sampleid) embeds
[RowID](#rowid) as every sample lay on a particular row.

##### Serialization for Share Identifiers

Share identifiers SHOULD be serialized by concatenating big-endian representations of fields in the order defined by
Share identifiers MUST be serialized by concatenating big-endian representations of fields in the order defined by
their respective formatting section. Serialized identifiers SHOULD have constant and predetermined lengths in bytes.

#### Versioning
Expand All @@ -145,7 +146,7 @@ EdsID {

The fields with validity rules that form EdsID are:

**Height**: A uint64 representing the chain height with the data square. It MUST be bigger than zero.
**Height**: A uint64 representing the chain height with the data square. It MUST be greater than zero.

[Serialized](#serialization-for-share-identifiers) EdsID MUST have a length of 8 bytes.

Expand Down Expand Up @@ -177,7 +178,7 @@ The fields with validity rules that form RowID are:
[**EdsID**](#edsid): A EdsID of the Row Container. It MUST follow [EdsID](#edsid) formatting and field validity rules.

**RowIndex**: An uint16 representing row index points to a particular row. The 16 bit limit fits data squares up to 2TB.
It MUST not exceed the number of Row roots in [DAH][dah].
It MUST not exceed the number of [DAH][dah] Row roots reduced by one.

[Serialized](#serialization-for-share-identifiers) RowID MUST have a length of 10 bytes.

Expand Down Expand Up @@ -224,7 +225,7 @@ The fields with validity rules that form SampleID are:
[**RowID**](#rowid): A RowID of the sample. It MUST follow [RowID](#rowid) formatting and field validity rules.

**ColumnIndex**: A uint16 representing the column index of the sampled share; in other words, the share index in the row.
The 16 bit limit fits data squares up to 2TB. It MUST stay within the number of Column roots in [DAH][dah].
The 16 bit limit fits data squares up to 2TB. It MUST stay within the number of [DAH][dah] Column roots reduced by one.

[Serialized](#serialization-for-share-identifiers) SampleID MUST have a length of 12 bytes.

Expand Down

0 comments on commit 2655fa2

Please sign in to comment.