usnistgov/oscal-deep-diff

Property interrogation in path selection operations

Opened this issue · 0 comments

User Story:

As an OSCAL deep diff user, I would like to be able to change comparison behavior based on a property of an object that is being compared, such as:

  • Selectively ignoring properties of a specific type
  • Changing the string similarity method based on a property of a sub-object

This would require the "path condition" system to be reworked to allow for syntax that selects a property of a path, e.g. controls/#/props[name="ignoreme" and value="true"]. This may mean moving towards an XPath-eque selection syntax.

Goals:

  • Formalize a selection syntax and provide an example in a comment to this issue
  • Make the adjustments to the selection syntax and effected comparison features

Dependencies:

N/A

Acceptance Criteria

  • readme documentation affected by the changes in this issue have been updated.
  • 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.}