Context-aware information retrieval (Infobutton) url-based infobutton request implementation guide




Дата канвертавання27.04.2016
Памер124.53 Kb.

powerpluswatermarkobject1




Context-aware information retrieval (Infobutton)
URL-based infobutton request implementation guide


Lead Editor

Guilherme Del Fiol, MD, PhD; Duke University
Contributors

Howard Strasberg, MD, MS; Wolters Kluwer Health

James Cimino, MD; Clinical Center, National Institutes of Health

Saverio Maviglia, MD, MSc; Partners Healthcare

Thom Kuhn; American College of Physicians

Clayton Curtis, MD; Veterans Health Administration
Project Sponsor

HL7 Clinical Decision Support Technical Committee
Co-chairs

Robert A. Jenders, MD, MS; Cedars-Sinai Medical Center/UCLA

Kensaku Kawamoto, MD, PhD; Duke University

Robert Greenes, MD; Arizona State University

Craig Parker, MD; Arizona State University
HL7 Project #130

January 2010

Table of Contents


Table of Contents 2

1 Purpose 3

2 Special notes and disclaimers 4

3 URL-based implementation 5

3.1 Conversion of XML entities into URL parameter names 5

3.2 Parameter cardinality 5

3.3 Addressing length limitations of HTTP GET 6

4 Appendix 1 – List of parameter names 8

5 Appendix 2 – List of optional abbreviations 10

6 Appendix 3 - Examples 11

6.1 Example 1 11

6.2 Example 2 12



1Purpose


Clinicians face numerous knowledge needs during the course of patient care and the majority of these needs are not met, compromising the quality of care. Online health knowledge resources that are capable of solving many of these knowledge needs are now widely available, but a series of barriers hinder a more effective and frequent use of these resources at the point of care. Infobuttons are decision support tools that integrate knowledge resources into electronic health record (EHR) systems as an attempt to lower these barriers. To facilitate the integration of knowledge resources into electronic health record (EHR) systems, the Clinical Decision Support Technical Committee developed the Context-aware information retrieval (Infobutton) standard specification.
This implementation guide provides a specification for URL-based implementations of the Context-aware information retrieval (Infobutton) standard. The intent of this specification is to support the a majority of infobutton and information resource implementations that offer URLs as the primary or exclusive communication protocol. The ultimate goal is to enable a stepwise transition from URL-based implementations to a Services-Oriented approach. This implementation guide was successfully balloted as a Draft Standard for Trial Use in January 2007. Since then, a large number of implementations became available, allowing the specification to be thoroughly validated and tested. This document contains an updated specification, which includes enhancements and corrections based on implementers’ feedback.

2Special notes and disclaimers


This recommendation is not normative. The implementation of the URL-based recommendation is optional, but nonetheless important to support backwards compatibility with most infobutton and online resources implementations and improve interoperability. Organizations that implement only the URL-based recommendation cannot claim compliance with the HL7 v3 Infobutton standard. To claim compliance with the HL7 Infobutton standard, an implementation must be compliant with the normative edition of the “Context-aware information retrieval standard (Infobutton)” HL7 v3 standard.

This document assumes knowledge of the “context-aware information retrieval (“Infobutton”) standard. For a detailed description of the standard, readers should refer to the Infobutton section in the HL7 Version 3 Standard documentation.



3URL-based implementation


The URL-based representation is derived directly from the Infobutton message model RMIM. This method allows Infobutton event notification and information resource event notification message payloads to be converted from XML to URL-based using a simple automated process. The following rules shall be used to convert an XML-based Infobutton message model message payload into a set of parameters names that can be transmitted through the HTTP protocol, using the GET or POST methods.

3.1Conversion of XML entities into URL parameter names


Rule #1: All XML attribute and element names that contain values SHALL be converted to an HTTP parameter name. The parameter SHALL be named by concatenating the element / attribute antecessor names (2 levels up) with the element / attribute name. Element / attribute names shall be separated by a dot as follows: [name of the level 2 antecessor] + ‘.’ + [name of the level 1antecessor] + ‘.’ + [name of the element or attribute]. A few of the XML element / attributes cannot be unambiguously converted to a parameter name using the proposed rule. The name translations listed in Table 1 SHALL be used to address these cases. For convenience, Appendix 1 contains an exausive list of XML entities and their respective parameter name translations.

    Table 1 – Exceptions to the parameter name translation rule

