compliance-trestle
compliance-trestle copied to clipboard
Address handling of constrained lists since they have been removed from OSCAL after 1.0.0 normalization
To avoid complications caused by constrained lists, "min_items=1" is removed from the oscal models so that what normally would be constrained lists are now regular lists that could be empty.
The original intent is for a list either not to be present, or present with at least one item. By removing min_items the models could have an optional list that is in fact empty.
Several sections of the code do specific handling of constrained lists. Either that code should be removed or we should find a way to handle constrained lists internally and re-enable the min_items restriction.
To be addressed at the OscalBaseModel.oscal_read() level.