diff options
| author | Vitor Pamplona <vitor@vitorpamplona.com> | 2024-05-30 15:32:46 -0400 |
|---|---|---|
| committer | Vitor Pamplona <vitor@vitorpamplona.com> | 2024-05-30 15:32:46 -0400 |
| commit | d5b77b6d7348061cd0f16adc35e4d02a3a0b7380 (patch) | |
| tree | f00539ec0e0a8b6bf027ff6a9b93846adafa02b3 /01.md | |
| parent | 48674e563865b1cb7bb3c5c7869d20055446f408 (diff) | |
| parent | 5c796c19fd6330628a0b328bfcf5270cb2bc3aff (diff) | |
Merge remote-tracking branch 'upstream/master' into draft-event
# Conflicts:
# README.md
Diffstat (limited to '01.md')
| -rw-r--r-- | 01.md | 6 |
1 files changed, 3 insertions, 3 deletions
| @@ -56,7 +56,7 @@ To prevent implementation differences from creating a different event ID for the | |||
| 56 | 56 | ||
| 57 | ### Tags | 57 | ### Tags |
| 58 | 58 | ||
| 59 | Each tag is an array of strings of arbitrary size, with some conventions around them. Take a look at the example below: | 59 | Each tag is an array of one or more strings, with some conventions around them. Take a look at the example below: |
| 60 | 60 | ||
| 61 | ```jsonc | 61 | ```jsonc |
| 62 | { | 62 | { |
| @@ -81,13 +81,13 @@ This NIP defines 3 standard tags that can be used across all event kinds with th | |||
| 81 | - for a parameterized replaceable event: `["a", <kind integer>:<32-bytes lowercase hex of a pubkey>:<d tag value>, <recommended relay URL, optional>]` | 81 | - for a parameterized replaceable event: `["a", <kind integer>:<32-bytes lowercase hex of a pubkey>:<d tag value>, <recommended relay URL, optional>]` |
| 82 | - for a non-parameterized replaceable event: `["a", <kind integer>:<32-bytes lowercase hex of a pubkey>:, <recommended relay URL, optional>]` | 82 | - for a non-parameterized replaceable event: `["a", <kind integer>:<32-bytes lowercase hex of a pubkey>:, <recommended relay URL, optional>]` |
| 83 | 83 | ||
| 84 | As a convention, all single-letter (only english alphabet letters: a-z, A-Z) key tags are expected to be indexed by relays, such that it is possible, for example, to query or subscribe to events that reference the event `"5c83da77af1dec6d7289834998ad7aafbd9e2191396d75ec3cc27f5a77226f36"` by using the `{"#e": "5c83da77af1dec6d7289834998ad7aafbd9e2191396d75ec3cc27f5a77226f36"}` filter. | 84 | As a convention, all single-letter (only english alphabet letters: a-z, A-Z) key tags are expected to be indexed by relays, such that it is possible, for example, to query or subscribe to events that reference the event `"5c83da77af1dec6d7289834998ad7aafbd9e2191396d75ec3cc27f5a77226f36"` by using the `{"#e": ["5c83da77af1dec6d7289834998ad7aafbd9e2191396d75ec3cc27f5a77226f36"]}` filter. |
| 85 | 85 | ||
| 86 | ### Kinds | 86 | ### Kinds |
| 87 | 87 | ||
| 88 | Kinds specify how clients should interpret the meaning of each event and the other fields of each event (e.g. an `"r"` tag may have a meaning in an event of kind 1 and an entirely different meaning in an event of kind 10002). Each NIP may define the meaning of a set of kinds that weren't defined elsewhere. This NIP defines two basic kinds: | 88 | Kinds specify how clients should interpret the meaning of each event and the other fields of each event (e.g. an `"r"` tag may have a meaning in an event of kind 1 and an entirely different meaning in an event of kind 10002). Each NIP may define the meaning of a set of kinds that weren't defined elsewhere. This NIP defines two basic kinds: |
| 89 | 89 | ||
| 90 | - `0`: **metadata**: the `content` is set to a stringified JSON object `{name: <username>, about: <string>, picture: <url, string>}` describing the user who created the event. A relay may delete older events once it gets a new one for the same pubkey. | 90 | - `0`: **metadata**: the `content` is set to a stringified JSON object `{name: <username>, about: <string>, picture: <url, string>}` describing the user who created the event. [Extra metadata fields](24.md#kind-0) may be set. A relay may delete older events once it gets a new one for the same pubkey. |
| 91 | - `1`: **text note**: the `content` is set to the **plaintext** content of a note (anything the user wants to say). Content that must be parsed, such as Markdown and HTML, should not be used. Clients should also not parse content as those. | 91 | - `1`: **text note**: the `content` is set to the **plaintext** content of a note (anything the user wants to say). Content that must be parsed, such as Markdown and HTML, should not be used. Clients should also not parse content as those. |
| 92 | 92 | ||
| 93 | And also a convention for kind ranges that allow for easier experimentation and flexibility of relay implementation: | 93 | And also a convention for kind ranges that allow for easier experimentation and flexibility of relay implementation: |