| 429 | |
| 430 | If you examine the file there does not seem to be any other variables '''''formally''''' attached to the question "family_table", other than "family_table.comment". But in actual fact the following 16 or so variables describe the participant's family numerically: brothers, sisters and children. So really these variables are related. The above is a "parent" question whose human relevance is described by its label: "Number of Family members". Note that there is no formal way of attaching the detailed variables (eg: number of brothers) to the parent question unless we introduce the idea of nested questions; here for instance are the variable(s) for number of brothers: |
| 431 | {{{ |
| 432 | <variable name="fam_brothers_cat" valueType="text" entityType="Participant"> |
| 433 | <attributes> |
| 434 | <attribute name="stage" valueType="text">RiskFactorQuestionnaire</attribute> |
| 435 | <attribute name="questionnaire" valueType="text">RiskFactorQuestionnaire</attribute> |
| 436 | <attribute name="section" valueType="text">FAMILY_HISTORY</attribute> |
| 437 | <attribute name="page" valueType="text">12</attribute> |
| 438 | <attribute name="questionName" valueType="text">fam_brothers_cat</attribute> |
| 439 | <attribute name="label" valueType="text" locale="en">How many brothers do you have?</attribute> |
| 440 | <attribute name="required" valueType="text">true</attribute> |
| 441 | </attributes> |
| 442 | <categories> |
| 443 | <category name="OPEN_N_FAM"/> |
| 444 | <category name="PNA" missing="true" code="9998"> |
| 445 | ... |
| 446 | </category> |
| 447 | <category name="DK" missing="true" code="9999"> |
| 448 | ... |
| 449 | </category> |
| 450 | </categories> |
| 451 | </variable> |
| 452 | ... |
| 453 | <variable name="fam_brothers" valueType="integer" entityType="Participant"> |
| 454 | <attributes> |
| 455 | <attribute name="stage" valueType="text">RiskFactorQuestionnaire</attribute> |
| 456 | <attribute name="questionnaire" valueType="text">RiskFactorQuestionnaire</attribute> |
| 457 | <attribute name="section" valueType="text">FAMILY_HISTORY</attribute> |
| 458 | <attribute name="page" valueType="text">12</attribute> |
| 459 | <attribute name="questionName" valueType="text">fam_brothers_cat</attribute> |
| 460 | <attribute name="categoryName" valueType="text">OPEN_N_FAM</attribute> |
| 461 | <attribute name="openAnswerName" valueType="text">OPEN_N_FAM</attribute> |
| 462 | <attribute name="validation" valueType="text">[Number.Minimum[0], Number.Maximum[9]]</attribute> |
| 463 | <attribute name="condition" valueType="text">Questionnaire[RiskFactorQuestionnaire.family_table.OPEN_N_FAM]</attribute> |
| 464 | </attributes> |
| 465 | </variable> |
| 466 | }}} |
| 467 | It just so happens that in the above case the variables have reasonably meaningful labels or names.[[BR]] |
| 468 | But here is a more difficult one from the same questionnaire: |
| 469 | {{{ |
| 470 | <variable name="famhist_cad" valueType="boolean" entityType="Participant"> |
| 471 | <attributes> |
| 472 | <attribute name="stage" valueType="text">RiskFactorQuestionnaire</attribute> |
| 473 | <attribute name="questionnaire" valueType="text">RiskFactorQuestionnaire</attribute> |
| 474 | <attribute name="section" valueType="text">FAMILY_HISTORY</attribute> |
| 475 | <attribute name="page" valueType="text">13</attribute> |
| 476 | <attribute name="questionName" valueType="text">famhist_cad</attribute> |
| 477 | <attribute name="parentQuestion" valueType="boolean">true</attribute> |
| 478 | <attribute name="label" valueType="text" locale="en">Have any of your relatives suffered angina or other Coronary Artery Disease?</attribute> |
| 479 | <attribute name="required" valueType="text">true</attribute> |
| 480 | </attributes> |
| 481 | </variable> |
| 482 | }}} |
| 483 | Following this there are nearly one hundred related variables within a '''''differently named''''' question. Here is the first of these, which gives the answer with respect to father: |
| 484 | {{{ |
| 485 | <variable name="famhist_cad.father_cad_occ" valueType="text" entityType="Participant"> |
| 486 | <attributes> |
| 487 | <attribute name="stage" valueType="text">RiskFactorQuestionnaire</attribute> |
| 488 | <attribute name="questionnaire" valueType="text">RiskFactorQuestionnaire</attribute> |
| 489 | <attribute name="section" valueType="text">FAMILY_HISTORY</attribute> |
| 490 | <attribute name="page" valueType="text">13</attribute> |
| 491 | <attribute name="questionName" valueType="text">father_cad_occ</attribute> |
| 492 | <attribute name="label" valueType="text" locale="en">Father</attribute> |
| 493 | <attribute name="required" valueType="text">true</attribute> |
| 494 | </attributes> |
| 495 | <categories> |
| 496 | <category name="Y" code="1"> |
| 497 | <attributes> |
| 498 | <attribute name="label" valueType="text" locale="en">Yes</attribute> |
| 499 | </attributes> |
| 500 | </category> |
| 501 | <category name="N" code="0"> |
| 502 | <attributes> |
| 503 | <attribute name="label" valueType="text" locale="en">No</attribute> |
| 504 | </attributes> |
| 505 | </category> |
| 506 | <category name="PNA" missing="true" code="9998"> |
| 507 | <attributes> |
| 508 | <attribute name="label" valueType="text" locale="en">Prefer not to answer</attribute> |
| 509 | </attributes> |
| 510 | </category> |
| 511 | <category name="DK" missing="true" code="9999"> |
| 512 | <attributes> |
| 513 | <attribute name="label" valueType="text" locale="en">Don't know</attribute> |
| 514 | </attributes> |
| 515 | </category> |
| 516 | </categories> |
| 517 | </variable> |
| 518 | }}} |
| 519 | The only connection that is obvious to the human reader is the structured variable name "famhist_cad.father_cad_occ", which is unfortunately entirely down to the questionnaire designer. It's an informal principle. Notice that if you do not connect the parent question to these lower variables formally defined '''''within another question''''', then in this instance there is more of a loss of semantic information; viz, the absence of the label "Have any of your relatives suffered angina or other Coronary Artery Disease?"; the lower variables do not have such an expanatory label.[[BR]] |
| 520 | |
| 521 | In my opinion that is a fairly major omission. As it stands, the information could only be retrieved by looking at an adjacent branch within the onotology.[[BR]] |
| 522 | |
| 523 | |