You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
For purposes of metaschema design, the empty datatype is anomalous in a couple of ways, and it requires special handling in back. It is worth noting that it can't be assigned to flags, only fields.
Conceptually, having this as a type constraint (not model constraint) also redundant, since functionally, an empty field is no different from an assembly that has no fields or (sub) assemblies. In Metaschema, this is represented as easily with an assembly with an empty (or no) model, making the datatype superfluous for purposes of expressibility.
Goals:
Simplify the Metaschema language by removing support for the empty datatype.
Consider making model inside assembly optional, supporting more direct representation of empty assemblies.
Dependencies:
This will be a breaking change in metaschemas, so extant / functioning metaschema instances (including OSCAL) will need to be adjusted if/where they use 'empty'.
Acceptance Criteria
Schema production and validation unit tests all pass with the new design
All website and readme documentation affected by the changes in this issue have been updated. Changes to the website can be made in the docs/content directory of your branch.
A Pull Request (PR) is submitted that fully addresses the goals of this User Story. This issue is referenced in the PR.
The CI-CD build process runs without any reported errors on the PR. This can be confirmed by reviewing that all checks have passed in the PR.
The text was updated successfully, but these errors were encountered:
…pleting feature extension work related to aliasing types, inline definitions, ANY models, representation of `empty` etc. with assorted bug fixes; new prose model
User Story:
For purposes of metaschema design, the empty datatype is anomalous in a couple of ways, and it requires special handling in back. It is worth noting that it can't be assigned to flags, only fields.
Conceptually, having this as a type constraint (not model constraint) also redundant, since functionally, an empty field is no different from an assembly that has no fields or (sub) assemblies. In Metaschema, this is represented as easily with an assembly with an empty (or no) model, making the datatype superfluous for purposes of expressibility.
Goals:
Simplify the Metaschema language by removing support for the empty datatype.
Consider making
model
inside assembly optional, supporting more direct representation of empty assemblies.Dependencies:
This will be a breaking change in metaschemas, so extant / functioning metaschema instances (including OSCAL) will need to be adjusted if/where they use 'empty'.
Acceptance Criteria
The text was updated successfully, but these errors were encountered: