NIP-51: Lijsten
NIP-51 definieert lijst-events voor het organiseren van gebruikers, events, relays, hashtags en andere verwijzingen. Het is het belangrijkste protocol voor bookmarks, mute-lijsten, follow sets, relay sets en verschillende andere door gebruikers samengestelde collecties.
Standaardlijsten en sets
- Standaardlijsten gebruiken replaceable event kinds zoals kind
10000mute-lijsten, kind10003bookmarks en kind10007search relays. - Sets gebruiken addressable kinds met
dtags, zoals kind30000follow sets, kind30003bookmark sets en kind30030emoji sets.
Dat onderscheid is van belang voor clientgedrag. Standaardlijsten impliceren een canonieke lijst per gebruiker en kind. Sets impliceren meerdere benoemde collecties, dus clients moeten de d tag van elke lijst behouden.
Structuur
Lijsten gebruiken tags om naar content te verwijzen:
ptags voor pubkeysetags voor eventsatags voor addressable eventsttags voor hashtagswordtags voor gemute woordenrelaytags voor relay-URL’s in relaygerichte lijst-kinds
Sommige lijst-kinds hebben beperktere toegestane tagvormen dan andere. Relaygerichte lijsten gebruiken bijvoorbeeld relay tags, terwijl bookmarks naar notes of addressable events horen te verwijzen. Clients die elke NIP-51-lijst behandelen als willekeurige vrije tags verliezen interoperabiliteit.
Openbaar versus privé
Lijsten kunnen openbare tags en privé-items hebben. Privé-items worden geserialiseerd als een JSON-array die de tags-structuur weerspiegelt, versleuteld, en opgeslagen in de event-content. De huidige specificatie gebruikt NIP-44 voor dit model van zelfversleuteling, met NIP-04 alleen als legacy compatibility.
Die scheiding laat gebruikers een zichtbare lijstschil publiceren terwijl sommige items verborgen blijven. Een bookmark-lijst kan openbaar blijven terwijl privénotities of privé-bookmarks in versleutelde content blijven staan.
Nuttige kinds
- Kind 10000: mute-lijst voor pubkeys, threads, hashtags en gemute woorden
- Kind 10003: bookmarks voor notes en addressable content
- Kind 10007: preferred search relays
- Kind 30002: relay sets voor benoemde relaygroepen
- Kind 30006: picture curation sets
- Kind 39089: starter packs voor deelbare follow bundles
Recente wijzigingen in de specificatie verplaatsten hashtags uit generieke bookmarks naar interest sets, en voegden kind 30006 toe voor picture curation. Beide wijzigingen verminderen ambiguïteit in hoe clients lijstinhoud interpreteren.
Primaire bronnen:
Vermeld in:
- Nieuwsbrief #1: NIP Updates
- Nieuwsbrief #2: NIP Updates
- Nieuwsbrief #4: NIP Deep Dive
- Nieuwsbrief #8: njump voegt NIP-51-ondersteuning toe
Zie ook: