metaschema-framework / oscal-cli

https://oscal-cli.metaschema.dev/
Other
3 stars 4 forks source link

Certain prop>values have constraints that are not outlined in OSCAL SSP json schema #34

Closed Telos-sa closed 1 month ago

Telos-sa commented 2 months ago

User Story:

User story and goals are outlined in NIST OSCAL Repo issue 2042

There are several props that have constraints that are not outlined in the OSCAL SSP json schema

Some examples of these props are system-characteristics>props>name="cloud-service-model"&name="cloud-deployment-model" and system-implementation>components>props>name="isa-date".

Acceptance Criteria

david-waltermire commented 2 months ago

Please see #33 for an explanation of why it's not always possible to represent some validation rules in XML or JSON schema, and why Metaschema constraints are used for extra schema validation.

Regarding the props mentioned here and in usnistgov/OSCAL#2042, the use of props in OSCAL is a primary extension mechanism. Since a prop can have an arbitray namespace, name, and value (among other flags), these flag values are constrained using Metaschema constraints.

For example:

In many cases (including those above), the restriction implemented by a constraint applies when the name and namespace have a specific value, which requires logic that is not present in JSON and XML schema.

As a result, this issue cannot be addressed.