episphere / questionnaire

1 stars 2 forks source link

Revise all Age-related range checks in Baseline Modules 1-4 #344

Open cusackjm opened 7 months ago

cusackjm commented 7 months ago

Module 1 range checks are updated in the Qx documents

cusackjm commented 7 months ago

Module 4 range checks are updated in the Qx documents

cusackjm commented 7 months ago

Module 3 range checks are updated in the Qx documents

cunnaneaq commented 7 months ago

Module 2 range checks are updated in the Qx documents

cusackjm commented 7 months ago

Sorry- we have to update the range checks to a different formula. Please put all of this on hold.

boyd-mj commented 7 months ago

Noted, thanks.

cusackjm commented 6 months ago

@boyd-mj Range checks have been updated in the Baseline Modules 1-4 questionnaire documents and are ready for programming. Let me know if you have any questions

joshid-ims commented 6 months ago

@cusackjm is RcrtUP_YOB_v1r0 coming from other system like age?

cusackjm commented 6 months ago

yes, similar to how age was pulled

joshid-ims commented 6 months ago

Thanks. And is it always going to be present? Or is it an optional question?

cusackjm commented 6 months ago

RcrtUP_YOB_v1r0 comes from the User Profile that participants complete when they sign up

joshid-ims commented 6 months ago

I mean, while coding do I need to check if the value if present or will it always be present?

cusackjm commented 6 months ago

@joshid-ims the value will always be present

joshid-ims commented 6 months ago

Ok, thanks!

joshid-ims commented 6 months ago

SrvMRE_FirstPeriodAge_v1r0 - where is it coming from?

I am not sure if we can add conditionals in min max range checks.

@anthonypetersen @Davinkjohnson @cusackjm

Not sure if this can be implemented:

[RANGE CHECK min= SrvSAS_AgeCigsUseF_v1r0 IF SrvSAS_AgeCigsUseF_v1r0 HAS A RESPONSE, or min= 0 if SrvSAS_AgeCigsUseF_v1r0 IS NULL, max= (Current year - RcrtUP_YOB_v1r0 +1)]

cusackjm commented 6 months ago

number entered at MENSHIS

joshid-ims commented 6 months ago

@cusackjm, the document has question IDs that do not have Srv... and such. So it is very confusing for me as I am not sure what they are as the code does not have them and neither does the document. That could be the issue in my above mentioned issue for range check conditionals too.

Are the Srv..and such added in the document by mistake or is it intentional?

I am working on Module 3 currently.

joshid-ims commented 6 months ago

Same with instructions in Module 4.

cusackjm commented 6 months ago

they're from the user profile (which has a different suffix), not a survey (Srv). It's intentional and not an issue

joshid-ims commented 6 months ago

I am asking about IDs like SrvMRE_FirstPeriodAge_v1r0. For e.g. in Module 2 document and in code, I do not see such IDs but instructions have them and I am not sure which ID it is.

cusackjm commented 6 months ago

image Does the code work if the markdown has some variables programmed as variable names and others programmed as Old Connect Values?

woodruffr commented 6 months ago

That would be a question for Kirk. I will check with Kirk about the Transformation software. The Variable Names in the coding instructions do cause an issue in our workflow. The coders don't currently see the data dictionary. They rely on the Questionnaire. For questions already coded with Quest IDs, all instructions in the Questionnaire that might refer to them, would need to use Quest IDs. Otherwise, this is a discussion for Marie Joseph and Jen because it is a procedure change that will add additional time to coding.

woodruffr commented 6 months ago

Deepti and I had a discussion with Kirk. The transformer is only fed the JSON and the Mark-up and looks for Quest IDs to update them with the associated CID from the JSON. To create Display logic that relies on from data saved under a Quest ID, when the code has a Variable Name would require that the Variable Names are the same in the JSON and the Markup and that they have the same CID as the former Quest ID. Kirk will be on the call tomorrow to answer any questions, but I think the biggest issue would be getting the JSON to know when to use the Quest ID and when to use the Variable Name. I would like to make this our first issue to discuss tomorrow so that Kirk can jump off the call when we are finished with him.

joshid-ims commented 4 months ago

SrvMRE_FirstPeriodAge_v1r0 - where is it coming from?

I am not sure if we can add conditionals in min max range checks.

@anthonypetersen @Davinkjohnson @cusackjm

Not sure if this can be implemented:

