Transcript Slide 1

IHE Pre-Connectathon PIX and PDQ
Test Tool Tutorial and Guide
Robert Snelick
National Institute of Standards and Technology
November 10th 2009
Contact: [email protected]
NIST PIX/PDQ Pre-connectathon Test Tool: Overview I
• Supports Pre-Connectathon testing for:
Profile/HL7 Version
Actors
IHE PIX HL7 v2
Source, Manager, Consumer
IHE PDQ HL7 v2 (new tests)
Supplier, Consumer
IHE PIX HL7 v3
Source, Manager, Consumer
IHE PDQ HL7 v3
Supplier, Consumer
• Part of the next generation of IHE tools (project Gazelle) developed
through the NIST Healthcare Testing Infrastructure initiative
supported by ARRA
• For the 2010 pre-connectathon testing cycle the tool is
– an alternative for the MESA PIX v2 tests developed at the MIR
– a replacement for the MESA PIX/PDQ v3 tests developed at the University of
Quebec
• Test cases are the same as the previous MESA tests except for the
new PDQ v2 tests
• As we continued development we are rewriting/clarifying the test
case descriptions and test assertions
• PIX/PDQ only; XDS and PCD testing is supported by other “NISTers”
2
NIST PIX/PDQ Pre-connectathon Test Tool: Overview II
•
•
Options for meeting the 2010 V2 PIX/PDQ Pre-connectathon testing
requirements:
–
Use the existing PIX/PDQ MESA tests
–
Use the NIST PIX/PDQ Pre-connectathon test tool
–
The NIST Tool is the preferred method for pre-connectathon testing (Steve and/or Lynn
will provide a “Cookie”)
Options for meeting the 2010 V3 PIX/PDQ Pre-connectathon testing
requirements:
–
–
–
•
Moving forward (2011)
–
–
–
•
Use the NIST PIX/PDQ Pre-connectathon test tool
December 1st is relaxed
NIST took on this role recently
It is planned that this tool will replace the existing PIX/PDQ V2 mesa tests
Serve as a platform to support other IHE domain pre-connectathon testing
Serve as a platform to support ARRA meaningful use testing
Tool Benefits
–
–
–
–
–
–
Automated Testing
Centralized Testing
Low barrier to entry for tool use
Explicit test descriptions and test assertions
Raises the bar of conformance testing (will propagate to connectathon testing)
Has the capability to raise bar further
3
Acknowledgements
• NIST design and development team: Harold Affo, Roch Bertucat, Len
Gebase, Sydney Henrard, Mary Laamanen, Andrew McCaffrey,
Caroline Rosin, and Robert Snelick.
• Eric Poiseau (INRIA/IRISA) provided the initial versions of IHE
PIX/PDQ HL7 V2 conformance profiles.
• The original MESA test cases for PIX HL7 V2 were developed by
Steve Moore at the Mallinckrodt Institute of Radiology.
• The original MESA test cases for PIX and PDQ HL7 V3 were
developed by Rita Noumeir and Jean-Francois Pambrun at the
University of Quebec.
• Abby George of Booz-Allen-Hamilton made significant contributions
to this tutorial and the user’s guide.
• Beta Testers: George Cole, Laurie Flaherty (Allscripts), Umberto
Cappellini, Susanne Hartenstein (TIANI SPIRIT), Fred Harmon,
Anthony LaRocca (Sage), Vassil Peytchev, Justin Stauffer (Epic)
• Wenzhi Li (Open Health Tools-OHT, MISYS) for making available an
on-line PIX/PDQ Server that we could use for testing
4
NIST PIX/PDQ Test Tool: Access
• Tool Access—Open for business on November 12th, 2009
– http://141.156.15.209:8080/NIST-PreConnectathonTests
– Web-based application so downloads and installations are not necessary
– User’s Guide is available at this site
• Tool may be used in Anonymous Mode or Registered Mode
– Anonymous: Does not require user registration and may be used to
conduct ad-hoc system testing
– Registered Mode:
• Required to save pre-connectathon test results
• Test reports are made available to the IHE project manager
• Avenue for meeting pre-connectathon requirements to participate in the connectathon
• IHE PIX/PDQ Google Group
–
–
–
–
–
Group to discuss testing issues and report tool bugs
http://groups.google.com/group/ihe_pix_pdq_testing
Go to site and request membership to the group
Preferred method of communication for discussing common issues
Vendor specific issues or bugs can be sent directly to [email protected]
5
Testing Environments
• Instance Testing
–
Conformance (e.g., against HL7 2.x or CDA)
• Test object conforms to specification on which it is based
• IHE Model: ~Virtual and Pre-Connectathon
• NIST IHE PCD V2 Message Validation Test Tool
• Isolated System Testing
–
–
–
Includes Instance Testing Activities
Protocol Conformance
Functional Behavior Conformance
• Features and operational behavior correspond to specifications
• IHE Model: ~Virtual and Pre-Connectathon
• NIST IHE PIX/PDQ V2/V3 Test Tool
• Peer-to-Peer System Testing
–
–
Includes Isolated System Testing Activities
Interoperability Testing
• Testing complete application environment
• May include interacting w/ Database, using Network Communications, or interacting w/
other hardware, apps, or systems if appropriate
• IHE Model: ~Connectathon
6
NIST PIX/PDQ Test Tool: Operational Process
INTERACTION/REPORTS
MANUAL OR AUTOMATED SUT
END-USER
(VENDOR)
Web Application Interface
MESSAGES (TEST OBJECTS)
STIMULUS OR RESPONSE (MESSAGES)
NIST PIX/PDQ
HL7 v2/v3 TEST TOOL
(via the communication protocol)
SYSTEM UNDER TEST
SPECIFICATIONS
(test material that defines test assertions)
7
NIST PIX/PDQ Test Tool: PIX Test Coverage
PIX HL7 v3
PIX HL7 v2
Actor
Source
Consumer
Manager
Test Cases
Test Case 10512: PIX Patient Feed A04
Test Case 10515: PIX Patient Merge A04
Test Case 10501: PIX Query Case 1 and 2
Test Case 10502: PIX Query Case 3
Test Case 10503: PIX Query Case 4
Test Case 10501: PIX Query Case 1 and 2
Test Case 10502: PIX Query Case 3
Test Case 10503: PIX Query Case 4
Test Case 10506: PIX Query, Patient Update
Test Case 10511: PIX Patient Feed A01
Test Case 10512: PIX Patient Feed A04
Test Case 10515: PIX Patient Merge A04
Actor
Test Cases
Source
Test Case 10512v3: PIX Patient Feed
Test Case 10515v3: PIX Patient Identity Merge
Consumer
Manager
Test Case 10501v3: PIX Query Case 1 and 2
Test Case 10502v3: PIX Query Case 3
Test Case 10503v3: PIX Query Case 4
Test Case 10501v3: PIX Query Case 1 and 2
Test Case 10502v3: PIX Query Case 3
Test Case 10503v3: PIX Query Case 4
Test Case 10506v3: PIX Query, Patient Update
Test Case 10512v3: PIX Patient Feed
Test Case 10515v3: PIX Patient Identity Merge
8
NIST PIX/PDQ Test Tool: PDQ Test Coverage
PDQ HL7 v3
PDQ HL7 v2
Actor
Consumer
Supplier
*
*
Test Cases
Actor
Test Cases
Test Case 11311: Exact Name Search
Test Case 11312: Exact Name Search – No match
Test Case 11315: Partial Name Search
Test Case 11320: Complete ID Search – Unspecified Domain
Test Case 11325: Complete ID Search – Single Domain
Test Case 11330: Complete ID Search – Multiple Domains
Test Case 11335: Partial ID Search – Single Domain
Test Case 11340: Date of Birth Search
Test Case 11350: Multiple Key Search 1
Test Case 11365: Continuation Test 1
Consumer
Test Case 11311v3: Exact Name Search
Test Case 11312v3: Exact name search - No Match
Test Case 11315v3: Partial Name Search
Test Case 11320v3: Complete ID Search - Unspecified Domain
Test Case 11325v3: Complete ID Search - Single Domain
Test Case 11330v3: Complete ID Search - Multiple Domains
Test Case 11335v3: Partial ID Search - Single Domain
Test Case 11340v3: Date of Birth Search
Test Case 11350v3: Multi Key Search 1
Test Case 11365v3: Continuation Test 1 (Optional)
Test Case 11311: Exact Name Search
Test Case 11312 : Exact Name Search – No match
Test Case 11315 : Partial Name Search
Test Case 11320 : Complete ID Search – Unspecified Domain
Test Case 11325 : Complete ID Search – Single Domain
Test Case 11330 : Complete ID Search – Multiple Domains
Test Case 11335 : Partial ID Search – Single Domain
Test Case 11340 : Date of Birth Search
Test Case 11350 : Multiple Key Search 1
Test Case 11365 : Continuation Test 1
Supplier
Test Case 11311v3: Exact Name Search
Test Case 11312v3: Exact name search - No Match
Test Case 11315V3: Partial Name Search
Test Case 11320v3: Complete ID Search - Unspecified Domain
Test Case 11325v3: Complete ID Search - Single Domain
Test Case 11330v3: Complete ID Search - Multiple Domains
Test Case 11335v3: Partial ID Search - Single Domain
Test Case 11340v3: Date of Birth Search
Test Case 11350v3: Multi Key Search 1
Test Case 11365v3: Continuation Test 1 (Optional)
*Additional test cases created for the 2010 Pre-Connectathon Cycle
9
Test Case Walk-Through
PIX Manager Test Case 10501:
PIX Query Case 1 and 2 – HL7 Version 2
Test Case 10501 – PIX Query Case 1 and 2 – HL7 Version 2
IHE ITI Technical Framework
Volume 2a (ITI TF-2a)
3.9 PIX Query
Case 1
Case 1: The Patient Identifier Cross-reference Manager Actor
recognizes the specified Patient Identification Domain and
Patient ID sent by the Patient Identifier Cross-reference
Consumer in QPD-3, and corresponding identifiers exist for the
specified patient in at least one of the domains requested in
QPD-4 (one identifier per domain). (See Case 6 below for the
required behavior if there are multiple identifiers recognized
within a given Identifier Domain by the Patient Identifier Crossreference Manager Actor.)
AA (application accept) is returned in MSA-1.
OK (data found, no errors) is returned in QAK-2.
A single PID segment is returned in which one repetition of PID3 Patient Identifier List is populated for each of the domains, if
any, that the Patient Identifier Cross-reference Manager Actor
did recognize in which a single identifier exists for the
requested patient, not including the
queried-for patient identifier that
is returned in QPD-3.
11
Test Case 10501 – PIX Query Case 1 and 2
IHE ITI Technical Framework
Volume 2a (ITI TF-2a)
3.9 PIX Query
Case 2
Case 2: The Patient Identifier Cross-reference Manager Actor
recognizes the Patient Identification Domain and Patient ID
sent in QPD-3, but no identifier exists for that patient in any of
the domains sent in QPD-4.
AA (application accept) is returned in MSA-1.
NF (no data found, no errors) is returned in QAK-2.
No PID segment is returned.
12
Test Case 10501 – PIX Query Case 1 and 2
Description



