Skip to main content
Skip table of contents

Question

Questions are the main source of information exchange between patients and XUND

Model definition

Property name

Property type

Property description

id

string

Question’s identifier

text

string (localized HTML text)

Text to show to patient

isSkippable

boolean

Indicator whether the question can be skipped

isAnswered

boolean

Indicator whether the question was already answered

type

QuestionType

Defines question’s basic behavior. See type’s page for further information

detailedType

QuestionDetailedType

Defines question’s purpose in checks. It can be used to build advanced UI. See type’s page for further information

detailedTypeData

QuestionDetailedTypeData?

Includes additional detailedTypeData-related information that can empower advanced user interface

answerValidatorRegex

string?

In case of TEXT type questions this regex can be used for patient-entered input client-side validation. It has value only if type is TEXT

options

Question | OptionList-model-definition?

The list of selectable answers. Has value only in case of SINGLE_SELECT and EXTENDING type questions

checkStateInfo

CheckStateInfo

Information about the check’s progress

OptionList model definition

Property name

Property type

Property description

count

number (integer)

Count of options matching the filter

values

OptionItem[]

list of options to select

Examples

type: TEXT detailedType: AGE

JSON Model example
JSON
{
    "id": "fadc8892-a7b0-473c-a67d-e8e676f0551f",
    "text": "In which year were you born?",
    "isSkippable": false,
    "isAnswered": false,
    "type": "TEXT",
    "detailedType": "AGE",
    "checkStateInfo": {
        "detailedState": "AGE",
        "state": "PROFILE"
    },
    "answerValidatorRegex": "^(19[0-9][0-9]|20[01][0-9]|202[0-2])$"
}
Example visualization:

type: SINGLE_SELECT - detailedType: GENDER

JSON Model example
JSON
{
    "id": "a76a62b7-657d-4f03-be77-366ffeba1de2",
    "text": "What is your biological gender?",
    "isSkippable": false,
    "isAnswered": false,
    "type": "SINGLE_SELECT",
    "detailedType": "GENDER",
    "checkStateInfo": {
        "detailedState": "GENDER",
        "state": "PROFILE"
    },
    "options": {
        "count": 2,
        "values": [{
            "id": "b23eb6b5-fc24-4a49-bf7d-ab695c8f04a1",
            "text": "Male",
            "isSelected": false,
            "type": "SURVEY_ANSWER"
        }, {
            "id": "80e5d6f2-d486-45c7-8e3e-7e73e3dd0519",
            "text": "Female",
            "isSelected": false,
            "type": "SURVEY_ANSWER"
        }]
    }
}
Example visualization:

type: INFO - detailedType: PROGRESS

JSON Model example
JSON
{
    "id": "4078a01d-cb04-434a-a4f8-a6e93ab49611",
    "text": "As a first step, we will identify the symptom that bothers you the most",
    "isSkippable": true,
    "isAnswered": false,
    "type": "INFO",
    "detailedType": "PROGRESS",
    "checkStateInfo": {
        "detailedState": "MAIN_SYMPTOM_INFO",
        "state": "MAIN_SYMPTOM"
    },
    "detailedTypeData": {
        "currentStep": 1,
        "numberOfSteps": 3,
        "progress": 0.15,
        "title": "Main Symptom"
    }
}
Example visualization:

Additional information:

The user interface is considered advanced because it shows more than just the text of the question. All the information visible in the blue part of the screenshot is powered by the question’s detailedTypeData.

type: SINGLE_SELECT - detailedType: BODY_PART_SELECTOR

