FHIR Testing IG, published by HL7 International / FHIR Infrastructure. This guide is not an authorized publication; it is the continuous build for version 0.1.0-SNAPSHOT built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/fhir-testing-ig/ and changes regularly. See the Directory of published versions
| Page standards status: Informative |
@prefix fhir: <http://hl7.org/fhir/> . @prefix owl: <http://www.w3.org/2002/07/owl#> . @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . @prefix xsd: <http://www.w3.org/2001/XMLSchema#> . # - resource ------------------------------------------------------------------- a fhir:TestScript ; fhir:resourceDefinition http://hl7.org/fhir/StructureDefinition/TestScript|0.1.0-SNAPSHOT ; fhir:nodeRole fhir:treeRoot ; fhir:id [ fhir:v "testscript-example-multisystem"] ; # fhir:language [ fhir:v "en"] ; # fhir:text [ fhir:status [ fhir:v "generated" ] ; fhir:div [ fhir:v "<div xmlns=\"http://www.w3.org/1999/xhtml\" xml:lang=\"en\" lang=\"en\"><p class=\"res-header-id\"><b>Generated Narrative: TestScript testscript-example-multisystem</b></p><a name=\"testscript-example-multisystem\"> </a><a name=\"hctestscript-example-multisystem\"> </a><div style=\"display: inline-block; background-color: #d9e0e7; padding: 6px; margin: 4px; border: 1px solid #8da1b4; border-radius: 5px; line-height: 60%\"><p style=\"margin-bottom: 0px\">Language: en</p></div><p><b>url</b>: <a href=\"http://hl7.org/fhir/R5/testscript-example-multisystem.html\">http://hl7.org/fhir/TestScript/testscript-example-multisystem</a></p><p><b>identifier</b>: <a href=\"http://terminology.hl7.org/7.0.1/NamingSystem-uri.html\" title=\"As defined by RFC 3986 (http://www.ietf.org/rfc/rfc3986.txt)(with many schemes defined in many RFCs). For OIDs and UUIDs, use the URN form (urn:oid:(note: lowercase) and urn:uuid:). See http://www.ietf.org/rfc/rfc3001.txt and http://www.ietf.org/rfc/rfc4122.txt #xD;#xA;#xD;#xA;This oid is used as an identifier II.root to indicate the the extension is an absolute URI (technically, an IRI). Typically, this is used for OIDs and GUIDs. Note that when this OID is used with OIDs and GUIDs, the II.extension should start with urn:oid or urn:uuid: #xD;#xA;#xD;#xA;Note that this OID is created to aid with interconversion between CDA and FHIR - FHIR uses urn:ietf:rfc:3986 as equivalent to this OID. URIs as identifiers appear more commonly in FHIR.#xD;#xA;#xD;#xA;This OID may also be used in CD.codeSystem.\">Uniform Resource Identifier (URI)</a>/urn:oid:2.16.840.1.113883.4.642.12.6</p><p><b>version</b>: 1.0</p><p><b>name</b>: TestScriptExampleMultiSystem</p><p><b>title</b>: Multisystem Test Script</p><p><b>status</b>: Draft</p><p><b>experimental</b>: true</p><p><b>date</b>: 2017-01-18</p><p><b>publisher</b>: HL7</p><p><b>contact</b>: Support: <a href=\"mailto:support@HL7.org\">support@HL7.org</a></p><p><b>description</b>: </p><div><p>TestScript example resource showing use of origin and destination for multisystem support. The single origin will execute a Patient read against the two destination systems using user defined dynamic variables. The test engine will wait at each operation action with a defined origin and destination for the origin test system to send the expected FHIR operation to the destination test system. Once the expected request and response is observed, the test engine will continue with the test execution.</p>\n</div><p><b>jurisdiction</b>: <span title=\"Codes:{urn:iso:std:iso:3166 US}\">United States of America</span></p><p><b>purpose</b>: </p><div><p>Patient Read Operation</p>\n</div><p><b>copyright</b>: </p><div><p>© HL7.org 2011+</p>\n</div><blockquote><p><b>testSystem</b></p><p><b>index</b>: 1</p><p><b>title</b>: FHIR Client</p><p><b>description</b>: </p><div><p>The FHIR Client system under test.</p>\n</div></blockquote><blockquote><p><b>testSystem</b></p><p><b>index</b>: 1</p><p><b>title</b>: FHIR Server</p><p><b>description</b>: </p><div><p>The FHIR Server system under test.</p>\n</div><p><b>url</b>: <a href=\"http://acme.com/fhir/test\">http://acme.com/fhir/test</a></p></blockquote><blockquote><p><b>metadata</b></p><h3>Links</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Url</b></td><td><b>Description</b></td></tr><tr><td style=\"display: none\">*</td><td><a href=\"http://hl7.org/fhir/patient.html\">http://hl7.org/fhir/patient.html</a></td><td>Demographics and other administrative information about an individual or animal receiving care or other health-related services.</td></tr></table><blockquote><p><b>capability</b></p><p><b>required</b>: true</p><p><b>validated</b>: false</p><p><b>description</b>: Patient Read Operation</p><p><b>origin</b>: 1</p><p><b>destination</b>: 1</p><p><b>link</b>: <a href=\"http://hl7.org/fhir/http.html#read\">http://hl7.org/fhir/http.html#read</a></p><p><b>capabilities</b>: <a href=\"http://hl7.org/fhir/R5/capabilitystatement-example.html\">http://hl7.org/fhir/CapabilityStatement/example</a></p></blockquote><blockquote><p><b>capability</b></p><p><b>required</b>: true</p><p><b>validated</b>: false</p><p><b>description</b>: Patient Read Operation</p><p><b>origin</b>: 1</p><p><b>destination</b>: 2</p><p><b>link</b>: <a href=\"http://hl7.org/fhir/http.html#read\">http://hl7.org/fhir/http.html#read</a></p><p><b>capabilities</b>: <a href=\"http://hl7.org/fhir/R5/capabilitystatement-example.html\">http://hl7.org/fhir/CapabilityStatement/example</a></p></blockquote></blockquote><blockquote><p><b>variable</b></p><p><b>name</b>: Dest1PatientResourceId</p><p><b>defaultValue</b>: example</p></blockquote><blockquote><p><b>variable</b></p><p><b>name</b>: Dest2PatientResourceId</p><p><b>defaultValue</b>: example</p></blockquote><blockquote><p><b>test</b></p><blockquote><p><b>id</b></p>01-ReadPatient-Destination1</blockquote><p><b>name</b>: ReadPatient-Destination1</p><p><b>description</b>: Read a Patient from the first destination test system using the user defined dynamic variable ${Dest1PatientResourceId}. Perform basic validation.</p><blockquote><p><b>action</b></p><h3>Operations</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Type</b></td><td><b>Resource</b></td><td><b>Description</b></td><td><b>Accept</b></td><td><b>ContentType</b></td><td><b>Destination</b></td><td><b>EncodeRequestUrl</b></td><td><b>Origin</b></td><td><b>Params</b></td><td><b>RequestId</b></td></tr><tr><td style=\"display: none\">*</td><td><a href=\"http://hl7.org/fhir/R5/codesystem-restful-interaction.html#restful-interaction-read\">FHIR Restful Interactions: read</a> (read)</td><td><a href=\"http://hl7.org/fhir/R5/patient.html\">http://hl7.org/fhir/StructureDefinition/Patient</a></td><td>Read a Patient from the first destination test system and perform basic validation.</td><td>xml</td><td>xml</td><td>1</td><td>true</td><td>1</td><td>/${Dest1PatientResourceId}</td><td>request-read-patient-01</td></tr></table></blockquote><blockquote><p><b>action</b></p><h3>Asserts</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Description</b></td><td><b>RequestMethod</b></td><td><b>StopTestOnFail</b></td><td><b>WarningOnly</b></td></tr><tr><td style=\"display: none\">*</td><td>Confirm that the request method GET was sent by the client system under test.</td><td>GET</td><td>false</td><td>false</td></tr></table></blockquote><blockquote><p><b>action</b></p><h3>Asserts</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Description</b></td><td><b>Direction</b></td><td><b>HeaderField</b></td><td><b>Operator</b></td><td><b>StopTestOnFail</b></td><td><b>Value</b></td><td><b>WarningOnly</b></td></tr><tr><td style=\"display: none\">*</td><td>Confirm that the client requested an Accept of xml.</td><td>request</td><td>Accept</td><td>contains</td><td>false</td><td>xml</td><td>false</td></tr></table></blockquote><blockquote><p><b>action</b></p><h3>Asserts</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Description</b></td><td><b>Direction</b></td><td><b>Response</b></td><td><b>StopTestOnFail</b></td><td><b>WarningOnly</b></td></tr><tr><td style=\"display: none\">*</td><td>Confirm that the returned HTTP status is 200(OK).</td><td>response</td><td>OK</td><td>false</td><td>false</td></tr></table></blockquote><blockquote><p><b>action</b></p><h3>Asserts</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Description</b></td><td><b>Direction</b></td><td><b>ContentType</b></td><td><b>StopTestOnFail</b></td><td><b>WarningOnly</b></td></tr><tr><td style=\"display: none\">*</td><td>Confirm that the returned format is XML.</td><td>response</td><td>xml</td><td>false</td><td>false</td></tr></table></blockquote><blockquote><p><b>action</b></p><h3>Asserts</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Description</b></td><td><b>Direction</b></td><td><b>Resource</b></td><td><b>StopTestOnFail</b></td><td><b>WarningOnly</b></td></tr><tr><td style=\"display: none\">*</td><td>Confirm that the returned resource type is Patient.</td><td>response</td><td><a href=\"http://hl7.org/fhir/R5/patient.html\">http://hl7.org/fhir/StructureDefinition/Patient</a></td><td>false</td><td>false</td></tr></table></blockquote></blockquote><blockquote><p><b>test</b></p><blockquote><p><b>id</b></p>02-ReadPatient-Destination2</blockquote><p><b>name</b>: ReadPatient-Destination2</p><p><b>description</b>: Read a Patient from the second destination test system using the user defined dynamic variable ${Dest2PatientResourceId}. Perform basic validation.</p><blockquote><p><b>action</b></p><blockquote><p><b>operation</b></p><p><b>type</b>: <a href=\"http://hl7.org/fhir/R5/codesystem-restful-interaction.html#restful-interaction-read\">FHIR Restful Interactions: read</a> (read)</p><p><b>resource</b>: <a href=\"http://hl7.org/fhir/R5/patient.html\">http://hl7.org/fhir/StructureDefinition/Patient</a></p><p><b>description</b>: Read a Patient from the second destination test system and perform basic validation.</p><p><b>accept</b>: xml</p><p><b>contentType</b>: xml</p><p><b>destination</b>: 2</p><p><b>encodeRequestUrl</b>: true</p><p><b>origin</b>: 1</p><p><b>params</b>: /${Dest2PatientResourceId}</p><h3>RequestHeaders</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Field</b></td><td><b>Value</b></td></tr><tr><td style=\"display: none\">*</td><td>Accept-Charset</td><td>utf-8</td></tr></table></blockquote></blockquote><blockquote><p><b>action</b></p><h3>Asserts</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Description</b></td><td><b>Direction</b></td><td><b>HeaderField</b></td><td><b>Operator</b></td><td><b>StopTestOnFail</b></td><td><b>Value</b></td><td><b>WarningOnly</b></td></tr><tr><td style=\"display: none\">*</td><td>Confirm that the client requested an Accept of xml.</td><td>request</td><td>Accept</td><td>contains</td><td>false</td><td>xml</td><td>false</td></tr></table></blockquote><blockquote><p><b>action</b></p><h3>Asserts</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Description</b></td><td><b>Direction</b></td><td><b>Response</b></td><td><b>StopTestOnFail</b></td><td><b>WarningOnly</b></td></tr><tr><td style=\"display: none\">*</td><td>Confirm that the returned HTTP status is 200(OK).</td><td>response</td><td>OK</td><td>false</td><td>false</td></tr></table></blockquote><blockquote><p><b>action</b></p><h3>Asserts</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Description</b></td><td><b>Direction</b></td><td><b>ContentType</b></td><td><b>StopTestOnFail</b></td><td><b>WarningOnly</b></td></tr><tr><td style=\"display: none\">*</td><td>Confirm that the returned format is XML.</td><td>response</td><td>xml</td><td>false</td><td>false</td></tr></table></blockquote><blockquote><p><b>action</b></p><h3>Asserts</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Description</b></td><td><b>Direction</b></td><td><b>Resource</b></td><td><b>StopTestOnFail</b></td><td><b>WarningOnly</b></td></tr><tr><td style=\"display: none\">*</td><td>Confirm that the returned resource type is Patient.</td><td>response</td><td><a href=\"http://hl7.org/fhir/R5/patient.html\">http://hl7.org/fhir/StructureDefinition/Patient</a></td><td>false</td><td>false</td></tr></table></blockquote></blockquote></div>"^^rdf:XMLLiteral ] ] ; # fhir:url [ fhir:v "http://hl7.org/fhir/TestScript/testscript-example-multisystem"^^xsd:anyURI ; fhir:l <http://hl7.org/fhir/TestScript/testscript-example-multisystem> ] ; # fhir:identifier ( [ fhir:system [ fhir:v "urn:ietf:rfc:3986"^^xsd:anyURI ; fhir:l <urn:ietf:rfc:3986> ] ; fhir:value [ fhir:v "urn:oid:2.16.840.1.113883.4.642.12.6" ] ] ) ; # fhir:version [ fhir:v "1.0"] ; # fhir:name [ fhir:v "TestScriptExampleMultiSystem"] ; # fhir:title [ fhir:v "Multisystem Test Script"] ; # fhir:status [ fhir:v "draft"] ; # fhir:experimental [ fhir:v true] ; # fhir:date [ fhir:v "2017-01-18"^^xsd:date] ; # fhir:publisher [ fhir:v "HL7"] ; # fhir:contact ( [ fhir:name [ fhir:v "Support" ] ; ( fhir:telecom [ fhir:system [ fhir:v "email" ] ; fhir:value [ fhir:v "support@HL7.org" ] ; fhir:use [ fhir:v "work" ] ] ) ] ) ; # fhir:description [ fhir:v "TestScript example resource showing use of origin and destination for multisystem support. The single origin will execute a Patient read against the two destination systems using user defined dynamic variables. The test engine will wait at each operation action with a defined origin and destination for the origin test system to send the expected FHIR operation to the destination test system. Once the expected request and response is observed, the test engine will continue with the test execution."] ; # fhir:jurisdiction ( [ ( fhir:coding [ fhir:system [ fhir:v "urn:iso:std:iso:3166"^^xsd:anyURI ; fhir:l <urn:iso:std:iso:3166> ] ; fhir:code [ fhir:v "US" ] ; fhir:display [ fhir:v "United States of America" ] ] ) ] ) ; # fhir:purpose [ fhir:v "Patient Read Operation"] ; # fhir:copyright [ fhir:v "© HL7.org 2011+"] ; # fhir:testSystem ( [ fhir:index [ fhir:v "1"^^xsd:positiveInteger ] ; fhir:title [ fhir:v "FHIR Client" ] ; fhir:description [ fhir:v "The FHIR Client system under test." ] ] [ fhir:index [ fhir:v "1"^^xsd:positiveInteger ] ; fhir:title [ fhir:v "FHIR Server" ] ; fhir:description [ fhir:v "The FHIR Server system under test." ] ; fhir:url [ fhir:v "http://acme.com/fhir/test"^^xsd:anyURI ; fhir:l <http://acme.com/fhir/test> ] ] ) ; # fhir:metadata [ ( fhir:link [ fhir:url [ fhir:v "http://hl7.org/fhir/patient.html"^^xsd:anyURI ; fhir:l <http://hl7.org/fhir/patient.html> ] ; fhir:description [ fhir:v "Demographics and other administrative information about an individual or animal receiving care or other health-related services." ] ] ) ; ( fhir:capability [ fhir:required [ fhir:v true ] ; fhir:validated [ fhir:v false ] ; fhir:description [ fhir:v "Patient Read Operation" ] ; ( fhir:origin [ fhir:v 1 ] ) ; fhir:destination [ fhir:v 1 ] ; ( fhir:link [ fhir:v "http://hl7.org/fhir/http.html#read"^^xsd:anyURI ; fhir:l <http://hl7.org/fhir/http.html#read> ] ) ; fhir:capabilities [ fhir:v "http://hl7.org/fhir/CapabilityStatement/example"^^xsd:anyURI ; fhir:l <http://hl7.org/fhir/CapabilityStatement/example> ] ] [ fhir:required [ fhir:v true ] ; fhir:validated [ fhir:v false ] ; fhir:description [ fhir:v "Patient Read Operation" ] ; ( fhir:origin [ fhir:v 1 ] ) ; fhir:destination [ fhir:v 2 ] ; ( fhir:link [ fhir:v "http://hl7.org/fhir/http.html#read"^^xsd:anyURI ; fhir:l <http://hl7.org/fhir/http.html#read> ] ) ; fhir:capabilities [ fhir:v "http://hl7.org/fhir/CapabilityStatement/example"^^xsd:anyURI ; fhir:l <http://hl7.org/fhir/CapabilityStatement/example> ] ] ) ] ; # fhir:variable ( [ fhir:name [ fhir:v "Dest1PatientResourceId" ] ; fhir:defaultValue [ fhir:v "example" ] ] [ fhir:name [ fhir:v "Dest2PatientResourceId" ] ; fhir:defaultValue [ fhir:v "example" ] ] ) ; # fhir:test ( [ fhir:id [ fhir:v "01-ReadPatient-Destination1" ] ; fhir:name [ fhir:v "ReadPatient-Destination1" ] ; fhir:description [ fhir:v "Read a Patient from the first destination test system using the user defined dynamic variable ${Dest1PatientResourceId}. Perform basic validation." ] ; ( fhir:action [ fhir:operation [ fhir:type [ fhir:system [ fhir:v "http://hl7.org/fhir/restful-interaction"^^xsd:anyURI ; fhir:l <http://hl7.org/fhir/restful-interaction> ] ; fhir:code [ fhir:v "read" ] ] ; fhir:resource [ fhir:v "Patient"^^xsd:anyURI ; fhir:l fhir:Patient ] ; fhir:description [ fhir:v "Read a Patient from the first destination test system and perform basic validation." ] ; fhir:accept [ fhir:v "xml" ] ; fhir:contentType [ fhir:v "xml" ] ; fhir:destination [ fhir:v 1 ] ; fhir:encodeRequestUrl [ fhir:v true ] ; fhir:origin [ fhir:v 1 ] ; fhir:params [ fhir:v "/${Dest1PatientResourceId}" ] ; fhir:requestId [ fhir:v "request-read-patient-01" ] ] ] [ fhir:assert [ fhir:description [ fhir:v "Confirm that the request method GET was sent by the client system under test." ] ; fhir:requestMethod [ fhir:v "get" ] ; fhir:stopTestOnFail [ fhir:v false ] ; fhir:warningOnly [ fhir:v false ] ] ] [ fhir:assert [ fhir:description [ fhir:v "Confirm that the client requested an Accept of xml." ] ; fhir:direction [ fhir:v "request" ] ; fhir:headerField [ fhir:v "Accept" ] ; fhir:operator [ fhir:v "contains" ] ; fhir:stopTestOnFail [ fhir:v false ] ; fhir:value [ fhir:v "xml" ] ; fhir:warningOnly [ fhir:v false ] ] ] [ fhir:assert [ fhir:description [ fhir:v "Confirm that the returned HTTP status is 200(OK)." ] ; fhir:direction [ fhir:v "response" ] ; fhir:response [ fhir:v "okay" ] ; fhir:stopTestOnFail [ fhir:v false ] ; fhir:warningOnly [ fhir:v false ] ] ] [ fhir:assert [ fhir:description [ fhir:v "Confirm that the returned format is XML." ] ; fhir:direction [ fhir:v "response" ] ; fhir:contentType [ fhir:v "xml" ] ; fhir:stopTestOnFail [ fhir:v false ] ; fhir:warningOnly [ fhir:v false ] ] ] [ fhir:assert [ fhir:description [ fhir:v "Confirm that the returned resource type is Patient." ] ; fhir:direction [ fhir:v "response" ] ; fhir:resource [ fhir:v "Patient"^^xsd:anyURI ; fhir:l fhir:Patient ] ; fhir:stopTestOnFail [ fhir:v false ] ; fhir:warningOnly [ fhir:v false ] ] ] ) ] [ fhir:id [ fhir:v "02-ReadPatient-Destination2" ] ; fhir:name [ fhir:v "ReadPatient-Destination2" ] ; fhir:description [ fhir:v "Read a Patient from the second destination test system using the user defined dynamic variable ${Dest2PatientResourceId}. Perform basic validation." ] ; ( fhir:action [ fhir:operation [ fhir:type [ fhir:system [ fhir:v "http://hl7.org/fhir/restful-interaction"^^xsd:anyURI ; fhir:l <http://hl7.org/fhir/restful-interaction> ] ; fhir:code [ fhir:v "read" ] ] ; fhir:resource [ fhir:v "Patient"^^xsd:anyURI ; fhir:l fhir:Patient ] ; fhir:description [ fhir:v "Read a Patient from the second destination test system and perform basic validation." ] ; fhir:accept [ fhir:v "xml" ] ; fhir:contentType [ fhir:v "xml" ] ; fhir:destination [ fhir:v 2 ] ; fhir:encodeRequestUrl [ fhir:v true ] ; fhir:origin [ fhir:v 1 ] ; fhir:params [ fhir:v "/${Dest2PatientResourceId}" ] ; ( fhir:requestHeader [ fhir:field [ fhir:v "Accept-Charset" ] ; fhir:value [ fhir:v "utf-8" ] ] ) ] ] [ fhir:assert [ fhir:description [ fhir:v "Confirm that the client requested an Accept of xml." ] ; fhir:direction [ fhir:v "request" ] ; fhir:headerField [ fhir:v "Accept" ] ; fhir:operator [ fhir:v "contains" ] ; fhir:stopTestOnFail [ fhir:v false ] ; fhir:value [ fhir:v "xml" ] ; fhir:warningOnly [ fhir:v false ] ] ] [ fhir:assert [ fhir:description [ fhir:v "Confirm that the returned HTTP status is 200(OK)." ] ; fhir:direction [ fhir:v "response" ] ; fhir:response [ fhir:v "okay" ] ; fhir:stopTestOnFail [ fhir:v false ] ; fhir:warningOnly [ fhir:v false ] ] ] [ fhir:assert [ fhir:description [ fhir:v "Confirm that the returned format is XML." ] ; fhir:direction [ fhir:v "response" ] ; fhir:contentType [ fhir:v "xml" ] ; fhir:stopTestOnFail [ fhir:v false ] ; fhir:warningOnly [ fhir:v false ] ] ] [ fhir:assert [ fhir:description [ fhir:v "Confirm that the returned resource type is Patient." ] ; fhir:direction [ fhir:v "response" ] ; fhir:resource [ fhir:v "Patient"^^xsd:anyURI ; fhir:l fhir:Patient ] ; fhir:stopTestOnFail [ fhir:v false ] ; fhir:warningOnly [ fhir:v false ] ] ] ) ] ) . #
IG © 2025+ HL7 International / FHIR Infrastructure.
Package hl7.fhir.uv.testing#0.1.0-SNAPSHOT based on FHIR 6.0.0-ballot3.
Generated
2025-12-18
Links: Table of Contents |
QA Report
| Version History |
|
Propose a change