References

Test case 10501 covers the PIX Query Case 1 and 2. One patient (ALPHA) is
registered in two different domains. A second patient (SIMPSON) is registered in a
single domain. Three registration messages are sent to a Cross Reference Manager.
A PIX Query is sent to resolve a reference to ALPHA.
A second PIX Query is sent to resolve a reference to SIMPSON. Because SIMPSON is
not registered in the second domain, the response to that PIX Query will indicate no
data.
IHE ITI TF-2a: Transactions Part A (Revision 6.0, August 10, 2009)

Actors



3.9.4.2.2.6 Patient Identifier Cross-reference Manager Actor Query Response Behavior
Patient Identity Source (Test Agent)
Patient Identity Consumer (Test Agent)
Patient Identity Cross-Reference Manager (Vendor System Under Test)
13
Test Case 10501 – PIX Query Case 1 and 2
TEST STEPS
DESCRIPTION
SOURCE
DESTINATION
1
The NIST PIX Source sends a registration message (ADT^A04) to register patient
ALPHA ALAN in domain HIMSS2005&1.3.6.1.4.1.21367.2005.1.1&ISO. Patient ID is
“PIX10501”. Your PIX Manager shall register the patient and send a correct ACK
message back.
• PIX Source
• Reference
Message
• PIX Manager
• Reference
Example
• Message
2
The NIST PIX Source sends a registration message (ADT^A04) to register patient
ALPHA ALAN in domain XREF2005&1.3.6.1.4.1.21367.2005.1.2&ISO. Patient ID is
“XYZ10501”. Your PIX Manager shall register the patient and send a correct ACK
message back.
• PIX Source
• Reference
Message
• PIX Manager
• Reference
Example
• Message
3
The NIST PIX Source sends a registration message (ADT^A04) to register patient
SIMPSON CARL in domain HIMSS2005&1.3.6.1.4.1.21367.2005.1.1&ISO. Patient ID is
“ABC10501”. Your PIX Manager shall register the patient and send a correct ACK
message back.
• PIX Source
• Reference
Message
• PIX Manager
• Reference
Example
• Message
4
The NIST PIX Consumer sends a query message (QBP^Q23) to ask for ALPHA ALAN's
ID in domain XREF2005&1.3.6.1.4.1.21367.2005.1.2&ISO using his id (“PIX10501”) in
domain HIMSS2005&1.3.6.1.4.1.21367.2005.1.1&ISO. Your PIX Manager shall answer
correctly to the query with ALPHA ALAN's (ID = “XYZ10501”) is in domain
XREF2005&1.3.6.1.4.1.21367.2005.1.2&ISO.
• PIX
Consumer
• Reference
Message
• PIX Manager
• Reference
Example
• Message
5
The NIST PIX Consumer sends a query message (QBP^Q23) to ask for SIMPSON
CARL's ID in domain XREF2005&1.3.6.1.4.1.21367.2005.1.2&ISO using his ID in
domain HIMSS2005&1.3.6.1.4.1.21367.2005.1.1&ISO. As SIMPSON CARL was not
registered in the XREF2005&1.3.6.1.4.1.21367.2005.1.2&ISO domain, your PIX
Manager shall send a query response back indicating that no data was found.
• PIX
Consumer
• Reference
Message
• PIX Manager
• Reference
Example
• Message
14
Test Case 10501 – PIX Query Case 1 and 2 (v2)
PIX/PDQ Test Tool
1
ADTA04 – Register patient
“ALAN ALPHA” (ID = PIX10501) in domain
“HIMSS2005”
System Under Test
1a ACKA04 – Send acknowledgement
Web Application Interface
End User
(Vendor)
NIST
PIX
Source
Test Agent
2
ADTA04 – Register patient
“ALAN ALPHA” (ID = XYZ10501) in domain
“XREF2005”
2a ACKA04 – Send acknowledgement
3
ADTA04 – Register patient
“CARL SIMPSON” (ID = ABC10501) in domain
“HIMSS2005”
3a ACKA04 – Send acknowledgement
4 QBPQ23 – Send query message for patient
“ALAN ALPHA” in domain “HIMSS2005”
seeking the patient ID in domain “XREF2005”
NIST
PIX
Consumer
Test Agent
Vendor
PIX
Manager
Application
4a RSPK23– Send response indicating that the
identifier (“XYZ10501”) for patient “ALPHA”
was found in domain “XREF2005”
5 QBPQ23 – Send query message for patient
“CARL SIMPSON” in domain “HIMSS2005”
seeking the patient ID in domain “XREF2005”
5a RSPK23 – Send response message indicating no
data was found “NF”
15
Validation
HL7 v2 Messages and IHE Actor Functional Behavior
HL7 v2 Transactions Validation Process
• HL7 v2 Syntax Validation:
– Ensure the message structure is valid with respect to the HL7 V2 message
definition and the HL7 V2 conformance profile
– Ensure that the conformance requirements such as usage, cardinality, data type
usage, etc. are valid with respect to the standard and the HL7 V2 conformance
profile that constrains the message in accordance with the IHE technical framework
for a given transaction
• Value Set Semantic Validation:
– Ensure that elements that refer to a table are valid with respect to the value set it
references. The value set is given by the HL7 V2 standard or as constrained by the
IHE technical framework. An example includes confirming that the administrative
sex element (PID.8) of the PID segment contains a value that is given in the HL7
V2 Administrative Sex table (HL70001).
– Identify conformance violations of constraints implied by the IHE Integration Profile,
these constraints are captured in a validation context file. An example of such a
test includes an element that is fixed in the IHE integration profile (e.g., RCP.1 = I).
• 3. HL7 v2 MLLP Validation:
– Ensure the message is valid with respect to the HL7 V2 MLLP specification for
wrapping and unwrapping HL7 V2 messages. This is an implied test.
• 4. Test Case Specific Validation:
– Verify element content against a validation context file that captures test values as
defined in the pre-connectathon test cases.
17
Test Case 10501 – Test Case Specific Validation Checks
STEPS
Validation
Criteria
ASSERTIONS
1
• Assert an “AA” acknowledge message for registration of patient “ALPHA” in domain
“HIMSS2005”; Patient ID is “PIX10501”
2
• Assert an “AA” acknowledgement message for registration of patient “ALPHA” in
domain “XREF2005”; Patient ID is “XYZ10501”
3
• Assert an “AA” acknowledgement message for the registration of patient “SIMPSON”
in domain “HIMSS2005”; Patient ID is “ABC10501”
4
• PIX Query Case 1: Assert response message with MSA.1 = “AA”
• PIX Query Case 1: Assert response message with PID.3.1 = “XYZ10501”
• PIX Query Case 1: Assert response message with QAK.2 = “OK”
• more…
5
• PIX Query Case 2: Assert response message with MSA.1 = “AA”
• PIX Query Case 2: Assert response message with QAK.2 = “NF”
• PIX Query Case 2: Assert that no PID segment is found in response message
• more…
18
Validation Operational Process: Origin of Test Assertions
HL7 v2
Standard
Message
Definition
IHE TF
Message
Transaction
Constraints
Conformance
Profile
(XML)
HL7 v2
Standard
Value Sets
IHE TF
Message
Transaction
Value Set
Constraints
Table
Library
(XML)
IHE TF
Message
Transaction
Test
Assertions
Test Case
Specific
Test
Assertions**
Validation
Context
File
(XML)
Validation
Engine
Assertions
** Dynamic Data (Future Work)
19
HL7 V2 Conformance Profile Example (ADT A04 Message)
- <HL7v2xStaticDef MsgType="ADT" EventType="A04" MsgStructID="ADT_A01" EventDesc="ADT/ACK - Register a patient"
Role="Sender">
<MetaData Name="Patient Identity Feed" OrgName="IHE" Version="2.3" Status="DRAFT" Topics="confsig-IHE-2.3.1-static-ADT-A04null-ADT_A01-2.3-DRAFT-Sender" />
- <Segment Name="MSH" LongName="message header segment" Usage="R" Min="1" Max="1">
- <Field Name="Field Separator" Usage="R" Min="1" Max="1" Datatype="ST" Length="1" ItemNo="00001">
<Reference>11.6.1</Reference>
</Field>
- <Field Name="Encoding Characters" Usage="R" Min="1" Max="1" Datatype="ST" Length="4" ItemNo="00002">
<Reference>11.2.2</Reference>
</Field>
- <Field Name="Sending Application" Usage="R" Min="1" Max="1" Datatype="HD" Length="180" Table="0361" ItemNo="00003">
<Reference>11.2.3</Reference>
<Component Table="0300" Name="namespace ID" Usage="O" Datatype="IS" Length="3" />
<Component Name="universal ID" Usage="O" Datatype="ST" Length="3" />
<Component Name="universal ID type" Usage="O" Datatype="ID" Length="3" Table="0301" />
</Field>
- <Field Name="Sending Facility" Usage="R" Min="1" Max="1" Datatype="HD" Length="180" Table="0362" ItemNo="00004">
<Reference>11.2.4</Reference>
<Component Table="0300" Name="namespace ID" Usage="O" Datatype="IS" Length="3" />
<Component Name="universal ID" Usage="O" Datatype="ST" Length="3" />
<Component Name="universal ID type" Usage="O" Datatype="ID" Length="3" Table="0301" />
</Field>
- <Field Name="Receiving Application" Usage="R" Min="1" Max="1" Datatype="HD" Length="180" Table="0361" ItemNo="00005">
<Reference>11.6.6</Reference>
<Component Table="0300" Name="namespace ID" Usage="O" Datatype="IS" Length="3" />
<Component Name="universal ID" Usage="O" Datatype="ST" Length="3" />
<Component Name="universal ID type" Usage="O" Datatype="ID" Length="3" Table="0301" />
</Field>
20
HL7 V2 Table Library Example
<TableDefinition Id="0001" Name="Sex" Codesys="HL7" Type="User">
<TableElement Code="F" DisplayName="Female" Source="HL7"/>
<TableElement Code="M" DisplayName="Male" Source="HL7"/>
<TableElement Code="O" DisplayName="Other" Source="HL7"/>
<TableElement Code="U" DisplayName="Unknown" Source="HL7"/>
</TableDefinition>
<TableDefinition Id="0002" Name="Marital status" Codesys="HL7" Type="User">
<TableElement Code="A" DisplayName="Separated" Source="HL7"/>
<TableElement Code="D" DisplayName="Divorced" Source="HL7"/>
<TableElement Code="M" DisplayName="Married" Source="HL7"/>
<TableElement Code="S" DisplayName="Single" Source="HL7"/>
<TableElement Code="W" DisplayName="Widowed" Source="HL7"/>
</TableDefinition>
21
HL7 v2 Validation Context Example
<!-- PID[1].3[1].1 -->
- <DataValueLocationItem>
<Location>
<Segment Name="PID" InstanceNumber="1">
<Field Position="3" InstanceNumber="1">
<Component Position="1" />
</Field>
</Segment>
</Location>
<Value>
<PlainText>XYZ10501</PlainText>
</Value>
</DataValueLocationItem> <!-- PID[1].3[1].4.1 -->
- <DataValueLocationItem>
<Location>
<Segment Name="PID" InstanceNumber="1">
<Field Position="3" InstanceNumber="1">
<Component Position="4">
<SubComponent Position="1" />
</Component>
</Field>
</Segment>
</Location>
<Value>
<PlainText>XREF2005</PlainText>
</Value>
</DataValueLocationItem>
22
HL7 v2 Message Validation Report
23
Testing Validation Types
• Validation against ‘failure types’:
–
–
–
–
–
–
–
–
–
–
–
VERSION*: The version in the message and in the profile should match.
MESSAGE_STRUCTURE_ID*: The message type (MSH.9 element) in the profile and in the
message should match.
MESSAGE_STRUCTURE: The message should have a valid message structure (correct usage,
correct cardinality, and correct element name).
USAGE: R elements should be present; X elements should not be present in the message.
CARDINALITY: Elements should be present at least the minimum times and at most the maximum
times specified in the profile. It should also take into account the usage of the element (X element
with a minimum of 4 should not be present in the message).
LENGTH: The value of the element should have a length equal or less than the value specified in
the profile.
DATATYPE: For the datatype NM, DT, DTM, SI and TM, the value of the element should match the
regular expression defined in the standard.
DATA: The value of the element should match a constant specified in the profile, a value set
specified in a table, a value or a regular expression specified in the message validation context.
MESSAGE_VALIDATION_CONTEXT*: This is a user input error when the location specified in the
message validation context can't be found in the message.
TABLE_NOT_FOUND*: This is a user input when a table can't be found in the table files
(TableProfileDocument).
AMBIGUOUS_PROFILE*: The profile should not be ambiguous.
24
Conceptual View of HL7 v2 PIX Manager Test
Vendor
PIX
Manager
Application
Test
Cases
Reports
Test
Flow
Engine
MLLP (v2)
NIST
PIX
Consumer
Test Agent
HL7
v3
Other
NIST
Test Agents
Validation
Web Application
End-User
(Vendor)
HL7
v2
NIST
PIX
Source
Test Agent
Test Executor
RealTime
Log
Screen
Communication
PIX/PDQ Test Tool
NIST Server
25
Step 1 and 1a
ADTA04
Profile
(XML)
Test
Repository
- Profiles
- Test Scenarios
- Test Cases
- Value Sets
- Generation and
Validation Context
Files
Patient ID
Last Name
First Name
PIX10501
ALPHA
ALAN
XYZ10501
ALPHA
ALAN
ABC10501
SIMPSON
CARL
TC10501-1
Generation
Context
(XML)
1
NIST
PIX Source
Test Agent
Value Set
(XML)
TC10501-1
Validation
Context
(XML)
ACK
Profile
(XML)
ADTA04 – Register patient
“ALAN ALPHA” (ID = PIX10501) in domain
“HIMSS2005”
1a ACKA04 – Send acknowledgement
Vendor
PIX
Manager
Application
Validation Criteria