[RANGE CHECK min= SrvSAS_AgeCigsUseF_v1r0 IF SrvSAS_AgeCigsUseF_v1r0 HAS A RESPONSE, or min= 0 if SrvSAS_AgeCigsUseF_v1r0 IS NULL, max= (Current year - RcrtUP_YOB_v1r0 +1)]

Any update about this? Can this be implemented?

I am going to try this:

(difference(difference(#currentYear,isDefined(SrvBOH_AGE_v1r0, RcrtUP_AGE_v1r0)),1)

joshid-ims commented 4 months ago

I am not sure about Module 2 this question max range:

image

cusackjm commented 4 months ago

@joshid-ims not sure why*, but there are different max range checks, depending on the medication. I updated the Qx doc to preface the different range checks and the updated range check.

joshid-ims commented 4 months ago

Thanks Julie.

Also, there are no age ranges specified for WEIGHTHIS. Currently all text boxes show up. Is that ok?

cusackjm commented 4 months ago

No- I will do the same update for WEIGHTHIS

woodruffr commented 3 months ago

@cunnaneaq and @m-j-horner The Questionnaire still has the Variable Name for MENSHIS (SrvMRE_FirstPeriodAge_v1r0), which does not match what is in the mark-up right now. We agreed on a weekly call that we were not going to mix the Quest IDs and Variable Names at this time as they will both have to have separate entries in the JSON. Do you want to keep them in the Questionnaire even though they don't match the mark-up or should they be reverted to Quest IDs?

woodruffr commented 3 months ago

@cunnaneaq I have updated the M2 Questionnaire for PREG4 to replace the Variable Name (SrvMRE_FirstPeriodAge_v1r0) with the Quest ID (MENSHIS). Please review the change.

boyd-mj commented 2 months ago

This has been delivered for Module 2; pending dev testing

joshid-ims commented 2 months ago

Working on age changes in Module 1 now.

max=age gives error. Error is removed when I use max=_value("age") instead.

But it renders like:

image

Is this acceptable?

m-j-horner commented 2 months ago

thank you. please use max=_value("age")

can you update the Module 1 English word document to reflect this markdown?

joshid-ims commented 2 months ago

We usually do not show how limits are coded in the Word document. Normally they are only specified there. Do you still want to add this in the document?

m-j-horner commented 2 months ago

ah ok. no need to add the coding to Word document so long as it is now clear for the markdown.

joshid-ims commented 2 months ago

Yes, it is. thanks!

danielruss commented 2 months ago

@JoeArmani I think you added the as part of the 508 requirements fix. Can you run this through evaluateCondition?

JoeArmani commented 2 months ago

@danielruss @joshid-ims Sure thing. Will someone send an example question where the markdown isn't evaluated correctly in the placeholder?

danielruss commented 2 months ago
[AGE] How old RU |__|__|min=30 max=100|

[MOMCANC3C] How old was your mother when they were <b>first</b> told by a doctor or other health professional that they have or had <b>brain cancer</b>?<br/>
|__|__|__|xor=MOMCANC3C id=MOMCANC3C_AGE min=0,
max=_value("AGE")| Age at diagnosis

[END] bye...
image
woodruffr commented 2 months ago

@cunnaneaq and @m-j-horner The data dictionary has in the Notes column that the Range check min =0 and max=999999. Is this something that NCI will be updating to minlen and maxlen?

cunnaneaq commented 2 months ago

@woodruffr I can make that update in the DD as I'm making the other baseline mod edits

JoeArmani commented 2 months ago

@joshid-ims The placeholder text issue should be resolved, thanks.

joshid-ims commented 2 months ago

Thanks! We will test it.

joshid-ims commented 1 month ago

This is resolved.

image

joshid-ims commented 1 month ago

The original issue of range checks is not complete yet.

joshid-ims commented 1 month ago

Age range changes are missed for questions SMMAR2, EAMAR2, ALCOHOL3 and TANBED2 in Module 3. I saw in English. Will add a comment when I work on Spanish survey.

joshid-ims commented 1 month ago

I do not see these age range changes in Spanish yet for Module3. They are not made yet, right?

boyd-mj commented 1 month ago

@joshid-ims I see the changes in the document on Box, which shows that it was updated on 10/8: https://app.box.com/file/1609804079931

joshid-ims commented 1 month ago

Sorry, had older version open. I see them. Thanks!

joshid-ims commented 1 month ago

LIFE and grid age ranges to be updated in Module 3 Spanish.

woodruffr commented 3 weeks ago

I see there is a M2 issue for Age Range checks so will be putting the issues found in https://github.com/episphere/questionnaire/issues/422.