Implementation SupportPublish-box (todo)
| FHIR Infrastructure Work Group | Maturity Level: N/A | Standards Status: Informative | Compartments: No defined compartments |
Raw Turtle (+ also see Turtle/RDF Format Specification)
General TestScript Example
@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 -------------------------------------------------------------------
<http://hl7.org/fhir/TestScript/testscript-example> a fhir:TestScript ;
fhir:nodeRole fhir:treeRoot ;
fhir:id [ fhir:v "testscript-example"] ; #
fhir:extension ( [
fhir:url [ fhir:v "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg"^^xsd:anyURI ] ;
fhir:value [
a fhir:code ;
fhir:v "fhir"
]
] ) ; #
fhir:url [ fhir:v "http://hl7.org/fhir/TestScript/testscript-example"^^xsd:anyURI] ; #
fhir:identifier ( [
fhir:system [ fhir:v "urn:ietf:rfc:3986"^^xsd:anyURI ] ;
fhir:value [ fhir:v "urn:oid:2.16.840.1.113883.4.642.12.4" ]
] ) ; #
fhir:version [ fhir:v "1.0"] ; #
fhir:name [ fhir:v "TestScriptExample"] ; #
fhir:title [ fhir:v "TestScript Example"] ; #
fhir:status [ fhir:v "draft"] ; #
fhir:experimental [ fhir:v true] ; #
fhir:date [ fhir:v "2017-01-18"^^xsd:date] ; #
fhir:publisher [ fhir:v "HL7 International / FHIR Infrastructure"] ; #
fhir:contact ( [
fhir:telecom ( [
fhir:system [ fhir:v "url" ] ;
fhir:value [ fhir:v "http://www.hl7.org/Special/committees/fiwg" ]
] )
] ) ; #
fhir:description [ fhir:v "TestScript example resource with setup to delete if present and create a new instance of a Patient; and single test definition to read the created Patient with various asserts."] ; #
fhir:useContext ( [
fhir:code [
fhir:system [ fhir:v "http://terminology.hl7.org/CodeSystem/usage-context-type"^^xsd:anyURI ] ;
fhir:code [ fhir:v "focus" ]
] ;
fhir:value [
a fhir:CodeableConcept ;
fhir:coding ( [
fhir:system [ fhir:v "http://terminology.hl7.org/CodeSystem/variant-state"^^xsd:anyURI ] ;
fhir:code [ fhir:v "positive" ]
] )
]
] [
fhir:code [
fhir:system [ fhir:v "http://terminology.hl7.org/CodeSystem/usage-context-type"^^xsd:anyURI ] ;
fhir:code [ fhir:v "program" ]
] ;
fhir:value [
a fhir:Range ;
fhir:low [
fhir:value [ fhir:v "2018"^^xsd:decimal ] ;
fhir:unit [ fhir:v "year" ] ;
fhir:system [ fhir:v "http://unitsofmeasure.org"^^xsd:anyURI ] ;
fhir:code [ fhir:v "a" ]
]
]
] ) ; #
fhir:jurisdiction ( [
fhir:coding ( [
fhir:system [ fhir:v "urn:iso:std:iso:3166"^^xsd:anyURI ] ;
fhir:code [ fhir:v "US" ] ;
fhir:display [ fhir:v "United States of America" ]
] )
] ) ; #
fhir:purpose [ fhir:v "Patient Conditional Create (Update), Read and Delete Operations"] ; #
fhir:copyright [ fhir:v "© HL7.org 2011+"] ; #
fhir:metadata [
fhir:link ( [
fhir:url [ fhir:v "http://hl7.org/fhir/patient.html"^^xsd:anyURI ] ;
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 Update, Read and Delete Operations" ] ;
fhir:link ( [ fhir:v "http://hl7.org/fhir/http.html#delete"^^xsd:anyURI ] [ fhir:v "http://hl7.org/fhir/http.html#read"^^xsd:anyURI ] [ fhir:v "http://hl7.org/fhir/http.html#update"^^xsd:anyURI ] ) ;
fhir:capabilities [
fhir:v "http://hl7.org/fhir/CapabilityStatement/example"^^xsd:anyURI ;
fhir:link <http://hl7.org/fhir/CapabilityStatement/example>
]
] )
] ; #
fhir:fixture ( [
fhir:id [ fhir:v "fixture-patient-create" ] ;
fhir:autocreate [ fhir:v false ] ;
fhir:autodelete [ fhir:v false ] ;
fhir:resource [
fhir:link <http://hl7.org/fhir/Patient/example> ;
fhir:reference [ fhir:v "Patient/example" ] ;
fhir:display [ fhir:v "Peter Chalmers" ]
]
] [
fhir:id [ fhir:v "fixture-patient-minimum" ] ;
fhir:autocreate [ fhir:v false ] ;
fhir:autodelete [ fhir:v false ] ;
fhir:resource [
fhir:link <http://hl7.org/fhir/Patient/example> ;
fhir:reference [ fhir:v "Patient/example" ] ;
fhir:display [ fhir:v "Peter Chalmers (minimum)" ]
]
] ) ; #
fhir:profile ( [
fhir:v "http://hl7.org/fhir/StructureDefinition/Patient"^^xsd:anyURI ;
fhir:link <http://hl7.org/fhir/StructureDefinition/Patient>
] ) ; #
fhir:variable ( [
fhir:name [ fhir:v "createResourceId" ] ;
fhir:path [ fhir:v "Patient/id" ] ;
fhir:sourceId [ fhir:v "fixture-patient-create" ]
] ) ; #
fhir:setup [
fhir:action ( [
fhir:operation [
fhir:type [
fhir:system [ fhir:v "http://hl7.org/fhir/restful-interaction"^^xsd:anyURI ] ;
fhir:code [ fhir:v "delete" ]
] ;
fhir:resource [ fhir:v "Patient"^^xsd:anyURI ] ;
fhir:label [ fhir:v "SetupDeletePatient" ] ;
fhir:description [ fhir:v "Execute a delete operation to insure the patient does not exist on the server." ] ;
fhir:accept [ fhir:v "json" ] ;
fhir:encodeRequestUrl [ fhir:v true ] ;
fhir:params [ fhir:v "/${createResourceId}" ]
]
] [
fhir:assert [
fhir:description [ fhir:v "Confirm that the returned HTTP status is 200(OK) or 204(No Content)." ] ;
fhir:direction [ fhir:v "response" ] ;
fhir:operator [ fhir:v "in" ] ;
fhir:responseCode [ fhir:v "200,204" ] ;
fhir:stopTestOnFail [ fhir:v false ] ;
fhir:warningOnly [ fhir:v false ]
]
] [
fhir:operation [
fhir:type [
fhir:system [ fhir:v "http://hl7.org/fhir/restful-interaction"^^xsd:anyURI ] ;
fhir:code [ fhir:v "update" ]
] ;
fhir:resource [ fhir:v "Patient"^^xsd:anyURI ] ;
fhir:label [ fhir:v "SetupCreatePatient" ] ;
fhir:description [ fhir:v "Create patient resource on test server using the contents of fixture-patient-create" ] ;
fhir:accept [ fhir:v "json" ] ;
fhir:contentType [ fhir:v "json" ] ;
fhir:encodeRequestUrl [ fhir:v true ] ;
fhir:params [ fhir:v "/${createResourceId}" ] ;
fhir:sourceId [ fhir:v "fixture-patient-create" ]
]
] [
fhir:assert [
fhir:description [ fhir:v "Confirm that the returned HTTP status is 201(Created)." ] ;
fhir:direction [ fhir:v "response" ] ;
fhir:responseCode [ fhir:v "201" ] ;
fhir:stopTestOnFail [ fhir:v false ] ;
fhir:warningOnly [ fhir:v false ]
]
] [
fhir:operation [
fhir:type [
fhir:system [ fhir:v "http://hl7.org/fhir/restful-interaction"^^xsd:anyURI ] ;
fhir:code [ fhir:v "read" ]
] ;
fhir:resource [ fhir:v "Patient"^^xsd:anyURI ] ;
fhir:description [ fhir:v "Read the created patient resource on the test server using the id from fixture-patient-create. Verify contents." ] ;
fhir:encodeRequestUrl [ fhir:v true ] ;
fhir:targetId [ fhir:v "fixture-patient-create" ]
]
] [
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 Patient contains the expected family name 'Chalmers'. Uses explicit compareToSourceId reference to fixture-patient-create used to create the Patient." ] ;
fhir:compareToSourceId [ fhir:v "fixture-patient-create" ] ;
fhir:compareToSourceExpression [ fhir:v "Patient.name.first().family" ] ;
fhir:operator [ fhir:v "equals" ] ;
fhir:stopTestOnFail [ fhir:v false ] ;
fhir:warningOnly [ fhir:v false ]
]
] )
] ; #
fhir:test ( [
fhir:id [ fhir:v "01-ReadPatient" ] ;
fhir:name [ fhir:v "Read Patient" ] ;
fhir:description [ fhir:v "Read a Patient and validate response." ] ;
fhir:action ( [
fhir:operation [
fhir:type [
fhir:system [ fhir:v "http://hl7.org/fhir/restful-interaction"^^xsd:anyURI ] ;
fhir:code [ fhir:v "read" ]
] ;
fhir:resource [ fhir:v "Patient"^^xsd:anyURI ] ;
fhir:description [ fhir:v "Read the patient resource on the test server using the id from fixture-patient-create. Prevent URL encoding of the request." ] ;
fhir:encodeRequestUrl [ fhir:v false ] ;
fhir:responseId [ fhir:v "fixture-patient-read" ] ;
fhir:targetId [ fhir:v "fixture-patient-create" ]
]
] [
fhir:assert [
fhir:label [ fhir:v "01-ReadPatientOK" ] ;
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 HTTP Header Last-Modified is present. Warning only as the server might not support versioning." ] ;
fhir:direction [ fhir:v "response" ] ;
fhir:headerField [ fhir:v "Last-Modified" ] ;
fhir:operator [ fhir:v "notEmpty" ] ;
fhir:stopTestOnFail [ fhir:v false ] ;
fhir:warningOnly [ fhir:v true ]
]
] [
fhir:assert [
fhir:description [ fhir:v "Confirm that the returned resource type is Patient." ] ;
fhir:resource [ fhir:v "Patient"^^xsd:anyURI ] ;
fhir:stopTestOnFail [ fhir:v false ] ;
fhir:warningOnly [ fhir:v false ]
]
] [
fhir:assert [
fhir:description [ fhir:v "Confirm that the returned Patient conforms to the base FHIR specification." ] ;
fhir:stopTestOnFail [ fhir:v false ] ;
fhir:validateProfileId [ fhir:v "patient-profile" ] ;
fhir:warningOnly [ fhir:v false ]
]
] [
fhir:assert [
fhir:description [ fhir:v "Confirm that the returned Patient contains the expected family name 'Chalmers'. Uses explicit sourceId reference to read responseId fixture." ] ;
fhir:operator [ fhir:v "equals" ] ;
fhir:path [ fhir:v "fhir:Patient/fhir:name/fhir:family/@value" ] ;
fhir:sourceId [ fhir:v "fixture-patient-read" ] ;
fhir:stopTestOnFail [ fhir:v false ] ;
fhir:value [ fhir:v "Chalmers" ] ;
fhir:warningOnly [ fhir:v false ]
]
] [
fhir:assert [
fhir:description [ fhir:v "Confirm that the returned Patient contains the expected given name 'Peter'. Uses explicit sourceId reference to read responseId fixture." ] ;
fhir:operator [ fhir:v "equals" ] ;
fhir:path [ fhir:v "fhir:Patient/fhir:name/fhir:given/@value" ] ;
fhir:sourceId [ fhir:v "fixture-patient-read" ] ;
fhir:stopTestOnFail [ fhir:v false ] ;
fhir:value [ fhir:v "Peter" ] ;
fhir:warningOnly [ fhir:v false ]
]
] [
fhir:assert [
fhir:description [ fhir:v "Confirm that the returned Patient contains the expected family name 'Chalmers'. Uses explicit compareToSourceId reference to fixture-patient-create used to create the Patient and implicit reference to read response payload." ] ;
fhir:compareToSourceId [ fhir:v "fixture-patient-create" ] ;
fhir:compareToSourcePath [ fhir:v "fhir:Patient/fhir:name/fhir:family/@value" ] ;
fhir:operator [ fhir:v "equals" ] ;
fhir:path [ fhir:v "fhir:Patient/fhir:name/fhir:family/@value" ] ;
fhir:stopTestOnFail [ fhir:v false ] ;
fhir:warningOnly [ fhir:v false ]
]
] [
fhir:assert [
fhir:description [ fhir:v "Confirm that the returned Patient contains the expected family name 'Chalmers'. Uses explicit compareToSourceId reference to fixture-patient-create used to create the Patient and explicit reference to read response payload and default operator of 'equals'." ] ;
fhir:compareToSourceId [ fhir:v "fixture-patient-create" ] ;
fhir:compareToSourcePath [ fhir:v "fhir:Patient/fhir:name/fhir:given/@value" ] ;
fhir:path [ fhir:v "fhir:Patient/fhir:name/fhir:given/@value" ] ;
fhir:sourceId [ fhir:v "fixture-patient-read" ] ;
fhir:stopTestOnFail [ fhir:v false ] ;
fhir:warningOnly [ fhir:v false ]
]
] [
fhir:assert [
fhir:description [ fhir:v "Confirm that the returned resource contains the expected retained elements and values. Warning only to provide users with reviewable results." ] ;
fhir:minimumId [ fhir:v "fixture-patient-minimum" ] ;
fhir:stopTestOnFail [ fhir:v false ] ;
fhir:warningOnly [ fhir:v true ]
]
] )
] ) ; #
fhir:teardown [
fhir:action ( [
fhir:operation [
fhir:type [
fhir:system [ fhir:v "http://hl7.org/fhir/restful-interaction"^^xsd:anyURI ] ;
fhir:code [ fhir:v "delete" ]
] ;
fhir:resource [ fhir:v "Patient"^^xsd:anyURI ] ;
fhir:description [ fhir:v "Delete the patient resource on the test server using the id from fixture-patient-create." ] ;
fhir:encodeRequestUrl [ fhir:v true ] ;
fhir:targetId [ fhir:v "fixture-patient-create" ]
]
] )
] . #
<http://hl7.org/fhir/Patient/example> a fhir:Patient .
# -------------------------------------------------------------------------------------
Usage note: every effort has been made to ensure that the examples are correct and useful, but they are not a normative part of the specification.
FHIR ®© HL7.org 2011+. FHIR R6 hl7.fhir.core#6.0.0-ballot3 generated on Tue, Apr 1, 2025 12:26+1100.
Links: Search |
Version History |
Contents |
Glossary |
QA |
Compare to R5 |
|
Propose a change