WildFHIR R4 Enterprise Edition Testing Guide
1.0.0 - current International flag

WildFHIR R4 Enterprise Edition Testing Guide - Local Development build (v1.0.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

: WildFHIR R4 TestScript Patient/[id]/$purge XML - XML Representation

Active as of 2025-03-26

Raw xml | Download


<TestScript xmlns="http://hl7.org/fhir">
  <id value="wildfhirr4patientpurgexml"/>
  <text>
    <status value="extensions"/>
    <div xmlns="http://www.w3.org/1999/xhtml"><p class="res-header-id"><b>Generated Narrative: TestScript wildfhirr4patientpurgexml</b></p><a name="wildfhirr4patientpurgexml"> </a><a name="hcwildfhirr4patientpurgexml"> </a><a name="wildfhirr4patientpurgexml-en-US"> </a><p><b>org/fhir/StructureDefinition/scope</b>: <a href="file://D:\GitHub\Touchstone\wildfhir4-ig\output/ActorDefinition-wildfhir-responder.html">http://wildfhir4.aegis.net/ig/wildfhir/ActorDefinition/wildfhir-responder</a></p><p><b>org/fhir/StructureDefinition/scope</b>: <a href="file://D:\GitHub\Touchstone\wildfhir4-ig\output/OperationDefinition-wildfhir-operation-patient-purge.html">AEGIS WildFHIR R4 Patient Purge</a></p><p><b>url</b>: <a href="TestScript-wildfhirr4patientpurgexml.html">TestScript WildFHIR R4 TestScript Patient/[id]/$purge XML</a></p><p><b>version</b>: 1.0.0</p><p><b>name</b>: WildFHIRR4PatientPurgeXML</p><p><b>title</b>: WildFHIR R4 TestScript Patient/[id]/$purge XML</p><p><b>status</b>: Active</p><p><b>date</b>: 2025-03-26</p><p><b>publisher</b>: AEGIS.net, Inc.</p><p><b>contact</b>: AEGIS.net, Inc.: <a href="https://www.aegis.net">https://www.aegis.net</a>, Richard Ettema: <a href="mailto:mailto:richard.ettema@aegis.net">mailto:richard.ettema@aegis.net</a></p><p><b>description</b>: </p><div><p>Test the WildFHIR R4 Patient/[id]/$purge operation using XML Format</p>
</div><p><b>jurisdiction</b>: <span title="Codes:{http://unstats.un.org/unsd/methods/m49/m49.htm 001}">World</span></p><p><b>copyright</b>: </p><div><p>(c) AEGIS.net, Inc. 2025</p>
</div><h3>Origins</h3><table class="grid"><tr><td style="display: none">-</td><td><b>Index</b></td><td><b>Profile</b></td></tr><tr><td style="display: none">*</td><td>1</td><td><a href="http://terminology.hl7.org/6.2.0/CodeSystem-testscript-profile-origin-types.html#testscript-profile-origin-types-FHIR-Client">Test script profile origin type FHIR-Client</a>: FHIR Client</td></tr></table><h3>Destinations</h3><table class="grid"><tr><td style="display: none">-</td><td><b>Index</b></td><td><b>Profile</b></td></tr><tr><td style="display: none">*</td><td>1</td><td><a href="http://terminology.hl7.org/6.2.0/CodeSystem-testscript-profile-destination-types.html#testscript-profile-destination-types-FHIR-Server">Test script profile destination type FHIR-Server</a>: FHIR Server</td></tr></table><blockquote><p><b>fixture</b></p><blockquote><p><b>id</b></p>patient-update</blockquote><p><b>autocreate</b>: false</p><p><b>autodelete</b>: false</p><p><b>resource</b>: <code>./Patient-wildfhir-patient-purge.xml</code></p></blockquote><blockquote><p><b>fixture</b></p><blockquote><p><b>id</b></p>observation-update</blockquote><p><b>autocreate</b>: false</p><p><b>autodelete</b>: false</p><p><b>resource</b>: <code>./Observation-wildfhir-observation-purge.xml</code></p></blockquote><blockquote><p><b>variable</b></p><p><b>name</b>: updatePatientId</p><p><b>path</b>: /Patient/id</p><p><b>sourceId</b>: patient-update</p></blockquote><blockquote><p><b>variable</b></p><p><b>name</b>: updateObservationId</p><p><b>path</b>: /Observation/id</p><p><b>sourceId</b>: observation-update</p></blockquote><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>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></tr><tr><td style="display: none">*</td><td><a href="http://terminology.hl7.org/6.2.0/CodeSystem-testscript-operation-codes.html#testscript-operation-codes-delete">Test script operation code delete</a>: Delete</td><td>Observation</td><td>Delete the known Observation to insure it does not exist, order matters for referential integrity</td><td>xml</td><td>xml</td><td>1</td><td>true</td><td>1</td><td>/${updateObservationId}</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>Value</b></td><td><b>WarningOnly</b></td></tr><tr><td style="display: none">*</td><td>Confirm that the returned HTTP response code is success.</td><td>response</td><td>in</td><td>200,204,404</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>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></tr><tr><td style="display: none">*</td><td><a href="http://terminology.hl7.org/6.2.0/CodeSystem-testscript-operation-codes.html#testscript-operation-codes-delete">Test script operation code delete</a>: Delete</td><td>Patient</td><td>Delete the known Patient to insure it does not exist, order matters for referential integrity</td><td>xml</td><td>xml</td><td>1</td><td>true</td><td>1</td><td>/${updatePatientId}</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>Value</b></td><td><b>WarningOnly</b></td></tr><tr><td style="display: none">*</td><td>Confirm that the returned HTTP response code is success.</td><td>response</td><td>in</td><td>200,204,404</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>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>SourceId</b></td></tr><tr><td style="display: none">*</td><td><a href="http://terminology.hl7.org/6.2.0/CodeSystem-testscript-operation-codes.html#testscript-operation-codes-update">Test script operation code update</a>: Update</td><td>Patient</td><td>Create the known Patient via an update, order matters for referential integrity</td><td>xml</td><td>xml</td><td>1</td><td>true</td><td>1</td><td>/${updatePatientId}</td><td>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>Operator</b></td><td><b>Value</b></td><td><b>WarningOnly</b></td></tr><tr><td style="display: none">*</td><td>Confirm that the returned HTTP response code is success.</td><td>response</td><td>in</td><td>200,201</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>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>SourceId</b></td></tr><tr><td style="display: none">*</td><td><a href="http://terminology.hl7.org/6.2.0/CodeSystem-testscript-operation-codes.html#testscript-operation-codes-update">Test script operation code update</a>: Update</td><td>Observation</td><td>Create the known Observation via an update, order matters for referential integrity</td><td>xml</td><td>xml</td><td>1</td><td>true</td><td>1</td><td>/${updateObservationId}</td><td>observation-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>Operator</b></td><td><b>Value</b></td><td><b>WarningOnly</b></td></tr><tr><td style="display: none">*</td><td>Confirm that the returned HTTP response code is success.</td><td>response</td><td>in</td><td>200,201</td><td>false</td></tr></table></blockquote></blockquote><blockquote><p><b>test</b></p><blockquote><p><b>id</b></p>PatientPurge</blockquote><p><b>name</b>: PatientPurge</p><p><b>description</b>: Test the Patient/[id]/$purge operation using XML Format on destination server and assert successful 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>Destination</b></td><td><b>EncodeRequestUrl</b></td><td><b>Origin</b></td><td><b>Params</b></td></tr><tr><td style="display: none">*</td><td><a href="http://terminology.hl7.org/6.2.0/CodeSystem-testscript-operation-codes.html#testscript-operation-codes-process-message">Test script operation code process-message</a>: $process-message</td><td>Patient</td><td>Patient $purge operation</td><td>xml</td><td>xml</td><td>1</td><td>true</td><td>1</td><td>/${updatePatientId}/$purge</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>WarningOnly</b></td></tr><tr><td style="display: none">*</td><td>Confirm that the returned response code is 200 OK.</td><td>response</td><td>200</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>WarningOnly</b></td></tr><tr><td style="display: none">*</td><td>Confirm that the returned response payload is an OperationOutcome resource.</td><td>response</td><td>OperationOutcome</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>Expression</b></td><td><b>WarningOnly</b></td></tr><tr><td style="display: none">*</td><td>Confirm that the returned OperationOutcome contains an infomation issue.</td><td>response</td><td>OperationOutcome.issue.where(severity = 'infomation').exists()</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>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></tr><tr><td style="display: none">*</td><td><a href="http://terminology.hl7.org/6.2.0/CodeSystem-testscript-operation-codes.html#testscript-operation-codes-read">Test script operation code read</a>: Read</td><td>Observation</td><td>Attempt to read purged Observation</td><td>xml</td><td>xml</td><td>1</td><td>true</td><td>1</td><td>/${updateObservationId}</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>WarningOnly</b></td></tr><tr><td style="display: none">*</td><td>Confirm that the returned response code is 404 Not Found.</td><td>response</td><td>404</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>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></tr><tr><td style="display: none">*</td><td><a href="http://terminology.hl7.org/6.2.0/CodeSystem-testscript-operation-codes.html#testscript-operation-codes-read">Test script operation code read</a>: Read</td><td>Patient</td><td>Attempt to read purged Patient</td><td>xml</td><td>xml</td><td>1</td><td>true</td><td>1</td><td>/${updatePatientId}</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>WarningOnly</b></td></tr><tr><td style="display: none">*</td><td>Confirm that the returned response code is 404 Not Found.</td><td>response</td><td>404</td><td>false</td></tr></table></blockquote></blockquote></div>
  </text>
  <extension url="http://hl7.org/fhir/StructureDefinition/scope">
    <valueCanonical
                    value="http://wildfhir4.aegis.net/ig/wildfhir/ActorDefinition/wildfhir-responder"/>
  </extension>
  <extension url="http://hl7.org/fhir/StructureDefinition/scope">
    <valueCanonical
                    value="http://wildfhir4.aegis.net/ig/wildfhir/OperationDefinition/wildfhir-operation-patient-purge"/>
  </extension>
  <url
       value="http://wildfhir4.aegis.net/tg/wildfhir/TestScript/wildfhirr4patientpurgexml"/>
  <version value="1.0.0"/>
  <name value="WildFHIRR4PatientPurgeXML"/>
  <title value="WildFHIR R4 TestScript Patient/[id]/$purge XML"/>
  <status value="active"/>
  <date value="2025-03-26"/>
  <publisher value="AEGIS.net, Inc."/>
  <contact>
    <name value="AEGIS.net, Inc."/>
    <telecom>
      <system value="url"/>
      <value value="https://www.aegis.net"/>
    </telecom>
  </contact>
  <contact>
    <name value="Richard Ettema"/>
    <telecom>
      <system value="email"/>
      <value value="mailto:richard.ettema@aegis.net"/>
    </telecom>
  </contact>
  <description
               value="Test the WildFHIR R4 Patient/[id]/$purge operation using XML Format"/>
  <jurisdiction>
    <coding>
      <system value="http://unstats.un.org/unsd/methods/m49/m49.htm"/>
      <code value="001"/>
      <display value="World"/>
    </coding>
  </jurisdiction>
  <copyright value="(c) AEGIS.net, Inc. 2025"/>
  <origin>
    <index value="1"/>
    <profile>
      <system
              value="http://terminology.hl7.org/CodeSystem/testscript-profile-origin-types"/>
      <code value="FHIR-Client"/>
    </profile>
  </origin>
  <destination>
    <index value="1"/>
    <profile>
      <system
              value="http://terminology.hl7.org/CodeSystem/testscript-profile-destination-types"/>
      <code value="FHIR-Server"/>
    </profile>
  </destination>
  <fixture id="patient-update">
    <autocreate value="false"/>
    <autodelete value="false"/>
    <resource>
      <reference value="./Patient-wildfhir-patient-purge.xml"/>
    </resource>
  </fixture>
  <fixture id="observation-update">
    <autocreate value="false"/>
    <autodelete value="false"/>
    <resource>
      <reference value="./Observation-wildfhir-observation-purge.xml"/>
    </resource>
  </fixture>
  <variable>
    <name value="updatePatientId"/>
    <path value="/Patient/id"/>
    <sourceId value="patient-update"/>
  </variable>
  <variable>
    <name value="updateObservationId"/>
    <path value="/Observation/id"/>
    <sourceId value="observation-update"/>
  </variable>
  <setup>
    <action>
      <operation>
        <type>
          <system
                  value="http://terminology.hl7.org/CodeSystem/testscript-operation-codes"/>
          <code value="delete"/>
        </type>
        <resource value="Observation"/>
        <description
                     value="Delete the known Observation to insure it does not exist, order matters for referential integrity"/>
        <accept value="xml"/>
        <contentType value="xml"/>
        <destination value="1"/>
        <encodeRequestUrl value="true"/>
        <origin value="1"/>
        <params value="/${updateObservationId}"/>
      </operation>
    </action>
    <action>
      <assert>
        <description
                     value="Confirm that the returned HTTP response code is success."/>
        <direction value="response"/>
        <operator value="in"/>
        <value value="200,204,404"/>
        <warningOnly value="false"/>
      </assert>
    </action>
    <action>
      <operation>
        <type>
          <system
                  value="http://terminology.hl7.org/CodeSystem/testscript-operation-codes"/>
          <code value="delete"/>
        </type>
        <resource value="Patient"/>
        <description
                     value="Delete the known Patient to insure it does not exist, order matters for referential integrity"/>
        <accept value="xml"/>
        <contentType value="xml"/>
        <destination value="1"/>
        <encodeRequestUrl value="true"/>
        <origin value="1"/>
        <params value="/${updatePatientId}"/>
      </operation>
    </action>
    <action>
      <assert>
        <description
                     value="Confirm that the returned HTTP response code is success."/>
        <direction value="response"/>
        <operator value="in"/>
        <value value="200,204,404"/>
        <warningOnly value="false"/>
      </assert>
    </action>
    <action>
      <operation>
        <type>
          <system
                  value="http://terminology.hl7.org/CodeSystem/testscript-operation-codes"/>
          <code value="update"/>
        </type>
        <resource value="Patient"/>
        <description
                     value="Create the known Patient via an update, order matters for referential integrity"/>
        <accept value="xml"/>
        <contentType value="xml"/>
        <destination value="1"/>
        <encodeRequestUrl value="true"/>
        <origin value="1"/>
        <params value="/${updatePatientId}"/>
        <sourceId value="patient-update"/>
      </operation>
    </action>
    <action>
      <assert>
        <description
                     value="Confirm that the returned HTTP response code is success."/>
        <direction value="response"/>
        <operator value="in"/>
        <value value="200,201"/>
        <warningOnly value="false"/>
      </assert>
    </action>
    <action>
      <operation>
        <type>
          <system
                  value="http://terminology.hl7.org/CodeSystem/testscript-operation-codes"/>
          <code value="update"/>
        </type>
        <resource value="Observation"/>
        <description
                     value="Create the known Observation via an update, order matters for referential integrity"/>
        <accept value="xml"/>
        <contentType value="xml"/>
        <destination value="1"/>
        <encodeRequestUrl value="true"/>
        <origin value="1"/>
        <params value="/${updateObservationId}"/>
        <sourceId value="observation-update"/>
      </operation>
    </action>
    <action>
      <assert>
        <description
                     value="Confirm that the returned HTTP response code is success."/>
        <direction value="response"/>
        <operator value="in"/>
        <value value="200,201"/>
        <warningOnly value="false"/>
      </assert>
    </action>
  </setup>
  <test id="PatientPurge">
    <name value="PatientPurge"/>
    <description
                 value="Test the Patient/[id]/$purge operation using XML Format on destination server and assert successful response."/>
    <action>
      <operation>
        <type>
          <system
                  value="http://terminology.hl7.org/CodeSystem/testscript-operation-codes"/>
          <code value="process-message"/>
        </type>
        <resource value="Patient"/>
        <description value="Patient $purge operation"/>
        <accept value="xml"/>
        <contentType value="xml"/>
        <destination value="1"/>
        <encodeRequestUrl value="true"/>
        <origin value="1"/>
        <params value="/${updatePatientId}/$purge"/>
      </operation>
    </action>
    <action>
      <assert>
        <description
                     value="Confirm that the returned response code is 200 OK."/>
        <direction value="response"/>
        <responseCode value="200"/>
        <warningOnly value="false"/>
      </assert>
    </action>
    <action>
      <assert>
        <description
                     value="Confirm that the returned response payload is an OperationOutcome resource."/>
        <direction value="response"/>
        <resource value="OperationOutcome"/>
        <warningOnly value="false"/>
      </assert>
    </action>
    <action>
      <assert>
        <description
                     value="Confirm that the returned OperationOutcome contains an infomation issue."/>
        <direction value="response"/>
        <expression
                    value="OperationOutcome.issue.where(severity = 'infomation').exists()"/>
        <warningOnly value="false"/>
      </assert>
    </action>
    <action>
      <operation>
        <type>
          <system
                  value="http://terminology.hl7.org/CodeSystem/testscript-operation-codes"/>
          <code value="read"/>
        </type>
        <resource value="Observation"/>
        <description value="Attempt to read purged Observation"/>
        <accept value="xml"/>
        <contentType value="xml"/>
        <destination value="1"/>
        <encodeRequestUrl value="true"/>
        <origin value="1"/>
        <params value="/${updateObservationId}"/>
      </operation>
    </action>
    <action>
      <assert>
        <description
                     value="Confirm that the returned response code is 404 Not Found."/>
        <direction value="response"/>
        <responseCode value="404"/>
        <warningOnly value="false"/>
      </assert>
    </action>
    <action>
      <operation>
        <type>
          <system
                  value="http://terminology.hl7.org/CodeSystem/testscript-operation-codes"/>
          <code value="read"/>
        </type>
        <resource value="Patient"/>
        <description value="Attempt to read purged Patient"/>
        <accept value="xml"/>
        <contentType value="xml"/>
        <destination value="1"/>
        <encodeRequestUrl value="true"/>
        <origin value="1"/>
        <params value="/${updatePatientId}"/>
      </operation>
    </action>
    <action>
      <assert>
        <description
                     value="Confirm that the returned response code is 404 Not Found."/>
        <direction value="response"/>
        <responseCode value="404"/>
        <warningOnly value="false"/>
      </assert>
    </action>
  </test>
</TestScript>