Skip to content

Dataset Versioning in Catalogs #961

Open
@ohsh6o

Description

@ohsh6o

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?

Dependencies:

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

No one assigned

    Type

    No type

    Projects

    Status

    Todo

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions