健康集成平台api的制作方法

文档序号:6456390阅读:392来源:国知局

专利名称::健康集成平台api的制作方法健康集成平台API背景计算机和联网技术从高成本、低性能的数据处理系统到低成本、高性能的通信、问题解决和娱乐系统的发展提供了省钱且省时的手段来减轻执行诸如书信往来、帐单支付、购物、预算信息和收集等的每日任务的负担。例如,通过有线或无线技术与因特网接口的计算系统可向用户提供用于对来自位于世界各地的网站和服务器的储存库的大量信息的几乎立即访问的通道。这种系统也允许用户不仅收集信息而且向不同的源提供信息。由此,在线数据存储和管理变得越来越流行。例如,协作性社交联网网站在世界范围内蓬勃发展。这些站点允许用户创建远程地存储的简档,包括诸如年龄、性别、曾就读学校、毕业班级、工作地点等个人数据。这些站点随后允许其它用户搜索前述准则以试图定位其它用户——如此来寻找具有类似兴趣的同伴或定位早已失去联系的高中朋友。作为另一更实际的示例,银行网站向用户提供远程地存储关于要支付的帐单的信息的能力。通过利用该特征,用户可自动地调度要从他们的银行帐户进行的帐单支付,当支付被调度时将自动地记入该银行帐户的借方。这允许对帐户余额和帐单支付同时进行电子管理以便使用户免于手动地将支票登记到他们的支票簿中。本国和全世界很感兴趣的另一领域是个人健康和健壮。在该领域中可讨论许多非常不同的问题,比如设定和获得个人健壮目标以及人们的健康系统中存在的低效率这一非常不同的话题。例如,现在希望接受针对疾病的药物治疗的个人必须首先看他们的最初保健(primarycare)医生。在看医生之前,患者将被多次要求出示他们的健康保险范围卡。在就诊期间,医生通常将为患者写处方。然后患者带着处方去药店拿药,此时他们可能需要再次提供他们的健康保险范围卡。药店照方配药、通知保险、扣除全部保险数额并在患者支付余额后将处方转给患者。这些手动步骤费时、麻烦且效率低。发明概述以下提出了简化概述以便提供对在此描述的某些方面的基本理解。该概述不是详尽的概观,也不旨在标识关键/重要的元素或描绘本文所述的各个方面的范围。其唯一的目的是以简化的形式来介绍一些概念,作为稍后提出的更为详细的描述的序言。提供了一种用于与健康集成网络通信的应用程序接口(API),其中应用可利用该API来检索、存储以及以其它方式访问或修改个人健康和健壮相关数据。该API可与诸如可扩展标记语言(XML)之类的可扩展语言格式的应用通信以促进开放系统,在该开放系统中对请求或响应XML可发生改变而不需要实现新的代码。然而,另外,该API可要求遵守XML模式以保留为保持开放系统可操作所必需的常规格式化级别。可通过该API请求、存储和返回的数据也可以是自描述的,其可具有关联的模式以及变换和样式信息以便于数据的智能呈现。该API还可提供应用和用户的认证/授权层以在不同级别上访问数据。例如,系统中存储的数据可以是与健康有关的数据,比如血压读数、保险信息、处方、家庭历史、个人病历、诊断、过敏性、X光照片、血液试验等。另外,数据可以是健壮相关的,例如锻炼例程、锻炼目标、饮食、基于锻炼例程的虚拟探险、比赛等等。该API便于访问所有这种数据以便存储、检索以及其它访问。应用可访问该数据以向数据添加值,例如,应用可允许保险公司输入用户的保险信息,并且医生的办公室可在用户于医生处就诊后访问该信息以减少用户出示保险卡的需要。进一步采用该示例,医生可在用户的帐户下输入关于处方的信息,并且药店可检索该信息以及保险信息以便为用户照方配药从而减少用户出示保险证明和所获得的处方纸片的需要。因而,该API可向许多应用提供对个人健康和健壮相关数据的有价值访问以向健康和健壮领域中的当前过程增加价值并使之流线化。为实现上述及相关目的,本文结合下面的描述和附图描述某些说明性方面。这些方面指示可实践的各种方法,其全部均旨在涵盖于此。当结合附图阅读以下详细描述时,本发明的其它优点和新颖特征将变得清楚。附图简述图1示出了便于利用API在请求和后端数据组件之间传送数据的示例性系统的框图。图2示出了示例性API的框图。图3示出了便于利用API在应用和健康集成网络之间传送数据的示例性系统的框图。图4示出了便于传送个人健康信息的示例性系统的框图。图5示出了便于从API请求个人健康信息的示例性系统的框图。图6示出了便于使用软件开发工具包(SDK)从API请求个人健康信息的示例性系统的框图。图7示出了示例性API的框图。图8示出了使用API从健康集成网络请求数据的示例性流程图。图9示出了用于处理来自应用的对个人健康信息的请求的示例性流程图。图10是示出合适的操作环境的示意性框图。图1l是示例计算环境的示意性框图。详细描述提供了一种应用程序接口(API)以便于访问健康集成网络。该API可接收和处理来自应用的检索、存储、修改或以其它方式访问健康集成网络内的数据的请求并且可提供认证/授权功能。该API可接收诸如根据可扩展标记语言(XML)模式的XML之类的可扩展数据格式的请求;另外,该API可用根据XML模式的表示与该请求相关的信息的数据集的XML来响应此类请求。该API与许多设备和应用一起操作以有效地创建具有易于使用、完整和轻量的API的、个人健康和健壮相关数据的中央存储。应用可使用系统数据类型以及指定它们自己的可由其它应用共享的类型以促进在不存在这种可扩充系统的情况的跨应用可操作性。用于在应用和API之间通信的可扩展数据形式通过允许实际上任何种类的信息与描述如何存储、可如何变换、样式化和/或模式化该数据的数据一起存储来实现这一点。可以理解,数据也可按非结构化或非模式化的方式来存储和获得。现在将参考附图描述公开的主题的各个方面,全部附图中相同的标号指的是相同或相应的元素。然而,应理解,附图及其有关的详细描述不旨在将所要求保护的主题限于所公开的具体形式。相反,其意图是覆盖落在所要求保护的主题的精神和范围内的所有修改、等效和替换方案。现在转向附图,图1示出了便于数据存储和检索的系统100,该系统可用于参与健康集成网络。请求组件102可指定对API104的、对数据检索、数据存储等的请求,API104可解释该请求并基于该请求査询后端数据组件106。后端数据组件106随后6可响应于API104,API104可至少将结果返回给请求组件102。请求组件102可以是能够通过诸如做出请求而与API104通信的任何设备。可能的请求包括但不限于为请求组件102的认证/授权,数据的存储,数据的检索,数据的修改,以及诸如数据单元的添加、关于数据格式的样式和模式的检索和应用、用户界面、以及数据布局等的对数据的任何增值服务所做出的请求。API104可用于解释来自请求组件102的请求以便于与后端数据组件106通信。由请求组件102发送的请求可以是经由超文本传输协议(HTTP)上的XML做出的调用、直接对API104做出的调用、和/或对API104周围的包装做出的调用。使用XML允许其中结构可改变且不需要新代码来解释数据的可扩展数据模型。这归因于XML的自描述能力,尤其当其与XML模式结合使用时更是如此。另外,API104可在后端数据组件106上提供安全层以仅仅允许经授权的请求组件访问后端数据组件106中的某些数据。根据本主题,后端数据组件106可容纳与个人健康相关的信息,其包括巨大的信息存储。这种信息可以是相对静态的(例如,身高、体重、病史(个人和家庭)、疾病、过敏性、保险等)、事件特有的(例如,训练养生法、训练重要器官和统计数字、当前药方、医学诊断等)、完全动态的(例如,血压、心率、饮食等)等等。API104可基于患者的要求或医生的指令等允许和限制某些个体对所有这种信息的访问。此外,API组件104可用于触发事件、提供实时更新(例如,经由回调函数等)、接收警告等。此外,请求组件102可以接收事件或警告。此类事件或警告可在输入超过阈值的数据(例如,高血压)、缺少所需数据(例如,没有血糖水平读数)、真实世界事件的发生、获得里程碑或目标、数据到期等时发生。因而,本文给出的主题提供对个人健康相关数据的集中式存储和访问以允许有利地跟踪这些数据以及这些数据在该数据对其具有价值的各方之间的流线化通信。另外,从API104返回或发回请求组件102的值可以是来自原始调用的返回调用(例如当利用软件开发工具包时)、HTTP上的XML等。参考图2,根据所述主题,API200被示为具有各种组件以便于请求检索、存储、修改或以其它方式访问数据。API200可具有接收数据访问请求的接收器组件202,解释该请求并收集所需数据以及任何相关数据和/或元数据(关于数据的数据)的解释器组件204。API200还可包括将授权/认证规则应用于请求实体以确保它具有足够的权限来做出所需请求的授权组件206。API200可具有在需要时将变换、翻译、样式和/或模式应用于该数据的变换组件208。变换208还可将结果数据与适当的和/或可用变换信息封装在一起,因此请求实体可执行所需变换。API200还可利用返回组件210将所需数据以及任何附加数据发回请求实体。还可提供更新组件212以允许应用附连到API200,从而打开通信通道,并且自动接收对信息的更新。API200还可提供用于创建智能例程以方便API200的使用的例程封装组件214。在使用API200时,诸如设备、应用、运行应用的设备、附连到具有应用的系统的传统设备等的请求实体可启动对API200的数据请求,该请求由接收器组件202获得。该请求可以是访问个人健康和/或健壮相关数据,例如处方信息。接收器组件202接收该请求并将其发送到解释器组件204。解释器组件204确定请求的类型,例如针对数据的检索、数据的存储或数据的修改,并且确定正被请求的记录或类型。解释器组件204可利用授权组件206来确定请求实体是否具有足够的特权来访问所提出的请求类型的所请求数据。例如,一方可能没有足够的访问权限来改变或甚至査看其配偶的医学诊断。授权规则可由多方设定,包括与该数据直接相关的人、医务人员等。如果实体被拒绝访问,则返回组件210可将所得的错误通知(例如,XML格式)发回请求实体。如果访问被准许,则解释器组件204可访问相关数据,在处方示例中,这可以包括处方名称、类型代码、说明、用量、带有医生签名的处方的图像等。该信息随后可被传递到变换组件208,该变换组件可确定由请求实体所寻找的信息以及所请求的任何变换。例如,可能请求实体不请求处方的图像;变换组件208可应用模式以从解释器组件204所发送的说明中抓取除图像以外的任何信息,从而减少了发送图像的需要,其中发送图像可能需要比仅仅发送文本信息多得多的带宽。另外,请求实体可能希望翻译处方的类型代码,例如,代码可能表示消炎药物治疗并且请求实体愿意向用户显示该信息。同样,可能对活性成分和/或副作用的解释可基于类型代码返回——如果被请求则变换208也可收集该信息。在收集了所需的全部信息之后,返回组件210可将该数据按例如可扩展标记语言或任何返回类型等所请求的格式发回请求实体。还可返回描述所返回的数据的布局的伴随模式。更新组件212可提供另一类型的数据访问,其中在应用(或其它接收组件)和API202之间打开例如管道等通信通道。当数据流过诸如健康集成网络之类的底层系统时,更新组件212可向所连接的应用自动通知(或警告)某些数据,只要该应用具有附加到该数据的授权。该更新组件212促进了基于事件的系统,其中可基于事件的实时发生或数据超过某些阈值而向不同的用户发送警告。例如,如果血压接收到许多一致的高血压读数(超出阈值),则可向医生的办公室系统发送事件以通知并请求会面。该信息还可被发回血压监视器以向用户通知高读数的数量以及会面请求已被发送给他们的医生。通过使用更新组件212可以有许多类似情况可用。类似地,例如如果设备是发送恒定更新的设备,则打开的通道可向健康集成网络自动提供数据。例如,由用户操作的跑步机(treadmill)可在会话期间取得恒定心率并且打开通道以利用该信息以及关于例如训练例程等其它信息来实时更新健康集成网络。可以理解,不需要打开的通道;相反地,API200可例如自动调用应用上的API200(比如回调类型函数)来通知警告或更新。例程封装组件214可提供多个不同功能来帮助应用开发者利用API200创建第三方应用。例如,例程封装组件214可将一组常用例程绑定在一起成单个调用或者在所封装的表示中提供它们以给予开发者利用API200启动所真正需要的事物。另外,可提供例程来创建XML以及通常与诸如健康集成网络之类的底层系统一起使用的相关联的模式以创建诸如数据类型和不同的记录之类的要在该网络中存储的事物。此外,可采用人工智能来确定例程的封装或附加的较易使用的例程的创建。这些创建的例程可以是提供给开发者以执行在一定程度上增强的任务的单个调用,比如获得不一定存储在一起的相关数据的单个调用,例如可创建GetLastExerciseRoutine(获取上次锻炼例程)以检索用户的上次锻炼会话信息以及这次取得的任何心率。如上所述,可确定(例如通过使用人工智能)这些函数经常被一起调用,并且随后创建访问该数据的单个例程以使其对于可能一起需要该数据的应用开发者更加容易。可以理解,上述情况仅是示例,且本主题不限于此。图3示出便于利用API104解释来自应用302的对数据存储、检索等的请求的系统300。API104基于来自应用302的请求查询健康集成网络304以基于来自健康集成网络304的响应将数据返回给应用302。应用302可以是在计算机或其它设备上执行的软件应用程序、设备本身、例如传统设备上下文中的耦合到计算机或应用的设备等等。示例设备包括任何医疗或个人健康设备,诸如具有输出的设备(例如,血压监视器、测重秤、血/糖水平监视器、IV、起搏器、听诊器、x光照片等)、个人健壮跟踪设备(组合心率监视器表、计步器、自行车装备(例如速度计、高度计、里程计等)、秒表等等)以及包括私用和医用用户界面的其它应用的设备。因而,医生可从处方、诊断或其它图表中手动地存储患者特有的信息,并且个人可存储关于饮食、训练养生法、医疗保险等的信息。数据可以是任何类型并且可具有相关联的类型定义、描述数据布局的模式以及描述如何呈现数据的样式参数。可以理解,应用302可被连接以向API104做出直接请求,但是也可在利用更新功能的打开的通道(或管道)连接中做出请求。作为一个示例,患者可利用应用302输入保险和药店信息。应用302可将其提交给API104,API104可请求在健康集成网络304中存储。然后如果患者去医生的办公室,接待员可通过相同或单独的应用302检索保险信息,其中应用302使用API104请求这些信息。API104从健康集成网络304检索患者的保险信息并将其传送到API104,API104将其传送到应用302。这减少了接待员必须要求患者的保险卡的需要。随后,在会面期间,医生可使用相同或不同的应用302输入针对患者的医疗处方;处方经由API104被存储在健康集成网络304中。此时,可将警告发送到同样在运行相同或不同的应用302的患者的药店以请求执行处方。或者,患者可去药店并请求照方配药,而药店不需要从患者处获取处方,因为该信息被存储在健康集成网络304中。药店可使用其应用302访问API104以从健康集成网络304检索针对该患者的处方和保险数据。作为另一示例,应用302可以是诸如血压监视器之类的设备,其可向API104做出为个人存储血压的请求,可能对于后五个读数血压已被认为是高的,血压机可从API104接收警告并向个人通知该事实。此外,例如,针对该个人的医生办公室的应用302还可经由来自API104的警告接收该信息以向医生通知连续的高血压读数,并且医生或可能是私人教练员还可调整患者的训练计划以包括少数额外的心血管会话并减少饮食中的盐。API104不限于上述示例,并且事实上可执行关于数据和健康集成网络304的各种方法,也包括数据审计方法。另外,应用302可指定从API104发送的消息由公钥和/或私钥加密,其中应用302具有私钥来解密数据。这样,为系统内传送的数据提供更多的安全性以确保隐私和真实性。此外,应用302可对消息设定使用期限值以当在给定时间段内没有接收到响应时允许它们期满。就此,应用302不需要等待消息回来;相反,例如如果应用302可在别处更快地找到该信息则该消息可以期满。参考图4,示出了便于访问健康集成网络内的信息的示例系统400。应用302可以进行显示或指定健康相关数据两者中的至少之一。可以理解,应用302可以是许多不同类型的应用,包括软件应用、执行软件应用的电子设备、单独的电子设备、可与执行软件应用的设备接口的传统设备等等。应用可利用API104在健康集成网络304内请求和存储数据。可以理解,API104可与多个相似或不同类型的应用302同步或异步地通信。API104还可具有软件层402用于解释和处理请求。软件层402可被如图所示地分出,或者它可被集成在API104内、健康集成网络304内或两者之内。在解释和处理来自应用302的请求之后,软件层402可访问健康集成网络304以寻找任何必要的数据或者存储必要的数据来实现请求。软件层402还可向数据提供增值,诸如汇编来自健康集成网络304的数据、将商业模型或过程与数据结合应用、高速缓存数据、和/或将变换或附加信息应用于数据/与数据一起应用。可以理解,可以有多个API104和软件层402连接到集中式健康集成网络304,并且集中式健康集成网络304可以是单个系统或分布在多个系统、平台等之上。健康集成网络304可包括多个数据存储,包括记录数据库404、目录数据库406和字典数据库408。另外,健康集成网络304可包括许多其它系统和/或层以便于数据管理和传送。此外,数据库可以是冗余的使得每个数据库的多个版本对于其它API和应用以及这些数据库的其它版本的应用备份源是可用的。另外,数据库可在各个物理数据存储之间逻辑地分割以允许高效地访问被高度访问的系统。此外,数据库可以是基于分层的,比如XML,和/或基于关系的。记录数据库404可以是高度分布的并且包括多个用户的个人健康相关数据记录。记录可以是不同的格式并且可包括任何种类的数据(单个实例,结构化的或非结构化的),诸如纯数据、数据和相关联的类型信息、自描述数据(通过相关联的模式,例如XSL模式)、具有相关联的模板的数据(例如通过样式表)、具有单位的数据(诸如具有转换指令的数据)、二进制数据(诸如图像、x光照片等)等等。此外,出于跟踪和恢复的目的,记录数据库404可保持对记录所做的改变的审计追踪。另外,前述信息的任何数据类型或相关实例可被存储在诸如下述的字典数据库408之类的不同数据库中。记录数据库404可基于多个因素来分割、分布和/或分段,这些因素包括性能、用户的逻辑分组(例如,同一公司的用户、家庭等)。目录数据库406可存储诸如可包括用户名、认证凭证、用户记录的存在等的用户帐户数据之类的信息,目录数据库406还可容纳关于记录自身的信息,包括它们所属的用户,记录被保存在何处(在分布式记录数据库404配置中)、对这些记录的授权规则等等。例如,用户可指定配偶有权访问他/她的健壮相关数据,但无权访问医疗健康相关数据。这样,用户可保护他/她的数据同时允许适当的各方(诸如配偶、医生、保险公司、私人教练员等)或应用/设备(血压机、起搏器、健壮表(fitnesswatch)等)可以访问相关数据。另外,目录数据库406可包括关于将应用302配置成与健康集成网络304交互的数据;可要求应用302向健康集成网络304注册,因而目录数据库406中的应用数据包括注册信息。11字典数据库408可保存与由健康集成网络304以及诸如API104和软件层402之类的请求实体所使用的词汇定义相关的信息。此类定义可包括数据类型定义和关于如何显示不同的数据类型或如何变换它们的信息。另外,字典数据库408可保存显示布局和模板等的信息。此外,字典数据库408可保存通过使用标准等来定义代码的不同查找表。例如,字典数据库408可支持由国家卫生统计中心(NationalCenterforHealthStatistics)发布的国际疾病分类第九修订版(ICD-9)。这些代码标识不同的疾病和诊断;因而医生可将这些代码之一加到健康集成网络304中的用户图表上,从而字典数据库408可允许软件层404(或API104)将该代码翻译成对用户更有意义的事物,诸如医学名称和/或关于诊断的不同的、其它的、或附加的信息。字典数据库408还可用于检索诸如复数和简写形式的代码(诸如ICD-9代码)之类的其它元数据。它还可保存允许不同度量单元之间的转换的信息,诸如英尺到米、华氏温度到摄氏温度、磅到千克等。在一个实施例中,例如,可以是一个以上应用的应用302可以向API104做出调用以请求、存储或修改数据。API104利用软件层402处理由应用302做出的调用。软件层402随后可向它自己的内部高速缓存或健康集成网络304査询所需数据;作为附加或替换,软件层402可直接向数据库404、406和408中的一个或多个查询所需数据。软件层402可连续地或异步地査询数据直至从健康集成网络304获得所有数据。软件层402随后可通过使用其已获得的其它数据来操纵数据的各部分以公式化应用302所需的结果,并且经由API104将该结果返回给应用302。例如,应用302可通过调用API104请求用户的血压读数,接着API104可与软件层402通信以公式化所需的读数。软件层402可直接地或通过健康集成网络304向目录数据库406查询以获得血压读数的位置,向字典数据库408査询以获得血压类型的模式、样式和通用类型信息,以及向记录数据库404查询以获得实际读数。通过使用模式,软件层402可将该记录解释为表示收縮和舒张压(以及可能脉搏率)的两个整数,并且将这些数字通过API104返回给应用302,或者还将样式、单位或其它模板应用于这些数字并返回结果,无论该结果是串、XML、HTML、图像等。另外,软件层402可将原始数据与变换、样式和/或模式信息一起通过API104返回给应用302以允许应用302随意应用这些。同样,软件层402可将结果存储在高速缓冲存储器中以便将来访问。可以理解,所述主题并不限于前述示例/实施例,相反,这是与健康集成网络304接口的API104的许多可能的实施例中的一个。现在转向图5,示出了根据本文所公开的主题的一个实施例的系统500。系统500包括做出对来自健康集成网络304的数据进行检索、存储、修改或以其它方式访问中的至少之一的请求的应用302。该请求可通过使用以XML格式指定请求的HTTP协议的因特网502发送到API104。API包括XML解释器504以从应用302所发送的请求中导出请求参数。如上所述,对数据的请求可按XML格式提交给API104,并且XML解释器504可要求该XML符合XML模式以便被认为是有效请求。例如,请求可指定信息,诸如用于应用的授权/认证或安全令牌类型目的的签名、参数列表(其可包括方法名称)、个人ID(如果请求方与信息被搜索的用户不同,例如,医生访问患者记录)、记录ID(例如,如果记录正在被操纵)、用户的认证令牌、语言说明、国家说明、消息创建时间和期满时间、和/或方法所需的任何参数。根据所述主题的一个实施例被发送到API的样本XML请求可以如下。<request〉<sigdigestMethod="shal"sigMethod="rsa-shal">...</sig><params><method>GetThings</method〉<target-person-id/〉<record-id>1</record-id><auth-token>...</auth-token><language>en</language〉<country〉us</country><msg-time>2006-07-11T22:18:13Z</msg-time><msg-ttl>330</msg-ttl><info><group><filter〉6緒7〈/type-id〉</filter><format><section>core</section><section>xml</section></format></group></info></params></request〉在该示例中,sig标签包括关于相对于请求应用证书的私钥的数据加密的信息,params节示出请求的细节。特别地,method标签指定方法名称并且各个条目列举如上。具体地,info节包括正被调用的方法所需的参数。在这种情况下,GetThings需要标识正被检索的信息的类型(重量、血压、药物治疗等)的type-id以及如果有一个以上的节则指定应当返回哪些节的section参数。可以理解,可提供其它info元素以确保适当的数据被请求;因而XMLAPI调用是可扩展的以容纳可驻留于健康集成网络中的附加信息和类型。可以理解,所公开的主题并不限于HTTP请求上的XML,相反,这仅仅是应用通过API与健康集成网络通信的许多方法之一。对记录数据请求的响应也可以是XML格式并且经由因特网502通过HTTP从API104发送回应用302。这些响应可包括状态码(数字的和描述的),与单位、样式、模式等一起的任何结果数据(在该示例中被称为"事物(thing)"并且以下将进一步描述)。例如,根据本文所述的主题来自API调用的响应可以如下。<response><status><code>0</code><description〉OK</description><details/><exception/〉</status><ad/〉<wc:infoxmlns:wc="methods.response.GetThings"><group><thing><thing-id>l</thing-id><type-idname="Weight">3d34d87e—^5^-6W/-/5^^^Z(W77</type-id><eff-date>2006-07-llT20:51:25Z</eff-date><system-sets〉16</system-sets〉<data-xml><weight><valueunit="lbs"〉204.8</value></weight></data-xml></thing></group></wc:info></response〉可以理解,本文所述的主题并不限于以上请求和响应示例,相反,这些仅仅是通过HTTP请求/响应约定的XML的示例。如上所述,应用302与诸如API104通信有许多方式,诸如与许多支持的语言(诸如.NET、Java等)兼容的展示的软件开发工具包(SDK)对象模型,如下所示,以及SDK对象模型和XML。现在转向图6,示出了根据本文所述的主题的一个实施例用于访问来自健康集成网络的数据的系统600。可访问健康集成网络304的应用——应用302具有软件开发工具包(SDK)602。SDK602使得应用能够作出调用来请求、存储、修改或以其它方式访问存储在健康集成网络304中的数据。提供API104以便于与健康集成网络304的通信。应用302可利用SDK602对API104作出调用。SDK602被实现为提供由API104包括的功能的至少一部分。例如,应用仅仅需要与SDK602通信以检索、存储和修改健康集成网络304中的数据。应用302可初始化SDK602,此时便可利用SDK602。通常,一旦初始化,应用302可通过诸如以下在伪码中所表达的圆点记法形式对SDK602作出函数调用。publicvoidDisplayWeightToConsole(stringserviceUrl,stringauthUrl)WServiceservice=nswWScrvicc(appld,serviceUrl,authUrl,"test","test");Personlnfopersonlnfo=service.GetPersonInfo();〃注意,这假设该人对于正好一个记录被授权Recordlnforecord=personlnfo.AuthorizedRecords[O];ReadOnlyCollection<ThingInfo>weightMeasurements=record.GetThingsByType(newGuid("3d34d87e-7fcl-4153-800f-f56592c固17"):ThingDataSections.Core|ThingDataSections.Xml);//这输出每次体重测量的XML数据foreach(weightMeasurements中的Thinglnfoweight)Console.WriteLine(weight.XmlData.OuterXml);catch(Exceptione)Console.Error.WriteLine(e.Message》16可以理解,上述伪码仅仅是利用SDK来使用本主题的实施例的示例,且本主题并不限于此。当应用302对SDK602做出调用时,诸如record.GetThingsByType...,SDK602被实现为对API104做出后续调用以经由因特网502检索、存储或修改数据(如果健康集成网络组件被远程存储)。SDK602使该交互对应用302看起来是无缝的。在向API104作出适当请求之后,API104和/或可能的软件层从健康集成网络304请求相关数据。该请求可包括对如上所述的一个或多个不同地或局部地存储的数据库的一个或多个请求。一旦收集到相关信息,API104和/或可能的软件层就可在通过因特网502将数据提交回SDK602之前对该数据应用变换、样式和/或模式。对于图5和图6两者,可以理解,访问健康集成网络304和/或API104并不限于因特网通信,相反,在各组件位于同一局域网(LAN)的情况下,可利用LAN通信以及WAN、WLAN等。在两个系统之间传送数据的任何模式都可使用。此外,也可使用通过因特网或以其它方式的任何种类的数据通信/说明。另外,API104将可能从应用302所zuochu的调用返回至少一个状态码(如以上样本XML所示);该代码可与下面的状态码列表类似。代码描述原因0OK成功1FAILED一般性失败,原因不明2BAD—HTTPHTTP协议问题3INVALID—XML请求XML不能被解析或者是不一致的。4BAD—SIG对请求的签名确认失败。5BAD—METHOD所请求的方法不存在。6INVALID—APP所指定的应用不存在、不活动,或者调用IP地址是无效的。7TOKEN_EXPIRED认证令牌已期满。8INVALID—TOKEN认证令牌残缺或出现其它差错。9INVALID_PERSON该人不存在或不活动。10INVALID_RECORD具有所指定ID的17<table>tableseeoriginaldocumentpage18</column></row><table><table>tableseeoriginaldocumentpage19</column></row><table>参考图7,API700被示为包括各例程组,这些例程组提供访问不同数据的不同方式。记录数据例程702包括允许应用302(图4)请求、存储、修改或以其它方式访问存储在健康集成网络304(图4)中的记录数据的多个例程。这些数据可包括三个数据库404、406和408(图4)中的数据、数据本身以及描述该数据的数据、相关的二进制数据(诸如图像、x光照片等)等等。与记录相关联且由类型定义的数据在本文的示例和例程名中将被称为"事物"。记录数据例程702可包括从存储在健康集成网络中的健康记录査询数据的例程。事物可釆用结构化数据(XML)、二进制数据(图像)等形式;它们表示健康集成系统中的单个实例数据并且通常与类型和元数据(其可具有值类型、度量单位、注释、数据的源点等)相关联。例如,可提供GetThings例程以检索如在以上示例中所示出的这种信息。可使用例如HTTP上的XML调用的该例程可要求XML输入指定要调用的例程并且还包括"info"节来为数据査询指定过滤器;过滤器可包括下列中的任何一个。过滤器定义id可指定任何数量的事物ID。该子句与所有其它子句进行或操作并且在filter(过滤器)元素外面指定。type-id单个事物的标识符。eff-date-min有效日期比指定日期更新的事物。日期是UTC时间。eff-date-max有效日期比指定日期更旧的事物。日期是UTC时间。created-app-id创建事物的应用的ID。这是Guid。created-person-id创建事物的人的ID。这是Guid。updated-app-id最后一次更新事物的应用的ID。这是Guid。updated-person-id最后一次更新事物的人的ID。这是Guid。created-date-min创建日期比指定日期更新的事物。日期是UTC时间。created-date-max创建日期比指定日期更旧的事物。日期是UTC时间。updated-date-min最后一次更新日期比指定日期更新的事物。日期是UTC时间。updated-date-max最后一次更新日期比指定日期更旧的事物。日期是UTC时间。xpath如果事物类型被表示为结构化数据(XML),则可指定XPATH査询针对该数据运行。该査询仅可检査存在性。如果该査询针对事物产生真结果,则将其返回。该子句不与二进制事物类型匹配。20set-id获取用户定义集内的所有事物。另外,"info"节可指定一个或多个格式节以进一步确定针对与指定过滤器匹配的事物返回什么数据以及要应用的任何变换、样式或模式。当请求被发送到API且软件层处理该请求并收集数据时,响应被发回请求实体。如上所示,该响应可以是具有匹配的事物结果、状态码等的分组的XML响应。该响应可符合可定义响应布局的XML模式并与该XML模式一起发送,具体地,GetThings例程响应可符合可具有多个节的为事物所定义的模式。API收集在请求中指定的节;这些节包括可定义记录和成员系统集(事物可属于的高级组)的有效日期的core(核心)节;可定义记录的创建和更新信息以供将来査询的audit(审计)节;包含表示事物的数据的XML的XML节(如果类型定义模式,则数据必须符合该模式);用于二进制数据(诸如图像/x光照片)的BLOB节;可定义一个或多个注释的annotation(注释)节,其中该注释还可包含用于审计的注解;定义该数据所属的一个或多个用户定义集的sets(集合)节;以及概述对事物的不同授权许可的permission(许可)节。类似地,记录数据例程702可提供PutThings例程用于创建新的事物和/或更新现有事物。请求可以是如上所示的XML格式并且可要求要存放(put)的事物符合以上的事物模式。该例程可返回结果代码和所创建/更新的事物的ID。另外,在请求可包含与GetThings请求相类似的元素的情况下,可提供RemoveThings例程来删除事物;然而,指定事物被删除并且不被返回。此外,可提供GetAuthorizedRecords例程用于査询请求实体对其具有许可(例如,请求实体不是该数据所属的用户)的已知记录ID。该例程可根据和/或利用模式返回记录。API700还可提供一组帐户例程704来管理健康集成网络中的用户和组。例如,可提供允许请求应用收集与指定的过滤器准则匹配的用户的一组简化的帐户信息的QueryPersons例程。为此,可要求请求符合请求模式。可用过滤器可包括所找的人的名字、ID、电子邮件地址等,并且可检査这些元素是否包含任何指定的特征,从而返回肯定结果;可要求结果符合模式(XML或其它)。此外,可提供GetPersonlnfo例程来请求关于请求用户的帐户信息,包括名字、电子邮件地址、电子邮件地址的确认状态、应用设置、授权的记录等。另外,可提供类似的组例程以允许用户属于逻辑组。各组可与系统的用户类似地被管理。因而,例如可提供诸如GetGroups例程之类的例程来检索关于包括成员ID的组的信息。可要求请求和响应两者遵守XML模式以解释该数据。另夕卜,API700可提供应用例程706用于允许注册和定位使用API700和健康集成网络的应用。例如,可提供GetApplication例程来收集关于向健康集成网络注册的一个或多个应用的信息;指定的参数可包括应用的名称和/或ID,如果ID已知的话。该例程可返回一个或多个所定位的应用(名称和ID),以及该应用是否需要授权和/或接受,等等。此外,还可提供AddApplication例程来向健康集成网络注册应用。请求可作为具有参数的XML发送,这些参数对应于应用的ID(使用证书创建的)、应用的名称、用于验证所有请求的公共加密密钥、记录级授权、例程级授权、应用设置(XML形式或其它)、是否需要授权来使用该应用、以及是否需要接受来使用该应用。接受可包括诸如接受最终用户许可证协定(EULA)的步骤。例如,例程可返回应用的ID和状态码。此外,例如,API700可包括管理给定事物和/或记录的安全的安全例程708。这些例程可包括获得针对给定记录的与被授权的用户相关联的许可,该例程可要求用户的ID和正对其请求许可信息的记录的ID。然后,该例程可返回与关于用户或组的记录ID相关联的一组规则、针对记录可能存在的许可、记录中的应用许可的事物、以及不可应用许可的任何被排除的事物。类似地,可提供GetAuthorizations例程来获取可以访问特定事物的用户或组的ID。为此,事物ID与作为输入的许可说明一起被提供,并且例程返回对于所请求的事物具有访问级别的用户和/或组的列表。另夕卜,可提供AddPermissions例程和RemovePermissions例程以针对给定的记录设置新的许可和删除许可。同样,安全例程708可包括GetEffectivePermissions例程来收集关于同样是具有变化的许可的组的一部分的用户记录的许可信息。该例程可尝试向用户提供最佳许可信息,无论其是否是由于组成员资格还是用户级授予的许可。还可提供更多的例程,例如这些例程可以是仅可在健康集成网络内使用的例程,例如(通过参与该网络的管理和/或其它类型的系统)。此外,例如,可提供用于为用户提供订阅功能的例程来代表其它应用和公司订阅由健康集成网络提供的服务。这些还可包括用于提供系统用激励的例程,例如,来自不同应用供应商的促销、服务用的优惠券等。如上所述,尽管上述示例实施例在XML上下文中引用的,但是可以使用其它方式提供此类例程,例如SDK可使用例如.NET来展示并且可按圆点记法/参数指定格式而不是HTTP上的XML来解释调用。这些参数可以是XML或其它类型的参数,但是所发送和所接收的实际数据与在先前示例中使用HTTP上的XML时相同。API700还可包括仅可由诸如客户服务代表之类的被授权维护健康集成网络的那些人访问的一组管理例程710。这些例程可允许超级用户级授权修改健康集成网络中的几乎任何事物和/或记录。可与独立体系结构之上或之内的那些例程类似地实现这些例程以保护其免于潜在的黑客攻击等。API700还可展示一组智能例程712。智能例程712可被创建并被调节到具体应用或封装以帮助API在第三方应用开发中的使用。示例例程可帮助开发者创建应用打算使用的数据的XML模式。这可使开发者能够快速地添加新的可能的数据值、类型和容器。这还可按批处理方式来执行并且例程可使该信息与应用相关联。这些例程还可作为API700的外接件由第三方创建以便于对丰富数据的简单访问。例如,公司可通过在例程调用名称中使用其商号来展示访问其专有数据的公共例程以附加地创建金钱激励来促进展示有价值的数据的开发。可以理解,API700和一些例程可位于远程,而其它的则位于访问应用的邻近、之上或之内。事实上,一些例程可被下载到设备以允许更多扩展功能和更易使用、更高效的例程。这些可以进入封装或可单独地下载,或者甚至作为自动更新,并且还可以是软件开发工具包的一部分。智能例程712的另一示例可以是警告系统功能,其中跟随系统中的某些事件和/或超过一些阈值,API可向适当的各方当事人通知该信息。例如,如果血糖水平监视器接收到多个低读数或一个致命性的低读数,则该读数在被发送到API700之后可触发智能例程712来通知EMS和/或健康集成网络中列举的紧急联系人。人们可以想象仅仅基于该功能所创建的设备;可能很多人可一直佩戴的自动化脉搏检测器将检测低或无脉搏(或急速脉搏)并且通知权威机构和/或紧急联系人。另外,设备可以是基于全球定位系统(GPS)或与其相关联的,并且API700可具有获得该设备的GPS坐标并将该坐标提交到被警告系统/方的能力。因而,另一智能例程712可将GPS坐标解密成地址并且还提供自通知系统的或用户的当前位置的方向。可以理解,API700可提供除数据功能之外的此类服务,但是并不限于此。此外,例如,可提供通信例程714以便于向用户、设备、应用以及健康集成网络内的其它实体自动地传送信息。这种通信可在网络内部和/或外部发生。内部通信可包括事件、警告、更新等;例如,放射科医师可将x光照片引导至用户的最初保健医生的应用。其它示例包括健康警告,诸如病历通告、处方或其相关信息的变23化、会面提醒等。例如,外部通信可包括电子邮件(电邮)、传真、即时消息等;在前一示例中,X光照片可作为电子邮件被传递到最初保健医生处(例如,经由附件)。另外,可提供同步例程716以便于根据所述主题的分布式健康集成网络之间的通信。具体地,可存在一个以上健康集成网络并且用户可要求信息被存储在不同的健康集成网络中;因而同步例程716可便于系统之间的通信以实现该目的。可以理解,具有多个远程定位的健康集成网络提供了世界各地的高效访问,并且同步例程716可提供安全和/隐私层。另外,同步例程716可提供多个健康集成网络内的冗余以便于更大的数据可访问性。已经相对于若干组件之间的交互描述了前述系统、体系结构等。应该理解,这样的系统和组件可以包括此处指定的那些组件或子组件,所指定组件或子组件中的一些、和/或另外的组件。子组件也可以被实现为通信耦合至其它组件而非被包括在父组件内的组件。而且,一个或多个组件和/或子组件可以被组合成提供聚集功能的单个组件。可根据推和/或拉模型来实现各系统、各组件和/或各子组件之间的通信。组件也可以与出于简明考虑而在此未具体描述的、但本领域的技术人员已知的一个或多个其它组件交互。而且,如可以理解的,所公开的系统以及方法的各个部分可以包括或包含人工智能、机器学习或基于知识或规则的组件、子组件、进程、装置、方法或机制(例如,支持向量机、神经网络、专家系统、贝叶斯信任网络、模糊逻辑、数据融合引擎、分类器......)。这样的组件特别地可以例如通过基于上下文信息的推断动作来自动化由其执行的某些机制或进程,由此使得系统和方法的各部分更为自适应、高效及智能。作为示例而非限制,这种机制可用于生成物化视图等。考虑到以上描述的示例性系统,参考图8-9的流程图将可以更好地理解依照所公开的主题实现的方法。尽管出于说明简单的目的,各方法被显示和描述为一系列框,但应该理解和领会,所要求保护的主题不受框次序的限制,因为一些框能够以不同的次序和/或与在此描绘和描述的其它框同时发生。而且,并非所有示出的框都是实现以下描述的方法所必需的。图8示出了应用经由API从健康集成网络请求数据的方法。该请求可以针对驻留于健康集成网络中的任何数据,包括关于所请求的数据的任何数据或其它数据。该请求可用多个体系结构来指定,包括HTTP上的XML、SDK、和/或两者或这些体系结构的混合,以及任何请求/响应类型体系结构。请求可以是请求/响应类型和/或基于订阅的,其中在请求和更新被自动引导至数据通道且被请求应用获得之后该数据通道保持打开。后一形式可用于警告/警报、自动更新以及诸如上述的。例如,极低胰岛素水平读数可导致胰岛素监视器将该信息发送到健康集成网络(这是请求/响应);健康集成网络随后可在打开的通道上将警告发送到医生办公室的应用和/或用户低胰岛素水平的紧急联系人的应用(诸如可发送记录和/或文本消息的应用),从而减少请求该信息的需要(这是基于订阅的系统的示例)。然而,尽管该特定方法800显示请求/响应,但是可以理解,也可根据所述主题来使用基于订阅的方法。在附图标记802,应用向如本文所述的健康集成网络的API启动对数据的请求。可以理解,可首先要求应用经由上述API向健康集成网络注册,这可以是另一形式的请求。此外,请求可以是在健康集成网络中存储数据以及査询数据。同样,请求应用可以是具有与API通信能力的许多设备、应用等。例如,应用可以是传统上可与适于与健康集成网络API接口的外部个人健壮设备(诸如心率监视器表)一起操作以存储和检索由外部个人健壮设备收集的数据的第三方应用。另外,个人健壮设备可配备通过API自身与健康集成网络通信的技术。此外,如果请求是针对数据的,则应用可指定査询类型功能的过滤器以及同样指定要检索的数据节。例如,如果请求X光照片信息,则应用可仅仅需要(并且确实仅可被授权接收)管理信息;因而该请求可指定这一点,从而减少在接收到来自健康集成网络的响应之后传送任何X光照片图像(与其它关联的数据相比可能比较大)的需要。在做出请求之后,在804,应用等待接收来自API的响应。该请求相对于应用可以是同步的,这意味着应用在等待请求返回时实际上拖延其它任务。然而,应用还可在异步上下文中做出请求,使得应用在等待响应时可继续处理。通常,可利用回调函数、多个分散线程等来实现该功能。另外,应用可在等待当前调用返回时对API做出其它调用。在附图标记806,应用接收到API响应。数据可按例如具有指定状态码的XML形式到达。XML还可包括来自对数据的请求的结果数据。数据可以是与变换、样式和/或模式信息一起的明文形式,或者作为已应用以上这些的串。应用知道如何呈现和/或以其它方式处理所接收的信息,因此应用的用户可最优地査看该信息并且在附图标记808可根据XML模式这样做。图9示出了便于经由API向健康集成网络请求数据的方法900。数据可以是驻留于健康集成网络中的上述任何数据,这些数据可以分布在网络和/或数据库上。请求可以针对单独的数据、数据和类型信息、数据和变换、样式和/或模式信息等。此外,如上所述,请求可通过利用HTTP上的XML、SDK、和/或这些的混合以及任何请求/响应平台做出。在附图标记902,从应用接收到对于数据的请求。请求可通过API、软件层、和/或其组合来接收。如上所述,请求可以针对健康集成网络中的任何可用记录(以及针对不可用记录,但是随之将可能发生错误)。可以理解,API和/或软件层可对请求执行附加处理,比如高速缓存、审计等。另外,请求实体可在继续向健康集成网络请求数据之前执行一些认证/授权例程。作为替换或附加,认证和/或授权可通过健康集成网络执行。在附图标记904,从健康集成网络检索相关信息。该信息可以是所请求的数据和/或用以帮助对所请求的数据授权、公式化、变换、样式化或执行其它动作的附加数据。该数据可从一个或多个本地或远程存储的数据库获得。另外,数据库可彼此协作以提供对数据的无缝访问。例如,可提供具有关于所找信息驻留于何处的指示符并且能够检索该信息的主数据库。因而,在一个实施例中,仅需要向主数据库或其接口请求该信息,并且主数据库知道何处定位该信息并将其返回请求者。或者,API和/或软件层知道或可获得该存储信息。如果所请求的数据带来了适当的信息,则在附图标记906对数据应用变换样式和/或模式。例如,变换可包括从公制到美国单位,比如千克到磅等。例如,变换还可包括将串或两个整数变换成收縮和舒张压的血压数据结构。类似地,样式可包括增加参考符号或字符,比如将被存储为73(表示英寸的整数)的身高呈现为例如6'1"的形式。另外,可向模式提供数据以描述更复杂的数据结构的数据布局。API和/或软件层可使用该模式来提取某些相关数据或将其应用以创建对数据的表示。例如,如在前一方法中,如果应用仅需要数据的一部分,比如关于X光照片的管理信息而非图像自身,则可应用该模式以仅发回所请求的管理数据。然后在908,数据被返回给请求应用。所返回的数据可以是单独的数据,应用了前述变换、样式和/或模式的数据,或两者。因而,应用可通过利用变换、样式和/或模式中的每一个的全部、组合或一部分使数据满足请求实体的需要。可以理解,数据的外部变换、样式和/或模式信息也可被分别地请求和/或存储在应用的本地高速缓存中以供后用。在此所用的术语"组件"、"系统"等等意指与计算机相关的实体,其可以是硬件、硬件和软件的组合、软件、或执行中的软件。例如,组件可以是但不限于是,在处理器上运行的进程、处理器、对象、实例、可执行程序、执行的线程、程序和/或计算机。作为说明,运行在计算机上的应用程序和计算机本身都可以是组件。一个或多个组件可以驻留在进程和/或执行的线程内,并且组件可以位于一个计算机上和/或分布在两个或更多的计算机之间。在此使用词语"示例性,'意指用作示例、实例或说明。在此被描述为"示例性"的任何方面或设计并不一定要被解释为相比其它方面或设计更优选或有利。此外,各示例只是出于清楚和理解的目的来提供的并且并不意味着以任何方式限制本发明或其相关部分。可以理解,本可呈现多个其它或替换示例,但已出于简明的目的而省略了。此外,本发明的所有或部分可使用生产控制计算机实现所公开的发明的软件、固件、硬件或其任何组合的标准编程和/或工程设计技术而被实现为方法、装置或制品。如在此使用的术语"制品"旨在涵盖可以从任何计算机可读设备或介质访问的计算机程序。例如,计算机可读介质可以包括但不限于磁存储设备(例如,硬盘、软盘、磁带......)、光盘(例如,紧致盘(CD)、数字多功能盘(DVD)......)、智能卡和闪存设备(例如,卡、棒、钥匙驱动器......)。另外应该明白,可以采用载波来承载计算机可读电子数据,例如那些用于发送和接收电子邮件或用于访问如因特网或局域网(LAN)等网络的数据。当然,本领域的技术人员将会认识到,在不背离所要求保护的主题的范围或精神的前提下可以对这一配置进行许多修改。为给所公开的主题的各方面提供上下文,图10和11以及以下讨论旨在提供可以在其中实现所公开的主题的各方面的合适的环境的简要、概括的描述。尽管以上在运行在一台或多台计算机上的程序的计算机可执行指令的一般上下文中描述了本主题,但本领域的技术人员将认识到,本发明也可结合其它程序模块实现。一般,程序模块包括执行特定任务和/或实现特定抽象数据类型的例程、程序、组件、数据结构等。此外,本领域的技术人员可以理解,系统/方法可用其他计算机系统配置实现,包括单处理器、多处理器或多核处理器计算机系统、小型计算设备、大型计算机、以及个人计算机、手持式计算设备(例如,个人数字助理(PDA)、电话、手表...)、基于微处理器或可编程消费者或工业电子设备等。所示各方面也可在其中任务由通过通信网络链接的远程处理设备执行的分布式计算环境中实现。然而,所要求保护的主题的一些方面,如果不是全部方面,可以在独立计算机上实施。在分布式计算环境中,程序模块可位于本地和远程存储器存储设备中。参考图IO,用于实现此处所公开的各方面的示例性环境1010包括计算机1012(例如,台式机、膝上型计算机、服务器、手持式、可编程消费或工业电子产品......)。计算机1012包括处理器单元1014、系统存储器1016和系统总线1018。系统总线1018将包括但不限于系统存储器1016的系统组件耦合到处理单元1014。处理单元1014可以是各种可用处理器中的任意一种。可以理解,双微处理器、多核、和其它多处理器体系结构也可用作处理单元1014。系统存储器1016包括易失性和非易失性存储器。基本输入/输出系统(BIOS)包含诸如在启动期间在计算机1012的元件之间传送信息的基本例程,其存储在非易失性存储器中。作为示例而非限制,非易失性存储器可包括只读存储器(ROM)。易失性存储器包括随机存取存储器(RAM),它用作帮助处理的外部高速缓冲存储器。计算机1012还包括可移动/不可移动、易失性/非易失性计算机存储介质。例如,图10示出了大容量存储1024。大容量存储1024包括但不限于,诸如磁盘或光盘驱动器、软盘驱动器、闪存或记忆棒之类的设备。另外,大容量存储1024可以包括独立的或者与其它存储介质结合的存储介质。图10提供用作用户和/或其它计算机与在合适的操作环境1010中描述的基本计算机资源之间的中介的软件应用程序1028。这种软件应用程序1028包括系统和应用程序软件的一个或两者。系统软件可以包括存储在大容量存储1024上的操作系统,该操作系统用于控制并分配计算机系统1012的资源。应用程序软件通过存储在系统存储器1016和大容量存储1024的任一或两者之上的程序模块和数据来利用系统软件对资源的管理。计算机1012还包括通信地耦合到总线1018并帮助与计算机1012的交互的一个或多个接口组件1026。作为示例,接口组件1026可以是端口(例如,串行、并行、PCMCIA、USB、火线......)或接口卡(例如,声音、视频、网络......)等等。接口组件1026可以接收输入和提供输出(有线地或无线地)。例如,输入可以从以下设备接收,这些设备包括但不限于,诸如鼠标、跟踪球、指示笔、触摸垫等定点设备,键盘,话筒,操纵杆,游戏手柄,圆盘式卫星天线,扫描仪,照相机,其它计算机等。还可以由计算机1012经由接口组件1026向输出设备提供输出。输出设备可以包括显示器(例如,CRT、LCD、等离子......)、扬声器、打印机和其它计算机等等。图11是本发明可与其交互的示例计算环境1100的示意框图。系统1100包括一个或多个客户机1110。客户机1110可以是硬件和/或软件(例如,线程、进程、计算设备)。系统1100还包括一个或多个服务器1130。因此,系统1100可对应于两层客户机服务器模型或多层模型(例如,客户机、中间层服务器、数据服务器)以及其它模型。服务器1130也可以是硬件和/或软件(例如,线程、进程、计算设备)。服务器1130可以容纳各线程以通过例如利用本发明的各方面来执行转换。客户机11IO和服务器I130之间的一种可能的通信可以是在两个或多个计算机进程之间传输的数据分组的形式。系统1100包括可以用来使客户机1110和服务器1130之间通信更容易的通信框架1150。在此,客户机1110可对应于程序应用组件并且服务器1130可提供接口以及任选地存储系统的功能,如上所述。客户机1110可在操作上连接至可用来存储对客户机1110本地的信息的一个或多个客户机数据存储1160。同样地,服务器1130可在操作上连接到可以用来存储对服务器1140本地的信息的一个或多个服务器数据存储1130。作为示例,程序应用组件可经由客户机1110从一个或多个服务器1130(例如,以及存储于其上或从其可访问的API)请求个人健康信息。例如,服务器1130可从数据存储1140或多个数据存储获取所需数据并且应用变换、样式和/或模式。随后,其它程序应用组件可请求访问来自服务器1130的相同或不同数据。以上所已经描述的内容包括所要求保护的主题的各方面的例子。当然,出于描绘所要求保护的主题的目的而描述每一个可以想到的组件或方法的组合是不可能的,但本领域内的普通技术人员应该认识到,所要求保护的主题的许多进一步的组合和排列都是可能的。从而,所公开的主题旨在涵盖落入所附权利要求书的精神和范围内的所有这样的变更、修改和变化。而且,就在详细描述或权利要求书中使用术语"包含"、"具有"或"含有"或其形式的变型而言,这样的术语旨在以类似于术语"包括"在用作权利要求书中的过渡词时所解释的方式为包含性的。权利要求1.一种应用程序接口(API)(200),包括接收器组件(202),其从多个不同设备或应用(302)接收对于健康相关数据的请求;解释器组件(204),其处理所述请求,并且收集来自健康集成网络(304)的所请求的健康相关数据的子集,其中所述健康集成网络包括分别存储健康相关数据的多个不同的数据存储(404、406、408);以及变换组件(208),其利用模式来选择所收集的健康相关数据的一部分以返回给所述设备或应用(302)。2.如权利要求2所述的接口,其特征在于,所述模式的至少一部分在所述对于健康相关数据的请求中指定。3.如权利要求l所述的接口,其特征在于,所述变换组件针对健康相关数据的所选部分的数据类型从所述健康集成网络检索样式信息,并且在返回给所述设备或应用之后将所述样式信息应用于健康相关数据的所选部分。4.如权利要求l所述的接口,其特征在于,还包括确定请求数据的应用对于在所述请求中指定的数据访问的类型是否具有足够凭证的授权组件。5.如权利要求4所述的接口,其特征在于,所述授权组件确定操作所述应用的用户对于在所述请求中指定的数据访问的类型是否具有足够凭证。6.如权利要求l所述的接口,其特征在于,还包括在事件发生或超过阈值中的至少之一之后将数据发送到连接的应用的更新组件。7.如权利要求l所述的接口,其特征在于,所述请求通过HTTP连接以可扩展标记语言(XML)格式接收。8.如权利要求7所述的接口,其特征在于,所述以XML格式接收的请求指定至少一个例程调用和用于所述例程调用的至少一个参数。9.如权利要求l所述的接口,其特征在于,所述多个数据存储中的至少一个是高度分布的,并且所述多个数据存储中的至少一个将记录的位置信息保存在所述高度分布的数据存储中。10.如权利要求l所述的接口,其特征在于,还包括确定常用例程集且展示所述常用例程集以供应用使用的例程封装组件。11.一种与个人健康相关数据交互的方法,包括从第一应用或设备接收与健康相关数据记录的一部分相对应的请求;基于所述请求向健康集成网络请求数据;以及将模式应用于所述数据以准备包括所述数据的所选部分的结果。12.如权利要求ll所述的方法,其特征在于,还包括将所述结果发送到所述第一应用或设备。13.如权利要求ll所述的方法,其特征在于,所选部分在所述对健康相关数据记录的一部分的请求中指定。14.如权利要求ll所述的方法,其特征在于,还包括从第二设备或应用接收对所述健康相关数据记录的一部分的不同请求,所述第二设备或应用在与所述第一设备或应用不同的体系结构上操作。15.如权利要求ll所述的方法,其特征在于,所述请求是将所述健康相关数据的一部分存储在所述健康集成网络中。16.如权利要求15所述的方法,其特征在于,还包括至少部分地基于所述请求向第二设备或应用发送事件。17.如权利要求ll所述的方法,其特征在于,所述请求被包括在可扩展标记语言(XML)文档中。18.如权利要求17所述的方法,其特征在于,所述XML文档还包括所请求的例程所需的至少一个参数。19.如权利要求ll所述的方法,其特征在于,所述第一设备或应用是个人健康设备。20.—种用于访问健康相关数据的系统,包括用于接收(202)并响应(210)来自多个设备和应用(302)的对于个人健康相关数据的请求的装置;用于获得(202)与所述请求相关的所存储数据的子集的装置;以及用于将至少一个模式应用于所存储数据的子集(208)以仅仅返回所存储数据的所述部分的所请求的选择部分的装置。全文摘要提供一种应用程序接口(API)以便请求、存储和以其它方式访问健康集成网络内的数据。该API通过提供认证/授权来方便对中央存储的数据的安全和无缝的访问,以及接收诸如XML之类的可扩展标记语言格式的请求的能力,并且返回XML格式的结果数据。该数据还可具有与其相关联的变换、样式和/模式信息,这些信息可在结果XML中返回和/或通过API提前应用于该数据。该API可在许多环境体系结构中使用,包括HTTP上的XML和软件开发工具包(SDK)。文档编号G06Q10/00GK101536021SQ200780040929公开日2009年9月16日申请日期2007年11月1日优先权日2006年11月1日发明者C·马克建,I·塞尔莫,J·D·琼斯,J·T·阿帕希布勒,J·W·佩蒂洛斯,S·P·诺兰,S·莫汉,V·瓦拉丹申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1