With much excitement we’re announcing the HealthVault 1306 release today. This release includes some great new features for the ecosystem. Let’s take a look.

HealthVault’s new global architecture

A little over a year ago we made HealthVault available to users worldwide. The architecture consisted of an instance of HealthVault for US-based users, and an instance for rest-of-world users. The instances were largely operated independently of each other, with users required to choose which instance to visit to sign-in or sign-up for an account. Apps that wanted to connect to users in each instance had to “know” about each instance and build logic and UI for connecting to each. Also, when HealthVault deployed new instances, apps would have to update this connection logic and UI to support the new instance.

With 1306, we’re releasing a few important updates to this architecture to simplify things significantly for users and apps.

We’ve made it super simple for applications to connect to multiple instances of HealthVault. Apps will no longer need knowledge of the individual HealthVault instances in the topology. Instead, we’ve introduced a pattern that makes instances part of the HealthVault “fabric” allowing apps to hide multi-instance connectivity complexity from end-users and from their application code. Some key aspects of this pattern:

  • HealthVault allows users to sign into their account from any HealthVault instance. Users no longer have to remember the URL and instance where their account exists.
  • Apps can rely on HealthVault during a Shell authorization action to map new users to a HealthVault instance based on HealthVault’s account-to-instance mapping rules.
  • Apps can rely on HealthVault during a Shell authorization action, to redirect existing users to the instance where the account exists.
  • When authorization is complete, HealthVault tells the application the instance in which the user authorized the app. This allows the app to connect to this instance when accessing the record.

If you’re an app developer of a HealthVault-connected application that’s available in a single instance today, take a look at “Building multi-instance applications” and our HealthVault SDKs and samples for the global architecture to see how easy it is to add multi-instance support to your app and reach a broader user-base. Our .NET, Windows 8, and iOS SDKs have been updated to support the global architecture. Support in the HealthVault Java SDK will be made available in the coming days.

Read-only data

Next up on the feature list for 1306 is read-only data.  We’ve heard from clinical partners for some time that they would appreciate a feature that would allow them to share information with patients in HealthVault and allow patients to get all of benefits of seeing and using that information, but not allow edits of that information. In 1306, we’ve added the concept of read-only data that allows data source applications to create data that can be read, but cannot be modified.

Application owners should begin updating their applications to support HealthVault data that can be marked read-only by data sources, and can’t be edited. See “HealthVault read-only data” for the full feature details and how to get started. The HealthVault .NET, Windows 8, and iOS SDKs have been updated with support for read-only data. HealthVault Java SDK support will be made available in the coming days.

HealthVault item status

In 1306 we’re also simplifying and providing new capabilities to applications around the concept of item status. One of the challenges we’ve repeatedly heard from developers is the ability to determine the active/inactive status of data items. Some example scenarios are the ability to create a list of a user’s active medications or conditions. With the 1306 release, we’re introducing an official mechanism for applications to determine and specify the active / inactive status of items through the use of the “updated-end-date” field which is added to all HealthVault data types. Applications should use this this field to determine and specify if an item is active or not. We’ve also made querying for active items really easy with updates to the query filters on GetThings. For more information about this feature see “HealthVault item status”.

New Languages

In 1306 we’ve added support for a number of new languages to HealthVault. The full list of languages HealthVault supports is available on MSDN.

Bing Health & Fitness in Windows 8.1

Last but certainly not least, during 1306 we partnered with the Bing team to enable connectivity to HealthVault in the Bing Health & Fitness application which was announced at //Build yesterday.  Bing Health & Fitness is shipping in the box with the Windows 8.1 preview.  This is incredibly exciting as every new Windows machine will include HealthVault connectivity built right in.  See Family Health Guy for more information.