<CodeSystem xmlns="http://hl7.org/fhir">
  <id value="issue-type" />
  <text>
    <status value="generated" />
    <div xmlns="http://www.w3.org/1999/xhtml">
      <p>The narrative has been removed to reduce the size of the distribution of the Hl7.Fhir.Specification library</p>
    </div>
  </text>
  <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-ballot-status">
    <valueString value="Informative" />
  </extension>
  <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm">
    <valueInteger value="5" />
  </extension>
  <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-wg">
    <valueCode value="fhir" />
  </extension>
  <url value="http://hl7.org/fhir/issue-type" />
  <identifier>
    <system value="urn:ietf:rfc:3986" />
    <value value="urn:oid:2.16.840.1.113883.4.642.1.400" />
  </identifier>
  <version value="3.0.0" />
  <name value="IssueType" />
  <status value="draft" />
  <experimental value="false" />
  <date value="2017-04-03T11:27:53+00:00" />
  <publisher value="HL7 (FHIR Project)" />
  <contact>
    <telecom>
      <system value="url" />
      <value value="http://hl7.org/fhir" />
    </telecom>
    <telecom>
      <system value="email" />
      <value value="fhir@lists.hl7.org" />
    </telecom>
  </contact>
  <description value="A code that describes the type of issue." />
  <caseSensitive value="true" />
  <valueSet value="http://hl7.org/fhir/ValueSet/issue-type" />
  <content value="complete" />
  <concept>
    <code value="invalid" />
    <display value="Invalid Content" />
    <definition value="Content invalid against the specification or a profile." />
    <concept>
      <code value="structure" />
      <display value="Structural Issue" />
      <definition value="A structural issue in the content such as wrong namespace, or unable to parse the content completely, or invalid json syntax." />
    </concept>
    <concept>
      <code value="required" />
      <display value="Required element missing" />
      <definition value="A required element is missing." />
    </concept>
    <concept>
      <code value="value" />
      <display value="Element value invalid" />
      <definition value="An element value is invalid." />
    </concept>
    <concept>
      <code value="invariant" />
      <display value="Validation rule failed" />
      <definition value="A content validation rule failed - e.g. a schematron rule." />
    </concept>
  </concept>
  <concept>
    <code value="security" />
    <display value="Security Problem" />
    <definition value="An authentication/authorization/permissions issue of some kind." />
    <concept>
      <code value="login" />
      <display value="Login Required" />
      <definition value="The client needs to initiate an authentication process." />
    </concept>
    <concept>
      <code value="unknown" />
      <display value="Unknown User" />
      <definition value="The user or system was not able to be authenticated (either there is no process, or the proferred token is unacceptable)." />
    </concept>
    <concept>
      <code value="expired" />
      <display value="Session Expired" />
      <definition value="User session expired; a login may be required." />
    </concept>
    <concept>
      <code value="forbidden" />
      <display value="Forbidden" />
      <definition value="The user does not have the rights to perform this action." />
    </concept>
    <concept>
      <code value="suppressed" />
      <display value="Information  Suppressed" />
      <definition value="Some information was not or may not have been returned due to business rules, consent or privacy rules, or access permission constraints.  This information may be accessible through alternate processes." />
    </concept>
  </concept>
  <concept>
    <code value="processing" />
    <display value="Processing Failure" />
    <definition value="Processing issues. These are expected to be final e.g. there is no point resubmitting the same content unchanged." />
    <concept>
      <code value="not-supported" />
      <display value="Content not supported" />
      <definition value="The resource or profile is not supported." />
    </concept>
    <concept>
      <code value="duplicate" />
      <display value="Duplicate" />
      <definition value="An attempt was made to create a duplicate record." />
    </concept>
    <concept>
      <code value="not-found" />
      <display value="Not Found" />
      <definition value="The reference provided was not found. In a pure RESTful environment, this would be an HTTP 404 error, but this code may be used where the content is not found further into the application architecture." />
    </concept>
    <concept>
      <code value="too-long" />
      <display value="Content Too Long" />
      <definition value="Provided content is too long (typically, this is a denial of service protection type of error)." />
    </concept>
    <concept>
      <code value="code-invalid" />
      <display value="Invalid Code" />
      <definition value="The code or system could not be understood, or it was not valid in the context of a particular ValueSet.code." />
    </concept>
    <concept>
      <code value="extension" />
      <display value="Unacceptable Extension" />
      <definition value="An extension was found that was not acceptable, could not be resolved, or a modifierExtension was not recognized." />
    </concept>
    <concept>
      <code value="too-costly" />
      <display value="Operation Too Costly" />
      <definition value="The operation was stopped to protect server resources; e.g. a request for a value set expansion on all of SNOMED CT." />
    </concept>
    <concept>
      <code value="business-rule" />
      <display value="Business Rule Violation" />
      <definition value="The content/operation failed to pass some business rule, and so could not proceed." />
    </concept>
    <concept>
      <code value="conflict" />
      <display value="Edit Version Conflict" />
      <definition value="Content could not be accepted because of an edit conflict (i.e. version aware updates) (In a pure RESTful environment, this would be an HTTP 404 error, but this code may be used where the conflict is discovered further into the application architecture.)" />
    </concept>
    <concept>
      <code value="incomplete" />
      <display value="Incomplete Results" />
      <definition value="Not all data sources typically accessed could be reached, or responded in time, so the returned information may not be complete." />
    </concept>
  </concept>
  <concept>
    <code value="transient" />
    <display value="Transient Issue" />
    <definition value="Transient processing issues. The system receiving the error may be able to resubmit the same content once an underlying issue is resolved." />
    <concept>
      <code value="lock-error" />
      <display value="Lock Error" />
      <definition value="A resource/record locking failure (usually in an underlying database)." />
    </concept>
    <concept>
      <code value="no-store" />
      <display value="No Store Available" />
      <definition value="The persistent store is unavailable; e.g. the database is down for maintenance or similar action." />
    </concept>
    <concept>
      <code value="exception" />
      <display value="Exception" />
      <definition value="An unexpected internal error has occurred." />
    </concept>
    <concept>
      <code value="timeout" />
      <display value="Timeout" />
      <definition value="An internal timeout has occurred." />
    </concept>
    <concept>
      <code value="throttled" />
      <display value="Throttled" />
      <definition value="The system is not prepared to handle this request due to load management." />
    </concept>
  </concept>
  <concept>
    <code value="informational" />
    <display value="Informational Note" />
    <definition value="A message unrelated to the processing success of the completed operation (examples of the latter include things like reminders of password expiry, system maintenance times, etc.)." />
  </concept>
</CodeSystem>