CN101536021A - Health integration platform API - Google Patents

Health integration platform API Download PDF

Info

Publication number
CN101536021A
CN101536021A CNA2007800409295A CN200780040929A CN101536021A CN 101536021 A CN101536021 A CN 101536021A CN A2007800409295 A CNA2007800409295 A CN A2007800409295A CN 200780040929 A CN200780040929 A CN 200780040929A CN 101536021 A CN101536021 A CN 101536021A
Authority
CN
China
Prior art keywords
data
request
api
healthy
application
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CNA2007800409295A
Other languages
Chinese (zh)
Inventor
S·P·诺兰
J·D·琼斯
J·T·阿帕希布勒
V·瓦拉丹
I·塞尔莫
J·W·佩蒂洛斯
C·马克建
S·莫汉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of CN101536021A publication Critical patent/CN101536021A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Medical Treatment And Welfare Office Work (AREA)

Abstract

An application program interface (API) is provided for requesting, storing, and otherwise accessing data within a health integration network. The API facilitates secure and seamless access to the centrally-stored data by offering authentication/authorization, as well as the ability to receive requests in an extensible language format, such as XML, and returns resulting data in XML format. The data can also have transformation, style and/or schema information associated with it which can be returned in the resulting XML and/or applied to the data beforehand by the API. The API can be utilized in many environment architectures including XML over HTTP and a software development kit (SDK).

Description

