Release 5 Preview #2

Extension-request-donotperform.xml

FHIR Infrastructure Work GroupMaturity Level: N/AStandards Status: Informative

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

doNotPerform

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

<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="request-doNotPerform"/> 
  <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-wg">
    <valueCode value="fhir"/> 
  </extension> 
  <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm">
    <valueInteger value="1"/> 
  </extension> 
  <url value="http://hl7.org/fhir/StructureDefinition/request-doNotPerform"/> 
  <version value="4.4.0"/> 
  <name value="doNotPerform"/> 
  <title value="Do Not Perfom"/> 
  <status value="draft"/> 
  <date value="2017-12-06"/> 
  <publisher value="Health Level Seven, Inc. - FHIR WG"/> 
  <contact> 
    <telecom> 
      <system value="url"/> 
      <value value="http://hl7.org/special/committees/fwg"/> 
    </telecom> 
  </contact> 
  <description value="If true indicates that the request is asking for the specified action to not occur."/> 
  <fhirVersion value="4.4.0"/> 
  <mapping> 
    <identity value="rim"/> 
    <uri value="http://hl7.org/v3"/> 
    <name value="RIM Mapping"/> 
  </mapping> 
  <kind value="complex-type"/> 
  <abstract value="false"/> 
  <context> 
    <type value="element"/> 
    <expression value="NutritionOrder"/> 
  </context> 
  <type value="Extension"/> 
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Extension"/> 
  <derivation value="constraint"/> 
  <snapshot> 
    <element id="Extension">
      <path value="Extension"/> 
      <short value="true if request is prohibiting action"/> 
      <definition value="If true indicates that the request is asking for the specified action to not occur."/> 
      <comment value="The attributes provided with the request qualify what is not to be done. For example,
       if an effectiveTime is provided, the &quot;do not&quot; request only applies within the
       specified time. If a performerType is specified then the &quot;do not&quot; request only
       applies to performers of that type. Qualifiers include: code, subject, occurrence, perormerType
       and performer.

