Skip to content

trestle.core.models.interfaces

trestle.core.models.interfaces ¤

Interfaces for use within other trestle functions defined as pydantic data models.

Classes¤

OSCALAssembly ¤

Bases: TrestleBaseModel


              flowchart TD
              trestle.core.models.interfaces.OSCALAssembly[OSCALAssembly]
              trestle.core.trestle_base_model.TrestleBaseModel[TrestleBaseModel]

                              trestle.core.trestle_base_model.TrestleBaseModel --> trestle.core.models.interfaces.OSCALAssembly
                


              click trestle.core.models.interfaces.OSCALAssembly href "" "trestle.core.models.interfaces.OSCALAssembly"
              click trestle.core.trestle_base_model.TrestleBaseModel href "" "trestle.core.trestle_base_model.TrestleBaseModel"
            

Data model to represent an assembled set of OSCAL objects.

Here the assembly represents the constraints as expected by the current OSCAL schema. At this point in time a 'flat' model has been chosen rather than an tree.

Source code in trestle/core/models/interfaces.py
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
class OSCALAssembly(TrestleBaseModel):
    """Data model to represent an assembled set of OSCAL objects.

    Here the assembly represents the constraints as expected by the current OSCAL
    schema. At this point in time a 'flat' model has been chosen rather than an tree.
    """

    poam: Optional[o_poam.PlanOfActionAndMilestones] = None
    sar: Optional[o_ar.AssessmentResults] = None
    sap: Optional[o_ap.AssessmentPlan] = None
    ssp: Optional[o_ssp.SystemSecurityPlan] = None
    profiles: Optional[Dict[str, o_profile.Profile]] = None
    catalogs: Optional[Dict[str, o_catalog.Catalog]] = None
    components: Optional[Dict[str, o_component.ComponentDefinition]] = None

    model_config = ConfigDict(populate_by_name=True, extra='forbid', validate_assignment=True)
Attributes¤
catalogs = None class-attribute instance-attribute ¤
components = None class-attribute instance-attribute ¤
model_config = ConfigDict(populate_by_name=True, extra='forbid', validate_assignment=True) class-attribute instance-attribute ¤
poam = None class-attribute instance-attribute ¤
profiles = None class-attribute instance-attribute ¤
sap = None class-attribute instance-attribute ¤
sar = None class-attribute instance-attribute ¤
ssp = None class-attribute instance-attribute ¤

handler: python