A Namespaced Identifier (NSID) is a structured identifier used to reference lexicon schemas for records, XPRC endpoints, and other protocol components. NSIDs provide a hierarchal naming system that ensures uniqueness across the ATmosphere.
NSIDs follow a reverse domain-name pattern followed by a name segment:
tld.domain.name
For example, com.example.fooBar
would be a valid NSID, with com.example
being the domain name and fooBar
being the name segment.
This structure is meant to ensure that organizations can create identifiers within their own controlled namespace, thereby preventing naming conflicts across the protocol.
NSIDs must adhere to specific syntax rules.
In the overall structure, the NSID must:
In the domain authority portion, the NSID must:
In the name segment, the NSID must:
NSIDs can be extended with:
The domain authority portion of an NSID implies ownership and control. Only those who control a domain should create NSIDs within that namespace. This decentralized approach to naming allows different organizations to independently develop and publish schemas without central coordination.