In some cases, the Request.code may pre-coordinate prohibition into the requested action.
       E.g. &quot;NPO&quot; (nothing by mouth), &quot;DNR&quot; (do not recussitate). If this
       happens, doNotPerform SHALL NOT be set to true. I.e. The resource shall not have double
       negation. (E.g. &quot;Do not DNR&quot;)."/> 
      <min value="0"/> 
      <max value="1"/> 
      <base> 
        <path value="Extension"/> 
        <min value="0"/> 
        <max value="*"/> 
      </base> 
      <constraint> 
        <key value="ele-1"/> 
        <severity value="error"/> 
        <human value="All FHIR elements must have a @value or children"/> 
        <expression value="hasValue() or (children().count() &gt; id.count())"/> 
        <xpath value="@value|f:*|h:div"/> 
        <source value="http://hl7.org/fhir/StructureDefinition/Element"/> 
      </constraint> 
      <constraint> 
        <key value="ext-1"/> 
        <severity value="error"/> 
        <human value="Must have either extensions or value[x], not both"/> 
        <expression value="extension.exists() != value.exists()"/> 
        <xpath value="exists(f:extension)!=exists(f:*[starts-with(local-name(.), 'value')])"/> 
        <source value="http://hl7.org/fhir/StructureDefinition/Extension"/> 
      </constraint> 
      <isModifier value="true"/> 
      <isModifierReason value="If true this element negates the specified action. For Example, instead of a request for
       a procedure, it is a request for the procedure to not occur."/> 
    </element> 
    <element id="Extension.id">
      <path value="Extension.id"/> 
      <representation value="xmlAttr"/> 
      <short value="Unique id for inter-element referencing"/> 
      <definition value="Unique id for the element within a resource (for internal references). This may be any
       string value that does not contain spaces."/> 
      <min value="0"/> 
      <max value="1"/> 
      <base> 
        <path value="Element.id"/> 
        <min value="0"/> 
        <max value="1"/> 
      </base> 
      <type> 
        <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type">
          <valueUri value="string"/> 
        </extension> 
        <code value="http://hl7.org/fhirpath/System.String"/> 
      </type> 
      <isModifier value="false"/> 
      <isSummary value="false"/> 
      <mapping> 
        <identity value="rim"/> 
        <map value="n/a"/> 
      </mapping> 
    </element> 
    <element id="Extension.extension">
      <path value="Extension.extension"/> 
      <slicing> 
        <discriminator> 
          <type value="value"/> 
          <path value="url"/> 
        </discriminator> 
        <description value="Extensions are always sliced by (at least) url"/> 
        <rules value="open"/> 
      </slicing> 
      <short value="Extension"/> 
      <definition value="An Extension"/> 
      <min value="0"/> 
      <max value="0"/> 
      <base> 
        <path value="Element.extension"/> 
        <min value="0"/> 
        <max value="*"/> 
      </base> 
      <type> 
        <code value="Extension"/> 
      </type> 
      <constraint> 
        <key value="ele-1"/> 
        <severity value="error"/> 
        <human value="All FHIR elements must have a @value or children"/> 
        <expression value="hasValue() or (children().count() &gt; id.count())"/> 
        <xpath value="@value|f:*|h:div"/> 
        <source value="http://hl7.org/fhir/StructureDefinition/Element"/> 
      </constraint> 
      <constraint> 
        <key value="ext-1"/> 
        <severity value="error"/> 
        <human value="Must have either extensions or value[x], not both"/> 
        <expression value="extension.exists() != value.exists()"/> 
        <xpath value="exists(f:extension)!=exists(f:*[starts-with(local-name(.), &quot;value&quot;)])"/> 
        <source value="http://hl7.org/fhir/StructureDefinition/Extension"/> 
      </constraint> 
      <isModifier value="false"/> 
      <isSummary value="false"/> 
    </element> 
    <element id="Extension.url">
      <path value="Extension.url"/> 
      <representation value="xmlAttr"/> 
      <short value="identifies the meaning of the extension"/> 
      <definition value="Source of the definition for the extension code - a logical name or a URL."/> 
      <comment value="The definition may point directly to a computable or human-readable definition of the
       extensibility codes, or it may be a logical URI as declared in some other specification.
       The definition SHALL be a URI for the Structure Definition defining the extension."/> 
      <min value="1"/> 
      <max value="1"/> 
      <base> 
        <path value="Extension.url"/> 
        <min value="1"/> 
        <max value="1"/> 
      </base> 
      <type> 
        <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type">
          <valueUri value="uri"/> 
        </extension> 
        <code value="http://hl7.org/fhirpath/System.String"/> 
      </type> 
      <fixedUri value="http://hl7.org/fhir/StructureDefinition/request-doNotPerform"/> 
      <isModifier value="false"/> 
      <isSummary value="false"/> 
      <mapping> 
        <identity value="rim"/> 
        <map value="N/A"/> 
      </mapping> 
    </element> 
    <element id="Extension.value[x]">
      <path value="Extension.value[x]"/> 
      <short value="Value of extension"/> 
      <definition value="Value of extension - must be one of a constrained set of the data types (see [Extensibility](extensi
      bility.html) for a list)."/> 
      <min value="1"/> 
      <max value="1"/> 
      <base> 
        <path value="Extension.value[x]"/> 
        <min value="0"/> 
        <max value="1"/> 
      </base> 
      <type> 
        <code value="boolean"/> 
      </type> 
      <constraint> 
        <key value="ele-1"/> 
        <severity value="error"/> 
        <human value="All FHIR elements must have a @value or children"/> 
        <expression value="hasValue() or (children().count() &gt; id.count())"/> 
        <xpath value="@value|f:*|h:div"/> 
        <source value="http://hl7.org/fhir/StructureDefinition/Element"/> 
      </constraint> 
      <isModifier value="false"/> 
      <isSummary value="false"/> 
      <mapping> 
        <identity value="rim"/> 
        <map value="N/A"/> 
      </mapping> 
    </element> 
  </snapshot> 
  <differential> 
    <element id="Extension">
      <path value="Extension"/> 
      <short value="true if request is prohibiting action"/> 
      <definition value="If true indicates that the request is asking for the specified action to not occur."/> 
      <comment value="The attributes provided with the request qualify what is not to be done. For example,
       if an effectiveTime is provided, the &quot;do not&quot; request only applies within the
       specified time. If a performerType is specified then the &quot;do not&quot; request only
       applies to performers of that type. Qualifiers include: code, subject, occurrence, perormerType
       and performer.

In some cases, the Request.code may pre-coordinate prohibition into the requested action.
       E.g. &quot;NPO&quot; (nothing by mouth), &quot;DNR&quot; (do not recussitate). If this
       happens, doNotPerform SHALL NOT be set to true. I.e. The resource shall not have double
       negation. (E.g. &quot;Do not DNR&quot;)."/> 
      <min value="0"/> 
      <max value="1"/> 
      <isModifier value="true"/> 
      <isModifierReason value="If true this element negates the specified action. For Example, instead of a request for
       a procedure, it is a request for the procedure to not occur."/> 
    </element> 
    <element id="Extension.extension">
      <path value="Extension.extension"/> 
      <max value="0"/> 
    </element> 
    <element id="Extension.url">
      <path value="Extension.url"/> 
      <fixedUri value="http://hl7.org/fhir/StructureDefinition/request-doNotPerform"/> 
    </element> 
    <element id="Extension.value[x]">
      <path value="Extension.value[x]"/> 
      <min value="1"/> 
      <type> 
        <code value="boolean"/> 
      </type> 
    </element> 
  </differential> 
</StructureDefinition> 

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.