Closed mapkon closed 12 years ago
I just added another example... the last example does not correctly show what should be specified?
I notice that the ItemHeader/ItemSubHeader is sometimes added to the first ItemDef and not the rest.
Take the following two examples:
<ItemDef OID="I_MBA1_MBA1_CONTRA" Name="MBA1_CONTRA" DataType="integer" Length="1" SASFieldName="MBA1_CON" Comment="Contraceptives" OpenClinica:FormOIDs="F_MBA11"> <Question OpenClinica:QuestionNumber="Q1"> <TranslatedText> Are you currently using any contraceptives? </TranslatedText> </Question> <CodeListRef CodeListOID="CL_75" /> <OpenClinica:ItemDetails ItemOID="I_MBA1_MBA1_CONTRA"> <OpenClinica:ItemPresentInForm FormOID="F_MBA1_1" ColumnNumber="1" PHI="No" ShowItem="Yes"> <OpenClinica:LeftItemText>Are you currently using any contraceptives?</OpenClinica:LeftItemText> <OpenClinica:ItemHeader>Initial description of event since last visit/ since delivery</OpenClinica:ItemHeader> <OpenClinica:ItemSubHeader>General questions</OpenClinica:ItemSubHeader> <OpenClinica:SectionLabel>MBA 1</OpenClinica:SectionLabel> <OpenClinica:SectionTitle>MBA 1</OpenClinica:SectionTitle> <OpenClinica:ItemResponse ResponseType="single-select" /> </OpenClinica:ItemPresentInForm> </OpenClinica:ItemDetails> </ItemDef>
<ItemDef OID="I_MBA1_MBA1_CONTRAPREC" Name="MBA1_CONTRAPREC" DataType="text" Length="12" SASFieldName="MBA1_0qd" Comment="Contraceptives type" OpenClinica:FormOIDs="F_MBA11"> <Question OpenClinica:QuestionNumber="Q1a"> <TranslatedText> If yes, what is it? </TranslatedText> </Question> <OpenClinica:MultiSelectListRef MultiSelectListID="MSL_76" /> <OpenClinica:ItemDetails ItemOID="I_MBA1_MBA1_CONTRAPREC"> <OpenClinica:ItemPresentInForm FormOID="F_MBA1_1" ParentItemOID="I_MBA1_MBA1_CONTRA" ColumnNumber="1" PHI="No" ShowItem="Yes"> <OpenClinica:LeftItemText>If yes, what is it?</OpenClinica:LeftItemText> <OpenClinica:SectionLabel>MBA 1</OpenClinica:SectionLabel> <OpenClinica:SectionTitle>MBA 1</OpenClinica:SectionTitle> <OpenClinica:ItemResponse ResponseType="multi-select" /> </OpenClinica:ItemPresentInForm> </OpenClinica:ItemDetails> </ItemDef>
I would expect the second ItemDef with OID=I_MBA1_MBA1_CONTRAPREC to also have ItemHeader and ItemSubHeader in the ItemDetails.
Hi Mark,
Looking at this example, I think what is happening is that the header and subheader are being drawn directly from the metadata, which is drawn directly from the CRF. So, if the CRF has blanks for the header and subheader, then the XML will have blanks too.
Changing this on the application side will force the application to 'guess' which header and subheader to apply among the blanks and nonblanks. This would be much easier if we resolve the ordering question (gh-96) first.
Let me know what your thoughts are on the ordering. Also, is there other metadata you could use in the question text instead, i.e. section labels? Thanks, Tom
I would propose that for the
Hi Mark, well, the emphasis is on the word 'hack' - it won't be pretty and it probably won't work 100% of the time. Are you sure you want to introduce something like that into the response? Thanks, Tom
I am totally open to suggestions because ultimately, those questions are not usable right now - we need a way of figuring out how to add context to them.
I committed a fix which addresses the above issue and am closing the ticket. Thanks, Tom
Re openning because it has created some side effects on some questions. All questions have Item headers and sub headers but some item header/sub headers are unrelated for some of the questions e.g. ItemDef with OID="I_CEAC_INIT" has unrelated ItemHeader/SubHeader meta data.
The change has been rolled back. Let me know if there's anything else to be done here, otherwise you can close. Thanks, Tom
Tom, I have verified that rollback. I have to mention though that the order is messed up. The Collection Date/Result sequence of questions in the ItemGroupDefs is no longer guaranteed - so this is something you should look into.
Related to gh-61: Some of the questions returned are too short and do not offer much context in the openxdata context. An example is:
Related to gh-61: Some of the questions returned are too short and do not offer much context in the openxdata context. An example is:
<ItemDef OID="I_CLLC_CLL_MCV_RES" Name="CLL_MCV_RES" DataType="float" Comment="ResultMCV" > <Question OpenClinica:QuestionNumber="Q13b> <TranslatedText> Result? </TranslatedText> </Question> <MeasurementUnitRef MeasurementUnitOID="MU_ΜM<SUP>3</SUP>"/> </ItemDef>
<ItemDef OID="I_CLLC_CLL_HCT_RES" Name="CLL_HCT_RES" DataType="float" Comment="ResultHct"> <Question OpenClinica:QuestionNumber="Q12b> <TranslatedText> Result </TranslatedText> </Question> <MeasurementUnitRef MeasurementUnitOID="MU_%"/> </ItemDef>
<ItemDef OID="I_CLLC_CLL_OLE_PREC" Name="CLL_OLE_PREC" DataType="text" Comment="Other lab test specify"> <Question> <TranslatedText> specify </TranslatedText> </Question> </ItemDef>