cdisc-org / cdisc-org/cdisc-rules-engine

Rule blocked: SEND4

Open
#1,126 7 comments 0 reactions 1 assignee Claimed by @aniemes View on GitHub
question SEND
Dominant language
Python
Stars
113
Forks
43
Avg merge
14h 51m
Merged PRs (30d)
14

Description

SEND4 states that the datatype in the XPT(char, num) should be aligned with the datatype in the define.xml (text, integer, float, date, datetime, …).

So I developed the following:

Check
all:
- name: variable_data_type
operator: equal_to
value: 'char'
- name: define_variable_data_type
operator: is_contained_by
value:
- 'integer'
- 'float'
stating that when the XPT datatype is "char", a violation must be reported when the Define-XML datatype is either "integer" or "float".

Just to start with, I reduced this to:
Check
all:
- name: define_variable_data_type
operator: is_contained_by
value:

When I however replace:
- name: define_variable_data_type
by:
- name: variable_name
the rule executes
So it looks as the operator "is_contained_by" behaves different depending on whether the value to be compared comes from the column name or from the define.xml (as a string?).
I attach the define.xml and the unit test Excel

[unit-test-coreid-CG0013-positive.xlsx](https://github.com/user-attachments/files/19651141/unit-test-coreid-CG0013-positive.xlsx)

[define_OK-xml.zip](https://github.com/user-attachments/files/19651153/define_OK-xml.zip)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.