Check against ADTA04 Profile
Check against Value Set
Check against TC10501-1 Validation Context
 Assert an “AA” acknowledge message for
registration of patient “ALPHA” in domain
“HIMSS2005”; Patient ID is “PIX10501”
26
Step 2 and 2a
ADTA04
Profile
(XML)
Test
Repository
- Profiles
- Test Scenarios
- Test Cases
- Value Sets
- Generation and
Validation Context
Files
Patient ID
Last Name
First Name
PIX10501
ALPHA
ALAN
XYZ10501
ALPHA
ALAN
ABC10501
SIMPSON
CARL
TC10501-1
Generation
Context
(XML)
2
NIST
PIX Source
Test Agent
Value Set
(XML)
TC10501-1
Validation
Context
(XML)
ACK
Profile
(XML)
ADTA04 – Register patient
“ALAN ALPHA” (ID = XYZ10501) in domain
“XREF2005”
2a ACKA04 – Send acknowledgement
Vendor
PIX
Manager
Application
Validation Criteria



Check against ADTA04 Profile
Check against Value Set
Check against TC10501-1 Validation Context
 Assert an “AA” acknowledgement message for the
registration of patient “ALPHA” in domain
“XREF2005”; Patient ID is “XYZ10501”
27
Step 3 and 3a
ADTA04
Profile
(XML)
Test
Repository
- Profiles
- Test Scenarios
- Test Cases
- Value Sets
- Generation and
Validation Context
Files
Patient ID
Last Name
First Name
PIX10501
ALPHA
ALAN
XYZ10501
ALPHA
ALAN
ABC10501
SIMPSON
CARL
TC10501-1
Generation
Context
(XML)
3
NIST
PIX Source
Test Agent
Value Set
(XML)
TC10501-1
Validation
Context
(XML)
ACK
Profile
(XML)
ADTA04 – Register patient
“CARL SIMPSON” (ID = ABC10501) in
domain “HIMSS2005”
3a ACKA04 – Send acknowledgement
Vendor
PIX
Manager
Application
Validation Criteria