Xpath

URL parameter name

//performer/healthCareProvider/
healthCarePerson/code

performer.healthCareProvider.c

//performer//languageCommunication/

languageCode



performer.languageCode.c

//informationRecipient//

languageCommunication/

languageCode


informationRecipient.
languageCode.c

//informationRecipient/

healthCareProvider/



informationRecipient=healthCareProvider

//informationRecipient/patient/

informationRecipient=patient

//performer/healthCareProvider/

performer=healthcareProvider

//performer/patient/

performer=patient


3.2Parameter cardinality


Rule #2: Parameter cardinality SHALL follow the same restrictions defined in the Infobutton message model RMIM, with the exception that attributes that are bound to a fixed or default value in the Infobutton message model RMIM MAY be omitted. In these cases, the default / fixed value SHALL be assumed by the infobutton request receiver.

Rule #3: Elements that contain multiple instances SHALL be converted into one single parameter with the values associated with the element multiple instances being serialized into a caret delimited list. If all codes used in the multiple used in in a given element Table 2 shows an example with multiple mainSearchCriteria elements.

    Table 2 – Conversion example of multiple mainSearchCriteria elements.

XML node

URL parameter name

    <mainSearchCriteria>
    <code code="1202" codeSystem="2.16.840.1.113883.6.88"
    codeSystemName="RxNorm" displayName="atenolol">
    code>
    mainSearchCriteria>

    <mainSearchCriteria>
    <code code="401.1" codeSystem="2.16.840.1.113883.6.103"
    codeSystemName="ICD-9CM" displayName="Benign essential hypertension">
    code>
    mainSearchCriteria>

mainSearchCriteria.c.c=1202^401.1&
mainSearchCriteria.c.cs=2.16.840.1.113883.6.88
^2.16.840.1.113883.6.103&
mainSearchCritieria.c.dn=atenolol^

Benign essential hypertension




3.3Addressing length limitations of HTTP GET


Rule #4: To address URL length limitations imposed by the HTTP GET protocol, element / attribute names SHALL be abbreviated according to Table 3. Only elements / attributes that are derived from HL7 basic data types are included in the abbreviation table. Thereby, expansions to the normative Infobutton message model RMIM will not require changes to this implementation guide.

Rule #5: Also to address URL length limitations imposed by the HTTP GET protocol, other element / attribute names MAY be also abbreviated. These abbreviations SHALL be composed of the first letter of each word in the attribute / element name. Although the use of these abbreviations in a URL-based request is optional, implementers SHALL be able to process both the abbreviated and the unabbreviated forms of these attributes. Since the format of attribute/element names follow the camelback notation, conversions between unabbreviated and abbreviated parameter names can be fully automated. For reference, Appendix 2 contains a comprehensive list of attribute/element name abbreviations.

Table 4 contains examples of XML representations extracted from an infobutton event notification message payload and the equivalent URL-based representations.




    Table 3 – List of required element / attribute abbreviations.

Element / attribute

Abbreviation

code

c

codeSystem

cs

codeSystemName

csn

displayName

dn

originalText

ot

value

v

unit

u

representation

r


Note: despite the abbreviation rules, specific Infobutton request payloads may still lead to URLs that exceed the length limitations imposed by requests using the HTTP GET protocol. In case there is doubt about the possible size of requests that a given Web server will be able to handle, the HTTP POST protocol is preferred over HTTP GET.


    Table 4 – Examples of XML representations followed by the equivalent URL-based translation.

XML representation

