Update (11/17): Updated sample with additional goal status information.
Update (11/30): We have received initial feedback from partners and updated this proposal to add reference-id to tasks, and goals. 

A number of partner use cases and scenarios have warranted us to create a type which stores a care plan. This type is targeted to help care institutions to provide tools for consumers to manage chronic conditions.

The care plan type would enable a user to track tasks and goals associated with a chronic condition as prescribed by their care manager. A number of care institutions already use care plan’s to manage chronic conditions, this type will facilitate structured storage in HealthVault platform.

Care plan

  Element

  Type

  Description

  Occurrence

  Notes

  Name   string

Name of the care plan e.g. insulin dependent diabetes

1..1

 

  StartDate

  d-approx-date-time

Date at which this care plan started

1..1

 

  Tasks

  task

List of user tasks associated with this plan

0..n

 

  Goals

  goal

List of goals associated with this plan

0..n

 

  CareTeam

  contact

List of contacts associated with the care plan e.g. Care plan

0..n

 

  CarePlanManager

  contact

Contact information for manager of this care plan

0..1

Please let us know if you have a scenario for multiple care plan managers?

  Status

  t-codable-value

Describes the status of the care plan – Active, In Active, Complete

0..1

 

 

Task

Element

Type

Description

Occurrence

Notes

Name

t-codable-value

Name of the task. E.g check glucose

1..1

No preferred vocab associated

Description

string

Description of the task e.g. check glucose 4 times a day

0..1

 

StartDate

d-approx-date-time

Date on which this task should be started.

0..1

Approx to be CCD complaint

EndDate

d-approx-date-time

Date on which the task should end.

0..1

Approx to be CCD complaint

SequenceNumber

Non-negative Int

Sequence number which could be used to display the task in order.

0..1

Parity with CCD.

Contact

contact

Referral contact for this task e.g get procedure done with Lab X, get x-ray done from Bellevue imaging services

0..1

 

Recurrence

Choice between

recurrence expression from I-Cal format (RFC 2445 )

or HealthVault recurrence format (interval, times-in-interval)

Per-day, per-week, per-month

e.g
<recurrence>
   <ical>FREQ=YEARLY;COUNT=1</ical>
</recurrence>

or HealthVault recurrence format

<recurrence>
<interval><text>daily</text></interval>
<times-in-interval>6</times-in-interval>
</recurrence>

0..1

We will use recurrence expression from i-cal format.

The interval element in HealthVault recurrence format is codable-value. We will define a vocabulary for it.

ThingType-Version

guid

Version ID of HealthVault type associated with this task.

e.g Exercise (GUID)

0..1

The type-id should be versioned type-id

ThingType-XPath

string

XPath of the details of thingtype-version field associated with this task.

/thing/data-xml/exercise[duration>30]

0..1

 
Reference-Id string A unique identifier for this item which could be used to map completion, meta-data etc. 0..1  


Goal-Group

Element

Type

Description

Occurrences

Notes

Name

t-codable-value

Name of the goal group. E.g Cholesterol

1..1

No preferred vocab

Description

String

Description of the goal group e.g Total,LDL, HDL cholesterol goals.

0..1

 

Goal

Goal

Goals associated with the group

1..N

 

 

Goal

Element

Type

Description

Occurrences

Notes

Name

t-codable-value

Name of the goal. E.g Weight should be 160 lbs

1..1

No preferred vocab

Description

string

Description of the goal e.g Weight needs to be tracked daily.

0..1

 

ThingType-Version

string

Thing type associated with the goal.

0..1

 

ThingType-Value-XPath

string

Thing type xpath field for the goal. E,g

/thing/data-xml/weight/value/kg

0..1

 

ThingType-Display-XPath

string

Thing type display x-path associate with the goal e.g

/thing/data-xml/weight/display (?)

0..1

This is display value

Unit

t-codable-value

Unit of the goal.

e.g Lbs

0..1

 

Conversion

double

Conversion value from Display path.

e.g 2.2

0..1

 

StartDate

d-approx-date-time

Goal start date

0..1

 

CompletionDate

d-approx-date-time

Goal completion date

0..1

 

Range

Goal-range

Range of good, better, bad values for the type.

0..n

 
Reference-Id string A unique identifier for this item which could be used to map completion, meta-data etc. 0..1  

 

Goal-Range

Element

Type

Description

Occurrences

Note

Minimum-value

double

Range minimum value e.g 80

0..1  

Maximum-value

double

Range maximum value e.g 120

0..1  

Range-type

t-codable-value

Range value corresponding to status of the range

1..1

We will define a preferred vocabulary for it.

 

Discussion points

There are number of discussion point which you as partners can help us give feedback on -

  1. Should a care plan have a care-team associated with it?
  2. Should the care plan have multiple care plan managers associated with it?
  3. Do your scenarios need task groups ?

 

Example