Check against ADTA04 Profile
Check against Value Set
Check against TC10501-1 Validation Context
 Assert an “AA” acknowledgement message for
registration of patient “SIMPSON” in domain
“HIMSS2005”; Patient ID is “ABC10501”
28
Step 4 and 4a
QBPQ23
Profile
(XML)
Test
Repository
- Profiles
- Test Scenarios
- Test Cases
- Value Sets
- Generation and
Validation Context
Files
Patient ID
Last Name
First Name
PIX10501
ALPHA
ALAN
XYZ10501
ALPHA
ALAN
ABC10501
SIMPSON
CARL
TC10501
Generation
Context
(XML)
NIST
PIX
Consumer
Test Agent
Value Set
(XML)
TC10501
Validation
Context
(XML)
4a RSPK23– Send response indicating that the
identifier (“XYZ10501”) for patient “ALPHA” was
found in domain “XREF2005”
Vendor
PIX
Manager
Application
Validation Criteria


RSPK23
Profile
(XML)
4 QBPQ23 – Send query message for patient
“ALAN ALPHA” in domain “HIMSS2005”
seeking the patient ID in domain “XREF2005”


PIX Query Case 1: Assert response message with
MSA.1 = “AA”
PIX Query Case 1: Assert response message with
PID.3.1 = “XYZ10501”
PIX Query Case 1: Assert response message with
QAK.2 = “OK”
And more…
29
Step 5 and 5a
QBPQ23
Profile
(XML)
Test
Repository
- Profiles
- Test Scenarios
- Test Cases
- Value Sets
- Generation and
Validation Context
Files
Patient ID
Last Name
First Name
PIX10501
ALPHA
ALAN
XYZ10501
ALPHA
ALAN
ABC10501
SIMPSON
CARL
TC10501
Generation
Context
(XML)
NIST
PIX
Consumer
Test Agent
Value Set
(XML)
TC10501
Validation
Context
(XML)
5a RSPK23 – Send response message
indicating no data was found “NF”
Vendor
PIX
Manager
Application
Validation Criteria


RSPK23
Profile
(XML)
5 QBPQ23 – Send query message for patient
“CARL SIMPSON” in domain “HIMSS2005”
seeking the patient ID in domain “XREF2005”

PIX Query Case 2: Assert response message with
MSA.1 = “AA”
PIX Query Case 2: Assert response message with
QAK.2 = “NF”
PIX Query Case 2: Assert that no PID segment is
found in response message
30
Registration and Login
NIST PIX/PDQ Test Tool: Steps for Test Execution
1. Register/Log-in
2. Select Test Case
•
•
Client Type (PIX Source and Consumer, PDQ Consumer)
Server Type (PIX Manager, PDQ Supplier)
3. Configure Test
4. Run Test
5. View/Save/Submit Reports
32
Registration/Log-in
• To register, send the following information via email to
[email protected]:
–
–
–
–
–
–
Name
Company Name
Email Address
Application Name (MSH 3.1) for V2 Only
Facility Name (MSH 4.1) for V2 Only
The IHE Actors that you plan on testing (e.g. V2 PIX Manager)
• NIST Administrator will then send log-in credentials
• Log-in is required to save test results, submit results to
the IHE project manager, and gain credit for test
completion
NIST
PIX/PDQ
Test Tool
*Push/Pull to Kudu
IHE Project Manager
can view
database of results
IHE
Kudu
* not yet implemented
33
Tool Demonstration
PIX Manager Test Case 10501:
PIX Query Case 1 and 2 – HL7 Version 2
Review Overview
After registration, users can log-in
using the ‘Log-in’ tab to submit test
results to the IHE Project Manager
To register, send the following information
via email to [email protected]:
• Name
• Company Name
• Email Address
• Application Name (MSH 3.1) For V2 Only
• Facility Name (MSH 4.1) For V2 Only
• IHE Integration Profiles Planned to Test
Go to the PIX/PDQ Test Tool User
Guide and Support Files for stepby-step instructions
Send defects, comments, and
suggestions to [email protected]
35
Select Test Case - Client
Select an ‘HL7 Version’ and ‘Actor’ to
view a list of available test cases
Select a test case by selecting the corresponding
radio button to view a description, references, and
list of transactions
Select the ‘Display Configuration Information’ button
to view the test configuration details – the ‘Start
Test’ button will become enabled once the
configuration information dialog been closed
36
Select Test Case - Server
Select an ‘HL7 Version’ and ‘Actor’ to
view a list of available test cases
Select a test case by selecting the corresponding
radio button to view a description, references, and
list of transactions
Select the ‘Configure’ button to enter the test
configuration details – the ‘Start Test’ button will
become enabled once the configuration information
has been entered
37
Configure – User Client
The name of the NIST PIX server is temporary and will
changed for every test that is run. So you must obtain the
configuration information each time and change the
receiving application name accordingly. Using an old name
will result in failure; you will receive an acknowledge error
message over the network (nothing will appear in the
console).
View the ‘Application Name’, ‘Facility Name’,
‘IP Address’, ‘Port Number(s)’ needed to
configure your client application to send
messages. Please note that each NIST PIX
Manager instance is unique
38
Configure – User Server
Single IP/Port
Enter the ‘Application Name’ and
‘Facility Name’ about the System Under
Test (SUT) – these fields are associated
with MSH.3.1 and MSH.4.1 in the HL7 v2
message
Multi IP/Port
Select ‘Single IP/Port’ or ‘Multi IP/Port’ and
enter the information accordingly – ‘Multi
IP/Port’ may be used to handle ADT and PDQ
messages
Example PIX Manager to Test (OHT Implementation)
V2 Application Name:
V2 Facility Name:
IP Address:
Port:
PAT_IDENTITY_X_REF_MGR_MISYS
ALLSCRIPTS
198.160.211.53
3600
Use this PIX Manager implementation
from Open Health Tools (OHT)—when
online—to try the tool if you don’t
have an application to test
39
Run Test
Test cases are executed one transaction at
a time – real-time results can be tracked in
the ‘Console Log’
Individual validation reports can be
viewed by selecting the ‘Magnifying Glass’
icon at the end of each transaction
Results, Messages Sent/Received, and
Detailed Results (XML/HTML) can be
viewed in between each transaction
Select ‘Next Step’ at the conclusion of
each transaction to initiate the next
40
View/Save/Submit Report
At the completion of the test, users can view
individual validation reports by selecting the
‘Magnifying Glass’ icon
A summary-level report will also be
available – reports may be printed or
saved to the user’s local file system
Select the ‘Submit’ button to submit test results to the
IHE Project Manager for review – the ‘Finish’ button
should be selected to end the current testing session
41
View Results – Validation and Summary Reports
Individual validation reports are
available at the end of each transaction
and again at the conclusion of a test
case
A summary-level report that compiles
individual validations reports will also
be available – reports may be printed
or saved to the user’s local file system
42
View Results – Test Summary
Registered users can view their test
history on the ‘Reports’ tab – this tab
provides access to saved transaction
and summary-level reports
Users may select the ‘Actor Tested’ and ‘HL7
Version’ to view their list of previously run
test cases. Users may then select the
corresponding radio button to view the
results for a particular test case
Users can download and save the
‘Result Summary’ in both HTML and
PDF formats
43
Validation
HL7 v3 Messages and IHE Actor Functional Behavior
HL7 V3 Validation Overview
• Check for correct Interaction ID (although no check on
structure outside of correct root element name)
• Implied communication message exchange test (i.e., SOAP—
no WS-addressing)
• Check against the validation context for the specific test case
– Similar to v2
• Not quite as robust and flexible as v2 testing yet
• This will be improved in the coming weeks/months
• Will incorporate our v3 External Validation Service (EVS)
45
Configuration and Trouble-Shooting
Configuration Information
• V2 Applications sending ER7
– IP Address: 141.156.15.209
– Port Number: 9080
• V2 Applications sending XML
– IP Address: 141.156.15.209
– Port Number: 9070
• V3 Application
– IP Address: 141.156.15.209
– Port Number: 9090
• V3 SOAP end-point
– http://141.156.15.209:9090
47
Example PIX Source Vendor Configuration Information
• Configuration Information for sending V2 messages
Application Name: NIST_Swan_PIX_Manager_78 (varies)
Facility Name: NIST
IP Address:141.156.15.209
Port Number:9080 (ER7 Messages)
Port Number:9070 (XML Messages)
• Configuration Information for sending V3 messages
Application Name: 2.16.840.1.113883.3.72.6.5.92 (varies)
Facility Name: 2.16.840.1.113883.3.72.6.1 (Optional)
IP Address: 141.156.15.209
Port Number: 9090 (V3 Messages)
48
Dynamic PIX/PDQ Server Application Name Allocation
• For each test case instance the name of the PIX Manager or
PDQ Supplier is created dynamically
• In order to interact with our PIX Manager or our PDQ Supplier
Test Agent you will need to use the information provided
in “Configuration Information” dialog
– For example (V2):
• Application Name: NIST_Swan_PIX_Manager_150
• Facility Name: NIST
– For example (V3):
• Application Name: 2.16.840.1.113883.3.72.6.5.17
• Facility Name: 2.16.840.1.113883.3.72.6.1 (Optional)
– The life of this test agent exists only for the duration of the test
– This ensures that each vendor test is isolated
• If you send to an application name that no longer exists you
will get the following response from our system:
– Nothing from the user console—we’re still listening for messages
– An acknowledge message with error is sent back to you over the network
49
Trouble-Shooting
• Site is unavailable
–
–
–
–
–
Typically means we are redeploying the application
This is a web application so we need to redeploy a .war file when we make changes
The downtime will be in the neighborhood of 15-20 minutes
We will not announce short term downtimes
DSL may be down
• No response from console log
–
–
–
–
–
–
You may have sent to a destination that we could not process
i.e., An incorrect receiving name
In this case we will send back an acknowledge/error over the network
You need to check on your end
On our console log nothing will happen
If you determined that this was the problem you can resend a properly addressed
message; we’ll still be listening up to the session timeout
• Site appears to be down
– Restart in a new browser window
• Completed Report is missing
– When we discover an error in the test case (i.e., the test case is wrong) we fixed it
– Tests that passed using an incorrect test are no longer valid
– This should not occur often
50
Summary
Summary
• New PIX/PDQ Pre-connectathon testing tool
• Trial for the 2010 testing cycle
• The tool is evolving…
– So stick in there
– We need your feedback
• Serve as the platform for testing other IHE domains in future
• Serve as the platform for ARRA meaningful certification testing as
part of the NIST Healthcare Testing Infrastructure project
• Components will be available in the NIST HIT Testing Infrastructure
which will be enable integration into other tooling project (e.g., IHE
Gazelle)
• Current to-do list
–
–
–
–
–
Improve V3 validation
Improve test case descriptions
Bug tracking system
Development of test plans, cases, and documentation
Make software available
52
Support
• Harold Affo
• Len Gebase
• Sydney Henrard
• Mary Laamanen
• Andrew McCaffrey
• Caroline Rosin
• Robert Snelick
Send e-mail to Rob Snelick:
[email protected]
OR
IHE PIX/PDQ Google Group:
http://groups.google.com/group/ihe_pix_pdq_testing
• We anticipate bugs and the need for clarification of the tests. We will
responsive.
• NEED FEEDBACK: Report bugs, what you like, what you hate, what
annoys you, and suggestions for a better user interface and features.
53
Stick with us, things will only be muddy for a while…green grass is ahead
54