CORE Rule Versioning #440
Replies: 4 comments 2 replies
-
Update Scenario: Append additional compatible rule sources to a published CORE rule to also include updating cited guidance from the source. |
Beta Was this translation helpful? Give feedback.
-
Does changing scope, e.g., additional classes or domains, require a new version? Per CROG, it requires a new version of the same rule, not a new rule with a different rule ID. Outstanding question: Do we create a new CORE rule or up-version it? |
Beta Was this translation helpful? Give feedback.
-
I added an effective date section (marked TBD) following our live discussion about the need to decide when we begin practicing this set of instructions. |
Beta Was this translation helpful? Give feedback.
-
When we make minor changes to a Core rule, such as those "cosmetic" attributes, do we want to explicitly indicate it in the yaml file? For example, from "Version: 1" to "Version: 1.1". |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Document Information
Effective Date
To be determined.
Target Audience
Introduction
Each CORE rule must include a version identifier (
$.Core.Version
) and a status identifier ($.Core.Status
) in the rule schema. These elements together provide the complete status of a rule. For instance, a rule with the identifier CORE-09988 and version 1, in a draft state, would be represented as:Assumptions
$.Authorities
in the rule schema.$.Description
), and Message ($.Outcome.Message
), Output Variables ($.Outcome.Output Variables
).Purpose
This document describes how a Rule Author handle the version identifier in each of the scenario described below.
Out of Scope
These areas are outside the scope for this document:
TODO
Scenario: Brand new CORE rule
A Rule Author initiates a new CORE rule by setting the version identifier to '1' and the status to 'Draft'. After successfully passing the unit test, the Rule Author publishes the rule using the Rule Editor. At this stage, the Rule Editor automatically updates the status to 'Published'.
Scenario: Retiring published CORE rules
A published CORE rule may become retired due to various reasons. In such cases, the Rule Author can update the status identifier of the affected CORE rule version from 'Published' to 'Retired'.
Scenario: Correct rule logic
A Rule Author can update a CORE rule to correct flawed rule logic through two main steps. First, the impacted CORE rule's status is changed to 'Retired'. Then, a new version of the same CORE rule ID is created, with updated rule logic that undergoes unit testing and publication. The retired and newly created versions are distinct objects in the Rule Editor.
Scenario: Append additional compatible rule sources to a published CORE rule
When an additional rule source is compatible with a published CORE rule, we aim to reuse the existing rule logic. The Rule Author can update the corresponding rule without creating a new version, and no unit test is required in this scenario.
Scenario: Updates needed for cosmetic metadata
Changes to cosmetic metadata do not warrant a new version of the same CORE rule.
Beta Was this translation helpful? Give feedback.
All reactions