Severity: WARNING (Completeness Gap)
Problem
The vocabulary currently defines only 18 terms, covering basic Event and Person properties. However, many critical Nostr protocol concepts are missing, making the schema incomplete for real-world usage.
Missing Critical Terms
Event Core (NIP-01)
id - Event identifier (SHA256 hash) - CRITICAL MISSING FIELD
- Currently defined: pubkey, created_at, kind, tags, content, sig
- Missing: id (the most fundamental field!)
Person/Profile Extensions (NIP-05, NIP-57)
nip05 - NIP-05 verification identifier (user@domain.com)
lud06 - Lightning Address (LNURL)
lud16 - Lightning Address (user@domain format)
Relay Metadata (NIP-11, NIP-65)
relay_url - Relay URL
read - Read relay marker
write - Write relay marker
relay_metadata - Relay information document
Content Types (Various NIPs)
reactions - Event reactions/likes (NIP-25)
zaps - Lightning zaps (NIP-57)
long_form_content - Long-form articles (NIP-23)
event_deletion - Deletion requests (NIP-09)
repost - Reposts/quotes (NIP-18)
reporting - Content reports (NIP-56)
Social Graph (NIP-02, NIP-51)
muted - Muted pubkeys
bookmarks - Bookmarked events
communities - Community memberships
lists - Generic lists (NIP-51)
Events & Scheduling (NIP-52, NIP-53)
calendar_event - Calendar events
rsvp - Event RSVPs
calendar_time - Event timing
Authentication & Encryption (NIP-04, NIP-44)
encrypted_message - Encrypted DM content
auth_challenge - Authentication challenge
Current Coverage Analysis
Covered NIPs (Partial):
- NIP-01: Basic protocol (missing
id field!)
- NIP-00: Person metadata (basic fields only)
Not Covered:
- NIP-02: Contact List
- NIP-04: Encrypted Direct Messages
- NIP-05: Mapping Nostr keys to DNS-based identifiers
- NIP-09: Event Deletion
- NIP-11: Relay Information Document
- NIP-18: Reposts
- NIP-23: Long-form Content
- NIP-25: Reactions
- NIP-51: Lists
- NIP-52: Calendar Events
- NIP-56: Reporting
- NIP-57: Lightning Zaps
- NIP-65: Relay List Metadata
Proposed Expansion
Target: 40-50 terms to cover major NIPs comprehensively.
Phase 1 (Critical - 5 terms):
id - Event identifier
nip05 - DNS verification
lud16 - Lightning address
relay_url - Relay endpoint
event_reference - Event cross-references
Phase 2 (High Priority - 10 terms):
reactions
zaps
long_form_content
muted
bookmarks
communities
lists
encrypted_message
auth_challenge
event_deletion
Phase 3 (Medium Priority - 10 terms):
calendar_event
rsvp
repost
reporting
relay_metadata
read_relay
write_relay
- And more...
Impact
Current state:
- Schema covers ~30% of common Nostr usage
- Cannot represent many real-world Nostr events
- Incomplete for production applications
After expansion:
- 80-90% coverage of common use cases
- Full NIP-01 compliance (with
id field)
- Production-ready for most Nostr applications
Implementation Strategy
Option 1: Add all terms incrementally via PRs
Option 2: Define priority tiers and implement in phases
Option 3: Community contribution - document needed terms and invite PRs
Priority
HIGH - Schema is incomplete without these terms, particularly the missing id field which is fundamental to Nostr events.
References
Severity: WARNING (Completeness Gap)
Problem
The vocabulary currently defines only 18 terms, covering basic Event and Person properties. However, many critical Nostr protocol concepts are missing, making the schema incomplete for real-world usage.
Missing Critical Terms
Event Core (NIP-01)
id- Event identifier (SHA256 hash) - CRITICAL MISSING FIELDPerson/Profile Extensions (NIP-05, NIP-57)
nip05- NIP-05 verification identifier (user@domain.com)lud06- Lightning Address (LNURL)lud16- Lightning Address (user@domain format)Relay Metadata (NIP-11, NIP-65)
relay_url- Relay URLread- Read relay markerwrite- Write relay markerrelay_metadata- Relay information documentContent Types (Various NIPs)
reactions- Event reactions/likes (NIP-25)zaps- Lightning zaps (NIP-57)long_form_content- Long-form articles (NIP-23)event_deletion- Deletion requests (NIP-09)repost- Reposts/quotes (NIP-18)reporting- Content reports (NIP-56)Social Graph (NIP-02, NIP-51)
muted- Muted pubkeysbookmarks- Bookmarked eventscommunities- Community membershipslists- Generic lists (NIP-51)Events & Scheduling (NIP-52, NIP-53)
calendar_event- Calendar eventsrsvp- Event RSVPscalendar_time- Event timingAuthentication & Encryption (NIP-04, NIP-44)
encrypted_message- Encrypted DM contentauth_challenge- Authentication challengeCurrent Coverage Analysis
Covered NIPs (Partial):
idfield!)Not Covered:
Proposed Expansion
Target: 40-50 terms to cover major NIPs comprehensively.
Phase 1 (Critical - 5 terms):
id- Event identifiernip05- DNS verificationlud16- Lightning addressrelay_url- Relay endpointevent_reference- Event cross-referencesPhase 2 (High Priority - 10 terms):
reactionszapslong_form_contentmutedbookmarkscommunitieslistsencrypted_messageauth_challengeevent_deletionPhase 3 (Medium Priority - 10 terms):
calendar_eventrsvprepostreportingrelay_metadataread_relaywrite_relayImpact
Current state:
After expansion:
idfield)Implementation Strategy
Option 1: Add all terms incrementally via PRs
Option 2: Define priority tiers and implement in phases
Option 3: Community contribution - document needed terms and invite PRs
Priority
HIGH - Schema is incomplete without these terms, particularly the missing
idfield which is fundamental to Nostr events.References