HealthVault Data Types

Type Preview: Health assessment data types

We have been working on supporting a Health assessment scenario, and are interested in your comments on the following new types.

The question-answer type is used to store a question that is asked and the answer to that question, and the health-assessment type is used to store an assessment based on a series of questions.

question-answer

This type stores the following information

Field name Type Comment
when date-time Date and time the question was asked
question codable-value The question that was asked. The question itself is stored in the text part of the codable value, and the question can be coded to a TBD questions vocabulary (or some other appropriate vocabulary).
answer-choices codable-value  (0..n) The list of possible answers to this question. Questions that are answered using free-from text will not specify answer choices.
answers codable-value (0..n) The recorded answers. In many cases, the coding of the answer is identical to the coding of the selected answer-choices.

As part of our design process, we encoded a few questions using our current schema:

A simple question with a text answer:

<question-answer>
    <when>
        <date>
            <y>2001</y>
            <m>1</m>
            <d>1</d>
        </date>
    </when>
    <question>
        <text>How long has it been since your last physical?</text>
        <code>
            <value>LastPhysical</value>
            <family>wc</family>
            <type>medical-history-questions</type>
            <version>1</version>
        </code>
    </question>
    <answers>
        <text>about 3 years ago</text>
    </answers>
</question-answer>

A question with a yes/no answer:

<question-answer>
    <when>
        <date>
            <y>2001</y>
            <m>1</m>
            <d>1</d>
        </date>
    </when>
    <question>
        <text>Do you have fair skin?</text>
        <code>
            <value>SkinFair</value>
            <family>wc</family>
            <type>demographic-questions</type>
            <version>1</version>
        </code>
    </question>
    <answer-choices>
        <text>Yes</text>
        <code>
            <value>yes</value>
            <family>wc</family>
            <type>answer-yesno</type>
            <version>1</version>
        </code>
    </answer-choices>
    <answer-choices>
        <text>No</text>
        <code>
            <value>no</value>
            <family>wc</family>
            <type>answer-yesno</type>
            <version>1</version>
        </code>
    </answer-choices>
    <answers>
        <text>Yes</text>
        <code>
            <value>yes</value>
            <family>wc</family>
            <type>answer-yesno</type>
            <version>1</version>
        </code>
    </answers>
</question-answer>

A ‘check all that apply’ question:

<question-answer>
    <when>
        <date>
            <y>2001</y>
            <m>1</m>
            <d>1</d>
        </date>
    </when>
    <question>
        <text>Do you have any of the neurological conditions?</text>
        <code>
            <value>NeurologicalConditions</value>
            <family>wc</family>
            <type>medical-history-questions</type>
            <version>1</version>
        </code>
    </question>
        <answer-choices>
        <text>Head injury</text>
        <code>
            <value>15333</value>
            <family>xx</family>
            <type>neurological conditions</type>
            <version>1</version>
        </code>
    </answer-choices>
    <answer-choices>
        <text>Seizures</text>
        <code>
            <value>138783</value>
            <family>xx</family>
            <type>neurological conditions</type>
            <version>1</version>
        </code>
    </answer-choices>
    <answer-choices>
        <text>Stroke</text>
        <code>
            <value>12</value>
            <family>xx</family>
            <type>neurological conditions</type>
            <version>1</version>
        </code>
    </answer-choices>
    <answer-choices>
        <text>None of the above</text>
        <code>
            <value>none</value>
            <family>wc</family>
            <type>possible-answers</type>
            <version>1</version>
        </code>
    </answer-choices>
    <answers>
        <text>Head injury</text>
        <code>
            <value>15333</value>
            <family>xx</family>
            <type>neurological conditions</type>
            <version>1</version>
        </code>
    </answers>
    <answers>
        <text>Seizures</text>
        <code>
            <value>138783</value>
            <family>xx</family>
            <type>neurological conditions</type>
            <version>1</version>
        </code>
    </answers>
</question-answer>

Health assessment type

The health assessment stores the conclusion of an assessment. The type stores both an overall assessment (low risk of heart attack), and the supporting assessments that fed into that assessment.

Field Name Type Comment
when date-time The date and time the assessment was completed
name string The application’s name for the assessment
category codable-value The type of the assessment.
Examples: Heart assessment, diabetes assessment, color cancer assessment.
vocabulary: health-assessment-category
overall-results Assessment The overall assessment results.
Examples: Heart attack risk, low risk
supporting-results Assessment Supporting assessments that contribute to the overall assessment.
Example: High blood pressure, low risk.

 

 

Assessment type

Field Name Type Comment
name codable-value The name of the assessed area.
Examples: Heart attack risk, high blood pressure
value codable-value The calculated value of the assessed area. Values may be coded using a specific set of values.
Example: Low/Medium/High risk
Published Thursday, July 10, 2008 2:51 PM by ericgu

Comments

 

Megan Whittle said:

The interface looks sufficient to meet our needs.

July 18, 2008 10:42 AM
 

Rob Friedlein said:

• What is the vision for persisting biometric values supplied as a response to a survey question (e.g. LDL, HDL)?  

o If the “question-answer” schema is preferred, then the schema does not currently allow for the “date-time” at which the procedure occurred.  The schema only allows for the “date-time” of the survey completion.  This distinction is important.