Health integration platform api
Background
Computing machine and networking technology from the data handling system of expensive, low performance to low-costly, high performance communicate by letter, problem solves and the development of entertainment systems provide save money and the timesaving means alleviate execution such as keeping on shuttlecocking letters, bill payment, shopping, budget information and collection etc. every day task burden.For example, the computing system by wired or wireless technology and internet interface can to the user be provided for to from be positioned at all over the world the website and the passage of the almost zero access of the bulk information of the storage vault of server.This system also allows not only acquisition of information but also provide information to different sources of user.Thus, online data storage and management become and become more and more popular.
For example, collaborative social networking website is worldwide flourish.These websites allow users to create the remotely profile of storage, comprise such as age, sex, once attend school personal data such as school, graduation class, work place.These websites allow other user search aforementioned criteria to attempt to locate other user subsequently---so seek companion or the out of touch already friend of senior middle school in location with similar interest.As another actual example, website of bank provides the ability of remotely storing about the information of the bill that will pay to the user.By utilizing this feature, the user can automatically dispatch the bill payment that will carry out from their bank account, will automatically charge to the debit of this bank account when payment is scheduled.This permission is carried out e-management so that make the user avoid manually check being registered in their check book simultaneously to account balance and bill payment.
This country and very interested another field, the whole world are personal health and stalwartness.Many very different problems can be discussed in this field, such as set with the health system that obtains individual healthy and strong target and people in this very different topic of poor efficiency of existing.For example, their initial health care (primary care) doctor must be at first seen in hope acceptance now at the individual of the drug therapy of disease.Before seeing the doctor, the patient will be by the health insurance scope card that repeatedly requires to show them.During going to a doctor, the doctor will write prescription for the patient usually.The patient is being with prescription to take medicine to pharmacy then, and this moment, they may need to provide once more their health insurance scope card.Pharmacy fills a prescription, declaration insurance, deduction full insurance number and after patient payment of balance prescription is given to the patient.These manual steps are time-consuming, trouble and efficient are low.
Summary of the invention
Below proposed to simplify general introduction so that basic comprehension to some aspect described here is provided.This general introduction is not detailed general survey, the scope that is not intended to identify the element of key/critical yet or describes various aspects as herein described.Its unique purpose is to introduce some notions with the form of simplifying, as the preamble of the more detailed description that proposes after a while.
A kind of application programming interfaces (API) of communicating by letter with healthy integrated network of being used for are provided, have wherein used and to utilize this API to retrieve, store and otherwise visit or revise personal health and healthy and strong related data.This API can with the application communication of extensible language form such as extend markup language (XML) promoting open system, in this open system, can change and not need to realize new code request or response XML.Yet in addition, this API can require to observe the XML pattern and keep open system can operate necessary conventional format rank to be left.The data that can ask, store and return by this API also can be self-described, and it can have related pattern and conversion and style information so that the intelligence of data presents.This API also can provide application and user's authenticated/authorized layer with visit data on different stage.
For example, the data of storing in the system can be the data relevant with health, such as blood pressure readings, insurance information, prescription, family's history, IMR, diagnosis, anaphylaxis, X-ray photograph, blood test etc.In addition, data can be healthy and strong relevant, for example exercise routine, exercise goal, diet, based on the virtual exploration of exercise routine, match or the like.This API is convenient to visit all this data so that storage, retrieval and other visit.Use addressable these data with to data interpolation value, for example, application can allow the input user's of insurance company insurance information, and doctor's office can locate to go to a doctor this information of back visit to reduce the needs that the user shows insurance card user Yu doctor.Further adopt this example, the doctor can import the information about prescription under user's account, thereby and pharmacy can retrieve this information and insurance information so that the minimizing user shows covering note and the needs of the prescription scraps of paper that obtained for the user fills a prescription.Thereby this API can provide the valuable visit to personal health and healthy and strong related data to increase value and make it streaming with the active procedure in healthy and healthy and strong field to many application.
Address relevant purpose on realizing, this paper describes some illustrative aspect in conjunction with following description and accompanying drawing.The whole bag of tricks that these aspect indications can be put into practice, it all is intended to be covered in this.When describing in detail below reading in conjunction with the accompanying drawings, other advantage of the present invention and novel feature will become clear.
The accompanying drawing summary
Fig. 1 shows is convenient to utilize API to transmit the block diagram of the example system of data between request and Back end data assembly.
Fig. 2 shows the block diagram of exemplary API.
Fig. 3 shows is convenient to utilize API to transmit the block diagram of the example system of data between application and healthy integrated network.
Fig. 4 shows the block diagram of the example system of being convenient to transmit personal health information.
Fig. 5 shows the block diagram of being convenient to from the example system of API request personal health information.
Fig. 6 shows the block diagram of SDK (Software Development Kit) easy to use (SDK) from the example system of API request personal health information.
Fig. 7 shows the block diagram of exemplary API.
Fig. 8 shows and uses the exemplary process diagram of API from healthy integrated network request msg.
Fig. 9 shows the exemplary process diagram to the request of personal health information that is used to handle self-application.
Figure 10 is the schematic block diagram that suitable operating environment is shown.
Figure 11 is the schematic block diagram of example calculations environment.
Describe in detail
A kind of application programming interfaces (API) are provided so that visit healthy integrated network.This API can receive and handle retrieval, storage, the modification of self-application or otherwise visit the request of the data in the healthy integrated network and the authenticated/authorized function can be provided.This API can receive such as according to extend markup language (XML) but the request of the growth data form the XML of pattern; In addition, this API can respond this type of request with the XML according to the data set of representing the information relevant with this request of XML pattern.This API with many equipment and use operate with create effectively have be easy to use, the centralized storage API of complete sum light weight, personal health and healthy and strong related data.But use the using system data type and specify can using the type shared by other and striding the application operability in the situation that does not have this open-ended system of they with promotion.But be used for use and API between the growth data form of communicating by letter how the information of any kind of in fact stores with describing by allowing, the data of how conversion, patternization and/or these data of medelling are stored and realized this point.Be appreciated that data also can store and obtain by the mode of destructuring or non-medelling.
Describe the various aspects of disclosed theme referring now to accompanying drawing, all identical label refers to identical or elements corresponding in the accompanying drawings.However, it should be understood that accompanying drawing and relevant detailed description thereof are not intended to theme required for protection is limited to disclosed concrete form.On the contrary, it is intended that all modifications, equivalence and the alternative that covers in the spirit and scope that drop on theme required for protection.
Turn to accompanying drawing now, Fig. 1 shows the system 100 of being convenient to data storage and retrieval, and this system can be used for participating in healthy integrated network.Request assembly 102 can specify to API 104, to the request of data retrieval, data storage etc., API 104 is soluble should request and based on this request inquiry Back end data assembly 106.Back end data assembly 106 subsequently can be in response to API 104, and API 104 can return to request assembly 102 to major general result.Request assembly 102 can be can be by any equipment of communicating by letter with API 104 such as making request.Possible request comprises but is not limited to the authenticated/authorized of asking assembly 102, the storage of data, the retrieval of data, the modification of data, and the request of making such as the interpolation of data cell, about any value-added service to data of the retrieval of the pattern of data layout and pattern and application, user interface and data layout etc.
API 104 can be used for explaining from the request of asking assembly 102 so that communicate by letter with Back end data assembly 106.The request that is sent by request assembly 102 can be via calling of making of the XML on the HTTP(Hypertext Transport Protocol), directly to calling of making of API 104 and/or to calling that the packing around the API 104 is made.But structure can change and not need fresh code to come the growth data model of decryption to use XML to allow wherein.This is especially all the more so when it is used in combination with the XML pattern owing to the self-described ability of XML.In addition, API 104 can provide safe floor only to allow some data in the authorized request component accesses Back end data assembly 106 on Back end data assembly 106.According to this theme, Back end data assembly 106 can hold the information relevant with personal health, and it comprises huge information stores.This information can be static relatively (for example, height, body weight, medical history (individual and family), disease, anaphylaxis, insurance etc.), incident is distinctive (for example, training regimen, training vitals and statistical figure, current prescription, medical diagnosis etc.), fully dynamic (for example, blood pressure, heart rate, diet etc.) or the like.API 104 can and limit the visit of some individuality to all this information based on permissions such as patient's requirement or doctor's instructions.
In addition, API assembly 104 can be used for trigger event, real-time update is provided (for example, via call back function etc.), receives warning etc.In addition, request assembly 102 can receive incident or warning.This type of incident or warning can input surpass threshold value data (for example, hypertension), lack desired data (for example, not having the blood sugar level reading), real world event generation, obtain to take place when milestone or target, data expire etc.Thereby the theme that this paper provides provides the centralised storage of personal health related data and visit with the streaming communication between the each side that allows advantageously to follow the tracks of these data and these data and it is had value in these data.In addition, the value of returning or beam back request assembly 102 from API 104 can be to call XML on (for example when utilizing SDK (Software Development Kit)), the HTTP etc. from returning of original call.
With reference to figure 2, according to described theme, API 200 is shown to have various assemblies so that request retrieval, storage, revise or visit data otherwise.API 200 can have the receiver assembly 202 that receives data access request, explains the interpreter component 204 of this request and collection desired data and any related data and/or metadata (about the data of data).API 200 can comprise that also mandate/authenticate ruler is applied to request entity has the authorized component 206 that enough authorities are made required request to guarantee it.API 200 can have the conversion assembly 208 that when needed conversion, translation, pattern and/or pattern is applied to these data.Conversion 208 also can be packaged together result data and suitable and/or available information converting, so request entity can be carried out required conversion.API 200 also can utilize and return assembly 210 desired data and any additional data are beamed back request entity.Also can provide renewal assembly 212 to be attached to API 200, thereby open communication port, and automatic reception is to the renewal of information to allow to use.API 200 also can be provided for creating the routine package assembling 214 of intelligent routine with the use that makes things convenient for API 200.
When using API 200, the request entity of the equipment of using such as equipment, application, operation, the legacy equipment that is attached to the system with application etc. can start the request of data to API 200, and this request is obtained by receiver assembly 202.This request can be visit personal health and/or healthy and strong related data, for example prescription information.Receiver assembly 202 receives this request and sends it to interpreter component 204.Interpreter component 204 is determined the type of request, for example at the retrieval of data, the storage of data or the modification of data, and determines just requested record or type.Interpreter component 204 can utilize authorized component 206 to determine whether request entity has institute's request msg that enough privileges visit the request type that is proposed.For example, one can not have enough access rights to change or even checks its spouse's medical diagnosis.Authorization rule can comprise the people directly related with these data, medical worker etc. by setting in many ways.Be rejected visit as sporocarp, then return assembly 210 and the error notification (for example, XML form) of gained can be beamed back request entity.
If visit is allowed, interpreter component 204 addressable related datas then, in the prescription example, this can comprise prescription title, type code, explanation, consumption, have the image etc. of the prescription of doctor's signature.This information can be passed to conversion assembly 208 subsequently, and this conversion assembly can be determined information of being sought by request entity and any conversion of being asked.For example, possible request entity is not asked the image of writing out a prescription; But conversion assembly 208 application models to be grasping any information except that image the explanation that is sent from interpreter component 204, thereby have reduced the needs of transmission image, and wherein sending image may need than only sending the much more bandwidth of text message.In addition, request entity may wish to translate the type code of prescription, and for example, code may represent that anti-inflammation drugs is treated and request entity is willing to that the purpose user shows this information.Equally, if may can return based on type code to the explanation of active component and/or spinoff---be requested then conversion 208 also can be collected this information.After having collected required full detail, return assembly 210 and the form that these data are asked by for example extend markup language or any return type etc. can be beamed back request entity.Also can return the adjoint mode of the layout of the data that description returns.
Upgrading assembly 212 can provide the data access of another type, is wherein using communication ports such as for example opening pipeline between (or other receiving unit) and the API 202.When data stream is crossed first floor system such as healthy integrated network, upgrade assembly 212 and can notify (or warning) some data automatically, as long as this application has the mandate that appends to these data to the application that is connected.This renewal assembly 212 has promoted the system based on incident, wherein can surpass some threshold value and send warning to different users based on the real-time generation or the data of incident.For example, if blood pressure receives the hypertension reading (exceeding threshold value) of many unanimities, but then meet with notice and request Xiang doctor's office system transmission incident.This information also can be beamed back the doctor that blood pressure monitor has been sent to them with quantity and meet request to the user notification high scale.By using renewal assembly 212 can have many analogues to use.Similarly, if for example equipment is the equipment that sends constant renewal, the passage of then opening can provide data automatically to healthy integrated network.For example, can during session, obtain constant heart rate by the treadmill (treadmill) of user operation and open passage to utilize this information and about for example training out of Memory such as routine to come the healthy integrated network of real-time update.Being appreciated that does not need the passage opened; On the contrary, API 200 can for example call API 200 in the application (such as the readjustment type of functions) automatically and comes notification alert or renewal.
Routine package assembling 214 can provide a plurality of difference in functionalitys to help application developer and utilize API 200 establishment third parties application.For example, routine package assembling 214 can bind together into one group of routine commonly used and singlely call or provide them to utilize API 200 to start the things of the real needs of institute to give the developer in packaged expression.In addition, can provide routine create XML and the pattern that is associated usually used together with the first floor system such as healthy integrated network to create the things that will in this network, store such as data type and different record.In addition, can adopt artificial intelligence to determine the encapsulation of routine or the establishment of additional more wield routine.The routine of these establishments can provide to the developer and call to carry out the single of task that strengthens to a certain extent, call such as the single of related data that obtains not necessarily to be stored together, for example can create the last time exercise session information and any heart rate specifically obtained of GetLastExerciseRoutine (obtaining exercise routine last time) with retrieval user.As mentioned above, can determine that (for example by using artificial intelligence) these functions are often called together, and create the single routine of these data of visit subsequently so that it is for needing the application developer of these data to be more prone to together.Be appreciated that above-mentioned situation only is an example, and this theme is not limited thereto.
Fig. 3 illustrates is convenient to utilize API 104 to explain the request system 300 to data storage, retrieval etc. of self-application 302.API 104 inquires about healthy integrated network 304 based on the request that comes self-application 302 and uses 302 based on the response from healthy integrated network 304 data are returned to.Using 302 can be equipment that is coupled to computing machine or application in the software application carried out on computing machine or miscellaneous equipment, equipment itself, for example legacy equipment context or the like.Example apparatus comprises any medical treatment or personal health equipment, such as the equipment with output (for example, blood pressure monitor, check weighing scale, blood/sugar level monitor, IV, pacemaker, stethoscope, x radiograph etc.), individual healthy and strong tracking equipment (combination heart rate monitor table, passometer, bicycle equipment (for example velograph, altitude gauge, odometer etc.), stopwatch or the like) and the equipment that comprises other application of private and medical user interface.Thereby, the doctor can be from prescription, diagnosis or other chart the distinctive information of store patient manually, and the individual can store the information about diet, training regimen, medical insurance etc.Data can be any kinds and can have the type definition that is associated, the pattern of data of description layout and the pattern parameter how description presents data.Be appreciated that using 302 can be connected to make direct request to API 104, still also can make request in the passage of opening (or pipeline) that utilizes update functions connects.
As an example, the patient can utilize 302 input insurance and the pharmacy's information of using.Use 302 and it can be submitted to API 104, API 104 can ask storage in healthy integrated network 304.If the patient goes to doctor's office then, the receptionist can wherein use 302 and use API 104 these information of request by identical or independent application 302 retrieval insurance informations.API 104 retrieves patients' insurance information and sends it to API104 from healthy integrated network 304, and API 104 sends it to and uses 302.This has reduced the needs that the receptionist necessarily requires patient's insurance card.Subsequently, during meeting, the doctor can use the medicine prescription of identical or different application 302 inputs at the patient; Prescription is stored in the healthy integrated network 304 via API 104.At this moment, warning can be sent to same pharmacy and carry out prescription with request the patient who moves identical or different application 302.Perhaps, the patient can go pharmacy and request to fill a prescription, and pharmacy does not need from the patient to obtain prescription, because this information is stored in the healthy integrated network 304.Pharmacy can use it to use prescription and the insurance data of 302 visit API 104 to retrieve at this patient from healthy integrated network 304.
As another example, application 302 can be the equipment such as blood pressure monitor, it can make request into the Personal Storage blood pressure to API 104, may be considered to high for back five reading blood pressures, and blood pressure machine can receive warning and notify this fact to the individual from API 104.In addition, for example, also can receive this information via warning notifying continuous hypertension reading Xiang the doctor at the application 302 of this individual doctor's office from API 104, and the doctor maybe may be the personal coach person's training plan that also can adjust the patient with comprise the cardiovascular session that minority is extra and cut down one's diet in salt.API 104 is not limited to above-mentioned example, and in fact can carry out the whole bag of tricks about data and healthy integrated network 304, also comprises the Data Audit method.In addition, use 302 and can specify the message that sends from API 104, wherein use 302 and have private key and come data decryption by PKI and/or encrypted private key.Like this, provide more security to guarantee privacy and authenticity for the data that transmit in the system.In addition, using 302 can be to message sets operating period limit value to allow their expirations when not receiving response in the section in preset time.At this point, using 302 does not need to wait for the arrival of news; On the contrary, this information can be found quickly elsewhere then this message can be expired if for example use 302.
With reference to figure 4, show the example system 400 of being convenient to visit the information in the healthy integrated network.Use 302 can show or specify healthy related data among both one of at least.Be appreciated that using 302 can be many dissimilar application, legacy equipment of the equipment interface that comprise software application, electronic equipment that executive software is used, independent electronic equipment, can use with executive software or the like.Application can utilize API 104 to ask and store data in healthy integrated network 304.Be appreciated that API 104 can communicate by letter synchronously or asynchronously with a plurality of similar or dissimilar application 302.API 104 also can have software layer 402 and be used for explaining and handling request.Software layer 402 can be told as shown in figure, and perhaps it can be integrated in API 104 interior, the healthy integrated networks 304 or within both.After explaining and handling the request of self-application 302, software layer 402 addressable healthy integrated networks 304 are to seek any data necessary or to store data necessary and realize request.Software layer 402 also can provide increment to data, such as compilation from the data of healthy integrated network 304, business prototype or process are applied to data/use with data with data in conjunction with application, cached data and/or with conversion or additional information.Being appreciated that to have a plurality of API 104 and software layer 402 to be connected to centralized healthy integrated network 304, and centralized healthy integrated network 304 can be individual system or be distributed on a plurality of systems, the platform etc.
Healthy integrated network 304 can comprise a plurality of data storage, comprises database of record 404, catalog data base 406 and dictionary database 408.In addition, healthy integrated network 304 can comprise that many other systems and/or layer are so that data management and transmission.In addition, database can be the redundant a plurality of versions that make each database for the application backup source of other version of other API and application and these databases be available.In addition, database can logically be cut apart between each physical storage of data to allow the visiting system that is highly visited efficiently.In addition, database can be based on layering, such as XML, and/or based on relation.Database of record 404 can be personal health related data record height profile and that comprise a plurality of users.Record can be different forms and the data (single instance that can comprise any kind of, structurized or non-structured), such as clear data, data and the type information that is associated, self-description data (by the pattern that is associated, for example XSL pattern), have the data (for example passing through style sheet) of the template that is associated, data (such as data), binary data (such as image, x radiograph etc.) or the like with conversion instruction with unit.In addition, for the purpose of following the tracks of and recovering, database of record 404 can keep writing down the audit trail of the change of being made.In addition, any data type of aforementioned information or related example can be stored in the disparate databases such as following dictionary database 408.Database of record 404 can be cut apart based on a plurality of factors, distribution and/or segmentation, and these factors comprise performance, user's logic groups (for example, the user of same company, family etc.).
Catalog data base 406 can be stored the information such as the user account data of existence that can comprise user name, Service Ticket, user record etc., catalog data base 406 also can hold about writing down the information of self, comprise the user under them, record is stored in where (in 404 configurations of distributed recording database), to authorization rule of these records or the like.For example, the user can specify the spouse to have the right to visit his/her healthy and strong related data, but haves no right to visit the medical treatment ﹠ health related data.Like this, the user can protect his/her data to allow suitable each side (such as spouse, doctor, insurance company, personal coach person etc.) or the application/device (blood pressure machine, pacemaker, healthy and strong table (fitness watch) etc.) can access associated data simultaneously.In addition, catalog data base 406 can comprise about using 302 and is configured to the data mutual with healthy integrated network 304; Can require to use 302 to healthy integrated network 304 registrations, thereby the application data in the catalog data base 406 comprises log-on message.
Dictionary database 408 can be preserved and define relevant information by healthy integrated network 304 and the employed vocabulary of the request entity such as API 104 and software layer 402.This class definition can comprise dtd with about how showing different data types or their information of conversion how.In addition, dictionary database 408 can be preserved the information of display layout and template etc.In addition, dictionary database 408 can be preserved by the use standard and wait the different look-up tables that define code.For example, dictionary database 408 can be supported International Classification of Diseases the 9th revised edition (ICD-9) by national health statistics center (National Centerfor Health Statistics) issue.Disease that these marking codes are different and diagnosis; Thereby the doctor can be added to one of these codes on user's chart in the healthy integrated network 304, thereby dictionary database 408 can allow software layer 404 (or API 104) with the more significant things of the paired user of this code translation, such as the medical science title and/or about diagnosis different, other or additional information.Dictionary database 408 also can be used for retrieving other metadata such as the code (such as the ICD-9 code) of plural number and shorthand.It also can preserve the information of the conversion between the different metric element of permission, arrives kilogram etc. to rice, Fahrenheit temperature to Celsius temperature, pound such as foot.
In one embodiment, for example, can be that the application 302 of using more than can be made to API 104 and calls with request, storage or revise data.API 104 utilizes software layer 402 to handle by calling that application 302 is made.Software layer 402 subsequently can be to its internally cached or healthy integrated network 304 inquiry desired datas; As additional or replacement, software layer 402 is the one or more inquiry desired datas in database 404,406 and 408 directly.Software layer 402 serially or asynchronously data query until obtaining all data from healthy integrated network 304.Software layer 402 can come the each several part of manipulation data to use 302 required results with formulism by using its acquired other data subsequently, and via API 104 this result is returned to application 302.For example, using 302 can be by calling API 104 request users' blood pressure readings, and then API 104 can communicate by letter with the required reading of formulism with software layer 402.Software layer 402 can directly or by healthy integrated network 304 be inquired about to obtain the position of blood pressure readings to catalog data base 406, to dictionary database 408 inquiry obtaining pattern, pattern and the universal class information of blood pressure type, and to database of record 404 inquiries to obtain actual read number.By the use pattern, software layer 402 can be interpreted as this record two integers of expression contraction and diastolic pressure (and possibility pulse frequency), and these numerals are returned to application 302 by API 104, perhaps also with pattern, unit or other template applications in these the numeral and return results, no matter this result is string, XML, HTML, image etc.In addition, software layer 402 can return to conversion, pattern and/or pattern information raw data and use 302 to allow application 302 arbitrarily to use these by API 104.Equally, software layer 402 can be stored in the result in the cache memory so that will visit.Be appreciated that described theme is not limited to foregoing example/embodiment, on the contrary, this is among the many possible embodiment with the API 104 of healthy integrated network 304 interfaces one.
Turn to Fig. 5 now, show system 500 according to an embodiment of theme disclosed herein.System 500 comprises and making retrieving, store, revise from the data of healthy integrated network 304 or the otherwise application 302 of the request one of at least in the visit.This request can send to API 104 by using the Internet 502 with the http protocol of XML form specified request.API comprises that XML interpreter 504 is to derive required parameter from use 302 requests that sent.As mentioned above, requests for data can be submitted to API 104 by the XML form, and XML interpreter 504 can require this XML to meet the XML pattern so that be considered to effective request.For example, but request appointed information, such as the signature of mandate/authentication that is used to use or security token type purpose, parameter list (it can comprise method name), individual ID (if the searched user of requesting party and information is different, for example, doctor's patient access record), Record ID (for example, being handled), user's authentication token, language explanation, country's explanation, message establishing time and time expiration and/or the required any parameter of method if write down.The sample XML request that is sent to API according to an embodiment of described theme can be as follows.
<request>
<sig?digestMethod="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>
<type-id>3d34d87e-7fc1-4153-800f-f56592c
b0d17</type-id>
</filter>
<format>
<section>core</section>
<section>xml</section>
</format>
</group>
</info>
</params>
</request>
In this example, the sig label comprises the information about the data encryption of the private key of using certificate with respect to request, and the params joint illustrates the details of request.Especially, method label designation method title and each clauses and subclauses are enumerated as above.Particularly, the info joint comprises the required parameter of just invoked method.In this case, GetThings need identify the information that just is being retrieved type (weight, blood pressure, drug therapy etc.) if type-id and more than one joint arranged then specify the section parameter that should return which joint.Being appreciated that to provide other info element to be requested to guarantee suitable data; Thereby the XML API Calls is extendible to hold the additional information and the type that can reside in the healthy integrated network.Be appreciated that disclosed theme is not limited to the XML in the HTTP request, on the contrary, this only is to use one of many methods of communicating by letter with healthy integrated network by API.
Also can be the XML form and send it back from API104 by HTTP via the Internet 502 and to use 302 the record data request responding.These responses can comprise status code (numeral with describe), with any result data (being called as " things (thing) " and following will further describing in this example) of unit, pattern, pattern etc.For example, can be as follows according to theme as herein described from the response of API Calls.
<response>
<status>
<code>0</code>
<description>OK</description>
<details/>
<exception/>
</status>
<ad/>
<wc:info?xmlns:wc="methods.response.GetThings">
<group>
<thing>
<thing-id>1</thing-id><type-id
name="Weight">3d34d87e-7fc1-4153-800f-f56592cb0d
17</type-id>
<eff-date>2006-07-11T20:51:25Z</eff-date>
<system-sets>16</system-sets>
<data-xml>
<weight>
<value?unit="lbs">204.8</value>
</weight>
</data-xml>
</thing>
</group>
</wc:info>
</response>
Be appreciated that theme as herein described is not limited to above request and response example, on the contrary, these only are the examples by the XML of HTTP request agreement.As mentioned above, use 302 with many modes of having communicated by letter such as API 104, such as with SDK (Software Development Kit) (SDK) object model of the displaying of language (such as .NET, the Java etc.) compatibility of many supports, as follows, and SDK object model and XML.
Turn to Fig. 6 now, show a embodiment according to theme as herein described and be used to visit system 600 from the data of healthy integrated network.The application of addressable healthy integrated network 304---use 302 and have SDK (Software Development Kit) (SDK) 602.SDK 602 make application to make to call ask, store, revise or otherwise visit be stored in data in the healthy integrated network 304.API 104 is provided so that with the communicating by letter of healthy integrated network 304.
Application 302 can utilize 602 couples of API 104 of SDK to make and call.SDK 602 is implemented as at least a portion that the function that is comprised by API 104 is provided.For example, application only needs to communicate by letter with retrieval with SDK 602, store and revise the data in the healthy integrated network 304.But use 302 initialization SDK 602, just can utilize SDK 602 this moment.Usually, in case initialization, using 302 can be by making function call such as following dot notation form expressed in pseudo-code to SDK602.
public?void?DisplayWeightToConsole(string?serviceUrl,string?authUrl)
{
WService?service=
new?WService(
appId,
serviceUrl,
authUrl,
"test",
"test");
PersonInfo?personInfo=service.GetPersonInfo();
// notice this supposes this people for what a record just is authorized to
RecordInfo?record=personInfo.AuthorizedRecords[0];
ReadOnlyCollection<ThingInfo>weightMeasurements=
record.GetThingsByType(
new?Guid("3d34d87e-7fc1-4153-800f-f56592cb0d17"),
ThingDataSections.Core|ThingDataSections.Xml);
// this exports the XML data of each measured body weight
Foreach (the ThingInfo weight among the weightMeasurements)
{
Console.WriteLine(weight.XmlData.OuterXml);
}
}
catch(Exception?e)
{
Console.Error.WriteLine(e.Message);
}
}
Be appreciated that above-mentioned pseudo-code only is to utilize SDK to use the example of the embodiment of this theme, and this theme is not limited to this.Make when calling when using 302 couples of SDK 602, such as record.GetThingsByType..., SDK 602 is implemented as API 104 is made subsequent calls to retrieve, to store or to revise data (if healthy integrated network assembly is by remote storage) via the Internet 502.SDK602 make this alternately to use 302 look like seamless.After API 104 makes suitable request, API 104 and/or possible software layer are asked related datas from healthy integrated network 304.This request can comprise aforesaid differently one or more or one or more requests of the database of storage partly.In case the relevant information of collecting, API 104 and/or possible software layer just can be used conversion, pattern and/or pattern to these data before submitting back data to SDK 602 by the Internet 502.
For Fig. 5 and Fig. 6, be appreciated that healthy integrated network 304 of visit and/or API 104 are not limited to Internet traffic, on the contrary, be positioned at each assembly under the situation of same Local Area Network, can utilize LAN communication and WAN, WLAN etc.Any pattern that transmits data between two systems all can be used.In addition, also can use data communication/explanation by the Internet or any kind of otherwise.In addition, API 104 may return at least one status code (shown in above sample XML) from using calling of 302 zuochu; This code can be similar with following status code tabulation.
Code Describe Reason
0 OK Success
1 FAILED General failure, agnogenio
2 BAD_HTTP The http protocol problem
3 INVALID_XML Request XML can not be resolved or inconsistent.
4 BAD_SIG Signature Confirmation failure to request.
5 BAD_METHOD The method of being asked does not exist.
6 INVALID_APP Specified application does not exist, inertia, and it is invalid perhaps calling the IP address.
7 TOKEN_EXPIRED Authentication token expires.
8 INVALID_TOKEN Authentication token is incomplete or other mistake occurs.
9 INVALID_PERSON This people does not exist or inertia.
10 INVALID_RECORD Have specified ID's
Record does not exist.
11 ACCESS_DENIED This people or application do not have enough privileges to carry out this operation.
12 NYI Also be not implemented.
13 INVALID_THING Things with specified ID does not exist.
14 CANT_CONVERT_UNITS Can not be converted into the flat type of the existing things of the type for the specified unit of the value of things.
15 INVALID_FILTER For the filtrator of GetThings appointment is lost or invalid.
16 INVALID_FORMAT For the form of GetThings appointment is lost or invalid.
17 APPACCEPT_MISSING The application requirements user accepts to use agreement.
18 INVALID_APPAUTH This people of unauthorized uses application.
19 INVALID_THING_TYPE The things type of appointment does not exist.
20 THING_TYPE_IMMUTABLE Things is because be unmodifiable and can not be updated.
21 THING_TYPE_UNCREATABLE Such things only can be by system creation.
22 DUPLICATE_CREDENTIAL_FOUND The login name of appointment exists.
23 INVALID_RECORD_NAME Invalid record name is designated.
24 DRUG_NOT_FOUND Can not find the medicine of appointment.
25 INVALID_PERSON_STATE Invalid ownness is designated.Effectively the ownness comprises: activity, hang-up and deletion.
26 INVALID_CODESET Can not find the code set of appointment.
27 INVALID_GROUP The group of appointment does not exist, and is invalid, or inactive.
28 INVALID_VALIDATION_TOKEN The Email of appointment confirms that token is invalid.
29 INVALID_ACCOUNT_NAME The personal account name can not be zero or empty.
30 INVALID_CONTACT_EMAIL Email name can not be zero or empty.
31 INVALID_LOGIN_NAME Login name can not be zero or empty.
32 INVALID_PASSWORD Password can not be zero or empty.
33 INVALID_OPENQUERY Can not find the open inquiry that utilizes assigned I D.
34 INVALID_TRANSFORM Can not load conversion.
35 INVALID_RELATIONSHIP_TYPE Relationship type is invalid.
36 INVALID_CREDENTIAL_TYPE Type of credentials is invalid.
37 INVALID_REQUEST_PARAMETERS Required parameter is lost or has been found forbidden parameter.
38 APP_AUTH_NOT_REQUIRED Use not need to use and authorize.
39 VOCABULARY_NOT_FOUND Can not find the vocabulary item of being asked.
40 DUPLICATE_AUTHORIZED_RECORD_FOUND This is the short-term status code, and it will be removed when having realized the merging of mandate at the record mandate of carrying out under the order of application.Indicate this people to have record and authorize, although permission, relationship type, whether be main etc. can be different.
With reference to figure 7, API 700 is shown as including each routine group, and these routine groups provide the different modes of visit different pieces of information.Record data routine 702 comprises permission application 302 (Fig. 4) request, storage, revises or otherwise visit a plurality of routines that are stored in the record data in the healthy integrated network 304 (Fig. 4).These data can comprise data, the data itself among three databases 404,406 and 408 (Fig. 4) and describe the data of these data, relevant binary data (such as image, x radiograph etc.) or the like.Be associated with record and in the example of this paper and routine name, will be called as " things " by the data of type definition.Record data routine 702 can comprise the routine of the health records data query from be stored in healthy integrated network.Things can adopt structural data (XML), binary data forms such as (images); They are represented the single instance data in the healthy integrated system and usually are associated with type and metadata (it can have the source point etc. of value type, linear module, note, data).For example, can provide the GetThings routine with retrieval as in this information shown in the above example.This routine that can use the XML on the HTTP for example to call can require the XML input to specify the routine that will call and comprise that " info " joint is data query given filter device; Filtrator can comprise any one in following.
Filtrator Definition
Id Can specify any amount of things ID.This clause and all other clauses carry out or operate and appointment outside filter (filtrator) element.
Type-id The identifier of single things.
Eff-date-min The things that upgrade than the appointed day date of expiration.Date is the UTC time.
Eff-date-max The things that date of expiration is older than the appointed day.Date is the UTC time.
Created-app-id Create the ID of the application of things.This is Guid.
Created-person-id Create the people's of things ID.This is Guid.
Updated-app-id The last more ID of the application of new things.This is Guid.
Updated-person-id The last more people's of new things ID.This is Guid.
Created-date-min The things that date created upgraded than the appointed day.Date is the UTC time.
Created-date-max The things that date created is older than the appointed day.Date is the UTC time.
Updated-date-min The things that last update date upgraded than the appointed day.Date is the UTC time.
Updated-date-max Last update date the things older than the appointed day.Date is the UTC time.
Xpath If the things type is represented as structural data (XML), then can specify the XPATH inquiry at this data run.This inquiry only can be checked existence.If this inquiry produces true result at things, then it is returned.This clause not with scale-of-two things type matching.
Set-id Obtain all things in the user definition collection.
In addition, " info " joint can be specified any conversion, pattern or the pattern of one or more format sections further to determine to return what data and will use at the things with given filter device coupling.When request is sent to API and software layer when handling this request and collecting data, request entity is beamed back in response.As implied above, this response can be the XML response of the grouping of things result with coupling, status code etc.This response can meet the XML pattern of definable response layout and send with this XML pattern, particularly, the response of GetThings routine can meet can have a plurality of joints be the defined pattern of things.API is collected in the joint of appointment in the request; These joints comprise that the core (core) of the date of expiration of definable record and member system collection (things can belong to senior group) saves; The establishment of definable record and lastest imformation are for audit (audit) joint of inquiry in the future; The XML joint (if the type definition pattern, then data must meet this pattern) that comprises the XML of the data of representing things; The BLOB joint that is used for binary data (such as image/x radiograph); The annotation of the one or more notes of definable (note) joint, wherein this note also can comprise the note that is used to audit; Define sets (set) joint of the affiliated one or more user definition collection of these data; And general introduction is to permission (permission) joint of the different authorizations of things.Similarly, record data routine 702 can provide the PutThings routine to be used to create new things and/or upgrade existing things.But request can be the things that XML form as implied above and requirement will be deposited (put) meets above things pattern.But the ID of this routine return results code and the things creating/upgrade.In addition, under request can comprise situation with the similar element of GetThings request, can provide the RemoveThings routine to delete things; Yet, specify things deleted and be not returned.In addition, can provide the GetAuthorizedRecords routine to be used for the query requests entity it is had the known Record ID of permission (for example, request entity is not the affiliated users of these data).This routine can according to and/or utilize the pattern return recording.
API 700 also can provide a group account routine 704 to come user and group in the managing health integrated network.For example, can provide the permission request to use the QueryPersons routine of one group of account information of simplifying collecting the user of mating with the filter criteria of appointment.For this reason, can require request to meet the request pattern.Available filter can comprise name, ID, e-mail address of the people who is looked for etc., and can check whether these elements comprise any characteristic specified, thereby returns positive result; Can require the result to meet pattern (XML or other).In addition, can provide the GetPersonInfo routine to ask account information, comprise the affirmation state of name, e-mail address, e-mail address, the record that use to be provided with, to authorize etc. about the request user.In addition, can provide similar group of routine to belong to logical groups to allow the user.Each group can be managed with like the user class of system.Thereby, for example can provide routine such as the GetGroups routine to retrieve information about the group that comprises member id.Can require request and respond both to observe the XML pattern to explain this data.
In addition, API 700 can provide application routine 706 to be used to allow to register and locate the application of using API 700 and healthy integrated network.For example, can provide the GetApplication routine to collect about information to one or more application of healthy integrated network registration; Designated parameters can comprise the title and/or the ID of application, if ID is known.This routine can be returned one or more application of locating (title and ID), and whether this application need to authorize and/or accept, or the like.In addition, also can provide the AddApplication routine to come to healthy integrated network registered application.Request can be used as the XML with parameter and sends, and whether these parameters are provided with (XML form or other), need to authorize and use this application and whether need to accept to use this application corresponding to the ID that uses (the use certificate is created), the title of using, the common encryption key that is used to verify all requests, the mandate of record level, the mandate of routine level, application.Acceptance can comprise such as the step of accepting final user's licensing agreement (EULA).For example, routine can be returned the ID and the status code of application.
In addition, for example, API 700 can comprise the security routine 708 of the safety of given things of management and/or record.These routines can comprise the permission that with authorized users be associated of acquisition at given record, and this routine can require user's ID and over against the ID of its recording of information that asks for permission.Then, this routine can return one group of rule being associated with Record ID about user or group, the permission that may exist at record, the things of the application permission in the record and any things that is excluded that can not use permission.Similarly, the user that can provide the GetAuthorizations routine to obtain to visit specific matters or the ID of group.For this reason, things ID is provided with the permission explanation as input, and routine is returned for the things of being asked and had the user of access level and/or the tabulation of group.In addition, can provide AddPermissions routine and RemovePermissions routine with at new permission of given recording setting and deletion permission.Equally, security routine 708 can comprise that the GetEffectivePermissions routine collects the License Info of user record of a part of group that has the permission of variation about being equally.This routine can attempt providing best License Info to the user, and no matter whether it is because the permission that group membership or user class are authorized.Also can provide more routine, for example these routines can be the routines that only can use in healthy integrated network, for example (by participating in the system of this Network Management and/or other type).In addition, for example, can be provided for representing the service that other is used and company's subscription is provided by healthy integrated network for the user provides the routine of subscribing to function.These also can comprise the routine that is used to provide system's usefulness excitation, for example, and from different application supplier's sales promotion, the reward voucher of service usefulness etc.
As mentioned above, although above-mentioned example embodiment is quoted in the XML context, but can make this type of routine otherwise is provided, for example SDK for example can use that .NET shows and can explain by the XML on dot notation/parameter specified format rather than the HTTP and call.These parameters can be the parameters of XML or other type, but identical during the XML on the use HTTP in transmission and the real data that is received and the example formerly.
API 700 also can comprise only can be by one group of supervisory routine 710 of those people's visits that are authorized to the maintaining healthy integrated network such as the Customer Service Representative.These routines can allow superuser-level authorize a change almost anything and/or record in the healthy integrated network.Can with the independent system structure on or within those routines realize that similarly these routines avoid potential assault etc. to protect it.
API 700 also can show one group of intelligence routine 712.Intelligence routine 712 can be created and be adjusted to concrete application or encapsulate to help the use of API in third party's application and development.Example routine can help the developer to create the XML pattern of the data of applications attempt use.This can make the developer can add new possible data value, type and container apace.This also can carry out and routine can make this information be associated with application by batch processing mode.These routines also can be used as the external piece of API 700 and are created so that to enriching the easy access of data by the third party.For example, company can show that the public routine of visiting its proprietary data is additionally to create the exploitation that monetary incentive promotes to show valuable data by use its trading company in the routine call title.It is long-range to be appreciated that API 700 and some routines can be positioned at, other the vicinity that then is positioned at access application, on or within.In fact, some routines can be downloaded to equipment more expanded functions and Geng Yi use, routine more efficiently to allow.These can enter encapsulation or can download individually, perhaps even as automatic upgrade, and can be the parts of SDK (Software Development Kit).
Another example of intelligence routine 712 can be the warning system function, some incident in the system for tracking and/or surpass some threshold values wherein, and API can notify this information to the suitable litigant of each side.For example, if the blood sugar level monitor receives a plurality of low scales or a fatefulue low scale, then this reading can trigger intelligent routine 712 and notify the programmed emergency of enumerating in EMS and/or the healthy integrated network after being sent to API700.People can imagine the equipment of only creating based on this function; The robotization pulse wave detector that may a lot of people can always wear will detect low or pulseless (or pulse) rapidly and notify authoritative institution and/or programmed emergency.In addition, equipment can be based on GPS (GPS) or be associated with it, and API 700 can have the gps coordinate of this equipment of acquisition and this coordinate is submitted to the ability of the system of being warned/side.Thereby another intelligent routine 712 can be decrypted into gps coordinate the address and direction from current location reporting system or the user is provided.Be appreciated that API 700 can provide this type of service except that the data function, but be not limited to this.
In addition, for example, can provide Communications routines 714 so that other entity in user, equipment, application and healthy integrated network automatically transmits information.This communication can be network internal and/or outside the generation.Intercommunication can comprise incident, warning, renewal etc.; For example, the radiologist can guide to the x radiograph user's initial health doctor's application.Other example comprises healthy warning, reminds such as variation, the meet of case history announcement, prescription or its relevant information etc.For example, PERCOM peripheral communication can comprise Email (e-mail), fax, instant message etc.; In preceding example, the x radiograph can be used as Email and is passed to initial health doctor place (for example, via annex).In addition, can provide Synchronization routines 716 so that according to the communication between the distributed healthy integrated network of described theme.Particularly, can exist more than one healthy integrated network and user can require information to be stored in the different healthy integrated networks; Thereby Synchronization routines 716 can be convenient to communication between the system to realize this purpose.Be appreciated that the healthy integrated network with a plurality of long range positionings provides efficient access all over the world, and Synchronization routines 716 can provide safety and/the privacy layer.In addition, Synchronization routines 716 can provide the interior redundancy of a plurality of healthy integrated networks so that bigger data accessibility.
With respect to mutual aforementioned system, the architecture etc. described between some assemblies.Should be appreciated that such system and assembly can comprise those assemblies or the sub-component of appointment herein, some in specified assembly or the sub-component and/or other assembly.Sub-component also may be implemented as and is communicatively coupled to other assembly but not is included in assembly in the parent component.And one or more assemblies and/or sub-component can be combined into the single component that aggregation capability is provided.Can be according to pushing away and/or draw model is realized communication between each system, each assembly and/or each sub-component.Assembly also can with for simple and clear the consideration at this one or more other component interaction not specifically described but known to those skilled in the art.
And, as will be appreciated, the various piece of disclosed system and method can comprise or comprise artificial intelligence, machine learning or based on assembly, sub-component, process, device, method or the mechanism (for example, support vector machine, neural network, expert system, Bayes's trust network, fuzzy logic, data fusion engines, sorter ...) of knowledge or rule.Such assembly especially can be for example by moving some mechanism or the process of robotization by its execution based on the deduction of contextual information, make each several part more self-adaptation, the efficient and intelligence of system and method thus.And unrestricted, this mechanism can be used for generating Materialized View etc. as example.
Consider example system described above, can understand the method that realizes according to disclosed theme better with reference to the process flow diagram of figure 8-9.Although for the simple purpose of explanation; each method is shown and is described as a series of frames; but should be appreciated that and understand that theme required for protection is not subjected to the restriction of frame order, because some frames can take place simultaneously with different order and/or with other frame of describing at this and describe.And, be not the frame shown in all be to realize that method described below is necessary.
Fig. 8 shows application via the method for API from healthy integrated network request msg.This request can comprise any data or other data about the data of being asked at any data that reside in the healthy integrated network.This asks available a plurality of architecture to be specified, and comprises the mixing of XML, SDK on the HTTP and/or both or these architectures, and any request type of architecture.Request can be a request type and/or based on subscribing to, wherein in request and upgrade guided to data channel automatically and be requested to use obtain after this data channel stay open.Back one form can be used for alert/alarm, upgrades and such as above-mentioned automatically.For example, extremely low insulin level reading can cause the insulin monitor that this information is sent to healthy integrated network (this is a request); Healthy integrated network can send to warning the application of doctor's office and/or the application (such as the application that can send record and/or text message) that the user hangs down the programmed emergency of insulin level subsequently on the passage of opening, thereby reduces the needs (this is based on the example of the system of subscription) of this information of request.Yet,, be appreciated that also and can use based on the method for subscribing to according to described theme although this ad hoc approach 800 shows request.
At Reference numeral 802, the API that uses to healthy integrated network as described herein starts requests for data.Be appreciated that at first to require to use and register to healthy integrated network that this can be the request of another form via above-mentioned API.In addition, request can be storage data and a data query in healthy integrated network.Equally, to use can be to have and many equipment of API communication capacity, application etc. in request.For example, application can be can use with the third party who is suitable for operating to store and to retrieve the data of being collected by the individual healthy and strong equipment in outside with the outside individual healthy and strong equipment (such as the heart rate monitor table) of healthy integrated network api interface traditionally.In addition, individual healthy and strong equipment can be equipped with the technology of communicating by letter with healthy integrated network by API self.In addition, if request at data, but the filtrator and same appointment of then using the given query type of functionality want data retrieved to save.For example, if request X-ray photograph information, then using only to need (and only can be authorized to really receive) management information; Thereby this request can specify this point, transmits the needs of any X-ray photograph image (data related with other are compared may be bigger) thereby reduce after the response that receives from healthy integrated network.
After making request, 804, applications wait receives the response from API.This request can be synchronous with respect to using, and this means that being applied in the request of wait in fact delays other task when returning.Yet, use and also can in asynchronous context, make request, make and can continue when being applied in wait-for-response to handle.Usually, can utilize call back function, a plurality of dispersion thread to wait and realize this function.In addition, application can wait for that current calling make other to API when returning and call.
At Reference numeral 806, use and receive the API response.Data can arrive by the XML form that for example has the designated state sign indicating number.XML also can comprise the result data from requests for data.Data can be the plaintext forms with conversion, pattern and/or pattern information, perhaps as having used above these string.Application knows how to present and/or otherwise handle the information received, and therefore the user who uses can optimally check this information and can do like this according to the XML pattern at Reference numeral 808.
Fig. 9 shows is convenient to the method 900 to healthy integrated network request msg via API.Data can be the above-mentioned any data that reside in the healthy integrated network, and these data can be distributed on network and/or the database.Request can be at independent data, data and type information, data and conversion, pattern and/or pattern information etc.In addition, as mentioned above, request can be made by utilizing XML, SDK on the HTTP and/or these mixing and any request platform.
At Reference numeral 902, receive request for data from application.Request can be made up by API, software layer and/or its and be received.As mentioned above, request can be at any usable record in the healthy integrated network (and at unavailable record, still may make a mistake) thereupon.Be appreciated that API and/or software layer can be to request execution additional treatments, such as high-speed cache, audit etc.In addition, request entity can continue to carry out some authenticated/authorized routines before healthy integrated network request msg.As an alternative or additional, authentication and/or authorize and to carry out by healthy integrated network.
At Reference numeral 904, from healthy integrated network retrieval relevant information.This information can be the data of being asked and/or in order to help data grant, formulism, conversion, patternization of being asked or the additional data of carrying out other action.These data can obtain from the database of one or more Local or Remote storages.In addition, database can be cooperated each other so that the seamless access to data to be provided.For example, can provide to have and reside at designator where and can retrieve the master data base of this information about looking for information.Thereby, in one embodiment, only need, and master data base knows where locate this information and it is returned the requestor to master data base or this information of its interface requests.Perhaps, API and/or software layer are known maybe and can be obtained this canned data.
If the data of being asked have been brought suitable information, then use conversion pattern and/or pattern in 906 pairs of data of Reference numeral.For example, conversion can comprise from metric system to U.S. unit, arrives pound etc. such as kilogram.For example, conversion also can comprise the blood pressure data structure with string or contraction of two integer transform one-tenth and diastolic pressure.Similarly, pattern can comprise increases reference symbol or character, for example is rendered as 6 ' 1 such as the height that will be stored as 73 (integers of expression inch) " form.In addition, can provide data to describe the more data layout of complex data structures to pattern.API and/or software layer can use this pattern to extract some related data or it is used to create the expression to data.For example, as in last method, if use the part only need data, such as about the management information of X-ray photograph and non-image self, then can use this pattern only to beam back the management data of being asked.
908, data are returned to request and use then.The data of being returned can be independent data, have used the data of aforementioned conversion, pattern and/or pattern, or both.Thereby, application can by utilize in conversion, pattern and/or the pattern each whole, the combination or a part make data satisfy the needs of request entity.Outside conversion, pattern and/or the pattern information that is appreciated that data also can be asked respectively and/or be stored in the local cache of application and be used for the back.
Mean the entity relevant with computing machine in this used term " assembly ", " system " or the like, it can be combination, software or the executory software of hardware, hardware and software.For example, assembly can be but be not limited to be the thread of the process of moving, processor, object, example, executable program, execution, program and/or computing machine on processor.As an illustration, operation application program and computing machine itself on computers can be assembly.One or more assemblies can reside in the thread of process and/or execution, and assembly can and/or be distributed between two or more computing machines on a computing machine.
Use word " exemplary " to mean at this as example, example or explanation.Be described to aspect " exemplary " any or design might not be interpreted as comparing others or design more preferably or favourable at this.In addition, each example just provide for the purpose that is aware and understand and and be not meant to limit the present invention in any manner or its relevant portion.Be appreciated that originally can present a plurality of other or replace example, but omitted for simple and clear purpose.
In addition, all or part of the present invention can be used production control computer to realize the standard program of the software of disclosed invention, firmware, hardware or its any combination and/or engineering design technology and be implemented as method, device or goods.Term as used herein " goods " is intended to contain can be from the computer program of any computer readable device or medium access.For example, computer-readable medium (for example can include but not limited to magnetic storage apparatus, hard disk, floppy disk, tape ...), CD (for example, compact-disc (CD), digital versatile disc (DVD) ...), smart card and flash memory device (for example, card, rod, key actuated device ...).Should be understood that in addition and can adopt carrier wave to carry computer-readable electronic that for example those are used to send and receive Email or are used to visit data as networks such as the Internet or Local Area Network.Certainly, it will be appreciated by those skilled in the art that under the prerequisite of scope that does not deviate from theme required for protection or spirit and can carry out many modifications this configuration.
For the each side of giving disclosed theme provides context, Figure 10 and 11 and following discussion aim to provide concise and to the point, the description of summarizing of the suitable environment of the each side that can realize disclosed theme therein.Although described this theme in the general context of the computer executable instructions of above program on operating in one or more computing machine, person of skill in the art will appreciate that the present invention also can realize in conjunction with other program module.Generally, program module comprises the routine carrying out particular task and/or realize particular abstract, program, assembly, data structure etc.In addition, it will be appreciated by those skilled in the art that, system/method can be realized with other computer system configurations, comprise uniprocessor, multiprocessor or polycaryon processor computer system, small-sized computing equipment, mainframe computer and personal computer, hand-held computing equipment (for example, PDA(Personal Digital Assistant), phone, wrist-watch ...), based on microprocessor or programmable consumer or industrial electrical equipment etc.Shown in each side also therein task by realizing in the distributed computing environment of carrying out by the teleprocessing equipment of communication network link.Yet some aspects of theme required for protection if not whole aspects, can be implemented on stand-alone computer.In distributed computing environment, program module can be arranged in local and remote memory storage device.
With reference to Figure 10, be used to realize that the exemplary environments 1010 of each side disclosed herein comprises computing machine 1012 (for example, desktop computer, laptop computer, server, hand-held, programmable-consumer or industrial electronics ...).Computing machine 1012 comprises processor unit 1014, system storage 1016 and system bus 1018.System bus 1018 will include but not limited to that the system component of system storage 1016 is coupled to processing unit 1014.Processing unit 1014 can be any one in the various available processors.Be appreciated that dual micro processor, multinuclear and other multiprocessor architecture also can be used as processing unit 1014.
System storage 1016 comprises volatibility and nonvolatile memory.Basic input/output (BIOS) comprises such as in the basic routine that transmits information between the starting period between the element of computing machine 1012, and it is stored in the nonvolatile memory.And unrestricted, nonvolatile memory can comprise ROM (read-only memory) (ROM) as example.Volatile memory comprises random-access memory (ram), and it is as the external cache that helps to handle.
Removable/not removable, volatile/nonvolatile computer storage media that computing machine 1012 also comprises.For example, Figure 10 shows high capacity storage 1024.High capacity storage 1024 includes but not limited to the equipment such as disk or CD drive, floppy disk, flash memory or memory stick.In addition, high capacity storage 1024 storage mediums that can comprise independently or combine with other storage medium.
Figure 10 provides the software application 1028 as the intermediary between the basic computer resources of user and/or other computing machine and description in suitable operating environment 1010.This software application 1028 comprises system and application software one or both.System software can comprise the operating system that is stored in the high capacity storage 1024, and this operating system is used to control the also resource of Distribution Calculation machine system 1012.Application software utilizes the management of system software to resource by program module and the data arbitrary or on both that are stored in system storage 1016 and high capacity storage 1024.
Computing machine 1012 also comprises the mutual one or more interface modules 1026 that are coupled to bus 1018 and help and computing machine 1012 communicatedly.As example, interface module 1026 can be port (for example, serial, parallel, PCMCIA, USB, live wire ...) or interface card (for example, sound, video, network ...) or the like.Interface module 1026 can receive input and output (wired or wirelessly) is provided.For example, input can receive from following equipment, and these equipment include but not limited to, such as pointing devices such as mouse, tracking ball, stylus, touch pads, keyboard, microphone, operating rod, game paddle, satellite dish, scanner, camera, other computing machine etc.Can also provide output via interface module 1026 to output device by computing machine 1012.Output device can comprise display (for example, CRT, LCD, plasma ...), loudspeaker, printer and other computing machine or the like.
Figure 11 is the schematic block diagram of the example calculations environment 1100 that the present invention can be mutual with it.System 1100 comprises one or more client computer 1110.Client computer 1110 can be hardware and/or software (for example, thread, process, computing equipment).System 1100 also comprises one or more servers 1130.Therefore, system 1100 can be corresponding to two-tier client server or multilayered model (for example, client computer, middle tier server, data server) and other model.Server 1130 also can be hardware and/or software (for example, thread, process, computing equipment).Server 1130 can hold each thread with by for example utilizing each side of the present invention to carry out conversion.A kind of possible communication between client computer 1110 and the server 1130 can be the form of the packet transmitted between two or more computer processes.
System 1100 comprises can be used for making the easier communications framework 1150 of communication between client computer 1110 and the server 1130.At this, client computer 1110 can provide the interface and the function of storage system randomly corresponding to program application component and server 1130, as mentioned above.Client computer 1110 can be connected to the one or more client data storages 1160 that can be used to store to the information of client computer 1110 this locality in operation.Similarly, server 1130 can be connected to one or more server data stores 1130 that can be used for storing to the information of server 1140 this locality in operation.
As example, the program application component can be via client computer 1110 from one or more servers 1130 (for example, and be stored thereon or from its addressable API) request personal health information.For example, server 1130 can obtain desired data and use conversion, pattern and/or pattern from data storage 1140 or a plurality of data storage.Subsequently, other program application component can ask to visit the identical or different data from server 1130.
The above content of having described comprises the example of the each side of theme required for protection.Certainly; the combination of describing each assembly that can expect or method for the purpose of describing theme required for protection is impossible; but the one of ordinary skilled in the art should be realized that many further combinations and permutations of theme required for protection all are possible.Thereby disclosed theme is intended to contain all such changes, the modifications and variations in the spirit and scope that fall into appended claims.And, with regard to describe in detail or claims in use that term " comprises ", with regard to the modification of " having " or " containing " or its form, such term is intended to " comprise " that to be similar to term the mode of being explained is an inclusive as the transition speech in claims the time.

Claims (20)

1. application programming interfaces (API) (200) comprising:
Receiver assembly (202), it receives request for healthy related data from a plurality of distinct devices or application (302);
Interpreter component (204), its processes said request, and collect from the subclass of the healthy related data of being asked of healthy integrated network (304), wherein said healthy integrated network comprises a plurality of different data storage (404,406,408) of storing healthy related data respectively; And
Conversion assembly (208), it utilizes pattern to select the part of collected healthy related data to return to described equipment or application (302).
2. interface as claimed in claim 2 is characterized in that, at least a portion of described pattern is specified in described request for healthy related data.
3. interface as claimed in claim 1, it is characterized in that, described conversion assembly is retrieved style information at the data type of the selected portion of healthy related data from described healthy integrated network, and described style information is applied to the selected portion of healthy related data after returning to described equipment or using.
4. interface as claimed in claim 1 is characterized in that, comprises also whether the application of determining request msg has the authorized component of enough vouchers for the type of the data access of appointment in described request.
5. interface as claimed in claim 4 is characterized in that, whether the user of the described application of the definite operation of described authorized component has enough vouchers for the type of the data access of appointment in described request.
6. interface as claimed in claim 1 is characterized in that, the incident that also is included in take place or surpass in the threshold value one of at least after data are sent to the renewal assembly of the application of connection.
7. interface as claimed in claim 1 is characterized in that, described request receives with extend markup language (XML) form by the HTTP connection.
8. interface as claimed in claim 7 is characterized in that, the described request that receives with the XML form is specified at least one routine call and is used at least one parameter of described routine call.
9. interface as claimed in claim 1 is characterized in that, at least one in described a plurality of data storage is height profile, and at least one positional information with record in described a plurality of data storage is kept in the data storage of described height profile.
10. interface as claimed in claim 1 is characterized in that, also comprises determining routine set commonly used and showing that described routine set commonly used is for using the routine package assembling that uses.
11. one kind with the mutual method of personal health related data, comprising:
Receive the corresponding request of a part of writing down from first application or equipment with healthy related data;
Based on described request to healthy integrated network request msg; And
Pattern is applied to described data comprise the selected portion of described data with preparation result.
12. method as claimed in claim 11 is characterized in that, comprises that also described result is sent to described first to be used or equipment.
13. method as claimed in claim 11 is characterized in that, selected portion is specified in the request of the described part that healthy related data is write down.
14. method as claimed in claim 11, it is characterized in that, also comprise from second equipment or use to receive difference request, described second equipment or be applied in described first equipment or use on the different architectures and operate the part of described healthy related data record.
15. method as claimed in claim 11 is characterized in that, described request is that the part with described healthy related data is stored in the described healthy integrated network.
16. method as claimed in claim 15 is characterized in that, also comprises at least in part based on described request to second equipment or use the transmission incident.
17. method as claimed in claim 11 is characterized in that, described request is included in extend markup language (XML) document.
18. method as claimed in claim 17 is characterized in that, described XML document also comprises at least one required parameter of routine of being asked.
19. method as claimed in claim 11 is characterized in that, described first equipment or application are personal health equipment.
20. a system that is used to visit healthy related data comprises:
Be used for receiving (202) and response (210) device for the request of personal health related data from a plurality of equipment and application (302);
The device that is used for the subclass of acquisition (202) store data relevant with described request; And
Be used at least one pattern is applied to the selection of the being asked device partly of subclass (208) described part of the data of being stored of the data of storing only to return.
CNA2007800409295A 2006-11-01 2007-11-01 Health integration platform API Pending CN101536021A (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US86389706P 2006-11-01 2006-11-01
US60/863,897 2006-11-01
US11/745,902 2007-05-08

Publications (1)

Publication Number Publication Date
CN101536021A true CN101536021A (en) 2009-09-16

Family

ID=41105118

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2007800409295A Pending CN101536021A (en) 2006-11-01 2007-11-01 Health integration platform API

Country Status (1)

Country Link
CN (1) CN101536021A (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103973770A (en) * 2013-02-06 2014-08-06 株式会社理光 Information processing system
CN104737195A (en) * 2012-08-15 2015-06-24 惠普发展公司,有限责任合伙企业 Metadata tree with key rotation information
CN105630538A (en) * 2014-11-26 2016-06-01 三星电子株式会社 Electronic device for managing use of data from other electronic device and method for controlling the same
CN105659238A (en) * 2013-08-21 2016-06-08 美敦力公司 Data driven schema for patient data exchange system
CN106104414A (en) * 2013-11-13 2016-11-09 Twc专利信托公司 Storage common network
JP2017120248A (en) * 2015-12-29 2017-07-06 テスト リサーチ, インク. Optical detector
CN108231211A (en) * 2017-12-29 2018-06-29 广州英丹网络科技有限公司 A kind of active remote health consulting pair system
CN109308410A (en) * 2018-10-16 2019-02-05 翟红鹰 Obtain method, system and the computer readable storage medium of block chain data
CN110377273A (en) * 2019-07-01 2019-10-25 北京字节跳动网络技术有限公司 A kind of method, apparatus of data processing, medium and electronic equipment

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104737195A (en) * 2012-08-15 2015-06-24 惠普发展公司,有限责任合伙企业 Metadata tree with key rotation information
US11373736B2 (en) 2012-08-15 2022-06-28 Micro Focus Llc Metadata tree with key rotation information
CN103973770B (en) * 2013-02-06 2018-02-09 株式会社理光 Information processing system
CN103973770A (en) * 2013-02-06 2014-08-06 株式会社理光 Information processing system
CN105659238A (en) * 2013-08-21 2016-06-08 美敦力公司 Data driven schema for patient data exchange system
CN105659238B (en) * 2013-08-21 2020-08-18 美敦力公司 Data driven mode for patient data exchange system
CN106104414A (en) * 2013-11-13 2016-11-09 Twc专利信托公司 Storage common network
CN106104414B (en) * 2013-11-13 2019-05-21 Twc专利信托公司 Storage equipment and the method for storing and providing data
CN105630538A (en) * 2014-11-26 2016-06-01 三星电子株式会社 Electronic device for managing use of data from other electronic device and method for controlling the same
JP2017120248A (en) * 2015-12-29 2017-07-06 テスト リサーチ, インク. Optical detector
CN108231211A (en) * 2017-12-29 2018-06-29 广州英丹网络科技有限公司 A kind of active remote health consulting pair system
CN109308410A (en) * 2018-10-16 2019-02-05 翟红鹰 Obtain method, system and the computer readable storage medium of block chain data
CN110377273A (en) * 2019-07-01 2019-10-25 北京字节跳动网络技术有限公司 A kind of method, apparatus of data processing, medium and electronic equipment
CN110377273B (en) * 2019-07-01 2023-07-28 北京字节跳动网络技术有限公司 Data processing method, device, medium and electronic equipment

Similar Documents

Publication Publication Date Title
US8533746B2 (en) Health integration platform API
CN101536021A (en) Health integration platform API
US20080104104A1 (en) Health integration platform schema
US10846424B2 (en) Method for multi-tiered, rule-based data sharing and ontology mapping
US8316227B2 (en) Health integration platform protocol
US20080133269A1 (en) Apparatus and methods for collecting, sharing, managing and analyzing data
US20110022414A1 (en) Method and apparatus for personally controlled sharing of medical image and other health data
US20150127384A1 (en) Operating system
US20180294048A1 (en) Patient-centric portal
Van de Velde et al. Clinical information systems: a component-based approach
WO2005064521A2 (en) A system for managing healthcare data including genomic and other patient specific information
CN101622622A (en) Individual health record system and device
US20080103830A1 (en) Extensible and localizable health-related dictionary
Boutros-Saikali et al. An IoMT platform to simplify the development of healthcare monitoring applications
US20220245270A1 (en) Personal Health Record System and Method using Patient Right of Access
CA2419501A1 (en) Medical device systems implemented network scheme for remote patient management
Donahue et al. Veterans health information exchange: successes and challenges of nationwide interoperability
US20130145479A1 (en) Systems and Methods for Clinical Study Management
Bhartiya et al. Challenges and recommendations to healthcare data exchange in an interoperable environment
AU2020101898A4 (en) MHOC- Blockchain Technology: Medicine and Healthcare Observation Care using Blockchain Technology
CN104521209B (en) For providing the method and system of customized network
WO2011149951A2 (en) Method and system for a document-based knowledge system
Faisal et al. Blockchain Technology for Healthcare Record Management
Kamal et al. Information warehouse–a comprehensive informatics platform for business, clinical, and research applications
Dhanalakshmi et al. Big data for personalized healthcare

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150727

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20150727

Address after: Washington State

Applicant after: Micro soft technique license Co., Ltd

Address before: Washington State

Applicant before: Microsoft Corp.

C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20090916