Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Consistent Collections of Children Objects in JSON #914

Closed
3 tasks
rgauss opened this issue Apr 22, 2021 · 3 comments · Fixed by #923
Closed
3 tasks

Consistent Collections of Children Objects in JSON #914

rgauss opened this issue Apr 22, 2021 · 3 comments · Fixed by #923
Assignees
Labels
enhancement Scope: Modeling Issues targeted at development of OSCAL formats User Story

Comments

@rgauss
Copy link
Contributor

rgauss commented Apr 22, 2021

User Story:

As an OSCAL developer working with JSON, I want to be able to consistently process collections of children objects as arrays so that I don't have to switch between parsing methods for different elements of the model.

Goals:

Currently the modeling of collections of children objects is somewhat inconsistent throughout OSCAL.

For example, in the component definition the components use a group-by of BY_KEY with the uuid as the key resulting in each child component being represented as a key/value, while the control-implementations use a group-by of BY_ARRAY and also contain a uuid resulting in an array of control-implementations.

The majority of group-as references in the OSCAL schema should use BY_ARRAY for consistency and more common parsing methods in JSON tools. An exception may be where the key defines a unique relationship to the parent, such as responsible-roles which uses BY-KEY, but the role-id is a key that defines a relationship like supplier.

Dependencies:

N/A

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.}

@david-waltermire david-waltermire added the Scope: Modeling Issues targeted at development of OSCAL formats label Apr 30, 2021
@david-waltermire david-waltermire mentioned this issue May 4, 2021
18 tasks
@david-waltermire david-waltermire self-assigned this May 4, 2021
@butler54
Copy link

butler54 commented May 6, 2021

Fantastic idea :)

@david-waltermire
Copy link
Contributor

PR #923 fully addresses this issue and is ready to review.

@david-waltermire
Copy link
Contributor

Merged PR #923.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Scope: Modeling Issues targeted at development of OSCAL formats User Story
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants