Touchstone FHIR Testing
2.0.0 - current International flag

Touchstone FHIR Testing v2.0.0. This is the current published version. For a full list of available versions, see the Directory of published versions

Extension: AEGISTouchstoneTestingTestScriptRuleExtension - XML Profile

Active as of 2023-06-29

XML representation of the testscript-rule extension.

Raw xml | Download



<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="testscript-rule"/>
  <text>
    <status value="extensions"/>
    <div xmlns="http://www.w3.org/1999/xhtml">Placeholder</div>
  </text>
  <url
       value="http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript-rule"/>
  <version value="2.0.0"/>
  <name value="AEGISTouchstoneTestingTestScriptRuleExtension"/>
  <title value="AEGIS Touchstone Testing TestScript Rule Extension"/>
  <status value="active"/>
  <date value="2023-06-29"/>
  <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="Formal definitions of Touchstone TestScript rule extensions"/>
  <jurisdiction>
    <coding>
      <system value="http://unstats.un.org/unsd/methods/m49/m49.htm"/>
      <code value="001"/>
      <display value="World"/>
    </coding>
  </jurisdiction>
  <purpose
           value="TestScript rule definition used as asserts within the TestScript. The rule must define the external reference to the executable rule script file."/>
  <fhirVersion value="4.0.1"/>
  <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="TestScript"/>
  </context>
  <type value="Extension"/>
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Extension"/>
  <derivation value="constraint"/>
  <snapshot>
    <element id="Extension">
      <path value="Extension"/>
      <short value="Assert rule used within the test script"/>
      <definition
                  value="TestScript rule definition used as asserts within the TestScript. The rule must define the external reference to the executable rule script file."/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="Extension"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <condition value="ele-1"/>
      <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="false"/>
    </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">
          <valueUrl 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="Additional content defined by implementations"/>
      <definition
                  value="May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance  applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension."/>
      <comment
               value="There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone."/>
      <alias value="extensions"/>
      <alias value="user content"/>
      <min value="2"/>
      <max value="*"/>
      <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"/>
      <mapping>
        <identity value="rim"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Extension.extension:ruleId">
      <path value="Extension.extension"/>
      <sliceName value="ruleId"/>
      <short value="Assert rule unique id within TestScript"/>
      <definition
                  value="The identifier for this rule used in rulesets or asserts."/>
      <min value="1"/>
      <max value="1"/>
      <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>
      <mustSupport value="true"/>
      <isModifier value="false"/>
      <isSummary value="false"/>
    </element>
    <element id="Extension.extension:ruleId.id">
      <path value="Extension.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">
          <valueUrl 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:ruleId.extension">
      <path value="Extension.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="Additional content defined by implementations"/>
      <definition
                  value="May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance  applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension."/>
      <comment
               value="There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone."/>
      <alias value="extensions"/>
      <alias value="user content"/>
      <min value="0"/>
      <max value="*"/>
      <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"/>
      <mapping>
        <identity value="rim"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Extension.extension:ruleId.url">
      <path value="Extension.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>
        <code value="uri"/>
      </type>
      <fixedUri value="ruleId"/>
      <isModifier value="false"/>
      <isSummary value="false"/>
      <mapping>
        <identity value="rim"/>
        <map value="N/A"/>
      </mapping>
    </element>
    <element id="Extension.extension:ruleId.value[x]">
      <path value="Extension.extension.value[x]"/>
      <slicing>
        <discriminator>
          <type value="type"/>
          <path value="$this"/>
        </discriminator>
        <ordered value="false"/>
        <rules value="closed"/>
      </slicing>
      <short value="Value of extension"/>
      <definition
                  value="Value of extension - must be one of a constrained set of the data types (see [Extensibility](http://hl7.org/fhir/R4/extensibility.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="id"/>
      </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>
    <element id="Extension.extension:ruleId.value[x]:valueId">
      <path value="Extension.extension.value[x]"/>
      <sliceName value="valueId"/>
      <short value="Value of extension"/>
      <definition
                  value="Value of extension - must be one of a constrained set of the data types (see [Extensibility](http://hl7.org/fhir/R4/extensibility.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="id"/>
      </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>
    <element id="Extension.extension:path">
      <path value="Extension.extension"/>
      <sliceName value="path"/>
      <short value="Rule location path"/>
      <definition
                  value="Absolute or relative location path to the rule script."/>
      <min value="1"/>
      <max value="1"/>
      <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>
      <mustSupport value="true"/>
      <isModifier value="false"/>
      <isSummary value="false"/>
    </element>
    <element id="Extension.extension:path.id">
      <path value="Extension.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">
          <valueUrl 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.extension">
      <path value="Extension.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="Additional content defined by implementations"/>
      <definition
                  value="May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance  applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension."/>
      <comment
               value="There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone."/>
      <alias value="extensions"/>
      <alias value="user content"/>
      <min value="0"/>
      <max value="*"/>
      <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"/>
      <mapping>
        <identity value="rim"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Extension.extension:path.url">
      <path value="Extension.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>
        <code value="uri"/>
      </type>
      <fixedUri value="path"/>
      <isModifier value="false"/>
      <isSummary value="false"/>
      <mapping>
        <identity value="rim"/>
        <map value="N/A"/>
      </mapping>
    </element>
    <element id="Extension.extension:path.value[x]">
      <path value="Extension.extension.value[x]"/>
      <slicing>
        <discriminator>
          <type value="type"/>
          <path value="$this"/>
        </discriminator>
        <ordered value="false"/>
        <rules value="closed"/>
      </slicing>
      <short value="Value of extension"/>
      <definition
                  value="Value of extension - must be one of a constrained set of the data types (see [Extensibility](http://hl7.org/fhir/R4/extensibility.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="string"/>
      </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>
    <element id="Extension.extension:path.value[x]:valueString">
      <path value="Extension.extension.value[x]"/>
      <sliceName value="valueString"/>
      <short value="Value of extension"/>
      <definition
                  value="Value of extension - must be one of a constrained set of the data types (see [Extensibility](http://hl7.org/fhir/R4/extensibility.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="string"/>
      </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>
    <element id="Extension.extension:param">
      <path value="Extension.extension"/>
      <sliceName value="param"/>
      <short value="Rule parameter template"/>
      <definition
                  value="Each rule template can take one or more parameters for rule evaluation"/>
      <min value="0"/>
      <max value="*"/>
      <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.extension:param.id">
      <path value="Extension.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">
          <valueUrl 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:param.extension">
      <path value="Extension.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="Additional content defined by implementations"/>
      <definition
                  value="May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance  applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension."/>
      <comment
               value="There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone."/>
      <alias value="extensions"/>
      <alias value="user content"/>
      <min value="2"/>
      <max value="*"/>
      <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"/>
      <mapping>
        <identity value="rim"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Extension.extension:param.extension:paramName">
      <path value="Extension.extension.extension"/>
      <sliceName value="paramName"/>
      <short value="Parameter name matching external assert rule parameter"/>
      <definition
                  value="Descriptive name for this parameter that matches the external assert rule parameter name."/>
      <min value="1"/>
      <max value="1"/>
      <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>
      <mustSupport value="true"/>
      <isModifier value="false"/>
      <isSummary value="false"/>
    </element>
    <element id="Extension.extension:param.extension:paramName.id">
      <path value="Extension.extension.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">
          <valueUrl 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:param.extension:paramName.extension">
      <path value="Extension.extension.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="Additional content defined by implementations"/>
      <definition
                  value="May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance  applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension."/>
      <comment
               value="There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone."/>
      <alias value="extensions"/>
      <alias value="user content"/>
      <min value="0"/>
      <max value="*"/>
      <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"/>
      <mapping>
        <identity value="rim"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Extension.extension:param.extension:paramName.url">
      <path value="Extension.extension.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>
        <code value="uri"/>
      </type>
      <fixedUri value="name"/>
      <isModifier value="false"/>
      <isSummary value="false"/>
      <mapping>
        <identity value="rim"/>
        <map value="N/A"/>
      </mapping>
    </element>
    <element id="Extension.extension:param.extension:paramName.value[x]">
      <path value="Extension.extension.extension.value[x]"/>
      <slicing>
        <discriminator>
          <type value="type"/>
          <path value="$this"/>
        </discriminator>
        <ordered value="false"/>
        <rules value="closed"/>
      </slicing>
      <short value="Value of extension"/>
      <definition
                  value="Value of extension - must be one of a constrained set of the data types (see [Extensibility](http://hl7.org/fhir/R4/extensibility.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="string"/>
      </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>
    <element
             id="Extension.extension:param.extension:paramName.value[x]:valueString">
      <path value="Extension.extension.extension.value[x]"/>
      <sliceName value="valueString"/>
      <short value="Value of extension"/>
      <definition
                  value="Value of extension - must be one of a constrained set of the data types (see [Extensibility](http://hl7.org/fhir/R4/extensibility.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="string"/>
      </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>
    <element id="Extension.extension:param.extension:paramValue">
      <path value="Extension.extension.extension"/>
      <sliceName value="paramValue"/>
      <short
             value="Parameter value defined either explicitly or dynamically"/>
      <definition
                  value="The explicit or dynamic value for the parameter that will be passed on to the external rule template."/>
      <min value="1"/>
      <max value="1"/>
      <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>
      <mustSupport value="true"/>
      <isModifier value="false"/>
      <isSummary value="false"/>
    </element>
    <element id="Extension.extension:param.extension:paramValue.id">
      <path value="Extension.extension.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">
          <valueUrl 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:param.extension:paramValue.extension">
      <path value="Extension.extension.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="Additional content defined by implementations"/>
      <definition
                  value="May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance  applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension."/>
      <comment
               value="There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone."/>
      <alias value="extensions"/>
      <alias value="user content"/>
      <min value="0"/>
      <max value="*"/>
      <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"/>
      <mapping>
        <identity value="rim"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Extension.extension:param.extension:paramValue.url">
      <path value="Extension.extension.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>
        <code value="uri"/>
      </type>
      <fixedUri value="value"/>
      <isModifier value="false"/>
      <isSummary value="false"/>
      <mapping>
        <identity value="rim"/>
        <map value="N/A"/>
      </mapping>
    </element>
    <element id="Extension.extension:param.extension:paramValue.value[x]">
      <path value="Extension.extension.extension.value[x]"/>
      <slicing>
        <discriminator>
          <type value="type"/>
          <path value="$this"/>
        </discriminator>
        <ordered value="false"/>
        <rules value="closed"/>
      </slicing>
      <short value="Value of extension"/>
      <definition
                  value="Value of extension - must be one of a constrained set of the data types (see [Extensibility](http://hl7.org/fhir/R4/extensibility.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="string"/>
      </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>
    <element
             id="Extension.extension:param.extension:paramValue.value[x]:valueString">
      <path value="Extension.extension.extension.value[x]"/>
      <sliceName value="valueString"/>
      <short value="Value of extension"/>
      <definition
                  value="Value of extension - must be one of a constrained set of the data types (see [Extensibility](http://hl7.org/fhir/R4/extensibility.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="string"/>
      </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>
    <element id="Extension.extension:param.url">
      <path value="Extension.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">
          <valueUrl value="uri"/>
        </extension>
        <code value="http://hl7.org/fhirpath/System.String"/>
      </type>
      <fixedUri value="param"/>
      <isModifier value="false"/>
      <isSummary value="false"/>
      <mapping>
        <identity value="rim"/>
        <map value="N/A"/>
      </mapping>
    </element>
    <element id="Extension.extension:param.value[x]">
      <path value="Extension.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](http://hl7.org/fhir/R4/extensibility.html) for a list)."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="Extension.value[x]"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="base64Binary"/>
      </type>
      <type>
        <code value="boolean"/>
      </type>
      <type>
        <code value="canonical"/>
      </type>
      <type>
        <code value="code"/>
      </type>
      <type>
        <code value="date"/>
      </type>
      <type>
        <code value="dateTime"/>
      </type>
      <type>
        <code value="decimal"/>
      </type>
      <type>
        <code value="id"/>
      </type>
      <type>
        <code value="instant"/>
      </type>
      <type>
        <code value="integer"/>
      </type>
      <type>
        <code value="markdown"/>
      </type>
      <type>
        <code value="oid"/>
      </type>
      <type>
        <code value="positiveInt"/>
      </type>
      <type>
        <code value="string"/>
      </type>
      <type>
        <code value="time"/>
      </type>
      <type>
        <code value="unsignedInt"/>
      </type>
      <type>
        <code value="uri"/>
      </type>
      <type>
        <code value="url"/>
      </type>
      <type>
        <code value="uuid"/>
      </type>
      <type>
        <code value="Address"/>
      </type>
      <type>
        <code value="Age"/>
      </type>
      <type>
        <code value="Annotation"/>
      </type>
      <type>
        <code value="Attachment"/>
      </type>
      <type>
        <code value="CodeableConcept"/>
      </type>
      <type>
        <code value="Coding"/>
      </type>
      <type>
        <code value="ContactPoint"/>
      </type>
      <type>
        <code value="Count"/>
      </type>
      <type>
        <code value="Distance"/>
      </type>
      <type>
        <code value="Duration"/>
      </type>
      <type>
        <code value="HumanName"/>
      </type>
      <type>
        <code value="Identifier"/>
      </type>
      <type>
        <code value="Money"/>
      </type>
      <type>
        <code value="Period"/>
      </type>
      <type>
        <code value="Quantity"/>
      </type>
      <type>
        <code value="Range"/>
      </type>
      <type>
        <code value="Ratio"/>
      </type>
      <type>
        <code value="Reference"/>
      </type>
      <type>
        <code value="SampledData"/>
      </type>
      <type>
        <code value="Signature"/>
      </type>
      <type>
        <code value="Timing"/>
      </type>
      <type>
        <code value="ContactDetail"/>
      </type>
      <type>
        <code value="Contributor"/>
      </type>
      <type>
        <code value="DataRequirement"/>
      </type>
      <type>
        <code value="Expression"/>
      </type>
      <type>
        <code value="ParameterDefinition"/>
      </type>
      <type>
        <code value="RelatedArtifact"/>
      </type>
      <type>
        <code value="TriggerDefinition"/>
      </type>
      <type>
        <code value="UsageContext"/>
      </type>
      <type>
        <code value="Dosage"/>
      </type>
      <type>
        <code value="Meta"/>
      </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>
    <element id="Extension.extension:output">
      <path value="Extension.extension"/>
      <sliceName value="output"/>
      <short value="Rule output template"/>
      <definition
                  value="Each rule template can return one or more outputs for subsequent assert evaluation"/>
      <min value="0"/>
      <max value="*"/>
      <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.extension:output.id">
      <path value="Extension.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">
          <valueUrl 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:output.extension">
      <path value="Extension.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="Additional content defined by implementations"/>
      <definition
                  value="May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance  applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension."/>
      <comment
               value="There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone."/>
      <alias value="extensions"/>
      <alias value="user content"/>
      <min value="1"/>
      <max value="*"/>
      <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"/>
      <mapping>
        <identity value="rim"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Extension.extension:output.extension:outputName">
      <path value="Extension.extension.extension"/>
      <sliceName value="outputName"/>
      <short value="Output name matching external assert rule output"/>
      <definition
                  value="Descriptive name for this output that matches the external assert rule output name."/>
      <min value="1"/>
      <max value="1"/>
      <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>
      <mustSupport value="true"/>
      <isModifier value="false"/>
      <isSummary value="false"/>
    </element>
    <element id="Extension.extension:output.extension:outputName.id">
      <path value="Extension.extension.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">
          <valueUrl 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:output.extension:outputName.extension">
      <path value="Extension.extension.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="Additional content defined by implementations"/>
      <definition
                  value="May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance  applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension."/>
      <comment
               value="There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone."/>
      <alias value="extensions"/>
      <alias value="user content"/>
      <min value="0"/>
      <max value="*"/>
      <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"/>
      <mapping>
        <identity value="rim"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Extension.extension:output.extension:outputName.url">
      <path value="Extension.extension.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>
        <code value="uri"/>
      </type>
      <fixedUri value="name"/>
      <isModifier value="false"/>
      <isSummary value="false"/>
      <mapping>
        <identity value="rim"/>
        <map value="N/A"/>
      </mapping>
    </element>
    <element id="Extension.extension:output.extension:outputName.value[x]">
      <path value="Extension.extension.extension.value[x]"/>
      <slicing>
        <discriminator>
          <type value="type"/>
          <path value="$this"/>
        </discriminator>
        <ordered value="false"/>
        <rules value="closed"/>
      </slicing>
      <short value="Value of extension"/>
      <definition
                  value="Value of extension - must be one of a constrained set of the data types (see [Extensibility](http://hl7.org/fhir/R4/extensibility.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="string"/>
      </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>
    <element
             id="Extension.extension:output.extension:outputName.value[x]:valueString">
      <path value="Extension.extension.extension.value[x]"/>
      <sliceName value="valueString"/>
      <short value="Value of extension"/>
      <definition
                  value="Value of extension - must be one of a constrained set of the data types (see [Extensibility](http://hl7.org/fhir/R4/extensibility.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="string"/>
      </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>
    <element id="Extension.extension:output.extension:outputResourceType">
      <path value="Extension.extension.extension"/>
      <sliceName value="outputResourceType"/>
      <short
             value="Output FHIR resource type value defined either explicitly or dynamically"/>
      <definition
                  value="The explicit or dynamic FHIR resource type value for the output that will be returned to the external rule template."/>
      <min value="0"/>
      <max value="1"/>
      <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>
      <mustSupport value="true"/>
      <isModifier value="false"/>
      <isSummary value="false"/>
    </element>
    <element id="Extension.extension:output.extension:outputResourceType.id">
      <path value="Extension.extension.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">
          <valueUrl 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:output.extension:outputResourceType.extension">
      <path value="Extension.extension.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="Additional content defined by implementations"/>
      <definition
                  value="May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance  applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension."/>
      <comment
               value="There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone."/>
      <alias value="extensions"/>
      <alias value="user content"/>
      <min value="0"/>
      <max value="*"/>
      <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"/>
      <mapping>
        <identity value="rim"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element
             id="Extension.extension:output.extension:outputResourceType.url">
      <path value="Extension.extension.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>
        <code value="uri"/>
      </type>
      <fixedUri value="resourceType"/>
      <isModifier value="false"/>
      <isSummary value="false"/>
      <mapping>
        <identity value="rim"/>
        <map value="N/A"/>
      </mapping>
    </element>
    <element
             id="Extension.extension:output.extension:outputResourceType.value[x]">
      <path value="Extension.extension.extension.value[x]"/>
      <slicing>
        <discriminator>
          <type value="type"/>
          <path value="$this"/>
        </discriminator>
        <ordered value="false"/>
        <rules value="closed"/>
      </slicing>
      <short value="Value of extension"/>
      <definition
                  value="Value of extension - must be one of a constrained set of the data types (see [Extensibility](http://hl7.org/fhir/R4/extensibility.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="string"/>
      </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>
    <element
             id="Extension.extension:output.extension:outputResourceType.value[x]:valueString">
      <path value="Extension.extension.extension.value[x]"/>
      <sliceName value="valueString"/>
      <short value="Value of extension"/>
      <definition
                  value="Value of extension - must be one of a constrained set of the data types (see [Extensibility](http://hl7.org/fhir/R4/extensibility.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="string"/>
      </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>
    <element id="Extension.extension:output.extension:outputType">
      <path value="Extension.extension.extension"/>
      <sliceName value="outputType"/>
      <short
             value="Output type value defined either explicitly or dynamically"/>
      <definition
                  value="The explicit or dynamic type value for the output that will be returned to the external rule template."/>
      <min value="0"/>
      <max value="1"/>
      <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>
      <mustSupport value="true"/>
      <isModifier value="false"/>
      <isSummary value="false"/>
    </element>
    <element id="Extension.extension:output.extension:outputType.id">
      <path value="Extension.extension.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">
          <valueUrl 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:output.extension:outputType.extension">
      <path value="Extension.extension.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="Additional content defined by implementations"/>
      <definition
                  value="May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance  applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension."/>
      <comment
               value="There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone."/>
      <alias value="extensions"/>
      <alias value="user content"/>
      <min value="0"/>
      <max value="*"/>
      <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"/>
      <mapping>
        <identity value="rim"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Extension.extension:output.extension:outputType.url">
      <path value="Extension.extension.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>
        <code value="uri"/>
      </type>
      <fixedUri value="type"/>
      <isModifier value="false"/>
      <isSummary value="false"/>
      <mapping>
        <identity value="rim"/>
        <map value="N/A"/>
      </mapping>
    </element>
    <element id="Extension.extension:output.extension:outputType.value[x]">
      <path value="Extension.extension.extension.value[x]"/>
      <slicing>
        <discriminator>
          <type value="type"/>
          <path value="$this"/>
        </discriminator>
        <ordered value="false"/>
        <rules value="closed"/>
      </slicing>
      <short value="Value of extension"/>
      <definition
                  value="Value of extension - must be one of a constrained set of the data types (see [Extensibility](http://hl7.org/fhir/R4/extensibility.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="string"/>
      </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>
    <element
             id="Extension.extension:output.extension:outputType.value[x]:valueString">
      <path value="Extension.extension.extension.value[x]"/>
      <sliceName value="valueString"/>
      <short value="Value of extension"/>
      <definition
                  value="Value of extension - must be one of a constrained set of the data types (see [Extensibility](http://hl7.org/fhir/R4/extensibility.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="string"/>
      </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>
    <element id="Extension.extension:output.extension:outputContentType">
      <path value="Extension.extension.extension"/>
      <sliceName value="outputContentType"/>
      <short
             value="contentType value defined either explicitly or dynamically"/>
      <definition
                  value="The explicit or dynamic contentType value for the output that will be returned to the external rule template."/>
      <min value="0"/>
      <max value="1"/>
      <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>
      <mustSupport value="true"/>
      <isModifier value="false"/>
      <isSummary value="false"/>
    </element>
    <element id="Extension.extension:output.extension:outputContentType.id">
      <path value="Extension.extension.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">
          <valueUrl 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:output.extension:outputContentType.extension">
      <path value="Extension.extension.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="Additional content defined by implementations"/>
      <definition
                  value="May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance  applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension."/>
      <comment
               value="There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone."/>
      <alias value="extensions"/>
      <alias value="user content"/>
      <min value="0"/>
      <max value="*"/>
      <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"/>
      <mapping>
        <identity value="rim"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Extension.extension:output.extension:outputContentType.url">
      <path value="Extension.extension.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>
        <code value="uri"/>
      </type>
      <fixedUri value="contentType"/>
      <isModifier value="false"/>
      <isSummary value="false"/>
      <mapping>
        <identity value="rim"/>
        <map value="N/A"/>
      </mapping>
    </element>
    <element
             id="Extension.extension:output.extension:outputContentType.value[x]">
      <path value="Extension.extension.extension.value[x]"/>
      <slicing>
        <discriminator>
          <type value="type"/>
          <path value="$this"/>
        </discriminator>
        <ordered value="false"/>
        <rules value="closed"/>
      </slicing>
      <short value="Value of extension"/>
      <definition
                  value="Value of extension - must be one of a constrained set of the data types (see [Extensibility](http://hl7.org/fhir/R4/extensibility.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="string"/>
      </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>
    <element
             id="Extension.extension:output.extension:outputContentType.value[x]:valueString">
      <path value="Extension.extension.extension.value[x]"/>
      <sliceName value="valueString"/>
      <short value="Value of extension"/>
      <definition
                  value="Value of extension - must be one of a constrained set of the data types (see [Extensibility](http://hl7.org/fhir/R4/extensibility.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="string"/>
      </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>
    <element id="Extension.extension:output.url">
      <path value="Extension.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">
          <valueUrl value="uri"/>
        </extension>
        <code value="http://hl7.org/fhirpath/System.String"/>
      </type>
      <fixedUri value="output"/>
      <isModifier value="false"/>
      <isSummary value="false"/>
      <mapping>
        <identity value="rim"/>
        <map value="N/A"/>
      </mapping>
    </element>
    <element id="Extension.extension:output.value[x]">
      <path value="Extension.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](http://hl7.org/fhir/R4/extensibility.html) for a list)."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="Extension.value[x]"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="base64Binary"/>
      </type>
      <type>
        <code value="boolean"/>
      </type>
      <type>
        <code value="canonical"/>
      </type>
      <type>
        <code value="code"/>
      </type>
      <type>
        <code value="date"/>
      </type>
      <type>
        <code value="dateTime"/>
      </type>
      <type>
        <code value="decimal"/>
      </type>
      <type>
        <code value="id"/>
      </type>
      <type>
        <code value="instant"/>
      </type>
      <type>
        <code value="integer"/>
      </type>
      <type>
        <code value="markdown"/>
      </type>
      <type>
        <code value="oid"/>
      </type>
      <type>
        <code value="positiveInt"/>
      </type>
      <type>
        <code value="string"/>
      </type>
      <type>
        <code value="time"/>
      </type>
      <type>
        <code value="unsignedInt"/>
      </type>
      <type>
        <code value="uri"/>
      </type>
      <type>
        <code value="url"/>
      </type>
      <type>
        <code value="uuid"/>
      </type>
      <type>
        <code value="Address"/>
      </type>
      <type>
        <code value="Age"/>
      </type>
      <type>
        <code value="Annotation"/>
      </type>
      <type>
        <code value="Attachment"/>
      </type>
      <type>
        <code value="CodeableConcept"/>
      </type>
      <type>
        <code value="Coding"/>
      </type>
      <type>
        <code value="ContactPoint"/>
      </type>
      <type>
        <code value="Count"/>
      </type>
      <type>
        <code value="Distance"/>
      </type>
      <type>
        <code value="Duration"/>
      </type>
      <type>
        <code value="HumanName"/>
      </type>
      <type>
        <code value="Identifier"/>
      </type>
      <type>
        <code value="Money"/>
      </type>
      <type>
        <code value="Period"/>
      </type>
      <type>
        <code value="Quantity"/>
      </type>
      <type>
        <code value="Range"/>
      </type>
      <type>
        <code value="Ratio"/>
      </type>
      <type>
        <code value="Reference"/>
      </type>
      <type>
        <code value="SampledData"/>
      </type>
      <type>
        <code value="Signature"/>
      </type>
      <type>
        <code value="Timing"/>
      </type>
      <type>
        <code value="ContactDetail"/>
      </type>
      <type>
        <code value="Contributor"/>
      </type>
      <type>
        <code value="DataRequirement"/>
      </type>
      <type>
        <code value="Expression"/>
      </type>
      <type>
        <code value="ParameterDefinition"/>
      </type>
      <type>
        <code value="RelatedArtifact"/>
      </type>
      <type>
        <code value="TriggerDefinition"/>
      </type>
      <type>
        <code value="UsageContext"/>
      </type>
      <type>
        <code value="Dosage"/>
      </type>
      <type>
        <code value="Meta"/>
      </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>
    <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">
          <valueUrl value="uri"/>
        </extension>
        <code value="http://hl7.org/fhirpath/System.String"/>
      </type>
      <fixedUri
                value="http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript-rule"/>
      <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](http://hl7.org/fhir/R4/extensibility.html) for a list)."/>
      <min value="0"/>
      <max value="0"/>
      <base>
        <path value="Extension.value[x]"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="base64Binary"/>
      </type>
      <type>
        <code value="boolean"/>
      </type>
      <type>
        <code value="canonical"/>
      </type>
      <type>
        <code value="code"/>
      </type>
      <type>
        <code value="date"/>
      </type>
      <type>
        <code value="dateTime"/>
      </type>
      <type>
        <code value="decimal"/>
      </type>
      <type>
        <code value="id"/>
      </type>
      <type>
        <code value="instant"/>
      </type>
      <type>
        <code value="integer"/>
      </type>
      <type>
        <code value="markdown"/>
      </type>
      <type>
        <code value="oid"/>
      </type>
      <type>
        <code value="positiveInt"/>
      </type>
      <type>
        <code value="string"/>
      </type>
      <type>
        <code value="time"/>
      </type>
      <type>
        <code value="unsignedInt"/>
      </type>
      <type>
        <code value="uri"/>
      </type>
      <type>
        <code value="url"/>
      </type>
      <type>
        <code value="uuid"/>
      </type>
      <type>
        <code value="Address"/>
      </type>
      <type>
        <code value="Age"/>
      </type>
      <type>
        <code value="Annotation"/>
      </type>
      <type>
        <code value="Attachment"/>
      </type>
      <type>
        <code value="CodeableConcept"/>
      </type>
      <type>
        <code value="Coding"/>
      </type>
      <type>
        <code value="ContactPoint"/>
      </type>
      <type>
        <code value="Count"/>
      </type>
      <type>
        <code value="Distance"/>
      </type>
      <type>
        <code value="Duration"/>
      </type>
      <type>
        <code value="HumanName"/>
      </type>
      <type>
        <code value="Identifier"/>
      </type>
      <type>
        <code value="Money"/>
      </type>
      <type>
        <code value="Period"/>
      </type>
      <type>
        <code value="Quantity"/>
      </type>
      <type>
        <code value="Range"/>
      </type>
      <type>
        <code value="Ratio"/>
      </type>
      <type>
        <code value="Reference"/>
      </type>
      <type>
        <code value="SampledData"/>
      </type>
      <type>
        <code value="Signature"/>
      </type>
      <type>
        <code value="Timing"/>
      </type>
      <type>
        <code value="ContactDetail"/>
      </type>
      <type>
        <code value="Contributor"/>
      </type>
      <type>
        <code value="DataRequirement"/>
      </type>
      <type>
        <code value="Expression"/>
      </type>
      <type>
        <code value="ParameterDefinition"/>
      </type>
      <type>
        <code value="RelatedArtifact"/>
      </type>
      <type>
        <code value="TriggerDefinition"/>
      </type>
      <type>
        <code value="UsageContext"/>
      </type>
      <type>
        <code value="Dosage"/>
      </type>
      <type>
        <code value="Meta"/>
      </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="Assert rule used within the test script"/>
      <definition
                  value="TestScript rule definition used as asserts within the TestScript. The rule must define the external reference to the executable rule script file."/>
      <min value="0"/>
      <max value="*"/>
      <isModifier value="false"/>
    </element>
    <element id="Extension.extension:ruleId">
      <path value="Extension.extension"/>
      <sliceName value="ruleId"/>
      <short value="Assert rule unique id within TestScript"/>
      <definition
                  value="The identifier for this rule used in rulesets or asserts."/>
      <min value="1"/>
      <max value="1"/>
      <type>
        <code value="Extension"/>
      </type>
      <mustSupport value="true"/>
      <isModifier value="false"/>
    </element>
    <element id="Extension.extension:ruleId.url">
      <path value="Extension.extension.url"/>
      <min value="1"/>
      <max value="1"/>
      <type>
        <code value="uri"/>
      </type>
      <fixedUri value="ruleId"/>
    </element>
    <element id="Extension.extension:ruleId.valueId">
      <path value="Extension.extension.valueId"/>
      <min value="1"/>
      <max value="1"/>
      <type>
        <code value="id"/>
      </type>
    </element>
    <element id="Extension.extension:path">
      <path value="Extension.extension"/>
      <sliceName value="path"/>
      <short value="Rule location path"/>
      <definition
                  value="Absolute or relative location path to the rule script."/>
      <min value="1"/>
      <max value="1"/>
      <type>
        <code value="Extension"/>
      </type>
      <mustSupport value="true"/>
      <isModifier value="false"/>
    </element>
    <element id="Extension.extension:path.url">
      <path value="Extension.extension.url"/>
      <min value="1"/>
      <max value="1"/>
      <type>
        <code value="uri"/>
      </type>
      <fixedUri value="path"/>
    </element>
    <element id="Extension.extension:path.valueString">
      <path value="Extension.extension.valueString"/>
      <min value="1"/>
      <max value="1"/>
      <type>
        <code value="string"/>
      </type>
    </element>
    <element id="Extension.extension:param">
      <path value="Extension.extension"/>
      <sliceName value="param"/>
      <short value="Rule parameter template"/>
      <definition
                  value="Each rule template can take one or more parameters for rule evaluation"/>
      <min value="0"/>
      <max value="*"/>
      <isModifier value="false"/>
    </element>
    <element id="Extension.extension:param.extension:paramName">
      <path value="Extension.extension.extension"/>
      <sliceName value="paramName"/>
      <short value="Parameter name matching external assert rule parameter"/>
      <definition
                  value="Descriptive name for this parameter that matches the external assert rule parameter name."/>
      <min value="1"/>
      <max value="1"/>
      <type>
        <code value="Extension"/>
      </type>
      <mustSupport value="true"/>
      <isModifier value="false"/>
    </element>
    <element id="Extension.extension:param.extension:paramName.url">
      <path value="Extension.extension.extension.url"/>
      <min value="1"/>
      <max value="1"/>
      <type>
        <code value="uri"/>
      </type>
      <fixedUri value="name"/>
    </element>
    <element id="Extension.extension:param.extension:paramName.valueString">
      <path value="Extension.extension.extension.valueString"/>
      <min value="1"/>
      <max value="1"/>
      <type>
        <code value="string"/>
      </type>
    </element>
    <element id="Extension.extension:param.extension:paramValue">
      <path value="Extension.extension.extension"/>
      <sliceName value="paramValue"/>
      <short
             value="Parameter value defined either explicitly or dynamically"/>
      <definition
                  value="The explicit or dynamic value for the parameter that will be passed on to the external rule template."/>
      <min value="1"/>
      <max value="1"/>
      <type>
        <code value="Extension"/>
      </type>
      <mustSupport value="true"/>
      <isModifier value="false"/>
    </element>
    <element id="Extension.extension:param.extension:paramValue.url">
      <path value="Extension.extension.extension.url"/>
      <min value="1"/>
      <max value="1"/>
      <type>
        <code value="uri"/>
      </type>
      <fixedUri value="value"/>
    </element>
    <element id="Extension.extension:param.extension:paramValue.valueString">
      <path value="Extension.extension.extension.valueString"/>
      <min value="1"/>
      <max value="1"/>
      <type>
        <code value="string"/>
      </type>
    </element>
    <element id="Extension.extension:param.url">
      <path value="Extension.extension.url"/>
      <min value="1"/>
      <max value="1"/>
      <fixedUri value="param"/>
    </element>
    <element id="Extension.extension:output">
      <path value="Extension.extension"/>
      <sliceName value="output"/>
      <short value="Rule output template"/>
      <definition
                  value="Each rule template can return one or more outputs for subsequent assert evaluation"/>
      <min value="0"/>
      <max value="*"/>
      <isModifier value="false"/>
    </element>
    <element id="Extension.extension:output.extension:outputName">
      <path value="Extension.extension.extension"/>
      <sliceName value="outputName"/>
      <short value="Output name matching external assert rule output"/>
      <definition
                  value="Descriptive name for this output that matches the external assert rule output name."/>
      <min value="1"/>
      <max value="1"/>
      <type>
        <code value="Extension"/>
      </type>
      <mustSupport value="true"/>
      <isModifier value="false"/>
    </element>
    <element id="Extension.extension:output.extension:outputName.url">
      <path value="Extension.extension.extension.url"/>
      <min value="1"/>
      <max value="1"/>
      <type>
        <code value="uri"/>
      </type>
      <fixedUri value="name"/>
    </element>
    <element
             id="Extension.extension:output.extension:outputName.valueString">
      <path value="Extension.extension.extension.valueString"/>
      <min value="1"/>
      <max value="1"/>
      <type>
        <code value="string"/>
      </type>
    </element>
    <element id="Extension.extension:output.extension:outputResourceType">
      <path value="Extension.extension.extension"/>
      <sliceName value="outputResourceType"/>
      <short
             value="Output FHIR resource type value defined either explicitly or dynamically"/>
      <definition
                  value="The explicit or dynamic FHIR resource type value for the output that will be returned to the external rule template."/>
      <min value="0"/>
      <max value="1"/>
      <type>
        <code value="Extension"/>
      </type>
      <mustSupport value="true"/>
      <isModifier value="false"/>
    </element>
    <element
             id="Extension.extension:output.extension:outputResourceType.url">
      <path value="Extension.extension.extension.url"/>
      <min value="1"/>
      <max value="1"/>
      <type>
        <code value="uri"/>
      </type>
      <fixedUri value="resourceType"/>
    </element>
    <element
             id="Extension.extension:output.extension:outputResourceType.valueString">
      <path value="Extension.extension.extension.valueString"/>
      <min value="1"/>
      <max value="1"/>
      <type>
        <code value="string"/>
      </type>
    </element>
    <element id="Extension.extension:output.extension:outputType">
      <path value="Extension.extension.extension"/>
      <sliceName value="outputType"/>
      <short
             value="Output type value defined either explicitly or dynamically"/>
      <definition
                  value="The explicit or dynamic type value for the output that will be returned to the external rule template."/>
      <min value="0"/>
      <max value="1"/>
      <type>
        <code value="Extension"/>
      </type>
      <mustSupport value="true"/>
      <isModifier value="false"/>
    </element>
    <element id="Extension.extension:output.extension:outputType.url">
      <path value="Extension.extension.extension.url"/>
      <min value="1"/>
      <max value="1"/>
      <type>
        <code value="uri"/>
      </type>
      <fixedUri value="type"/>
    </element>
    <element
             id="Extension.extension:output.extension:outputType.valueString">
      <path value="Extension.extension.extension.valueString"/>
      <min value="1"/>
      <max value="1"/>
      <type>
        <code value="string"/>
      </type>
    </element>
    <element id="Extension.extension:output.extension:outputContentType">
      <path value="Extension.extension.extension"/>
      <sliceName value="outputContentType"/>
      <short
             value="contentType value defined either explicitly or dynamically"/>
      <definition
                  value="The explicit or dynamic contentType value for the output that will be returned to the external rule template."/>
      <min value="0"/>
      <max value="1"/>
      <type>
        <code value="Extension"/>
      </type>
      <mustSupport value="true"/>
      <isModifier value="false"/>
    </element>
    <element id="Extension.extension:output.extension:outputContentType.url">
      <path value="Extension.extension.extension.url"/>
      <min value="1"/>
      <max value="1"/>
      <type>
        <code value="uri"/>
      </type>
      <fixedUri value="contentType"/>
    </element>
    <element
             id="Extension.extension:output.extension:outputContentType.valueString">
      <path value="Extension.extension.extension.valueString"/>
      <min value="1"/>
      <max value="1"/>
      <type>
        <code value="string"/>
      </type>
    </element>
    <element id="Extension.extension:output.url">
      <path value="Extension.extension.url"/>
      <min value="1"/>
      <max value="1"/>
      <fixedUri value="output"/>
    </element>
    <element id="Extension.url">
      <path value="Extension.url"/>
      <min value="1"/>
      <max value="1"/>
      <fixedUri
                value="http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript-rule"/>
    </element>
    <element id="Extension.value[x]">
      <path value="Extension.value[x]"/>
      <min value="0"/>
      <max value="0"/>
    </element>
  </differential>
</StructureDefinition>