From 56c1524927579721d8057cb58a14681f0e8dedfb Mon Sep 17 00:00:00 2001 From: Samuel Johnson Date: Tue, 11 Nov 2025 11:23:48 -0500 Subject: [PATCH 1/2] version --- cdisc_rules_engine/models/operation_params.py | 1 + cdisc_rules_engine/operations/get_codelist_attributes.py | 4 ++-- cdisc_rules_engine/utilities/rule_processor.py | 2 +- resources/schema/Operations.json | 2 +- resources/schema/Operations.md | 4 ++-- tests/unit/test_operations/test_get_codelist_attributes.py | 2 +- 6 files changed, 8 insertions(+), 7 deletions(-) diff --git a/cdisc_rules_engine/models/operation_params.py b/cdisc_rules_engine/models/operation_params.py index 3f264531f..1dde03b4d 100644 --- a/cdisc_rules_engine/models/operation_params.py +++ b/cdisc_rules_engine/models/operation_params.py @@ -58,3 +58,4 @@ class OperationParams: target: str = None value_is_reference: bool = False namespace: str = None + version: str = None diff --git a/cdisc_rules_engine/operations/get_codelist_attributes.py b/cdisc_rules_engine/operations/get_codelist_attributes.py index 23aea7f74..4ec66b086 100644 --- a/cdisc_rules_engine/operations/get_codelist_attributes.py +++ b/cdisc_rules_engine/operations/get_codelist_attributes.py @@ -65,7 +65,7 @@ def _get_codelist_attributes(self): # Get controlled term attribute column name specified in rule ct_attribute = self.params.ct_attribute ct_target = self.params.target - ct_version = self.params.ct_version + ct_version = self.params.version ct_packages = self.params.ct_packages df = self.params.dataframe # 2.0 build codelist from cache @@ -167,7 +167,7 @@ def _get_ct_from_dataset(self, ct_key: str, ct_val: str): ct_attribute = self.params.ct_attribute ct_target = self.params.target # target variable specified in rule - ct_version = self.params.ct_version # controlled term version + ct_version = self.params.version # controlled term version if ct_attribute == "Term CCODE": ct_attribute = "TSVALCD" sel_cols = [ct_target, ct_version, ct_attribute, ct_key] diff --git a/cdisc_rules_engine/utilities/rule_processor.py b/cdisc_rules_engine/utilities/rule_processor.py index 4751c93d2..3cf80f8a3 100644 --- a/cdisc_rules_engine/utilities/rule_processor.py +++ b/cdisc_rules_engine/utilities/rule_processor.py @@ -390,7 +390,7 @@ def perform_rule_operations( standard_version=standard_version, standard_substandard=standard_substandard, external_dictionaries=external_dictionaries, - ct_version=operation.get("ct_version"), + ct_version=operation.get("version"), ct_package_type=RuleProcessor._ct_package_type_api_name( operation.get("ct_package_type") ), diff --git a/resources/schema/Operations.json b/resources/schema/Operations.json index e89fc7757..2cf1ce254 100644 --- a/resources/schema/Operations.json +++ b/resources/schema/Operations.json @@ -93,7 +93,7 @@ "name", "ct_attribute", "ct_packages", - "ct_version" + "version" ], "type": "object" }, diff --git a/resources/schema/Operations.md b/resources/schema/Operations.md index a3b8f3a59..a73a63614 100644 --- a/resources/schema/Operations.md +++ b/resources/schema/Operations.md @@ -158,7 +158,7 @@ Fetches controlled terminology attribute values from CT packages based on row-sp - `ct_attribute`: Attribute to extract - `"Term CCODE"`, `"Codelist CCODE"`, `"Term Value"`, `"Codelist Value"`, or `"Term Preferred Term"` - `target`: Column containing CT reference (e.g., "TSVCDREF") -- `ct_version`: Column containing CT version (e.g., "TSVCDVER") +- `version`: Column containing CT version (e.g., "TSVCDVER") - `ct_packages`: List of CT packages to search (e.g., `["sdtmct-2020-03-27"]`) ```yaml @@ -166,7 +166,7 @@ Fetches controlled terminology attribute values from CT packages based on row-sp name: TSVCDREF operator: get_codelist_attributes ct_attribute: Term CCODE - ct_version: TSVCDVER + version: TSVCDVER target: TSVCDREF ct_packages: - sdtmct-2020-03-27 diff --git a/tests/unit/test_operations/test_get_codelist_attributes.py b/tests/unit/test_operations/test_get_codelist_attributes.py index 97eaf67e6..6127b3891 100644 --- a/tests/unit/test_operations/test_get_codelist_attributes.py +++ b/tests/unit/test_operations/test_get_codelist_attributes.py @@ -467,7 +467,7 @@ def test_get_codelist_attributes( operation_params.standard = "sdtmig" operation_params.standard_version = "3-4" operation_params.ct_attribute = "Term CCODE" # Changed from TSVALCD - operation_params.ct_version = "TSVCDVER" + operation_params.version = "TSVCDVER" operation_params.target = "TSVCDREF" operation_params.ct_packages = ct_packages From 5596abe65aab3f2f333cf797969f18d582e23362 Mon Sep 17 00:00:00 2001 From: Samuel Johnson Date: Tue, 11 Nov 2025 12:19:38 -0500 Subject: [PATCH 2/2] fix --- cdisc_rules_engine/models/operation_params.py | 1 - cdisc_rules_engine/operations/get_codelist_attributes.py | 4 ++-- tests/unit/test_operations/test_get_codelist_attributes.py | 2 +- 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/cdisc_rules_engine/models/operation_params.py b/cdisc_rules_engine/models/operation_params.py index 1dde03b4d..3f264531f 100644 --- a/cdisc_rules_engine/models/operation_params.py +++ b/cdisc_rules_engine/models/operation_params.py @@ -58,4 +58,3 @@ class OperationParams: target: str = None value_is_reference: bool = False namespace: str = None - version: str = None diff --git a/cdisc_rules_engine/operations/get_codelist_attributes.py b/cdisc_rules_engine/operations/get_codelist_attributes.py index 4ec66b086..23aea7f74 100644 --- a/cdisc_rules_engine/operations/get_codelist_attributes.py +++ b/cdisc_rules_engine/operations/get_codelist_attributes.py @@ -65,7 +65,7 @@ def _get_codelist_attributes(self): # Get controlled term attribute column name specified in rule ct_attribute = self.params.ct_attribute ct_target = self.params.target - ct_version = self.params.version + ct_version = self.params.ct_version ct_packages = self.params.ct_packages df = self.params.dataframe # 2.0 build codelist from cache @@ -167,7 +167,7 @@ def _get_ct_from_dataset(self, ct_key: str, ct_val: str): ct_attribute = self.params.ct_attribute ct_target = self.params.target # target variable specified in rule - ct_version = self.params.version # controlled term version + ct_version = self.params.ct_version # controlled term version if ct_attribute == "Term CCODE": ct_attribute = "TSVALCD" sel_cols = [ct_target, ct_version, ct_attribute, ct_key] diff --git a/tests/unit/test_operations/test_get_codelist_attributes.py b/tests/unit/test_operations/test_get_codelist_attributes.py index 6127b3891..97eaf67e6 100644 --- a/tests/unit/test_operations/test_get_codelist_attributes.py +++ b/tests/unit/test_operations/test_get_codelist_attributes.py @@ -467,7 +467,7 @@ def test_get_codelist_attributes( operation_params.standard = "sdtmig" operation_params.standard_version = "3-4" operation_params.ct_attribute = "Term CCODE" # Changed from TSVALCD - operation_params.version = "TSVCDVER" + operation_params.ct_version = "TSVCDVER" operation_params.target = "TSVCDREF" operation_params.ct_packages = ct_packages