m Miguel
on

 

This rule 'Inconsistent value for --CAT--' is based on a few ADaM rules (221,222,224,226). All *CATy values must be the same for each unique value of the variable it categorizes within a PARAMCD. e.g. AVALCATy to AVAL. I think this rule doesn't cover a very feasible scenario: AVAL not available but AVALC populated, so it could be possible to create AVALCATy from AVALC. This scenario obviously gets an error that it should be avoided. Do you think you can do something with this issue? Thanks. Miguel

Forums: ADaM

m Michael
on October 7, 2014

Can your provide the data scenario which is causing what you believe to be a false positive error ?  This rule doesn't actually inspect AVAL or AVALC.   it would only inspect PARAM and AVALCATy

The ADaM 1.0 IG states the following.

A categorical representation of AVAL and/or AVALC. Not necessarily a one-to-one mapping to AVAL and/or AVALC. For example, if PARAM is “Headache Severity” and AVAL has values 0, 1, 2, or 3, AVALCAT1 can categorize AVAL into “None or Mild” (for AVAL 1 or 2) and “Moderate or Severe” (for AVAL 3 or 4)

m Michael
on October 8, 2014

I think i see what you mean now.   For future reference, try to include data examples as a grid by copying from microsoft word into this editor with "FULL HTML" selected


AVISIT

PARAMCD

AVAL

AVALC

BASE

BASEC

BASECAT1

 AD00221

Screening 

SPRARRY

 Atrial

 

 

 

 

error ?

Screening 

SPRARRY

 Atrial

 Atrial

Atrial

 

 

 

Visit 2 

SPRARRY

 Atrial

 Atrial

Atrial

 

 

 

So the problem ist that SPRARRY, BASE, BASECAT1 has 2 unique combos:  

SPRARRY, <null>, <null>

SPRARRY, Atrial, <null>

And therefore how can <null> be used to category both.   One way to fix this is to only run the rule when certain variables are populated.   However in this case, why isn't AVALC and BASE populated for record 1 ?   There does seem to be an inconsistency which the rule brings to light

 

n Nitin
on April 21, 2015

Hi, We calculate AVALCAT only when DTYPE is not missing as these records are used in tables latter. But we get this error.

Thanks.

m Michael
on April 21, 2015

Hi Miguel.  It's been a while since i've looked at this.   Can you provide a data example where your data fails but you believe it shouldn't ?  You can also email it to me at mike@opencdisc.org if easier as a spreadsheet annotated with the fields that trigger the error....or as an xpt or csv that i can validate myself.  here is the data i used for testing

PARAMCD

AVALC

AVAL

AVALCAT1

BASE

BASEC

BASECAT1

CHG

CHGCAT1

PCHG

PCHGCAT1

WEIGHT

A

30

AVG

30

A

AVG

0

LOW

0

CAT1

WEIGHT

A

30

FAIL 221

30

A

AVG

0

LOW

0

CAT1

WEIGHT

AA

35

AVG

30

A

FAIL 221

5

LOW

16.67

CAT1

WEIGHT

B

60

MEDIUM

30

A

AVG

30

LOW

100

CAT1

WEIGHT

BB

65

MEDIUM

30

A

AVG

35

MEDIUM

116.67

CAT1

WEIGHT

BB

65

MEDIUM

30

A

AVG

35

MEDIUM

116.67

CAT1

WEIGHT

C

90

HIGH

30

A

AVG

60

HIGH

200

CAT1

WEIGHT

C

90

HIGH

30

A

AVG

60

FAIL 222

200

CAT1

HEIGHT

X

30

LOW

30

X

LOW

0

LOW

0

CAT2

HEIGHT

Y

60

MEDIUM

30

X

LOW

30

LOW

100

CAT2

HEIGHT

Y

60

MEDIUM

30

X

LOW

30

LOW

100

FAIL 222

HEIGHT

Z

90

HIGH

30

X

LOW

60

MEDIUM

200

CAT2

t Thierry
on July 26, 2022

I'm coming back on this subject.

I did not fully understand the previous data examples, but I have put together an example (with a given parameter):

AVAL / AVALCAT1
1 / foo
1 / foo
1 / (null)
2 / bar
2 / bar
2 / (null)
3 / bar
3 / bar
3 / (null)

P21 accepts this (rule AD0221 has When="%Variable.1%CAT%Variable.2% != ''").

I do not understand why: this is for me a violation of the categorization principle: the value of AVAL must predict the value of AVALCAT.

Am I missing something?

Cheers

Sergiy
on July 28, 2022

Hi Thierry, 

AD0221 rule is created by CDISC ADaM team. Pinnacle 21 just provides its exact implementation. So, this is a question to CDISC team.

I share your concern. After release of ADaM-IG 1.1, CDISC team modified most "inconsistent value" rules by adding an exception for records with a missing value. Per my understanding, their goal is to avoid any potential false-positive validation messages. They care less about false-negative non-reported data issues.

Kind Regards,
Sergiy

Want a demo?

Let’s Talk.

We're eager to share and ready to listen.

Cookie Policy

Pinnacle 21 uses cookies to make our site easier for you to use. By continuing to use this website, you agree to our use of cookies. For more info visit our Privacy Policy.