Paste a JSON document and validate/normalize containers.cna.affected[*].versions[*]
per your rules.
(paste a schema and click Validate & Run)
semver-2.0.0
):(run to see results)
semver
):(run to see results)
(run to see mutated JSON)
versionType === "semver-2.0.0"
: collect invalid values from version
, lessThan
, lessThanOrEqual
, and changes[*].at
into badSemVer2
. Always rewrite versionType
→ "semver"
.lessThan
or lessThanOrEqual
equals "0.0.0"
or "0.0.0-0"
, change it to "4294967295.0.0"
(top-level only).versionType === "semver"
: allow exceptions — version === "0"
, and any lessThan
/ lessThanOrEqual
that ends with *
. In changes[*].at
, allow "0"
or strings ending with *
. Otherwise collect invalid values into badSemVer
and set that item’s versionType
→ "custom"
.versionType
, or with a different versionType
, are left unchanged.