mirror of
https://github.com/nostr-protocol/nips.git
synced 2024-09-29 16:31:12 +00:00
Add prefixes to help when parsing values
This commit is contained in:
parent
a6a71cd48b
commit
6af79cbf93
35
22.md
35
22.md
@ -19,21 +19,24 @@ or on an off-nostr news article or to reply to another comment.
|
||||
A comment is an event of `kind:1111` with plaintext `.content`
|
||||
(no HTML, no Markdown nor other formatting).
|
||||
|
||||
It must have a `k` tag pointing to the kind of the subject being commented on.
|
||||
For example, when commenting on a `kind:30023`, the `k` tag is set to "30023".
|
||||
When replying to another `kind:1111`, the `k` tag is set to "1111".
|
||||
If commenting on an `https://abc.com/articles/1` article the `k` tag is set to "https://abc.com" (its domain).
|
||||
The `k` tag is useful to fetch top-level comments about events of specific kinds (or domains), for example,
|
||||
by filtering with `{ "#k": ["30023"], "kinds": [1111] }`.
|
||||
**It must have a `k` tag** pointing to the kind of the subject being commented on.
|
||||
It has a prefix: `"n:"` for nostr subjects and `"r:"` for url ones.
|
||||
|
||||
An uppercase `K` tag must also be present. The difference is that it is set to the original post (the one starting the thread) kind.
|
||||
For example, when commenting on a `kind:30023`, the `k` tag is set to "n:30023".
|
||||
When replying to another `kind:1111`, the `k` tag is set to "n:1111".
|
||||
If commenting on an `https://abc.com/articles/1` article the `k` tag is set to "r:https://abc.com" (its domain).
|
||||
|
||||
The `k` tag is useful to fetch top-level comments about events of specific kinds (or domains), for example,
|
||||
by filtering with `{ "#k": ["n:30023"], "kinds": [1111] }`.
|
||||
|
||||
**An uppercase `K` tag must also be present.** The difference is that it is set to the original post (the one starting the thread) kind.
|
||||
This way a client can request all comments related to the kind it supports, not only the top-level comments.
|
||||
|
||||
### Threads
|
||||
|
||||
There is always an `o` tag pointing to the original post that started the thread.
|
||||
**There is always an `o` tag** pointing to the original post that started the thread.
|
||||
It can be an event id (with an `"i:<event-kind>:<event-pubkey>:"` prefix),
|
||||
an event address (`"a:"` prefix) or an url (`"<protocol>"` prefix). The second value
|
||||
an event address (`"a:"` prefix) or an url (`"r:"` prefix). The second value
|
||||
is the optional recommended relay url where the referenced event may be found.
|
||||
This tag is useful to load all messages of a thread at once.
|
||||
|
||||
@ -43,9 +46,9 @@ Examples:
|
||||
|
||||
- `["o", "i:<event-kind>:<event-pubkey>:<event-id>", "<relay-url, optional>"]`
|
||||
- `["o", "a:<event-kind>:<event-pubkey>:<d-tag, optional>", "<relay-url, optional>"]`
|
||||
- `["o", "https://abc.com/articles/1/"]`
|
||||
- `["o", "r:https://abc.com/articles/1/"]`
|
||||
|
||||
Also, there is always an `r` tag pointing to the subject being directly commented on or replied to, using the
|
||||
Also, **there is always an `r` tag** pointing to the subject being directly commented on or replied to, using the
|
||||
same structure of the `o` tag.
|
||||
This tag is useful to lazily load a thread.
|
||||
|
||||
@ -63,13 +66,13 @@ the client supports the [NIP-65](65.md) relay usage spec,
|
||||
content: 'Agree with your comment.',
|
||||
tags: [
|
||||
// referencing the OP
|
||||
["o", "https://abc.com/articles/1/"],
|
||||
["o", "r:https://abc.com/articles/1/"],
|
||||
// replying to a parent kind:1111 comment
|
||||
["r", "i:1111:f7234bd4c1394dda46d09f35bd384dd30cc552ad5541990f98844fb06676e9ca:5c83da77af1dec6d7289834998ad7aafbd9e2191396d75ec3cc27f5a77226f36"],
|
||||
// the OP "kind"; for an url, the kind is its domain
|
||||
["K", "https://abc.com"]
|
||||
["K", "r:https://abc.com"]
|
||||
// the parent kind
|
||||
["k", "1111"]
|
||||
["k", "n:1111"]
|
||||
]
|
||||
// other fields
|
||||
}
|
||||
@ -84,9 +87,9 @@ the client supports the [NIP-65](65.md) relay usage spec,
|
||||
["o", "a:30023:3c9849383bdea883b0bd16fece1ed36d37e37cdde3ce43b17ea4e9192ec11289:f9347ca7"],
|
||||
["r", "a:30023:3c9849383bdea883b0bd16fece1ed36d37e37cdde3ce43b17ea4e9192ec11289:f9347ca7"],
|
||||
// the OP kind
|
||||
["K", "30023"]
|
||||
["K", "n:30023"]
|
||||
// the parent kind
|
||||
["k", "30023"],
|
||||
["k", "n:30023"],
|
||||
// the nostr:npub1... mentioned on .content
|
||||
["p", "84dee6e676e5bb67b4ad4e042cf70cbd8681155db535942fcc6a0533858a7240"]
|
||||
]
|
||||
|
Loading…
Reference in New Issue
Block a user