Namespace Registration¶
PPX keeps its core vocabulary small and lets domains extend it via namespaces. This document defines the registration process.
Requirements for a registered namespace¶
A candidate namespace MUST:
- Have a lowercase, snake_case identifier matching
^[a-z][a-z0-9_]*$and be distinct fromcoreand from all other registered namespaces. - Publish an Extension Descriptor (see
SPEC.md §8.2) as a JSON Schema or JSON file in this repository underschemas/extensions/<namespace>.schema.json. - Specify, for each key: semantic meaning, value type, units (if any), provenance guidance, and confidence guidance.
- Specify
privacy_guidance.cross_domain_use∈{recommended, discouraged_without_review, forbidden}. - Include privacy notes covering high-impact classification and correlation risk.
A candidate namespace SHOULD:
- Provide at least one example profile and grant demonstrating typical use.
- Define at least one recommended context modifier if the domain has common context effects.
- Reuse
corekeys where the signal is generic, rather than duplicating them.
Stability levels¶
| Level | Meaning |
|---|---|
experimental |
Published but not recommended for production; shape may change freely. |
draft |
Candidate for stabilization; at least one reference implementation exists. |
stable |
At least two interoperable implementations; breaking changes require a major version. |
A namespace moves from draft to stable only after:
- At least two independent interoperable implementations.
- All conformance tests relevant to the namespace pass against both.
- A 30-day comment period on the proposal PR with no unresolved blocking issues.
Registration process¶
- Open a PR adding
schemas/extensions/<namespace>.schema.jsonand any related examples. - Include a short proposal document in
governance/proposals/<namespace>.mdbased onPROPOSAL-TEMPLATE.md. - Flag privacy/security sensitivities explicitly.
- Wait for editor review and (for
stablepromotion) the two-implementation bar.
High-impact domain policy¶
Namespaces covering health, employment, housing, insurance, or credit MUST NOT be registered in v0.1. They require a future "high-impact domain" policy profile not yet defined.