metanorma / oscal-ruby

Gem for accessing/writing OSCAL content
BSD 2-Clause "Simplified" License
4 stars 3 forks source link

Implement Profile model #8

Open ronaldtse opened 1 year ago

ronaldtse commented 1 year ago

@kwkwan the next step is to use the Catalogue with the Profile model together. i.e. the Profile class can link with a Catalogue, and can output a tailored array of controls.

It should be able to generate a "resolved profile catalog".

The "resolved profile catalog" is this:

Specifically, the profile contains:

  imports:
    - href: NIST_SP-800-53_rev5_catalog.yaml
      include-controls:
        - with-ids:
            - ac-1
            - ac-2
# ...

which indicates the location of the catalog, and what controls to import.

The profile also contains:

  merge:
    as-is: true

Which seems to indicate the behavior of merging multiple profiles together? (you're more familiar...)