FHIR CI-Build

This is the Continuous Integration Build of FHIR (will be incorrect/inconsistent at times).
See the Directory of published versions

Example TestScript/testscript-example-history (XML)

FHIR Infrastructure Work GroupMaturity Level: N/AStandards Status: InformativeCompartments: No defined compartments

Raw XML (canonical form + also see XML Format Specification)

Jump past Narrative

History TestScript Example (id = "testscript-example-history")

<?xml version="1.0" encoding="UTF-8"?>

<TestScript xmlns="http://hl7.org/fhir">
  <id value="testscript-example-history"/> 
  <text> <status value="extensions"/> <div xmlns="http://www.w3.org/1999/xhtml"><p> <b> Generated Narrative: TestScript</b> <a name="testscript-example-history"> </a> <a name="hctestscript-example-history"> </a> </p> <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">Resource TestScript &quot;testscript-example-history&quot; </p> </div> <p> <b> StructureDefinition Work Group</b> : fhir</p> <p> <b> url</b> : <code> http://hl7.org/fhir/TestScript/testscript-example-history</code> </p> <p> <b> identifier</b> : <a href="http://terminology.hl7.org/5.5.0/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.t
        xt 

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: 

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.

This OID may also be used in CD.codeSystem.">URI</a> /urn:oid:2.16.840.1.113883.4.642.12.1</p> <p> <b> version</b> : 1.0</p> <p> <b> name</b> : TestScriptExampleHistory</p> <p> <b> title</b> : TestScript Example History</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 International / FHIR Infrastructure</p> <p> <b> contact</b> : Support: <a href="http://www.hl7.org/Special/committees/fiwg">http://www.hl7.org/Special/committees/fiwg</a> </p> <p> <b> description</b> : TestScript example resource with setup to delete if present and create a new
         instance of a Patient then update that Patient to create a minimum history; and
         single test definition to get the history of that Patient with various asserts.</p> <p> <b> jurisdiction</b> : United States of America <span style="background: LightGoldenRodYellow; margin: 4px; border: 1px solid khaki"> (<a href="http://terminology.hl7.org/5.5.0/CodeSystem-ISO3166Part1.html">ISO 3166-1 Codes for the representation of names of countries and their subdivisions
             — Part 1: Country code</a> #US)</span> </p> <p> <b> purpose</b> : Patient (Conditional) Create, Update, Delete and History (Instance) Operations</p> <p> <b> copyright</b> : © HL7.org 2011+</p> <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> <h3> Capabilities</h3> <table class="grid"><tr> <td style="display: none">-</td> <td> <b> Required</b> </td> <td> <b> Validated</b> </td> <td> <b> Description</b> </td> <td> <b> Link</b> </td> <td> <b> Capabilities</b> </td> </tr> <tr> <td style="display: none">*</td> <td> true</td> <td> false</td> <td> Patient Update, Delete and History (Instance) Operations</td> <td> <a href="http://hl7.org/fhir/http.html#update">http://hl7.org/fhir/http.html#update</a> , <a href="http://hl7.org/fhir/http.html#delete">http://hl7.org/fhir/http.html#delete</a> , <a href="http://hl7.org/fhir/http.html#history">http://hl7.org/fhir/http.html#history</a> </td> <td> <a href="http://hl7.org/fhir/CapabilityStatement/example">http://hl7.org/fhir/CapabilityStatement/example</a> </td> </tr> </table> </blockquote> <blockquote> <p> <b> fixture</b> </p> <p> <b> autocreate</b> : false</p> <p> <b> autodelete</b> : false</p> <p> <b> resource</b> : <a href="patient-example.html">Patient/example: Peter Chalmers</a>  &quot;Peter CHALMERS&quot;</p> </blockquote> <blockquote> <p> <b> fixture</b> </p> <p> <b> autocreate</b> : false</p> <p> <b> autodelete</b> : false</p> <p> <b> resource</b> : <a href="patient-example-a.html">Patient/pat1: Donald Duck</a>  &quot;Donald DUCK&quot;</p> </blockquote> <p> <b> profile</b> : <a href="bundle.html">Bundle</a> </p> <h3> Variables</h3> <table class="grid"><tr> <td style="display: none">-</td> <td> <b> Name</b> </td> <td> <b> Path</b> </td> <td> <b> SourceId</b> </td> </tr> <tr> <td style="display: none">*</td> <td> createResourceId</td> <td> Patient/id</td> <td> fixture-patient-create</td> </tr> </table> <blockquote> <p> <b> setup</b> </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> Label</b> </td> <td> <b> Description</b> </td> <td> <b> Accept</b> </td> <td> <b> EncodeRequestUrl</b> </td> <td> <b> Params</b> </td> </tr> <tr> <td style="display: none">*</td> <td> delete (Details: http://hl7.org/fhir/restful-interaction code delete = 'delete',
                 stated as 'null')</td> <td> <a href="patient.html">Patient</a> </td> <td> SetupDeletePatient</td> <td> Execute a delete operation to insure the patient does not exist on the server.</td> <td> json</td> <td> true</td> <td> /${createResourceId}</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> Operator</b> </td> <td> <b> ResponseCode</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) or 204(No Content).</td> <td> response</td> <td> in</td> <td> 200,204</td> <td> false</td> <td> false</td> </tr> </table> </blockquote> <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> Label</b> </td> <td> <b> Description</b> </td> <td> <b> Accept</b> </td> <td> <b> ContentType</b> </td> <td> <b> EncodeRequestUrl</b> </td> <td> <b> Params</b> </td> <td> <b> SourceId</b> </td> </tr> <tr> <td style="display: none">*</td> <td> update (Details: http://hl7.org/fhir/restful-interaction code update = 'update',
                 stated as 'null')</td> <td> <a href="patient.html">Patient</a> </td> <td> SetupCreatePatient</td> <td> Create patient resource on test server using the contents of fixture-patient-create</td> <td> json</td> <td> json</td> <td> true</td> <td> /${createResourceId}</td> <td> fixture-patient-create</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> ResponseCode</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 201(Created).</td> <td> response</td> <td> 201</td> <td> false</td> <td> false</td> </tr> </table> </blockquote> <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> Label</b> </td> <td> <b> Description</b> </td> <td> <b> Accept</b> </td> <td> <b> ContentType</b> </td> <td> <b> EncodeRequestUrl</b> </td> <td> <b> Params</b> </td> <td> <b> SourceId</b> </td> </tr> <tr> <td style="display: none">*</td> <td> update (Details: http://hl7.org/fhir/restful-interaction code update = 'update',
                 stated as 'null')</td> <td> <a href="patient.html">Patient</a> </td> <td> SetupUpdatePatient</td> <td> Update patient resource on test server using the contents of fixture-patient-update</td> <td> json</td> <td> json</td> <td> true</td> <td> /${createResourceId}</td> <td> fixture-patient-update</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> ResponseCode</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> 200</td> <td> false</td> <td> false</td> </tr> </table> </blockquote> </blockquote> <blockquote> <p> <b> test</b> </p> <p> <b> name</b> : History Patient</p> <p> <b> description</b> : Get the history for a known Patient and validate response.</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> EncodeRequestUrl</b> </td> <td> <b> TargetId</b> </td> </tr> <tr> <td style="display: none">*</td> <td> history (Details: http://hl7.org/fhir/restful-interaction code history = 'history',
                 stated as 'null')</td> <td> <a href="patient.html">Patient</a> </td> <td> Get the Patient history on the test server using the id from fixture-patient-create.</td> <td> json</td> <td> json</td> <td> true</td> <td> fixture-patient-create</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> okay</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> 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 Bundle.</td> <td> <a href="bundle.html">Bundle</a> </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> StopTestOnFail</b> </td> <td> <b> ValidateProfileId</b> </td> <td> <b> WarningOnly</b> </td> </tr> <tr> <td style="display: none">*</td> <td> Confirm that the returned Bundle conforms to the base FHIR specification.</td> <td> false</td> <td> bundle-profile</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> Operator</b> </td> <td> <b> Path</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 returned Bundle type equals 'history'.</td> <td> equals</td> <td> fhir:Bundle/fhir:type/@value</td> <td> false</td> <td> history</td> <td> false</td> </tr> </table> </blockquote> </blockquote> </div> </text> <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-wg"><valueCode value="fhir"/> </extension> 
  <url value="http://hl7.org/fhir/TestScript/testscript-example-history"/> 
  <identifier> 
    <system value="urn:ietf:rfc:3986"/> 
    <value value="urn:oid:2.16.840.1.113883.4.642.12.1"/> 
  </identifier> 
  <version value="1.0"/> 
  <name value="TestScriptExampleHistory"/> 
  <title value="TestScript Example History"/> 
  <status value="draft"/> 
  <experimental value="true"/> 
  <date value="2017-01-18"/> 
  <publisher value="HL7 International / FHIR Infrastructure"/> 
  <contact> 
    <name value="Support"/> 
    <telecom> 
      <system value="url"/> 
      <value value="http://www.hl7.org/Special/committees/fiwg"/> 
      <use value="work"/> 
    </telecom> 
  </contact> 
  <description value="TestScript example resource with setup to delete if present and create a new instance
   of a Patient then update that Patient to create a minimum history; and single test
   definition to get the history of that Patient with various asserts."/> 
  <jurisdiction> 
    <coding> 
      <system value="urn:iso:std:iso:3166"/> 
      <code value="US"/> 
      <display value="United States of America"/> 
    </coding> 
  </jurisdiction> 
  <purpose value="Patient (Conditional) Create, Update, Delete and History (Instance) Operations"/> 
  <copyright value="© HL7.org 2011+"/> 
  <metadata> 
    <link> 
      <url value="http://hl7.org/fhir/patient.html"/> 
      <description value="Demographics and other administrative information about an individual or animal
       receiving care or other health-related services."/> 
    </link> 
    <capability> 
      <required value="true"/> 
      <validated value="false"/> 
      <description value="Patient Update, Delete and History (Instance) Operations"/> 
      <link value="http://hl7.org/fhir/http.html#update"/> 
      <link value="http://hl7.org/fhir/http.html#delete"/> 
      <link value="http://hl7.org/fhir/http.html#history"/> 
      <capabilities value="http://hl7.org/fhir/CapabilityStatement/example"/> 
    </capability> 
  </metadata> 
  <fixture id="fixture-patient-create">
    <autocreate value="false"/> 
    <autodelete value="false"/> 
    <resource> 
      <reference value="Patient/example"/> 
      <display value="Peter Chalmers"/> 
    </resource> 
  </fixture> 
  <fixture id="fixture-patient-update">
    <autocreate value="false"/> 
    <autodelete value="false"/> 
    <resource> 
      <reference value="Patient/pat1"/> 
      <display value="Donald Duck"/> 
    </resource> 
  </fixture> 
  <profile id="bundle-profile" value="http://hl7.org/fhir/StructureDefinition/Bundle"/> 
  <variable> 
    <name value="createResourceId"/> 
    <path value="Patient/id"/> 
    <sourceId value="fixture-patient-create"/> 
  </variable> 
  <setup> 
    <action> 
      <operation> 
        <type> 
          <system value="http://hl7.org/fhir/restful-interaction"/> 
          <code value="delete"/> 
        </type> 
        <resource value="Patient"/> 
        <label value="SetupDeletePatient"/> 
        <description value="Execute a delete operation to insure the patient does not exist on the server."/> 
        <accept value="json"/> 
        <encodeRequestUrl value="true"/> 
        <params value="/${createResourceId}"/> 
      </operation> 
    </action> 
    <action> 
      <assert> 
        <description value="Confirm that the returned HTTP status is 200(OK) or 204(No Content)."/> 
        <direction value="response"/> 
        <operator value="in"/> 
        <responseCode value="200,204"/> 
        <stopTestOnFail value="false"/> 
        <warningOnly value="false"/> 
      </assert> 
    </action> 
    <action> 
      <operation> 
        <type> 
          <system value="http://hl7.org/fhir/restful-interaction"/> 
          <code value="update"/> 
        </type> 
        <resource value="Patient"/> 
        <label value="SetupCreatePatient"/> 
        <description value="Create patient resource on test server using the contents of fixture-patient-create"/> 
        <accept value="json"/> 
        <contentType value="json"/> 
        <encodeRequestUrl value="true"/> 
        <params value="/${createResourceId}"/> 
        <sourceId value="fixture-patient-create"/> 
      </operation> 
    </action> 
    <action> 
      <assert> 
        <description value="Confirm that the returned HTTP status is 201(Created)."/> 
        <direction value="response"/> 
        <responseCode value="201"/> 
        <stopTestOnFail value="false"/> 
        <warningOnly value="false"/> 
      </assert> 
    </action> 
    <action> 
      <operation> 
        <type> 
          <system value="http://hl7.org/fhir/restful-interaction"/> 
          <code value="update"/> 
        </type> 
        <resource value="Patient"/> 
        <label value="SetupUpdatePatient"/> 
        <description value="Update patient resource on test server using the contents of fixture-patient-update"/> 
        <accept value="json"/> 
        <contentType value="json"/> 
        <encodeRequestUrl value="true"/> 
        <params value="/${createResourceId}"/> 
        <sourceId value="fixture-patient-update"/> 
      </operation> 
    </action> 
    <action> 
      <assert> 
        <description value="Confirm that the returned HTTP status is 200(OK)."/> 
        <direction value="response"/> 
        <responseCode value="200"/> 
        <stopTestOnFail value="false"/> 
        <warningOnly value="false"/> 
      </assert> 
    </action> 
  </setup> 
  <test id="01-HistoryPatient">
    <name value="History Patient"/> 
    <description value="Get the history for a known Patient and validate response."/> 
    <action> 
      <operation> 
        <type> 
          <system value="http://hl7.org/fhir/restful-interaction"/> 
          <code value="history"/> 
        </type> 
        <resource value="Patient"/> 
        <description value="Get the Patient history on the test server using the id from fixture-patient-create."/> 
        <accept value="json"/> 
        <contentType value="json"/> 
        <encodeRequestUrl value="true"/> 
        <targetId value="fixture-patient-create"/> 
      </operation> 
    </action> 
    <action> 
      <assert> 
        <description value="Confirm that the returned HTTP status is 200(OK)."/> 
        <direction value="response"/> 
        <response value="okay"/> 
        <stopTestOnFail value="false"/> 
        <warningOnly value="false"/> 
      </assert> 
    </action> 
    <action> 
      <assert> 
        <description value="Confirm that the returned resource type is Bundle."/> 
        <resource value="Bundle"/> 
        <stopTestOnFail value="false"/> 
        <warningOnly value="false"/> 
      </assert> 
    </action> 
    <action> 
      <assert> 
        <description value="Confirm that the returned Bundle conforms to the base FHIR specification."/> 
        <stopTestOnFail value="false"/> 
        <validateProfileId value="bundle-profile"/> 
        <warningOnly value="false"/> 
      </assert> 
    </action> 
    <action> 
      <assert> 
        <description value="Confirm that the returned Bundle type equals 'history'."/> 
        <operator value="equals"/> 
        <path value="fhir:Bundle/fhir:type/@value"/> 
        <stopTestOnFail value="false"/> 
        <value value="history"/> 
        <warningOnly value="false"/> 
      </assert> 
    </action> 
  </test> 
</TestScript> 

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.