URL-based representation

    <patientPerson><administrativeGenderCode code="F">patientPerson>

    patientPerson.administrativeGenderCode.c=F

    <patientPerson><administrativeGenderCode code="F">patientPerson>

    patientPerson.administrativeGenderCode.c=F

    <age><code code="30525-0"/>
    <value value="77" unit="a"/>age>

    age.c.c=30525-0&age.v.v=77&age.v.u=a

    <mainSearchCriteria>
    <code code="D018410" codeSystem="2.16.840.1.113883.6.177"
    codeSystemName="MSH" displayName="Bacterial+Pneumonia">
    <originalText>PneumoniaoriginalText>code>
    mainSearchCriteria>

    mainSearchCriteria.c.c=D018410
    mainSearchCriteria.c.cs=2.16.840.1.113883.6.177&mainSearchCriteria.c.csn=MSH
    mainSearchCriteria.c.dn=Bacterial+Pneumonia&mainSearchCriteria.c.ot=Pneumonia

4Appendix 1 – List of parameter names


Table 5 contains a comprehensive list of XML entities and their associated parameter name translations. Detailed descriptions of these parameters are outside the scope of this Implementation Guide. The reader should refer to the Context-aware information retrieval (“Infobutton”) normative specification for a detailed description of the underlying message model and its attributes.

    Table 5 – List of XML entities and their associated parameter name translations.

Xpath

URL parameter name

//infobuttonEventNotification/

effectiveTime@value

infobuttonEventNotification.effectiveTime.v

//holder/assignedEntity/
name@representation

assignedEntity.name.r

//holder/assignedEntity/

certificateText@representation



assignedEntity.certificateText.r

//patientPerson/ administrativeGenderCode@code

patientPerson.administrativeGenderCode.c

//patientPerson/ administrativeGenderCode@displayName

patientPerson.administrativeGenderCode.dn

//age/code@value

age.v.v

//age/code@unit

age.v.u

//ageGroup/value@code

ageGroup.v.c

//ageGroup/value@codeSystem

ageGroup.v.cs

//ageGroup/value@displayName

ageGroup.v.dn

//taskContext/code@code

taskContext.c.c

//taskContext/code@displayName

taskContext.c.dn

//subTopic/code@code

subTopic.c.c

//subTopic/code@codeSystem

subTopic.c.cs

//subTopic/code@displayName

subTopic.c.dn

//mainSearchCriteria/code@code

mainSearchCriteria.c.c

//mainSearchCriteria/code@codeSystem

mainSearchCriteria.c.cs

//mainSearchCriteria/code@displayName

mainSearchCriteria.c.dn

//mainSearchCriteria/code/originalText

mainSearchCriteria.c.ot

//informationRecipient/patient/



informationRecipient=patient

//informationRecipient/

healthCareProvider/



informationRecipient=healthCareProvider

//performer/patient/



performer=patient

// performer/healthCareProvider/

performer=healthCareProvider

//performer/healthCareProvider/
healthCarePerson/code@code

performer.healthCareProvider.c.c

//performer/healthCareProvider/
healthCarePerson/code@codeSystem

performer.healthCareProvider.cs

//performer/healthCareProvider/
healthCarePerson/code@displayName

performer.healthCareProvider.dn

//performer//languageCommunication/

languageCode@code



performer.languageCode.c.c

//informationRecipient//languageCommunication/
languageCode@code

informationRecipient.
languageCode.c.c



5Appendix 2 – List of optional abbreviations


Table 6 contains a comprehensive list of attribute names and associated optional abbreviations. Although the use of these abbreviations in a URL-based request is optional, implementers SHALL be able to process both the abbreviated and the unabbreviated forms of these attributes.

Abbreviations are always composed of the first letter of each word in an attribute/element name.




    Table 6 – Comprehensive list of optional element / attribute abbreviations.

Element / attribute

Abbreviation

infobuttonEventNotification

ien

effectiveTime

et

assignedEntity

ae

assignedAuthorizedPerson

aap

representedOrganization

ro

name

n

certificateText

ct

patientPerson

pp

administrativeGenderCode

agc

age

a

ageGroup

ag

taskContext

tc

subTopic

st

mainSearchCriteria

msc

performer

p

healthCareProvider

hcp

languageCode

lc

informationRecipient

ir

serviceDeliveryLocation

sdl


6Appendix 3 - Examples


