3.1 Code Grammar: STREAM-TYPE-LEVELSEQ
Purpose: create human-readable, machine-valid IDs that never change.
Canonical pattern (regex):^(CORE|HLT|PUB|FIN|POL|TEC|ENV|SYS)-(NB|MB|MC)-[0-6][0-9]{2}$
-
STREAM:
CORE, HLT, PUB, FIN, POL, TEC, ENV, SYS -
TYPE:
NB(Nanobadge, 2–4h) ·MB(6–8h) ·MC(12–20h) -
LEVEL:
0–6→ 0 Orientation · 1 Foundations · 2 Methods · 3 Practitioner · 4 Specialist · 5 Capstone Unit · 6 Research -
SEQ (two digits):
01–99within each LEVEL
Immutable: Codes never embed versions and are never reused.
3.2 Streams & Controlled Vocabularies (CORE, HLT, PUB, FIN, POL, TEC, ENV, SYS)
- CORE (shared governance, evidence, EO/GIS, EWS/AAP/DSS)
- HLT (One-Health, epidemiology, health systems)
- PUB (civil protection, cities, infrastructure, procurement)
- FIN (market/credit/liquidity, model risk, climate/ESG, parametrics)
- POL (geopolitics, sanctions, civic space, information integrity)
- TEC (cyber, privacy, AI, OT/ICS)
- ENV (climate, nature/biodiversity, adaptation, water/land/air)
- SYS (complexity, systemic risk, foresight, red-teaming)
Vocabulary control: streams, types, levels, standards tags, competencies, languages, and assessment types use closed lists for clean analytics and interoperability.
3.3 Levels & Ranges (0–6) and Reserved Sequences
- Level semantics: 0 Orientation; 1 Foundations; 2 Methods/Tools; 3 Practitioner; 4 Specialist; 5 Capstone Unit; 6 Research.
-
Sequence policy (per level):
-
01–29Core set (common across audiences) -
30–69Track A (e.g., FIN—ALM & Liquidity; ENV—Adaptation) -
70–89Track B (parallel specialization) -
90–99Reserved (emergency use, migrations, sunset placeholders)
-
- Do not encode language/region in codes (handled via metadata/i18n).
3.4 Program Codes: PRG-[TIER]-[STREAM|PATH]-NN
Pattern (regex): ^PRG-(PC|AC|DIP|FEL)-([A-Z][A-Za-z-]+)-[0-9]{2}$
-
TIER:
PCProfessional ·ACAdvanced ·DIPDiploma ·FELFellowship -
STREAM|PATH: a stream (e.g.,
FIN) or named pathway (Climate-Finance) -
NN:
01–99sequence - Programs are separate objects listing required courses (with minimum accepted revisions) plus a capstone.
3.5 Permalinks & Slugs (Latest vs Specific rev)
-
Course (latest):
/academy/courses/FIN-MC-318 -
Specific revision:
/academy/courses/FIN-MC-318?rev=25.09.1 -
Program:
/academy/programs/PRG-PC-FIN-01 -
Redirects: Any legacy
-vYY.MMURLs 301 to the stable slug;?rev=preserved. - Canonical tags: course pages publish canonical to the stable URL.
3.6 Semantic Versioning: Major/Minor/Patch Rules
Format: rev: YY.MM.P → Year, Month, Patch.
-
MAJOR (YY bump): Learning outcomes change or assessment blueprint shifts.
Effect: invite delta exam for renewal; program minimum revs may increase. -
MINOR (MM bump): New labs, datasets, or examples; outcomes unchanged.
Effect: no renewal required. -
PATCH (.P): Editorial fixes, typos, figure clarifications.
Effect: no assessment impact.
Rule of thumb: If a learner’s previously demonstrated competence would be assessed differently, it’s MAJOR.
3.7 Deprecation, Supersession & Redirect Policy
-
Status values:
active | deprecated | superseded.- Deprecated: new enrollments discouraged; page shows successor mapping; valid for transcripts.
- Superseded: replaced by a new code (rare; used for structural splits/merges).
- Sunset cadence: deprecated → review at 12 months; superseded → block enroll, transcript remains valid.
- Redirects: legacy slugs 301 to stable; superseded codes display banner with successor link.
- Transcripts: always record code + rev at time of completion; never altered.
3.8 SKU vs Academic Code Separation
-
Academic code (e.g.,
FIN-MC-318) identifies learning; SKU identifies a sellable product/bundle. - Many-to-one mapping allowed (cohorts, languages, support tiers).
- Do not encode pricing, dates, or cohort info in academic codes.
- Example:
SKU: FIN-MC-318-EN-COHORT-2025Q1→ maps toFIN-MC-318.
3.9 Catalog Linter & Acceptance Checks
CLI: nexus-catalog-lint <path-to-json>
Validations (must-pass):
- Regex checks for course/program codes; no embedded version in codes.
- Uniqueness of codes, slugs, and SKUs.
- Prereq grammar parses; no DAG cycles; at least one valid path with/without RPL.
- Program requires only existing course codes and specify min revs.
- Metadata completeness: hours, NCU, outcomes (3–6), standards tags, competency maps, nx_links, accessibility flags.
- i18n fields: languages array present; alt text/captions flags for A/V.
- Cross-listing: canonical owner set; mirror streams listed.
- Status logic: deprecated/superseded entries have successor mapping.
- Permalinks: stable slug exists; legacy redirect defined (if applicable).
- QA hooks present: psychometrics keys for graded units; last standard-setting date.
Exit codes: 0 OK · 1 WARN (non-blocking) · 2 FAIL (block publish).
3.10 Sample Mappings: Before/After Refactor
| Legacy ID / URL (before) | New Code (after) | rev | Notes |
|---|---|---|---|
FIN-MC-318-v25.09 |
FIN-MC-318 |
25.09.1 |
Version removed from code; minor patch during import |
TEC-PC-511-v25.08 (program-as-course) |
PRG-PC-TEC-01 |
25.08.0 |
Converted to program object; capstone TEC-PC-599
|
ENV-AC-621-v25.07 (program-as-course) |
PRG-AC-Climate-Finance-01 |
25.07.0 |
Named pathway; cross-listed FIN/ENV; min revs set |
CORE-MC-201-v25.06 |
CORE-MC-201 |
25.06.2 |
Two PATCHes recorded; stable permalink established |
Result: With this scheme, Nexus codes remain stable, pages are discoverable, programs are composable, and revisions are auditable—supporting lifelong learning, employer verification, and global interoperability.