CycloneDX Specification Skill
Authoritative guidance for the CycloneDX Bill of Materials standard. CycloneDX is an Ecma International standard published as ECMA-424 under a royalty-free patent policy. Version 1.6 is the 1st Edition (June 2024) and version 1.7 is the 2nd Edition (December 2025). The JSON Schema is the reference implementation.
Scope
- Versions: 1.6 (ECMA-424 1st Edition) and 1.7 (ECMA-424 2nd Edition)
- Formats: JSON and XML; Protocol Buffers also registered
- Schema dialect: JSON Schema draft-07
Lookup Order
For any CycloneDX request, consult references in this order:
- Use case examples in
references/use-cases/. Start here for any scenario; these contain worked JSON and XML. Seereferences/use-cases/INDEX.mdto pick the right file. - Capability overviews in
references/capabilities/for short BOM-type summaries. Seereferences/capabilities/INDEX.md. - Authoritative guides in
references/guides/<BOM-TYPE>/en/*.mdfor best practices and detailed prose. Seereferences/guides/INDEX.md. Only SBOM, CBOM, ML-BOM, MBOM, and Attestations have full guides. - Schemas in
references/schemas/bom-1.6.schema.jsonorbom-1.7.schema.jsonto verify field names, types, enumerations, and constraints. Focus on the relevantdefinitionssection; do not read whole schemas. - Authoring conventions in
references/iso-house-style.md,oxford-english.md, andjson-schema-patterns.mdwhen writing or editing specification prose.
Reference Map
| Path | Purpose |
|---|---|
references/schemas/ |
JSON schemas (bom-1.6, bom-1.7, spdx, jsf-0.82, cryptography-defs) |
references/use-cases/ |
40+ scenario files with JSON/XML examples (see INDEX.md) |
references/capabilities/ |
13 BOM-type overview files (see INDEX.md) |
references/guides/ |
Five full authoritative guides in Markdown (see INDEX.md) |
references/about/ |
Project governance, history, TC54, standardization process |
references/iso-house-style.md |
ISO House Style for specification prose |
references/oxford-english.md |
Oxford English spelling rules for spec prose |
references/json-schema-patterns.md |
draft-07 patterns used in CycloneDX schemas |
references/property-taxonomy.md |
cdx: namespace registry and extensibility guidance |
references/conventions.md |
Required BOM fields, minimal examples, media types, validation |
references/version-diff.md |
What's new in 1.7 vs 1.6; version selection guidance |
How to Work
Specification Authoring (highest fidelity bar)
When writing or editing CycloneDX specification text, read references/iso-house-style.md and references/oxford-english.md first. Core rules:
- Use ISO verbal forms (
shall,should,may,can) in lowercase. Do not use RFC 2119 keywords such as MUST, REQUIRED, or OPTIONAL. Reserveshallfor true conformance requirements; usecanfor capabilities. - Write in present tense, active voice, impersonal third person (no "you", "we", or "I"). No contractions.
- Use Oxford English spelling for spec prose (e.g.,
standardizewith-ize,behaviour,sulfur,artefact,licenceas noun andlicenseas verb). Exception: when referring to a specification-defined term or schema property, use the spelling used in the schema itself (for example, thelicenseproperty and theartifactenum values keep their American spellings in prose). - Every object property in the JSON Schema includes
type,title, anddescriptionat minimum. - All object definitions use
additionalProperties: false. - Enumeration values include
meta:enumobjects with human-readable descriptions. - A preprocessing script normalises schema description fields to ISO House Style, so authored text should already conform.
BOM Generation
Load references/conventions.md for required top-level fields, a minimal valid JSON BOM, a minimal valid XML BOM, media types, and file naming. For real-world patterns, load the matching references/use-cases/*.md. Always read the target version schema before producing output.
Concept Explanation
Ground answers in actual schema definitions. Key concepts:
- BOM types. SBOM, HBOM, OBOM, SaaSBOM, AI/ML-BOM, CBOM, MBOM, VDR, VEX, BOV all share one unified schema.
- Component types (1.7).
application,framework,library,container,platform,operating-system,device,device-driver,firmware,file,machine-learning-model,data,cryptographic-asset. - Identity. Components identify via
cpe,purl,omniborId,swhid, orswid. Evidence of identity is modeled underevidence.identity. - Dependencies. The
dependenciesarray models a directed graph withref(the component) anddependsOn(its direct dependencies). Theprovidesfield documents which specifications a component implements. - Compositions. Precisely describe completeness using
aggregatevalues likecomplete,incomplete,unknown, or first/third-party scoped variants. - Vulnerabilities. Each vulnerability supports
ratings(CVSS, OWASP, SSVC),analysis(state, justification, response), andaffects(components and version ranges). - Declarations and Attestations (1.6+). Assessors, attestations, claims, evidence, and signatories enable compliance as code.
- Formulation (1.6+, scope extended in 1.7). Describes how components and services were manufactured or deployed via formulas, workflows, tasks, and steps.
- Cryptographic Properties (1.6+, enhanced in 1.7). Model algorithms, certificates, protocols, and related material. 1.7 adds the Cryptography Registry via
cryptography-defs.schema.json. - Citations (1.7). Attribute specific BOM data to contributing entities using JSON Pointers or path expressions.
- Patents (1.7). Model patent information, families, and assertions on components or services.
For 1.6 vs 1.7 detail, load references/version-diff.md.
Schema Development
- CycloneDX uses JSON Schema draft-07.
- Read
references/json-schema-patterns.mdfor recurring patterns. - Cross-references between objects use
bom-ref(identifier) andrefLinkType(pointer to an identifier). - External schema references use
$refto subschema files (spdx.schema.json,jsf-0.82.schema.json,cryptography-defs.schema.json). - BOM-Link crosses between BOMs using URN format:
urn:cdx:<uuid>/<version>#<bom-ref>.
Notes
- Both versions are ratified Ecma International standards published as ECMA-424. CycloneDX 1.6 is the 1st Edition (June 2024). CycloneDX 1.7 is the 2nd Edition (December 2025) and adds citations, patents, distribution constraints (TLP), external component markers, license-choice restructuring, and the cryptography registry. Use 1.7 as the default for new work.
- Schemas are large (each roughly 200 KB). Always focus on the relevant
definitionsentry rather than loading an entire schema. - Property taxonomy is split between
cdx:(standardized) and arbitrary namespaces. Thecdxnamespace is authoritative; seereferences/property-taxonomy.md.
Source: CycloneDX/skills — distributed by TomeVault.