o If the “question-answer” schema is not preferred, then how does one relate/interleave this data to/into the corresponding “question-answer” structure to provide a comprehensive view of all survey question/answers when extracting data from the “Vault”?

• If survey answers are specific to questions relating to biometrics, how will the “unit of measure” be represented in the “answer” schema?  

• How will the fact that assessment participants refused to answer a question be represented in the schema (e.g. for true/false questions)?

• Will the Health Vault validate question responses when assessment data is written to the vault?  If so, what validations are to be performed?

• There is no notion of who administered the survey.  Although this could be accomplished via extensible data, it seems not only critical, but also common to each type of assessment that is recorded.

• There is no notion of survey version.  If the previous bullet is accepted as “required”, then this also seems like a reasonable addition.

July 29, 2008 12:12 PM
 

ericgu said:

• What is the vision for persisting biometric values supplied as a response to a survey question (e.g. LDL, HDL)?  

<eric> Biometric values should be stored using the appropriate HealthVault type. I would expect that LDL and HDL values would be stored as a lab result. The actual question/answer might also be stored in a question-answer type. </eric>

o If the “question-answer” schema is preferred, then the schema does not currently allow for the “date-time” at which the procedure occurred.  The schema only allows for the “date-time” of the survey completion.  This distinction is important.

<eric>I'm not sure what you mean by "preferred"...

If by "procedure", you mean a medical procedure, I would expect that the procedure question and the date of the procedure are handled using two separate questions. I'd also expect that the application would put that data into a procedure instance.

</eric>

o If the “question-answer” schema is not preferred, then how does one relate/interleave this data to/into the corresponding “question-answer” structure to provide a comprehensive view of all survey question/answers when extracting data from the “Vault”?

<eric>

I'm not sure I understand the question. Over time, we expect that there will be some "standard" sets of questions, but combining questions and answers from multiple sources will probably be a fairly complex task.

Can you tell me what your scenario is around a comprehensive view?

</eric>

• If survey answers are specific to questions relating to biometrics, how will the “unit of measure” be represented in the “answer” schema?  

<eric>

We played around with a few different options here, and all of the ones that included units of measure added a considerable amount of complexity to the data type. Looking at the scenarios we wanted to support, we ultimately decided that any units are inherent in either the question or the answer choices.

Generally, I think that many questions such as "what was your last blood pressure measurement?" are inherently better handled by storing the result in a blood pressure type rather than a question/answer type. Though it may be convenient for applications to create both and link them together with related items.

</eric>

• How will the fact that assessment participants refused to answer a question be represented in the schema (e.g. for true/false questions)?

<eric>

By putting true and false in answer-choice and not putting anything in answer.

</eric>

• Will the Health Vault validate question responses when assessment data is written to the vault?  If so, what validations are to be performed?

<eric>

HealthVault will do schema-level validation. Beyond that, it won't do any validation - that's something that is for applications to decide.

</eric>

• There is no notion of who administered the survey.  Although this could be accomplished via extensible data, it seems not only critical, but also common to each type of assessment that is recorded.

<eric>

You can see what application created the question-answer using the usual audit facility.  

If these questions were asked as part of a health assessment, we would expect that the health assessment instance would link to all the questions it asked using related items.

</eric>

• There is no notion of survey version.  If the previous bullet is accepted as “required”, then this also seems like a reasonable addition.

<eric>

How would survey version be used?

</eric>

July 29, 2008

July 29, 2008 12:46 PM
 

Rob Friedlein said:

Biometric values should be stored using the appropriate HealthVault type. I would expect that LDL and HDL values would be stored as a lab result. The actual question/answer might also be stored in a question-answer type.

Rob:  This answers the initial question.  I'm sorry if I was not clear and concise.

We played around with a few different options here, and all of the ones that included units of measure added a considerable amount of complexity to the data type. Looking at the scenarios we wanted to support, we ultimately decided that any units are inherent in either the question or the answer choices.

Generally, I think that many questions such as "what was your last blood pressure measurement?" are inherently better handled by storing the result in a blood pressure type rather than a question/answer type. Though it may be convenient for applications to create both and link them together with related items.

Rob: Understood.  However, the complexities are simply pushed to another layer, and must be addressed at some juncture during data consumption.  I think the proposal in the second paragraph is reasonable, and certainly, you begin to see the complexities emerging.  My inclination, when persisting survey results, is to store both the strongly typed HV data as well as the question/answer data, rely on the strongly typed HV entities for units of measure (if needed).  It maybe overkill, especially if I'm looking at 80/20 rule (it is difficult to project usage patterns, as I'm sure you are well aware).

How would survey version be used?

Rob: My apologies, I fell short on describing this one.  A survey "version" represents a unique id that ties together all of the possible questions that are presented during the assessment, at a given point in time (void of responses).  The only usage pattern that comes to mind, at the moment, would be driving an assessment from this data in the Health Vault.  Perhaps this is application specific extensible data.</Rob>

August 4, 2008 3:39 PM
New Comments to this post are disabled

© 2009 Microsoft Corporation. All rights reserved. Terms of Use  |  Trademarks  |  Privacy Statement
Microsoft
Page view tracker