<?xml version="1.0" encoding="UTF-8"?>

<CodeSystem xmlns="http://hl7.org/fhir">
  <id value="testscript-operation-codes"/>
  <meta>
    <lastUpdated value="2022-05-28T12:47:40.239+10:00"/>
    <profile value="http://hl7.org/fhir/StructureDefinition/shareablecodesystem"/>
  </meta>
  <text>
    <status value="generated"/>
    <div xmlns="http://www.w3.org/1999/xhtml">
      <p>This code system http://terminology.hl7.org/CodeSystem/testscript-operation-codes defines the following codes:</p>
      <table class="codes">
        <tr>
          <td style="white-space:nowrap">
            <b>Code</b>
          </td>
          <td>
            <b>Display</b>
          </td>
          <td>
            <b>Definition</b>
          </td>
        </tr>
        <tr>
          <td style="white-space:nowrap">read
            <a name="testscript-operation-codes-read"> </a>
          </td>
          <td>Read</td>
          <td>Read the current state of the resource.</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">vread
            <a name="testscript-operation-codes-vread"> </a>
          </td>
          <td>Version Read</td>
          <td>Read the state of a specific version of the resource.</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">update
            <a name="testscript-operation-codes-update"> </a>
          </td>
          <td>Update</td>
          <td>Update an existing resource by its id.</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">updateCreate
            <a name="testscript-operation-codes-updateCreate"> </a>
          </td>
          <td>Create using Update</td>
          <td>Update an existing resource by its id (or create it if it is new).</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">patch
            <a name="testscript-operation-codes-patch"> </a>
          </td>
          <td>Patch</td>
          <td>Patch an existing resource by its id.</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">delete
            <a name="testscript-operation-codes-delete"> </a>
          </td>
          <td>Delete</td>
          <td>Delete a resource.</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">deleteCondSingle
            <a name="testscript-operation-codes-deleteCondSingle"> </a>
          </td>
          <td>Conditional Delete Single</td>
          <td>Conditionally delete a single resource based on search parameters.</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">deleteCondMultiple
            <a name="testscript-operation-codes-deleteCondMultiple"> </a>
          </td>
          <td>Conditional Delete Multiple</td>
          <td>Conditionally delete one or more resources based on search parameters.</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">history
            <a name="testscript-operation-codes-history"> </a>
          </td>
          <td>History</td>
          <td>Retrieve the change history for a particular resource or resource type.</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">create
            <a name="testscript-operation-codes-create"> </a>
          </td>
          <td>Create</td>
          <td>Create a new resource with a server assigned id.</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">search
            <a name="testscript-operation-codes-search"> </a>
          </td>
          <td>Search</td>
          <td>Search based on some filter criteria.</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">batch
            <a name="testscript-operation-codes-batch"> </a>
          </td>
          <td>Batch</td>
          <td>Update, create or delete a set of resources as independent actions.</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">transaction
            <a name="testscript-operation-codes-transaction"> </a>
          </td>
          <td>Transaction</td>
          <td>Update, create or delete a set of resources as a single transaction.</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">capabilities
            <a name="testscript-operation-codes-capabilities"> </a>
          </td>
          <td>Capabilities</td>
          <td>Get a capability statement for the system.</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">apply
            <a name="testscript-operation-codes-apply"> </a>
          </td>
          <td>$apply</td>
          <td>Realizes an ActivityDefinition in a specific context</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">closure
            <a name="testscript-operation-codes-closure"> </a>
          </td>
          <td>$closure</td>
          <td>Closure Table Maintenance</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">find-matches
            <a name="testscript-operation-codes-find-matches"> </a>
          </td>
          <td>$find-matches</td>
          <td>Finding Codes based on supplied properties</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">conforms
            <a name="testscript-operation-codes-conforms"> </a>
          </td>
          <td>$conforms</td>
          <td>Compare two systems CapabilityStatements</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">data-requirements
            <a name="testscript-operation-codes-data-requirements"> </a>
          </td>
          <td>$data-requirements</td>
          <td>Aggregates and returns the parameters and data requirements for a resource and all its dependencies as a single module definition</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">document
            <a name="testscript-operation-codes-document"> </a>
          </td>
          <td>$document</td>
          <td>Generate a Document</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">evaluate
            <a name="testscript-operation-codes-evaluate"> </a>
          </td>
          <td>$evaluate</td>
          <td>Request clinical decision support guidance based on a specific decision support module</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">evaluate-measure
            <a name="testscript-operation-codes-evaluate-measure"> </a>
          </td>
          <td>$evaluate-measure</td>
          <td>Invoke an eMeasure and obtain the results</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">everything
            <a name="testscript-operation-codes-everything"> </a>
          </td>
          <td>$everything</td>
          <td>Return all the related information as described in the Encounter or Patient</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">expand
            <a name="testscript-operation-codes-expand"> </a>
          </td>
          <td>$expand</td>
          <td>Value Set Expansion</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">find
            <a name="testscript-operation-codes-find"> </a>
          </td>
          <td>$find</td>
          <td>Find a functional list</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">graphql
            <a name="testscript-operation-codes-graphql"> </a>
          </td>
          <td>$graphql</td>
          <td>Invoke a GraphQL query</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">implements
            <a name="testscript-operation-codes-implements"> </a>
          </td>
          <td>$implements</td>
          <td>Test if a server implements a client's required operations</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">lastn
            <a name="testscript-operation-codes-lastn"> </a>
          </td>
          <td>$lastn</td>
          <td>Last N Observations Query</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">lookup
            <a name="testscript-operation-codes-lookup"> </a>
          </td>
          <td>$lookup</td>
          <td>Concept Look Up and Decomposition</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">match
            <a name="testscript-operation-codes-match"> </a>
          </td>
          <td>$match</td>
          <td>Find patient matches using MPI based logic</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">meta
            <a name="testscript-operation-codes-meta"> </a>
          </td>
          <td>$meta</td>
          <td>Access a list of profiles, tags, and security labels</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">meta-add
            <a name="testscript-operation-codes-meta-add"> </a>
          </td>
          <td>$meta-add</td>
          <td>Add profiles, tags, and security labels to a resource</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">meta-delete
            <a name="testscript-operation-codes-meta-delete"> </a>
          </td>
          <td>$meta-delete</td>
          <td>Delete profiles, tags, and security labels for a resource</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">populate
            <a name="testscript-operation-codes-populate"> </a>
          </td>
          <td>$populate</td>
          <td>Populate Questionnaire</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">populatehtml
            <a name="testscript-operation-codes-populatehtml"> </a>
          </td>
          <td>$populatehtml</td>
          <td>Generate HTML for Questionnaire</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">populatelink
            <a name="testscript-operation-codes-populatelink"> </a>
          </td>
          <td>$populatelink</td>
          <td>Generate a link to a Questionnaire completion webpage</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">process-message
            <a name="testscript-operation-codes-process-message"> </a>
          </td>
          <td>$process-message</td>
          <td>Process a message according to the defined event</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">questionnaire
            <a name="testscript-operation-codes-questionnaire"> </a>
          </td>
          <td>$questionnaire</td>
          <td>Build Questionnaire</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">stats
            <a name="testscript-operation-codes-stats"> </a>
          </td>
          <td>$stats</td>
          <td>Observation Statistics</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">subset
            <a name="testscript-operation-codes-subset"> </a>
          </td>
          <td>$subset</td>
          <td>Fetch a subset of the CapabilityStatement resource</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">subsumes
            <a name="testscript-operation-codes-subsumes"> </a>
          </td>
          <td>$subsumes</td>
          <td>CodeSystem Subsumption Testing</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">transform
            <a name="testscript-operation-codes-transform"> </a>
          </td>
          <td>$transform</td>
          <td>Model Instance Transformation</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">translate
            <a name="testscript-operation-codes-translate"> </a>
          </td>
          <td>$translate</td>
          <td>Concept Translation</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">validate
            <a name="testscript-operation-codes-validate"> </a>
          </td>
          <td>$validate</td>
          <td>Validate a resource</td>
        </tr>
        <tr>
          <td style="white-space:nowrap">validate-code
            <a name="testscript-operation-codes-validate-code"> </a>
          </td>
          <td>$validate-code</td>
          <td>ValueSet based Validation</td>
        </tr>
      </table>
    </div>
  </text>
  <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-wg">
    <valueCode value="fhir"/>
  </extension>
  <url value="http://terminology.hl7.org/CodeSystem/testscript-operation-codes"/>
  <identifier>
    <system value="urn:ietf:rfc:3986"/>
    <value value="urn:oid:2.16.840.1.113883.4.642.1.1195"/>
  </identifier>
  <version value="4.3.0"/>
  <name value="TestScriptOperationCodes"/>
  <status value="draft"/>
  <experimental value="false"/>
  <description value="This value set defines a set of codes that are used to indicate the supported operations of a testing engine or tool."/>
  <caseSensitive value="true"/>
  <content value="complete"/>
  <concept>
    <code value="read"/>
    <display value="Read"/>
    <definition value="Read the current state of the resource."/>
  </concept>
  <concept>
    <code value="vread"/>
    <display value="Version Read"/>
    <definition value="Read the state of a specific version of the resource."/>
  </concept>
  <concept>
    <code value="update"/>
    <display value="Update"/>
    <definition value="Update an existing resource by its id."/>
  </concept>
  <concept>
    <code value="updateCreate"/>
    <display value="Create using Update"/>
    <definition value="Update an existing resource by its id (or create it if it is new)."/>
  </concept>
  <concept>
    <code value="patch"/>
    <display value="Patch"/>
    <definition value="Patch an existing resource by its id."/>
  </concept>
  <concept>
    <code value="delete"/>
    <display value="Delete"/>
    <definition value="Delete a resource."/>
  </concept>
  <concept>
    <code value="deleteCondSingle"/>
    <display value="Conditional Delete Single"/>
    <definition value="Conditionally delete a single resource based on search parameters."/>
  </concept>
  <concept>
    <code value="deleteCondMultiple"/>
    <display value="Conditional Delete Multiple"/>
    <definition value="Conditionally delete one or more resources based on search parameters."/>
  </concept>
  <concept>
    <code value="history"/>
    <display value="History"/>
    <definition value="Retrieve the change history for a particular resource or resource type."/>
  </concept>
  <concept>
    <code value="create"/>
    <display value="Create"/>
    <definition value="Create a new resource with a server assigned id."/>
  </concept>
  <concept>
    <code value="search"/>
    <display value="Search"/>
    <definition value="Search based on some filter criteria."/>
  </concept>
  <concept>
    <code value="batch"/>
    <display value="Batch"/>
    <definition value="Update, create or delete a set of resources as independent actions."/>
  </concept>
  <concept>
    <code value="transaction"/>
    <display value="Transaction"/>
    <definition value="Update, create or delete a set of resources as a single transaction."/>
  </concept>
  <concept>
    <code value="capabilities"/>
    <display value="Capabilities"/>
    <definition value="Get a capability statement for the system."/>
  </concept>
  <concept>
    <code value="apply"/>
    <display value="$apply"/>
    <definition value="Realizes an ActivityDefinition in a specific context"/>
  </concept>
  <concept>
    <code value="closure"/>
    <display value="$closure"/>
    <definition value="Closure Table Maintenance"/>
  </concept>
  <concept>
    <code value="find-matches"/>
    <display value="$find-matches"/>
    <definition value="Finding Codes based on supplied properties"/>
  </concept>
  <concept>
    <code value="conforms"/>
    <display value="$conforms"/>
    <definition value="Compare two systems CapabilityStatements"/>
  </concept>
  <concept>
    <code value="data-requirements"/>
    <display value="$data-requirements"/>
    <definition value="Aggregates and returns the parameters and data requirements for a resource and all its dependencies as a single module definition"/>
  </concept>
  <concept>
    <code value="document"/>
    <display value="$document"/>
    <definition value="Generate a Document"/>
  </concept>
  <concept>
    <code value="evaluate"/>
    <display value="$evaluate"/>
    <definition value="Request clinical decision support guidance based on a specific decision support module"/>
  </concept>
  <concept>
    <code value="evaluate-measure"/>
    <display value="$evaluate-measure"/>
    <definition value="Invoke an eMeasure and obtain the results"/>
  </concept>
  <concept>
    <code value="everything"/>
    <display value="$everything"/>
    <definition value="Return all the related information as described in the Encounter or Patient"/>
  </concept>
  <concept>
    <code value="expand"/>
    <display value="$expand"/>
    <definition value="Value Set Expansion"/>
  </concept>
  <concept>
    <code value="find"/>
    <display value="$find"/>
    <definition value="Find a functional list"/>
  </concept>
  <concept>
    <code value="graphql"/>
    <display value="$graphql"/>
    <definition value="Invoke a GraphQL query"/>
  </concept>
  <concept>
    <code value="implements"/>
    <display value="$implements"/>
    <definition value="Test if a server implements a client's required operations"/>
  </concept>
  <concept>
    <code value="lastn"/>
    <display value="$lastn"/>
    <definition value="Last N Observations Query"/>
  </concept>
  <concept>
    <code value="lookup"/>
    <display value="$lookup"/>
    <definition value="Concept Look Up and Decomposition"/>
  </concept>
  <concept>
    <code value="match"/>
    <display value="$match"/>
    <definition value="Find patient matches using MPI based logic"/>
  </concept>
  <concept>
    <code value="meta"/>
    <display value="$meta"/>
    <definition value="Access a list of profiles, tags, and security labels"/>
  </concept>
  <concept>
    <code value="meta-add"/>
    <display value="$meta-add"/>
    <definition value="Add profiles, tags, and security labels to a resource"/>
  </concept>
  <concept>
    <code value="meta-delete"/>
    <display value="$meta-delete"/>
    <definition value="Delete profiles, tags, and security labels for a resource"/>
  </concept>
  <concept>
    <code value="populate"/>
    <display value="$populate"/>
    <definition value="Populate Questionnaire"/>
  </concept>
  <concept>
    <code value="populatehtml"/>
    <display value="$populatehtml"/>
    <definition value="Generate HTML for Questionnaire"/>
  </concept>
  <concept>
    <code value="populatelink"/>
    <display value="$populatelink"/>
    <definition value="Generate a link to a Questionnaire completion webpage"/>
  </concept>
  <concept>
    <code value="process-message"/>
    <display value="$process-message"/>
    <definition value="Process a message according to the defined event"/>
  </concept>
  <concept>
    <code value="questionnaire"/>
    <display value="$questionnaire"/>
    <definition value="Build Questionnaire"/>
  </concept>
  <concept>
    <code value="stats"/>
    <display value="$stats"/>
    <definition value="Observation Statistics"/>
  </concept>
  <concept>
    <code value="subset"/>
    <display value="$subset"/>
    <definition value="Fetch a subset of the CapabilityStatement resource"/>
  </concept>
  <concept>
    <code value="subsumes"/>
    <display value="$subsumes"/>
    <definition value="CodeSystem Subsumption Testing"/>
  </concept>
  <concept>
    <code value="transform"/>
    <display value="$transform"/>
    <definition value="Model Instance Transformation"/>
  </concept>
  <concept>
    <code value="translate"/>
    <display value="$translate"/>
    <definition value="Concept Translation"/>
  </concept>
  <concept>
    <code value="validate"/>
    <display value="$validate"/>
    <definition value="Validate a resource"/>
  </concept>
  <concept>
    <code value="validate-code"/>
    <display value="$validate-code"/>
    <definition value="ValueSet based Validation"/>
  </concept>
</CodeSystem>