Clarify the unmodifiable nature of the dtag and its uniqueness needs.

This commit is contained in:
Vitor Pamplona 2024-01-11 08:57:42 -05:00
parent b5e6244e8b
commit fe9792be76

2
01.md
View File

@ -79,7 +79,7 @@ Specific ranges define storage behaviors:
| Ephemeral | `20000 <= kind < 30000` | Nothing |
| Parameterized | `30000 <= kind < 40000` | The newest event for each `pubkey`, `kind` and `d`-tag |
Parameterized Replaceable events MUST include a `d`-tag with an identifier value to be used as a reference. Tag values that reference the newest replaceable MUST use this format: `<kind>:<32-byte lowercase hex of a pubkey>:<d-tag value>`.
Parameterized Replaceable events MUST include a `d` tag with an unmodifiable identifier as value to be used as a reference. Tag values that reference the newest replaceable event MUST use this format: `<kind>:<32-byte lowercase hex of a pubkey>:<d-tag value>`. The `d` tag MUST be unique within the same kind and pubkey.
In case of replaceable events with the same timestamp, the event with the lowest `.id` (first in lexical order) SHOULD be retained. Older versions MAY be kept but SHOULD not be returned on queries.