Description
User Story:
As an OSCAL developer, I want to explicitly explain what dataset (NIST 800-53, ISO-27001 respectively) and which version of that dataset (respectively 4.0 and 5.1; ISO/IEC 27001:2013 and ISO/IEC 27001:2018) is the source of the catalog and resolved profile catalog without using human interpretation of semantic context, or externalized file and directory naming.
Goals:
When processing catalogs in software, especially beyond the pre-existing oscal-content resources, especially beyond SP800-53 baselines, ETL pipelines cannot rely on explicit file and directory names. Introspecting the content of an OSCAL catalog and resolved profile catalog, the closest to understanding the catalog's content is "800-53 Revision 5, version 5.1 from NIST specifically" requires reading in file names or free-form title
text values. This is achievable, but runs counter the objectives of OSCAL with structured, machine-readable content.
First-Order Question and Goal
First order problem: within a given document, how do we determine the origin (provenance) and that origin document’s version when referenced in a particular document?
- We currently have
//metadata/version
- Maybe not a defined way to determine provenance
- document-id exists but may not be sufficiently
- This other idea
- “Is this document 800-53?” “Or 800-53 Rev 5?” “Is it ISO-27001?” or “ISO/IEC 27000:2018 or ISO/IEC 27000:2013?”
- Maybe we need a series or dataset prop to clarify questions like: “is this document 800-53?”
- Continue the version to answer questions like: “Or 800-53 Rev 5?” “ISO/IEC 27000:2018 or ISO/IEC 27000:2013?”
Second-Order Question and Goal
Second order question: In a resolved profile catalog, how do I know the provenance of the profile the new profile is based off of?
- In the vanilla profile, it is present.
- It is not in the resolved profile, we can mark the source profile
- Might be nicer to insert that in the resolved profile
- Work commentary for this question and effort into: Profiles when resolved should show their provenance #680
Dependencies:
- For the first order question, there would need to be potentially new props
- For the second order question, there would need to be enhancement to the profile resolution standard and OSCAL implementation
Acceptance Criteria
- All OSCAL website and readme documentation affected by the changes in this issue have been updated. Changes to the OSCAL 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 items above are general acceptance criteria for all User Stories. Please describe anything else that must be completed for this issue to be considered resolved.}
Metadata
Metadata
Assignees
Type
Projects
Status