<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="profile-operationoutcome" />
  <meta>
    <versionId value="1" />
    <lastUpdated value="2022-07-05T15:00:20.698775+00:00" />
  </meta>
  <url value="http://telus.com/fhir/patientChart/StructureDefinition/profile-operation-outcome" />
  <name value="OperationOutcome" />
  <title value="Operation Outcome" />
  <status value="draft" />
  <date value="2021-03-01T20:14:20.3259726+00:00" />
  <fhirVersion value="4.0.1" />
  <mapping>
    <identity value="rim" />
    <uri value="http://hl7.org/v3" />
    <name value="RIM Mapping" />
  </mapping>
  <mapping>
    <identity value="v2" />
    <uri value="http://hl7.org/v2" />
    <name value="HL7 v2 Mapping" />
  </mapping>
  <kind value="resource" />
  <abstract value="false" />
  <type value="OperationOutcome" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/OperationOutcome" />
  <derivation value="constraint" />
  <differential>
    <element id="OperationOutcome.id">
      <path value="OperationOutcome.id" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="OperationOutcome.meta">
      <path value="OperationOutcome.meta" />
      <mustSupport value="true" />
    </element>
    <element id="OperationOutcome.meta.lastUpdated">
      <path value="OperationOutcome.meta.lastUpdated" />
      <mustSupport value="true" />
    </element>
    <element id="OperationOutcome.meta.source">
      <path value="OperationOutcome.meta.source" />
      <mustSupport value="true" />
    </element>
    <element id="OperationOutcome.issue">
      <path value="OperationOutcome.issue" />
      <mustSupport value="true" />
    </element>
    <element id="OperationOutcome.issue.extension">
      <path value="OperationOutcome.issue.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <min value="0" />
    </element>
    <element id="OperationOutcome.issue.extension:UserFriendlyText">
      <path value="OperationOutcome.issue.extension" />
      <sliceName value="UserFriendlyText" />
      <definition value="This captures a user friendly message that is intended to be displayed to the user" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="http://telus.com/fhir/patientChart/StructureDefinition/ext-operationoutcome-usertext" />
      </type>
      <mustSupport value="true" />
      <isModifier value="false" />
    </element>
    <element id="OperationOutcome.issue.extension:ReferenceNumber">
      <path value="OperationOutcome.issue.extension" />
      <sliceName value="ReferenceNumber" />
      <definition value="This can be used to convey a reference number for the issues.  This can be displayed to the user and can be relayed to customer service representatives to expedite trouble shooting should an issue arise." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="http://telus.com/fhir/patientChart/StructureDefinition/ext-operationoutcome-referencenum" />
      </type>
      <mustSupport value="true" />
      <isModifier value="false" />
    </element>
    <element id="OperationOutcome.issue.severity">
      <path value="OperationOutcome.issue.severity" />
      <mustSupport value="true" />
      <binding>
        <strength value="required" />
        <valueSet value="http://telus.com/fhir/ValueSet/telus-operationoutcome-issue-severity" />
      </binding>
    </element>
    <element id="OperationOutcome.issue.code">
      <path value="OperationOutcome.issue.code" />
      <comment value="Conformance Rule: Receiving systems must take corrective action based upon the code indicated. Retries with the same content are permissible for 'transient' errors. For 'invalid' and 'processing' errors, retries are not permitted as they are likely to result in the same error. Corrective action by the system or user must first be taken." />
      <mustSupport value="true" />
      <binding>
        <strength value="required" />
        <valueSet value="http://telus.com/fhir/ValueSet/telus-operationoutcome-issue-type" />
      </binding>
    </element>
    <element id="OperationOutcome.issue.details">
      <path value="OperationOutcome.issue.details" />
      <mustSupport value="true" />
      <binding>
        <strength value="extensible" />
        <valueSet value="http://telus.com/fhir/ValueSet/telus-operationoutcome-details" />
      </binding>
    </element>
    <element id="OperationOutcome.issue.details.coding">
      <path value="OperationOutcome.issue.details.coding" />
      <mustSupport value="true" />
    </element>
    <element id="OperationOutcome.issue.details.coding.system">
      <path value="OperationOutcome.issue.details.coding.system" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="OperationOutcome.issue.details.coding.code">
      <path value="OperationOutcome.issue.details.coding.code" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="OperationOutcome.issue.details.text">
      <path value="OperationOutcome.issue.details.text" />
      <min value="1" />
      <maxLength value="1000" />
      <mustSupport value="true" />
    </element>
    <element id="OperationOutcome.issue.details.text.extension">
      <path value="OperationOutcome.issue.details.text.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <min value="0" />
    </element>
    <element id="OperationOutcome.issue.details.text.extension:DetailsTextTranslation">
      <path value="OperationOutcome.issue.details.text.extension" />
      <sliceName value="DetailsTextTranslation" />
      <comment value="Usage Note: This is being deprecated and is not likely to be populated. POS vendors are not expected to populate this." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="http://hl7.org/fhir/StructureDefinition/translation" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="OperationOutcome.issue.diagnostics">
      <path value="OperationOutcome.issue.diagnostics" />
      <mustSupport value="true" />
    </element>
  </differential>
</StructureDefinition>