In src/metaschema/oscal_implementation-common_metaschema.xml at v1.2.2 (commit 21403b4), the constraint oscal-inventory-item-hardware-service-software-prop-name-values at L567 scopes inventory-item prop names under the predicate (.)[@type=('software', 'hardware', 'service')] — but inventory-item declares no type flag, so the predicate can never be true and the constraint (enum vendor-name) can never apply. (Related: the neighboring asset-id flag is itself commented out at L456-461, which suggests this region of the module has drifted.)
Found during a lexical inventory of all constraint occurrences in the 1.2.2 Metaschema sources.
Suggested resolution: either add the intended type flag to inventory-item, retarget the predicate (e.g. at a prop-based discriminator), or remove the unreachable constraint.
In
src/metaschema/oscal_implementation-common_metaschema.xmlat v1.2.2 (commit 21403b4), the constraintoscal-inventory-item-hardware-service-software-prop-name-valuesat L567 scopesinventory-itemprop names under the predicate(.)[@type=('software', 'hardware', 'service')]— butinventory-itemdeclares notypeflag, so the predicate can never be true and the constraint (enumvendor-name) can never apply. (Related: the neighboringasset-idflag is itself commented out at L456-461, which suggests this region of the module has drifted.)Found during a lexical inventory of all constraint occurrences in the 1.2.2 Metaschema sources.
Suggested resolution: either add the intended
typeflag toinventory-item, retarget the predicate (e.g. at a prop-based discriminator), or remove the unreachable constraint.