JSON Model example
JSON
{
    "id": "e449e622-a1ad-4ffd-9c5f-043e69d5adcf",
    "text": "Where do you experience your main symptom?",
    "isSkippable": true,
    "isAnswered": false,
    "type": "SINGLE_SELECT",
    "detailedType": "BODY_PART_SELECTOR",
    "checkStateInfo": {
        "detailedState": "MAIN_SYMPTOM_BODY_PART_SELECTION",
        "state": "MAIN_SYMPTOM"
    },
    "detailedTypeData": {
        "previouslySelectedBodyPartIds": [],
        "gender": "MALE",
        "styling": "PRIMARY"
    },
    "options": {
        "count": 34,
        "values": [{
            "id": "4db32d26-15d4-4155-b947-9640bfe85d48",
            "text": "Ankle",
            "type": "BODY_PART",
            "code": "ankle",
            "isSelected": false
        }, {
            "id": "70459fc7-0916-46bb-a91a-d97681cb9614",
            "text": "Armpits",
            "type": "BODY_PART",
            "code": "armpit",
            "isSelected": false
        }, {
            "id": "b7e1aa1a-b1aa-44bf-a52d-4677b3b4ab6f",
            "text": "Back",
            "type": "BODY_PART",
            "code": "back",
            "isSelected": false
        }, {
            "id": "421dec65-85ed-4d3d-8b86-b6d6cc399345",
            "text": "Belly",
            "type": "BODY_PART",
            "code": "stomach",
            "isSelected": false
        }, {
            "id": "2657e010-d733-4cb8-b172-3ed728a32ba7",
            "text": "Breast",
            "type": "BODY_PART",
            "code": "breast",
            "isSelected": false
        }, {
            "id": "fc56bd7f-5f33-4a64-9741-cf57b6b8bcf8",
            "text": "Buttocks",
            "type": "BODY_PART",
            "code": "buttocks",
            "isSelected": false
        }, {
            "id": "bf0fcc65-dd53-496f-bc23-e5d840629797",
            "text": "Ear",
            "type": "BODY_PART",
            "code": "ear",
            "isSelected": false
        }, {
            "id": "4b0ef141-d9bc-46ad-ad0f-d56193ccf173",
            "text": "Elbow",
            "type": "BODY_PART",
            "code": "elbow",
            "isSelected": false
        }, {
            "id": "a2494584-fe12-40ef-bac2-ac53e5232ae5",
            "text": "Eyes",
            "type": "BODY_PART",
            "code": "eyes",
            "isSelected": false
        }, {
            "id": "fd06fdd8-e252-4fe3-af67-0c43480f8c0E",
            "text": "Face",
            "type": "BODY_PART",
            "code": "face",
            "isSelected": false
        }, {
            "id": "d84c392f-0c05-4376-ae7f-237e727d83aA",
            "text": "Finger",
            "type": "BODY_PART",
            "code": "fingers",
            "isSelected": false
        }, {
            "id": "5c75bd6e-b698-40a0-9c23-ca0e35cadcca",
            "text": "Foot",
            "type": "BODY_PART",
            "code": "feet",
            "isSelected": false
        }, {
            "id": "09a894fe-a154-404d-a408-2d7a0f8f736e",
            "text": "Forearm",
            "type": "BODY_PART",
            "code": "forearm",
            "isSelected": false
        }, {
            "id": "5fdbb273-84f9-418c-8956-a960383d70cc",
            "text": "Genitalia",
            "type": "BODY_PART",
            "code": "genitals",
            "isSelected": false
        }, {
            "id": "49998dd9-491a-4ea3-ae60-5c48b2f0626a",
            "text": "Hand",
            "type": "BODY_PART",
            "code": "hands",
            "isSelected": false
        }, {
            "id": "032247a1-65c0-4eaf-8b09-71ef76eefaaa",
            "text": "Head",
            "type": "BODY_PART",
            "code": "head",
            "isSelected": false
        }, {
            "id": "c3dbf2f6-26da-4473-a946-4df9a9925fb6",
            "text": "Heel",
            "type": "BODY_PART",
            "code": "heel",
            "isSelected": false
        }, {
            "id": "d84c392f-0c05-4376-ae7f-237e727d83a5",
            "text": "Hip",
            "type": "BODY_PART",
            "code": "hip",
            "isSelected": false
        }, {
            "id": "952cbd65-0c88-4e21-bc59-5c6a7911365f",
            "text": "Knee",
            "type": "BODY_PART",
            "code": "knee",
            "isSelected": false
        }, {
            "id": "253d7b60-b178-4cfc-850f-0ef5f8ad09a7",
            "text": "Lower back",
            "type": "BODY_PART",
            "code": "lowerback",
            "isSelected": false
        }, {
            "id": "f4288391-0ee6-4f45-8826-adf796ff8ecb",
            "text": "Lower leg",
            "type": "BODY_PART",
            "code": "lowerleg",
            "isSelected": false
        }, {
            "id": "834ab6f0-990f-49a7-a4d5-a4c2e22d11a1",
            "text": "Mental",
            "type": "BODY_PART",
            "code": "mental",
            "isSelected": false
        }, {
            "id": "6805ab57-ff41-4318-a525-c24fa9a9a6dc",
            "text": "Mouth",
            "type": "BODY_PART",
            "code": "mouth",
            "isSelected": false
        }, {
            "id": "b4768dcb-3e7a-499a-b3d8-7582f1930da7",
            "text": "Nape",
            "type": "BODY_PART",
            "code": "nape",
            "isSelected": false
        }, {
            "id": "15398f45-1491-4d70-af59-c0a909720fd4",
            "text": "Nose",
            "type": "BODY_PART",
            "code": "nose",
            "isSelected": false
        }, {
            "id": "ceec19ab-0a1f-4ee7-b785-34e3bd054059",
            "text": "Occiput",
            "type": "BODY_PART",
            "code": "occiput",
            "isSelected": false
        }, {
            "id": "6ed6c611-4fdb-48ec-8210-07ae14757728",
            "text": "Shoulder",
            "type": "BODY_PART",
            "code": "shoulders",
            "isSelected": false
        }, {
            "id": "fd06fdd8-e252-4fe3-af67-0c43480f8c0D",
            "text": "Spine",
            "type": "BODY_PART",
            "code": "spine",
            "isSelected": false
        }, {
            "id": "571c5578-a581-4431-8629-2a559627a6a9",
            "text": "Thighs",
            "type": "BODY_PART",
            "code": "thigh",
            "isSelected": false
        }, {
            "id": "fd06fdd8-e252-4fe3-af67-0c43480f8c09",
            "text": "Thorax",
            "type": "BODY_PART",
            "code": "chest",
            "isSelected": false
        }, {
            "id": "22d4e379-bfdb-4f24-af65-0c209db26aeb",
            "text": "Throat",
            "type": "BODY_PART",
            "code": "throat",
            "isSelected": false
        }, {
            "id": "fc56bd7f-5f33-4a64-9741-cf57b6b8bcfC",
            "text": "Toe",
            "type": "BODY_PART",
            "code": "toes",
            "isSelected": false
        }, {
            "id": "69126401-61e4-4dad-8cc1-ed0a0483110b",
            "text": "Upper arm",
            "type": "BODY_PART",
            "code": "upperarm",
            "isSelected": false
        }, {
            "id": "f4288391-0ee6-4f45-8826-adf796ff8ecB",
            "text": "Wrist",
            "type": "BODY_PART",
            "code": "wrist",
            "isSelected": false
        }]
    }
}
Example visualization:

Additional information:

The user interface is considered advanced because it shows more than just the text of the question and options. The options' type is BODY_PART which guarantees the existence of the code field on option objects. The code is not localized, can be used to link the options to certain points of an image of the body. The system does not differentiate between body parts on the front and back sides of the body.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.