Following is an example of diabetes management plan authored with above type. The diabetes management plan following data elements

1. Plan Information (Diabetes Management Plan administered by Contoso Hospital)
2. Tasks (Measure blood glucose levels 6 times a day, Get dilated eye exam every year, Measure blood pressure)
3. Goals (Blood pressure should be less than 80mmHg diastolic, 130mmHg systolic; Blood Glucose should be in 70 – 240mg/dL range)

--

   1:  <care-plan>
   2:      <name>Diabetes management</name>
   3:      <start-date>
   4:          <date>
   5:              <y>2011</y>
   6:              <m>11</m>
   7:              <d>15</d>
   8:          </date>
   9:      </start-date>
  10:      <care-team>
  11:          <person>
  12:              <name>Health care provider</name>
  13:              <organization>Contoso health</organization>
  14:              <contact>
  15:                  <address>
  16:                      <street>123 Main st.</street>
  17:                      <city>Redmond</city>
  18:                      <postcode>98052</postcode>
  19:                      <country>USA</country>
  20:                  </address>
  21:                  <phone>
  22:                      <number>000-000-0000</number>
  23:                  </phone>
  24:                  <email>
  25:                      <address>foo@bar.com</address>
  26:                  </email>
  27:              </contact>
  28:          </person>
  29:          <person>
  30:              <name>Emergency contact</name>
  31:              <contact>
  32:                  <address>
  33:                      <street>123 Main st.</street>
  34:                      <city>Redmond</city>
  35:                      <postcode>98052</postcode>
  36:                      <country>USA</country>
  37:                  </address>
  38:                  <phone>
  39:                      <number>000-000-0000</number>
  40:                  </phone>
  41:                  <email>
  42:                      <address>foo@bar.com</address>
  43:                  </email>
  44:              </contact>
  45:          </person>
  46:      </care-team>
  47:      <careplanmanager>
  48:          <name>Health care provider</name>
  49:          <organization>Contoso health</organization>
  50:          <contact>
  51:              <address>
  52:                  <street>123 Main st.</street>
  53:                  <city>Redmond</city>
  54:                  <postcode>98052</postcode>
  55:                  <country>USA</country>
  56:              </address>
  57:              <phone>
  58:                  <number>000-000-0000</number>
  59:              </phone>
  60:              <email>
  61:                  <address>foo@bar.com</address>
  62:              </email>
  63:          </contact>
  64:      </careplanmanager>
  65:      <tasks>
  66:          <task>
  67:              <name>Measure blood glucose levels</name>
  68:              <description>Measure blood glucose levels 6 times a day</description>
  69:              <start-date>
  70:                  <date>
  71:                      <y>2011</y>
  72:                      <m>11</m>
  73:                      <d>15</d>
  74:                  </date>
  75:              </start-date>
  76:              <end-date>
  77:                  <date>
  78:                      <y>2011</y>
  79:                      <m>12</m>
  80:                      <d>15</d>
  81:                  </date>
  82:              </end-date>
  83:              <contact>
  84:                  <name>Health care provider</name>
  85:                  <organization>Contoso health</organization>
  86:                  <contact>
  87:                      <address>
  88:                          <street>123 Main st.</street>
  89:                          <city>Redmond</city>
  90:                          <postcode>98052</postcode>
  91:                          <country>USA</country>
  92:                      </address>
  93:                      <phone>
  94:                          <number>000-000-0000</number>
  95:                      </phone>
  96:                      <email>
  97:                          <address>foo@bar.com</address>
  98:                      </email>
  99:                  </contact>
 100:              </contact>
 101:              <recurrence>
 102:                  <interval>
 103:                      <text>daily</text>
 104:                  </interval>
 105:                  <times-in-interval>6</times-in-interval>
 106:              </recurrence>
 107:              <thing-type-version-id>879e7c04-4e8a-4707-9ad3-b054df467ce4</thing-type-version-id>
 108:              <thing-type-xpath>/thing/data-xml/blood-glucose/value/mmolPerL</thing-type-xpath>
 109:          </task>
 110:          <task>
 111:              <name>Get dilated eye exam</name>
 112:              <description>Get dilated eye exam every year</description>
 113:              <start-date>
 114:                  <y>2011</y>
 115:                  <m>11</m>
 116:                  <d>15</d>
 117:              </start-date>
 118:              <recurrence>
 119:                  <ical>FREQ=YEARLY;COUNT=1</ical>
 120:              </recurrence>
 121:          </task>
 122:          <task>
 123:              <name>Have your blood pressure checked at every diabetes visit.</name>
 124:              <description>Have your blood pressure checked at every diabetes visit.</description>
 125:              <start-date>
 126:                  <y>2011</y>
 127:                  <m>11</m>
 128:                  <d>15</d>
 129:              </start-date>
 130:          </task>
 131:      </tasks>
 132:      <goals>
 133:          <goal-group>
 134:              <name>Blood pressure</name>
 135:              <description>Keep your blood pressure under control</description>
 136:              <goal>
 137:                  <name>
 138:                      <text>Systolic</text>
 139:                  </name>
 140:                  <description>Systolic should be below 130 mmHg</description>
 141:                  <start-date>
 142:                      <y>2011</y>
 143:                      <m>11</m>
 144:                      <d>15</d>
 145:                  </start-date>
 146:                  <thing-type-version-id>ca3c57f4-f4c1-4e15-be67-0a3caf5414ed</thing-type-version-id>
 147:                  <thing-type-value-xpath>/thing/data-xml/blood-pressure/systolic</thing-type-value-xpath>
 148:                  <unit>mmHg</unit>
 149:                  <conversion>1</conversion>
 150:                  <goal-ranges>
 151:                      <goal-range>
 152:                          <status-indicator>0</status-indicator>
 153:                          <minimum-value>90</minimum-value>
 154:                          <maximum-value>130</maximum-value>
 155:                      </goal-range>
 156:                      <goal-range>
 157:                          <status-indicator>1</status-indicator>
 158:                          <minimum-value>50</minimum-value>
 159:                          <maximum-value>90</maximum-value>
 160:                      </goal-range>
 161:                      <goal-range>
 162:                          <status-indicator>1</status-indicator>
 163:                          <minimum-value>130</minimum-value>
 164:                          <maximum-value>160</maximum-value>
 165:                      </goal-range>
 166:                      <goal-range>
 167:                          <status-indicator>2</status-indicator>
 168:                          <minimum-value>160</minimum-value>
 169:                          <maximum-value>180</maximum-value>
 170:                      </goal-range>
 171:                  </goal-ranges>
 172:              </goal>
 173:              <goal>
 174:                  <name>
 175:                      <text>Diastolic</text>
 176:                  </name>
 177:                  <description>Diastolic should be below 80 mmHg</description>
 178:                  <start-date>
 179:                      <y>2011</y>
 180:                      <m>11</m>
 181:                      <d>15</d>
 182:                  </start-date>
 183:                  <thing-type-version-id>ca3c57f4-f4c1-4e15-be67-0a3caf5414ed</thing-type-version-id>
 184:                  <thing-type-value-xpath>/thing/data-xml/blood-pressure/diastolic</thing-type-value-xpath>
 185:                  <unit>mmHg</unit>
 186:                  <conversion>1</conversion>
 187:                  <goal-ranges>
 188:                      <goal-range>
 189:                          <status-indicator>0</status-indicator>
 190:                          <minimum-value>60</minimum-value>
 191:                          <maximum-value>80</maximum-value>
 192:                      </goal-range>
 193:                      <goal-range>
 194:                          <status-indicator>1</status-indicator>
 195:                          <minimum-value>35</minimum-value>
 196:                          <maximum-value>60</maximum-value>
 197:                      </goal-range>
 198:                      <goal-range>
 199:                          <status-indicator>1</status-indicator>
 200:                          <minimum-value>80</minimum-value>
 201:                          <maximum-value>100</maximum-value>
 202:                      </goal-range>
 203:                      <goal-range>
 204:                          <status-indicator>2</status-indicator>
 205:                          <minimum-value>100</minimum-value>
 206:                          <maximum-value>120</maximum-value>
 207:                      </goal-range>
 208:                  </goal-ranges>
 209:              </goal>
 210:          </goal-group>
 211:          <goal-group>
 212:              <name>Glucose levels</name>
 213:              <description>Keep your glucose levels under control</description>
 214:              <goal>
 215:                  <name>
 216:                      <text>Glucose</text>
 217:                  </name>
 218:                  <description>Glucose measurement should be above 70 mg/dL and below 240 mg/dL</description>
 219:                  <start-date>
 220:                      <y>2011</y>
 221:                      <m>11</m>
 222:                      <d>15</d>
 223:                  </start-date>
 224:                  <thing-type-version-id>879e7c04-4e8a-4707-9ad3-b054df467ce4</thing-type-version-id>
 225:                  <thing-type-value-xpath>/thing/data-xml/blood-glucose/value/mmolPerL</thing-type-value-xpath>
 226:                  <thing-type-display-xpath>/thing/data-xml/blood-glucose/value/display</thing-type-display-xpath>
 227:                  <unit>mg/dL</unit>
 228:                  <conversion>18</conversion>
 229:                  <goal-ranges>
 230:                      <goal-range>
 231:                          <status-indicator>0</status-indicator>
 232:                          <minimum-value>3.88</minimum-value>
 233:                          <maximum-value>13.33</maximum-value>
 234:                      </goal-range>    
 235:                  </goal-ranges>
 236:              </goal>
 237:          </goal-group>
 238:      </goals>
 239:  </care-plan>

--

Please let us know your feedback.

We will appreciate any other use cases which this type can solve. Examples and appropriate data will help us as well.