Each of the following examples contains an Infobutton event notification XML message payload and its equivalent URL-based representation.

6.1Example 1


In this example the user is looking at a coded problem list of a male, 77 years-old patient with Bacterial Pneumonia. The user clicks on an infobutton that presents a series of questions. The user selects “How do I treat Bacterial Pneumonia?” The following message payload represents the communication between the decision support system and the information resource.
XML representation:




































<code code="46251-5" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LN" displayName="Age Groups"/>








































Pneumonia









URL representation (643 characters):

http://www.e-resource.com/api?



infobuttonEventNotification.effectiveTime.v=20060706001023&

assignedEntity.name.r=Organization-Username&assignedEntity.certificateText.r=organization-password&

patientPerson.administrativeGenderCode.c=F&patientPerson.administrativeGenderCode.dn=Female

age.v.v=77&age.v.u=a

ageGroup.v.c=D000368&ageGroup.v.cs=2.16.840.1.113883.6.177&ageGroup.v.dn=Aged

taskContext.c.c=PROBLISTREV&taskContext.c.dn=Problem+list+review&

subTopic.c.c=Q000628&subTopic.c.cs=2.16.840.1.113883.6.177&subTopic.c.dn=therapy

mainSearchCriteria.c.c=D018410&mainSearchCriteria.c.cs=2.16.840.1.113883.6.177& mainSearchCriteria.c.dn=Bacterial+Pneumonia&
mainSearchCriteria.c.ot=Pneumonia

Note: in this example, the parameters that are bound to a default / fixed value in the Infobutton message model RMIM were omitted.

6.2Example 2


The user (an RN) is looking at a non-coded medications list of a female, Spanish speaker, 8 years-old patient who came for an outpatient appointment. The user clicks on the infobutton next to “Racemic epinephrine” and is presented with a series of links. The user selects the “patient education" link.

XML representation:





the user (an RN) is looking at a coded medications list of a female, Spanish speaker, 8 years-old patient who came for an outpatient appointment. The user clicks on the infobutton next to “Racemic epinephrine” and is presented with a series of links. The user selects the “patient education" link.-->
































<code code="46251-5" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LN" displayName="Age Groups"/>

<value code=" D002648" codeSystem="2.16.840.1.113883.6.177" codeSystemName="MSH" displayName="Child"/>















<code code=" 163W00000N" codeSystem="2.16.840.1.113883.5.53" codeSystemName="HealthcareProviderTaxonomyHIPAA" displayName="Registered Nurse"/>
















This indicates that the recipient of the content is a patient who speaks Spanish-->





































<code code="045822-0322-0" codeSystem="2.16.840.1.113883.6.69" codeSystemName="NDC Codes" displayName="Racemic epinephrin">

Racemic epinephrine









URL representation (874 characters):

http://www.e-resource.com/api?



infobuttonEventNotification.effectiveTime.v=20060706001023

assignedEntity.name.r=Organization-Username&assignedEntity.certificateText.r=organization-password&

patientPerson.administrativeGenderCode.c=F&patientPerson.administrativeGenderCode.dn=Female

age.v.v=8&age.v.unit=a&

ageGroup.v.c=D002648&ageGroup.v.cs=2.16.840.1.113883.6.177&

taskContext.c.c=MEDLISTREV&taskContext.c.dn=Medication+list+review&

performer.healthCareProvider.c.c=163W00000N&performer.healthCareProvider.c.dn=Registered Nurse&

performer.healthCareProvider.languageCode.c.c=eng&performer.healthCareProvider.languageCode.c.dn=English&

informationRecipient.patientPerson.languageCode.c.c=spa&informationRecipient.patientPerson.languageCode.c.dn=Spanish&

mainSearchCriteria.c.c=045822-0322-0&mainSearchCriteria.c.cs= 2.16.840.1.113883.6.69&mainSearchCriteria.c.dn=Racemic+Epinephrine&mainSearchCriteria.c.ot=Racemic+Epinephrine



База данных защищена авторским правом ©shkola.of.by 2016
звярнуцца да адміністрацыі

    Галоўная старонка