<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="digidot-Observation-no" />
  <url value="https://novari.no/fhir/digidot/StructureDefinition/digidot-Observation-no" />
  <version value="0.5.2-test" />
  <name value="DigidotObservationNo" />
  <title value="DigiDot Observation (NO)" />
  <status value="draft" />
  <date value="2026-09-22" />
  <publisher value="Novari AS - DigiDOT" />
  <description value="Represents the result of a dental measurement or assessment, such as periodontal pocket depth or a patient-reported pain score. Use it to record what was assessed and the result, or why no result is available, together with the patient contact, time and relevant tooth or oral site. An observation can provide supporting evidence for a finding or diagnosis recorded as a Condition." />
  <purpose value="Use this profile for dental measurements, assessment results, patient-reported scores and calculated indicators. Record the result together with the patient and required Encounter context, plus time, performer, method and referenced anatomy when known. Use Condition for a clinically significant finding, diagnosis or problem; an Observation can provide the measurement or assessment evidence for that Condition. Generate structured anatomy and extended clinical meaning from the same clinical input and validate equal anatomical scope. The former local-primary/local-copy fallback does not satisfy this SNOMED CT coding model. Do not invent a mapping for an unmapped local observation." />
  <fhirVersion value="4.0.1" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="Observation" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Observation" />
  <derivation value="constraint" />
  <snapshot>
    <element id="Observation">
      <path value="Observation" />
      <short value="Dental measurement, assessment result, patient-reported score or calculated indicator" />
      <definition value="Measurements and simple assertions made about a patient, device or other subject." />
      <comment value="Used for simple observations such as device measurements, laboratory atomic results, vital signs, height, weight, smoking status, comments, etc.  Other resources are used to provide context for observations such as laboratory reports, etc." />
      <alias value="Vital Signs" />
      <alias value="Measurement" />
      <alias value="Results" />
      <alias value="Tests" />
      <min value="0" />
      <max value="*" />
      <base>
        <path value="Observation" />
        <min value="0" />
        <max value="*" />
      </base>
      <constraint>
        <key value="dom-2" />
        <severity value="error" />
        <human value="If the resource is contained in another resource, it SHALL NOT contain nested Resources" />
        <expression value="contained.contained.empty()" />
        <xpath value="not(parent::f:contained and f:contained)" />
        <source value="http://hl7.org/fhir/StructureDefinition/DomainResource" />
      </constraint>
      <constraint>
        <key value="dom-4" />
        <severity value="error" />
        <human value="If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated" />
        <expression value="contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()" />
        <xpath value="not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))" />
        <source value="http://hl7.org/fhir/StructureDefinition/DomainResource" />
      </constraint>
      <constraint>
        <key value="dom-3" />
        <severity value="error" />
        <human value="If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource" />
        <expression value="contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()" />
        <xpath value="not(exists(for $contained in f:contained return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))" />
        <source value="http://hl7.org/fhir/StructureDefinition/DomainResource" />
      </constraint>
      <constraint>
        <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice">
          <valueBoolean value="true" />
        </extension>
        <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation">
          <valueMarkdown value="When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." />
        </extension>
        <key value="dom-6" />
        <severity value="warning" />
        <human value="A resource should have narrative for robust management" />
        <expression value="text.div.exists()" />
        <xpath value="exists(f:text/h:div)" />
        <source value="http://hl7.org/fhir/StructureDefinition/DomainResource" />
      </constraint>
      <constraint>
        <key value="dom-5" />
        <severity value="error" />
        <human value="If a resource is contained in another resource, it SHALL NOT have a security label" />
        <expression value="contained.meta.security.empty()" />
        <xpath value="not(exists(f:contained/*/f:meta/f:security))" />
        <source value="http://hl7.org/fhir/StructureDefinition/DomainResource" />
      </constraint>
      <constraint>
        <key value="obs-7" />
        <severity value="error" />
        <human value="If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present" />
        <expression value="value.empty() or component.code.where( (coding.code = %resource.code.coding.code) and (coding.system = %resource.code.coding.system)).empty()" />
        <xpath value="not(f:*[starts-with(local-name(.), 'value')] and (for $coding in f:code/f:coding return f:component/f:code/f:coding[f:code/@value=$coding/f:code/@value] [f:system/@value=$coding/f:system/@value]))" />
        <source value="http://hl7.org/fhir/StructureDefinition/Observation" />
      </constraint>
      <constraint>
        <key value="obs-6" />
        <severity value="error" />
        <human value="dataAbsentReason SHALL only be present if Observation.value[x] is not present" />
        <expression value="dataAbsentReason.empty() or value.empty()" />
        <xpath value="not(exists(f:dataAbsentReason)) or (not(exists(*[starts-with(local-name(.), 'value')])))" />
        <source value="http://hl7.org/fhir/StructureDefinition/Observation" />
      </constraint>
      <constraint>
        <key value="obs-result-or-absent-reason" />
        <severity value="error" />
        <human value="A DigiDOT Observation must contain one result value or one standard data absent reason." />
        <expression value="value.exists() or dataAbsentReason.exists()" />
        <source value="https://novari.no/fhir/digidot/StructureDefinition/digidot-Observation-no" />
      </constraint>
      <constraint>
        <key value="observation-anatomy-same-release" />
        <severity value="error" />
        <human value="When bodySite is populated, SNOMED CT clinical codings use the same release as the inline anatomical value." />
        <expression value="bodySite.empty() or code.coding.where(system = 'http://snomed.info/sct').all(version = 'http://snomed.info/sct/51000202101/version/20260715')" />
        <source value="https://novari.no/fhir/digidot/StructureDefinition/digidot-Observation-no" />
      </constraint>
      <mapping>
        <identity value="rim" />
        <map value="Entity. Role, or Act" />
      </mapping>
      <mapping>
        <identity value="workflow" />
        <map value="Event" />
      </mapping>
      <mapping>
        <identity value="sct-concept" />
        <map value="&lt; 363787002 |Observable entity|" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="OBX" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="Observation[classCode=OBS, moodCode=EVN]" />
      </mapping>
    </element>
    <element id="Observation.id">
      <path value="Observation.id" />
      <short value="Logical id of this artifact" />
      <definition value="The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes." />
      <comment value="The only time that a resource does not have an id is when it is being submitted to the server using a create operation." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Resource.id" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="id" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
    </element>
    <element id="Observation.meta">
      <path value="Observation.meta" />
      <short value="Metadata about the resource" />
      <definition value="The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Resource.meta" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="Meta" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="N/A" />
      </mapping>
    </element>
    <element id="Observation.implicitRules">
      <path value="Observation.implicitRules" />
      <short value="Not used in the current DigiDOT Observation draft" />
      <definition value="The Central Storage representation follows the published DigiDOT profile and does not use resource-specific implicit rules." />
      <comment value="Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc." />
      <min value="0" />
      <max value="0" />
      <base>
        <path value="Resource.implicitRules" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="uri" />
      </type>
      <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>
      <isModifier value="true" />
      <isModifierReason value="This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation" />
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
    </element>
    <element id="Observation.language">
      <path value="Observation.language" />
      <short value="Language of the resource content" />
      <definition value="The base language in which the resource is written." />
      <comment value="Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies  to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute)." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Resource.language" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="code" />
      </type>
      <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>
      <binding>
        <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet">
          <valueCanonical value="http://hl7.org/fhir/ValueSet/all-languages" />
        </extension>
        <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
          <valueString value="Language" />
        </extension>
        <strength value="preferred" />
        <description value="A human language." />
        <valueSet value="http://hl7.org/fhir/ValueSet/languages" />
      </binding>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
    </element>
    <element id="Observation.text">
      <path value="Observation.text" />
      <short value="Text summary of the resource, for human interpretation" />
      <definition value="A human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it &quot;clinically safe&quot; for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety." />
      <comment value="Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied).  This may be necessary for data from legacy systems where information is captured as a &quot;text blob&quot; or where text is additionally entered raw or narrated and encoded information is added later." />
      <alias value="narrative" />
      <alias value="html" />
      <alias value="xhtml" />
      <alias value="display" />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="DomainResource.text" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="Narrative" />
      </type>
      <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>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="N/A" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="Act.text?" />
      </mapping>
    </element>
    <element id="Observation.contained">
      <path value="Observation.contained" />
      <short value="Not used in the current DigiDOT Observation draft" />
      <definition value="Central Storage uses independently identifiable and searchable resources. Supporting resources must be stored separately and referenced through an agreed profile relationship." />
      <comment value="This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels." />
      <alias value="inline resources" />
      <alias value="anonymous resources" />
      <alias value="contained resources" />
      <min value="0" />
      <max value="0" />
      <base>
        <path value="DomainResource.contained" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="Resource" />
      </type>
      <mapping>
        <identity value="rim" />
        <map value="Entity. Role, or Act" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="N/A" />
      </mapping>
    </element>
    <element id="Observation.extension">
      <path value="Observation.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="Not used in the current DigiDOT Observation draft" />
      <definition value="No named and governed Observation extension is in scope. A future extension requires a documented use case and an explicit profile change." />
      <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="0" />
      <base>
        <path value="DomainResource.extension" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="Extension" />
      </type>
      <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>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="N/A" />
      </mapping>
    </element>
    <element id="Observation.modifierExtension">
      <path value="Observation.modifierExtension" />
      <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="Not used in the current DigiDOT Observation draft" />
      <definition value="Modifier extensions can change the meaning of an Observation and require every consumer to understand them. No modifier extension is defined for the current DigiDOT scope." />
      <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." />
      <requirements value="Modifier extensions allow for extensions that *cannot* be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored.  This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the [definition of modifier extensions](extensibility.html#modifierExtension)." />
      <alias value="extensions" />
      <alias value="user content" />
      <min value="0" />
      <max value="0" />
      <base>
        <path value="DomainResource.modifierExtension" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="Extension" />
      </type>
      <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="true" />
      <isModifierReason value="Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="N/A" />
      </mapping>
    </element>
    <element id="Observation.identifier">
      <path value="Observation.identifier" />
      <short value="Stable source business identifiers when available" />
      <definition value="Stable business identifiers for this record. If the source EHR or external system has a stable business identifier, it SHALL be included and preserved with its assigning system and value. The element is optional when no such identifier is available. Each supplied identifier SHALL contain system and value. Do not copy the local FHIR resource id merely to populate this element." />
      <comment value="MustSupport requires producers to support conveying available source identifiers and receivers to support preserving them; it does not require inventing an identifier when none is available. Any additional identifier-assignment and matching requirements belong in the exchange contract. An integration-assigned identifier requires governed assignment and a persistent mapping across retries; never generate a fresh identifier on each submission. Different records retain their own identities, even when they share the same patient or care episode. Resource references and FHIR server id rules are unchanged." />
      <requirements value="Allows observations to be distinguished and referenced." />
      <min value="0" />
      <max value="*" />
      <base>
        <path value="Observation.identifier" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="Identifier" />
      </type>
      <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>
      <mustSupport value="true" />
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="CX / EI (occasionally, more often EI maps to a resource id or a URL)" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="II - The Identifier class is a little looser than the v3 type II because it allows URIs as well as registered OIDs or GUIDs.  Also maps to Role[classCode=IDENT]" />
      </mapping>
      <mapping>
        <identity value="servd" />
        <map value="Identifier" />
      </mapping>
      <mapping>
        <identity value="workflow" />
        <map value="Event.identifier" />
      </mapping>
      <mapping>
        <identity value="w5" />
        <map value="FiveWs.identifier" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="OBX.21  For OBX segments from systems without OBX-21 support a combination of ORC/OBR and OBX must be negotiated between trading partners to uniquely identify the OBX segment. Depending on how V2 has been implemented each of these may be an option: 1) OBR-3 + OBX-3 + OBX-4 or 2) OBR-3 + OBR-4 + OBX-3 + OBX-4 or 2) some other way to uniquely ID the OBR/ORC + OBX-3 + OBX-4." />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="id" />
      </mapping>
    </element>
    <element id="Observation.identifier.id">
      <path value="Observation.identifier.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>
        <code>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-json-type">
            <valueString value="string" />
          </extension>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-xml-type">
            <valueString value="xsd:string" />
          </extension>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-rdf-type">
            <valueString value="xsd:string" />
          </extension>
        </code>
      </type>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
    </element>
    <element id="Observation.identifier.extension">
      <path value="Observation.identifier.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>
      <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>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="N/A" />
      </mapping>
    </element>
    <element id="Observation.identifier.use">
      <path value="Observation.identifier.use" />
      <short value="usual | official | temp | secondary | old (If known)" />
      <definition value="The purpose of this identifier." />
      <comment value="Applications can assume that an identifier is permanent unless it explicitly says that it is temporary." />
      <requirements value="Allows the appropriate identifier for a particular context of use to be selected from among a set of identifiers." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Identifier.use" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="code" />
      </type>
      <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>
      <isModifier value="true" />
      <isModifierReason value="This is labeled as &quot;Is Modifier&quot; because applications should not mistake a temporary id for a permanent one." />
      <isSummary value="true" />
      <binding>
        <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
          <valueString value="IdentifierUse" />
        </extension>
        <strength value="required" />
        <description value="Identifies the purpose for this identifier, if known ." />
        <valueSet value="http://hl7.org/fhir/ValueSet/identifier-use|4.0.0" />
      </binding>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="N/A" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="Role.code or implied by context" />
      </mapping>
    </element>
    <element id="Observation.identifier.type">
      <path value="Observation.identifier.type" />
      <short value="Description of identifier" />
      <definition value="A coded type for the identifier that can be used to determine which identifier to use for a specific purpose." />
      <comment value="This element deals only with general categories of identifiers.  It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage.   Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type." />
      <requirements value="Allows users to make use of identifiers when the identifier system is not known." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Identifier.type" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="CodeableConcept" />
      </type>
      <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>
      <isSummary value="true" />
      <binding>
        <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
          <valueString value="IdentifierType" />
        </extension>
        <strength value="extensible" />
        <description value="A coded type for an identifier that can be used to determine which identifier to use for a specific purpose." />
        <valueSet value="http://hl7.org/fhir/ValueSet/identifier-type" />
      </binding>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="CE/CNE/CWE" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="CD" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:CodeableConcept rdfs:subClassOf dt:CD" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="CX.5" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="Role.code or implied by context" />
      </mapping>
    </element>
    <element id="Observation.identifier.system">
      <path value="Observation.identifier.system" />
      <short value="The namespace for the identifier value" />
      <definition value="Establishes the namespace for the value - that is, a URL that describes a set values that are unique." />
      <comment value="Identifier.system is always case sensitive." />
      <requirements value="There are many sets  of identifiers.  To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers." />
      <min value="1" />
      <max value="1" />
      <base>
        <path value="Identifier.system" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="uri" />
      </type>
      <example>
        <label value="General" />
        <valueUri value="http://www.acme.com/identifiers/patient" />
      </example>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="CX.4 / EI-2-4" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="II.root or Role.id.root" />
      </mapping>
      <mapping>
        <identity value="servd" />
        <map value="./IdentifierType" />
      </mapping>
    </element>
    <element id="Observation.identifier.value">
      <path value="Observation.identifier.value" />
      <short value="The value that is unique" />
      <definition value="The portion of the identifier typically relevant to the user and which is unique within the context of the system." />
      <comment value="If the value is a full URI, then the system SHALL be urn:ietf:rfc:3986.  The value's primary purpose is computational mapping.  As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.)  A value formatted for human display can be conveyed using the [Rendered Value extension](extension-rendered-value.html). Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe." />
      <min value="1" />
      <max value="1" />
      <base>
        <path value="Identifier.value" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="string" />
      </type>
      <example>
        <label value="General" />
        <valueString value="123456" />
      </example>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="CX.1 / EI.1" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)" />
      </mapping>
      <mapping>
        <identity value="servd" />
        <map value="./Value" />
      </mapping>
    </element>
    <element id="Observation.identifier.period">
      <path value="Observation.identifier.period" />
      <short value="Time period when id is/was valid for use" />
      <definition value="Time period during which identifier is/was valid for use." />
      <comment value="A Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. &quot;the patient was an inpatient of the hospital for this time range&quot;) or one value from the range applies (e.g. &quot;give to the patient between these two times&quot;).&#xA;&#xA;Period is not used for a duration (a measure of elapsed time). See [Duration](datatypes.html#Duration)." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Identifier.period" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="Period" />
      </type>
      <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="per-1" />
        <severity value="error" />
        <human value="If present, start SHALL have a lower value than end" />
        <expression value="start.hasValue().not() or end.hasValue().not() or (start &lt;= end)" />
        <xpath value="not(exists(f:start/@value)) or not(exists(f:end/@value)) or (xs:dateTime(f:start/@value) &lt;= xs:dateTime(f:end/@value))" />
        <source value="http://hl7.org/fhir/StructureDefinition/Period" />
      </constraint>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="DR" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="IVL&lt;TS&gt;[lowClosed=&quot;true&quot; and highClosed=&quot;true&quot;] or URG&lt;TS&gt;[lowClosed=&quot;true&quot; and highClosed=&quot;true&quot;]" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="CX.7 + CX.8" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="Role.effectiveTime or implied by context" />
      </mapping>
      <mapping>
        <identity value="servd" />
        <map value="./StartDate and ./EndDate" />
      </mapping>
    </element>
    <element id="Observation.identifier.assigner">
      <path value="Observation.identifier.assigner" />
      <short value="Organization that issued id (may be just text)" />
      <definition value="Organization that issued/manages the identifier." />
      <comment value="The Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Identifier.assigner" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Organization" />
      </type>
      <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="ref-1" />
        <severity value="error" />
        <human value="SHALL have a contained resource if a local reference is provided" />
        <expression value="reference.startsWith('#').not() or (reference.substring(1).trace('url') in %resource.contained.id.trace('ids'))" />
        <xpath value="not(starts-with(f:reference/@value, '#')) or exists(ancestor::*[self::f:entry or self::f:parameter]/f:resource/f:*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')]|/*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')])" />
        <source value="http://hl7.org/fhir/StructureDefinition/Reference" />
      </constraint>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="The target of a resource reference is a RIM entry point (Act, Role, or Entity)" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="CX.4 / (CX.4,CX.9,CX.10)" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="II.assigningAuthorityName but note that this is an improper use by the definition of the field.  Also Role.scoper" />
      </mapping>
      <mapping>
        <identity value="servd" />
        <map value="./IdentifierIssuingAuthority" />
      </mapping>
    </element>
    <element id="Observation.basedOn">
      <path value="Observation.basedOn" />
      <short value="Planned or requested service that this observation fulfils" />
      <definition value="Use basedOn when the observation fulfils a planned, proposed or requested dental service, examination or assessment. When known, reference DigiDOT ServiceRequest." />
      <comment value="References SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc.). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository." />
      <requirements value="Allows tracing of authorization for the event and tracking whether proposals/recommendations were acted upon." />
      <alias value="Fulfills" />
      <min value="0" />
      <max value="*" />
      <base>
        <path value="Observation.basedOn" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="Reference" />
        <targetProfile value="https://novari.no/fhir/digidot/StructureDefinition/digidot-ServiceRequest-no" />
      </type>
      <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="ref-1" />
        <severity value="error" />
        <human value="SHALL have a contained resource if a local reference is provided" />
        <expression value="reference.startsWith('#').not() or (reference.substring(1).trace('url') in %resource.contained.id.trace('ids'))" />
        <xpath value="not(starts-with(f:reference/@value, '#')) or exists(ancestor::*[self::f:entry or self::f:parameter]/f:resource/f:*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')]|/*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')])" />
        <source value="http://hl7.org/fhir/StructureDefinition/Reference" />
      </constraint>
      <mustSupport value="true" />
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="The target of a resource reference is a RIM entry point (Act, Role, or Entity)" />
      </mapping>
      <mapping>
        <identity value="workflow" />
        <map value="Event.basedOn" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="ORC" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value=".inboundRelationship[typeCode=COMP].source[moodCode=EVN]" />
      </mapping>
    </element>
    <element id="Observation.partOf">
      <path value="Observation.partOf" />
      <short value="Not used in the current DigiDOT Observation draft" />
      <definition value="Use Encounter for the dental contact and DiagnosticReport.result for an agreed imaging or diagnostic report relationship. No Observation.partOf relationship is currently modelled for Central Storage." />
      <comment value="To link an Observation to an Encounter use `encounter`.  See the  [Notes](observation.html#obsgrouping) below for guidance on referencing another Observation." />
      <alias value="Container" />
      <min value="0" />
      <max value="0" />
      <base>
        <path value="Observation.partOf" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/MedicationAdministration" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/MedicationDispense" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/MedicationStatement" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Procedure" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Immunization" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/ImagingStudy" />
      </type>
      <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="ref-1" />
        <severity value="error" />
        <human value="SHALL have a contained resource if a local reference is provided" />
        <expression value="reference.startsWith('#').not() or (reference.substring(1).trace('url') in %resource.contained.id.trace('ids'))" />
        <xpath value="not(starts-with(f:reference/@value, '#')) or exists(ancestor::*[self::f:entry or self::f:parameter]/f:resource/f:*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')]|/*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')])" />
        <source value="http://hl7.org/fhir/StructureDefinition/Reference" />
      </constraint>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="The target of a resource reference is a RIM entry point (Act, Role, or Entity)" />
      </mapping>
      <mapping>
        <identity value="workflow" />
        <map value="Event.partOf" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="Varies by domain" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value=".outboundRelationship[typeCode=FLFS].target" />
      </mapping>
    </element>
    <element id="Observation.status">
      <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-display-hint">
        <valueString value="default: final" />
      </extension>
      <path value="Observation.status" />
      <short value="Lifecycle status for the observation" />
      <definition value="Use final for a stable clinical result. Other valid FHIR Observation statuses remain available for preliminary, corrected, entered-in-error or migrated data when that lifecycle is known." />
      <comment value="This element is labeled as a modifier because the status contains codes that mark the resource as not currently valid." />
      <requirements value="Need to track the status of individual results. Some results are finalized before the whole report is finalized." />
      <min value="1" />
      <max value="1" />
      <base>
        <path value="Observation.status" />
        <min value="1" />
        <max value="1" />
      </base>
      <type>
        <code value="code" />
      </type>
      <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>
      <mustSupport value="true" />
      <isModifier value="true" />
      <isModifierReason value="This element is labeled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid" />
      <isSummary value="true" />
      <binding>
        <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
          <valueString value="ObservationStatus" />
        </extension>
        <strength value="required" />
        <description value="Codes providing the status of an observation." />
        <valueSet value="http://hl7.org/fhir/ValueSet/observation-status|4.0.0" />
      </binding>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="workflow" />
        <map value="Event.status" />
      </mapping>
      <mapping>
        <identity value="w5" />
        <map value="FiveWs.status" />
      </mapping>
      <mapping>
        <identity value="sct-concept" />
        <map value="&lt; 445584004 |Report by finality status|" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="OBX-11" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="status  Amended &amp; Final are differentiated by whether it is the subject of a ControlAct event with a type of &quot;revise&quot;" />
      </mapping>
    </element>
    <element id="Observation.category">
      <path value="Observation.category" />
      <short value="Optional standard category marker for the observation" />
      <definition value="Use Observation.category as an optional standard marker for searching, sorting, display and comparison across systems. It is not the clinical observation code and does not replace Observation.code." />
      <comment value="In addition to the required category valueset, this element allows various categorization schemes based on the owner’s definition of the category and effectively multiple categories can be used at once.  The level of granularity is defined by the category concepts in the value set." />
      <requirements value="Used for filtering what observations are retrieved and displayed." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Observation.category" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="CodeableConcept" />
      </type>
      <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>
      <binding>
        <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
          <valueString value="ObservationCategory" />
        </extension>
        <strength value="required" />
        <description value="When Observation.category is included, use one code from the standard FHIR Observation category value set." />
        <valueSet value="http://terminology.hl7.org/ValueSet/observation-category" />
      </binding>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="CE/CNE/CWE" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="CD" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:CodeableConcept rdfs:subClassOf dt:CD" />
      </mapping>
      <mapping>
        <identity value="w5" />
        <map value="FiveWs.class" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value=".outboundRelationship[typeCode=&quot;COMP].target[classCode=&quot;LIST&quot;, moodCode=&quot;EVN&quot;].code" />
      </mapping>
    </element>
    <element id="Observation.category.id">
      <path value="Observation.category.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>
        <code>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-json-type">
            <valueString value="string" />
          </extension>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-xml-type">
            <valueString value="xsd:string" />
          </extension>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-rdf-type">
            <valueString value="xsd:string" />
          </extension>
        </code>
      </type>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
    </element>
    <element id="Observation.category.extension">
      <path value="Observation.category.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="No extensions on the observation category" />
      <definition value="The category is a single standard interoperable marker. Extensions on Observation.category are not used in the current DigiDOT draft." />
      <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="0" />
      <base>
        <path value="Element.extension" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="Extension" />
      </type>
      <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>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="N/A" />
      </mapping>
    </element>
    <element id="Observation.category.coding">
      <path value="Observation.category.coding" />
      <short value="Standard FHIR Observation category coding" />
      <definition value="When Observation.category is populated, use exactly one coding from the standard FHIR Observation category code system." />
      <comment value="Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information.  Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true." />
      <requirements value="Allows for alternative encodings within a code system, and translations to other code systems." />
      <min value="1" />
      <max value="1" />
      <base>
        <path value="CodeableConcept.coding" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="Coding" />
      </type>
      <patternCoding>
        <system value="http://terminology.hl7.org/CodeSystem/observation-category" />
      </patternCoding>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="CE/CNE/CWE subset one of the sets of component 1-3 or 4-6" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="CV" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding rdfs:subClassOf dt:CDCoding" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.1-8, C*E.10-22" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="union(., ./translation)" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:CodeableConcept.coding rdfs:subPropertyOf dt:CD.coding" />
      </mapping>
    </element>
    <element id="Observation.category.text">
      <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable">
        <valueBoolean value="true" />
      </extension>
      <path value="Observation.category.text" />
      <short value="Plain text representation of the concept" />
      <definition value="A human language representation of the concept as seen/selected/uttered by the user who entered the data and/or which represents the intended meaning of the user." />
      <comment value="Very often the text is the same as a displayName of one of the codings." />
      <requirements value="The codes from the terminologies do not always capture the correct meaning with all the nuances of the human using them, or sometimes there is no appropriate code at all. In these cases, the text is used to capture the full meaning of the source." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="CodeableConcept.text" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="string" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.9. But note many systems use C*E.2 for this" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./originalText[mediaType/code=&quot;text/plain&quot;]/data" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:CodeableConcept.text rdfs:subPropertyOf dt:CD.originalText" />
      </mapping>
    </element>
    <element id="Observation.code">
      <path value="Observation.code" />
      <short value="Observable entity" />
      <definition value="Record what was measured or assessed in the SNOMED CT Observable entity hierarchy. The result belongs in value[x], not in the clinical code. Include exactly one SCTextended coding and optionally one SCTpre coding. SCTextended carries the complete intended meaning as either a single precoordinated SNOMED CT concept or a postcoordinated expression. SCTpre is an optional, directly usable concept representing the same clinical meaning at the same or a compatible broader level of detail. Do not add a duplicate companion merely to fill a slot. When both are present they must use the same edition release and must not contradict each other; the extended coding may add compatible precision. Compatible meaning must be checked through the terminology contract, not inferred from code equality. When bodySite is present, the extended coding must represent the same complete anatomical scope. A precoordinated concept is sufficient if its defined meaning already represents that scope; otherwise use a valid refined SNOMED CT expression. Validate concept membership, compositional grammar, MRCM, clinical templates and anatomical equivalence with the terminology service; a FHIR syntax guard cannot establish these semantic requirements." />
      <comment value="*All* code-value and, if present, component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation." />
      <requirements value="Knowing what kind of observation is being made is essential to understanding the observation." />
      <alias value="Name" />
      <min value="1" />
      <max value="1" />
      <base>
        <path value="Observation.code" />
        <min value="1" />
        <max value="1" />
      </base>
      <type>
        <code value="CodeableConcept" />
      </type>
      <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="digidot-coding-same-release" />
        <severity value="error" />
        <human value="When SCTpre is present, both clinical codings must use the same SNOMED CT edition release." />
        <expression value="coding.where(id = 'SCTpre').empty() or coding.where(id = 'SCTpre').version = coding.where(id = 'SCTextended').version" />
        <source value="https://novari.no/fhir/digidot/StructureDefinition/digidot-Observation-no" />
      </constraint>
      <mustSupport value="true" />
      <isSummary value="true" />
      <binding>
        <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
          <valueString value="ObservationCode" />
        </extension>
        <strength value="extensible" />
        <description value="Use the SNOMED CT Observable entity content of this ValueSet. Its local-code members do not override the SNOMED CT-only Coding profiles; local observations require a governed SNOMED CT mapping or a separately agreed representation." />
        <valueSet value="https://novari.no/fhir/digidot/ValueSet/digidot-observation-codes" />
      </binding>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="CE/CNE/CWE" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="CD" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:CodeableConcept rdfs:subClassOf dt:CD" />
      </mapping>
      <mapping>
        <identity value="workflow" />
        <map value="Event.code" />
      </mapping>
      <mapping>
        <identity value="w5" />
        <map value="FiveWs.what[x]" />
      </mapping>
      <mapping>
        <identity value="sct-concept" />
        <map value="&lt; 363787002 |Observable entity| OR &lt; 386053000 |Evaluation procedure|" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="OBX-3" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="code" />
      </mapping>
      <mapping>
        <identity value="sct-attr" />
        <map value="116680003 |Is a|" />
      </mapping>
    </element>
    <element id="Observation.code.id">
      <path value="Observation.code.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>
        <code>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-json-type">
            <valueString value="string" />
          </extension>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-xml-type">
            <valueString value="xsd:string" />
          </extension>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-rdf-type">
            <valueString value="xsd:string" />
          </extension>
        </code>
      </type>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
    </element>
    <element id="Observation.code.extension">
      <path value="Observation.code.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="No extensions on the clinical observation code" />
      <definition value="Additional SNOMED CT precision is represented by the agreed SCTextended coding in Observation.code.coding. Extensions on Observation.code are not used in the current DigiDOT draft." />
      <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="0" />
      <base>
        <path value="Element.extension" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="Extension" />
      </type>
      <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>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="N/A" />
      </mapping>
    </element>
    <element id="Observation.code.coding">
      <path value="Observation.code.coding" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="id" />
        </discriminator>
        <rules value="closed" />
      </slicing>
      <short value="One required extended coding and one optional precoordinated coding" />
      <definition value="Include exactly one SCTextended coding and optionally one SCTpre coding. SCTextended carries the complete intended meaning as either a single precoordinated SNOMED CT concept or a postcoordinated expression. SCTpre is an optional, directly usable concept representing the same clinical meaning at the same or a compatible broader level of detail. Do not add a duplicate companion merely to fill a slot. When both are present they must use the same edition release and must not contradict each other; the extended coding may add compatible precision. Compatible meaning must be checked through the terminology contract, not inferred from code equality. Fixed Coding.id values distinguish the roles because a numeric concept can conform to both datatype profiles." />
      <comment value="Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information.  Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true." />
      <requirements value="Allows for alternative encodings within a code system, and translations to other code systems." />
      <min value="1" />
      <max value="2" />
      <base>
        <path value="CodeableConcept.coding" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="Coding" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="CE/CNE/CWE subset one of the sets of component 1-3 or 4-6" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="CV" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding rdfs:subClassOf dt:CDCoding" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.1-8, C*E.10-22" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="union(., ./translation)" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:CodeableConcept.coding rdfs:subPropertyOf dt:CD.coding" />
      </mapping>
    </element>
    <element id="Observation.code.coding:SCTpre">
      <path value="Observation.code.coding" />
      <sliceName value="SCTpre" />
      <short value="Optional precoordinated SNOMED CT concept" />
      <definition value="Record what was measured or assessed in the SNOMED CT Observable entity hierarchy. The result belongs in value[x], not in the clinical code. Include exactly one SCTextended coding and optionally one SCTpre coding. SCTextended carries the complete intended meaning as either a single precoordinated SNOMED CT concept or a postcoordinated expression. SCTpre is an optional, directly usable concept representing the same clinical meaning at the same or a compatible broader level of detail. Do not add a duplicate companion merely to fill a slot. When both are present they must use the same edition release and must not contradict each other; the extended coding may add compatible precision. Compatible meaning must be checked through the terminology contract, not inferred from code equality. When bodySite is present, the extended coding must represent the same complete anatomical scope. A precoordinated concept is sufficient if its defined meaning already represents that scope; otherwise use a valid refined SNOMED CT expression. Validate concept membership, compositional grammar, MRCM, clinical templates and anatomical equivalence with the terminology service; a FHIR syntax guard cannot establish these semantic requirements." />
      <comment value="Codes may be defined very casually in enumerations or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information." />
      <requirements value="Allows for alternative encodings within a code system, and translations to other code systems." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="CodeableConcept.coding" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="Coding" />
        <profile value="https://novari.no/fhir/digidot/StructureDefinition/digidot-Coding-SCTpre-no" />
      </type>
      <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>
      <mustSupport value="true" />
      <isSummary value="true" />
      <binding>
        <strength value="required" />
        <description value="Use the SNOMED CT Observable entity content of this ValueSet. Its local-code members do not override the SNOMED CT-only Coding profiles; local observations require a governed SNOMED CT mapping or a separately agreed representation." />
        <valueSet value="https://novari.no/fhir/digidot/ValueSet/digidot-observation-codes" />
      </binding>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="CE/CNE/CWE subset one of the sets of component 1-3 or 4-6" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="CV" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding rdfs:subClassOf dt:CDCoding" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.1-8, C*E.10-22" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="union(., ./translation)" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:CodeableConcept.coding rdfs:subPropertyOf dt:CD.coding" />
      </mapping>
    </element>
    <element id="Observation.code.coding:SCTpre.id">
      <path value="Observation.code.coding.id" />
      <representation value="xmlAttr" />
      <short value="SCTpre slot identifier" />
      <definition value="Required technical slot identifier. It distinguishes the two roles even when their system, version and code are identical." />
      <min value="1" />
      <max value="1" />
      <base>
        <path value="Element.id" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-json-type">
            <valueString value="string" />
          </extension>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-xml-type">
            <valueString value="xsd:string" />
          </extension>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-rdf-type">
            <valueString value="xsd:string" />
          </extension>
        </code>
      </type>
      <fixedString value="SCTpre" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
    </element>
    <element id="Observation.code.coding:SCTpre.extension">
      <path value="Observation.code.coding.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="Extensions are not used" />
      <definition value="This helper profile represents one direct SNOMED CT concept. No named Coding extension is agreed for the current DigiDOT scope, so extensions are prohibited to avoid a parallel representation of code meaning or terminology context." />
      <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="0" />
      <base>
        <path value="Element.extension" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="Extension" />
      </type>
      <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>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="N/A" />
      </mapping>
    </element>
    <element id="Observation.code.coding:SCTpre.system">
      <path value="Observation.code.coding.system" />
      <short value="SNOMED CT code system" />
      <definition value="Fixed to the canonical SNOMED CT code system URI." />
      <comment value="The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...).  OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously." />
      <requirements value="Need to be unambiguous about the source of the definition of the symbol." />
      <min value="1" />
      <max value="1" />
      <base>
        <path value="Coding.system" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="uri" />
      </type>
      <fixedUri value="http://snomed.info/sct" />
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.3" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./codeSystem" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding.system rdfs:subPropertyOf dt:CDCoding.codeSystem" />
      </mapping>
    </element>
    <element id="Observation.code.coding:SCTpre.version">
      <path value="Observation.code.coding.version" />
      <short value="Published SNOMED CT edition release URI" />
      <definition value="Identify the SNOMED CT edition and release used to select the precoordinated concept, for example the Norwegian edition version URI." />
      <comment value="Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date." />
      <min value="1" />
      <max value="1" />
      <base>
        <path value="Coding.version" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="string" />
      </type>
      <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="sct-pre-version-sct" />
        <severity value="error" />
        <human value="Version must be an SCT version in the form .../sct/edition/version/yyyymmdd." />
        <expression value="matches('^http://snomed[.]info/sct/.*/version/[0-9]{8}$')" />
        <source value="https://novari.no/fhir/digidot/StructureDefinition/digidot-Coding-SCTpre-no" />
      </constraint>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.7" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./codeSystemVersion" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding.version rdfs:subPropertyOf dt:CDCoding.codeSystemVersion" />
      </mapping>
    </element>
    <element id="Observation.code.coding:SCTpre.code">
      <path value="Observation.code.coding.code" />
      <short value="Numeric SNOMED CT concept identifier" />
      <definition value="A directly usable numeric SNOMED CT concept identifier. Use the SNOMED CT Extended code profile when a coding must also support postcoordinated expressions." />
      <comment value="Note that FHIR strings SHALL NOT exceed 1MB in size" />
      <requirements value="Need to refer to a particular code in the system." />
      <min value="1" />
      <max value="1" />
      <base>
        <path value="Coding.code" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="code" />
      </type>
      <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="sct-pre-numeric" />
        <severity value="error" />
        <human value="SNOMED conceptId (6-18 digits)." />
        <expression value="matches('^[0-9]{6,18}$')" />
        <source value="https://novari.no/fhir/digidot/StructureDefinition/digidot-Coding-SCTpre-no" />
      </constraint>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.1" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./code" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding.code rdfs:subPropertyOf dt:CDCoding.code" />
      </mapping>
    </element>
    <element id="Observation.code.coding:SCTpre.display">
      <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable">
        <valueBoolean value="true" />
      </extension>
      <path value="Observation.code.coding.display" />
      <short value="Human-readable SNOMED CT term" />
      <definition value="Include the display term when it is available from the terminology service. It is informative and must remain consistent with the code and version." />
      <comment value="Note that FHIR strings SHALL NOT exceed 1MB in size" />
      <requirements value="Need to be able to carry a human-readable meaning of the code for readers that do not know  the system." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Coding.display" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="string" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.2 - but note this is not well followed" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="CV.displayName" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding.display rdfs:subPropertyOf dt:CDCoding.displayName" />
      </mapping>
    </element>
    <element id="Observation.code.coding:SCTpre.userSelected">
      <path value="Observation.code.coding.userSelected" />
      <short value="User-selection marker is not used" />
      <definition value="Whether a code was selected directly by a user is a source-system interaction detail, not stable clinical or terminology meaning. It is not retained in the current DigiDOT coding model." />
      <comment value="Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely." />
      <requirements value="This has been identified as a clinical safety criterium - that this exact system/code pair was chosen explicitly, rather than inferred by the system based on some rules or language processing." />
      <min value="0" />
      <max value="0" />
      <base>
        <path value="Coding.userSelected" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="boolean" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="Sometimes implied by being first" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="CD.codingRationale" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding.userSelected fhir:mapsTo dt:CDCoding.codingRationale. fhir:Coding.userSelected fhir:hasMap fhir:Coding.userSelected.map. fhir:Coding.userSelected.map a fhir:Map;   fhir:target dt:CDCoding.codingRationale. fhir:Coding.userSelected\#true a [     fhir:source &quot;true&quot;;     fhir:target dt:CDCoding.codingRationale\#O   ]" />
      </mapping>
    </element>
    <element id="Observation.code.coding:SCTextended">
      <path value="Observation.code.coding" />
      <sliceName value="SCTextended" />
      <short value="Required extended SNOMED CT code: concept or expression" />
      <definition value="Record what was measured or assessed in the SNOMED CT Observable entity hierarchy. The result belongs in value[x], not in the clinical code. Include exactly one SCTextended coding and optionally one SCTpre coding. SCTextended carries the complete intended meaning as either a single precoordinated SNOMED CT concept or a postcoordinated expression. SCTpre is an optional, directly usable concept representing the same clinical meaning at the same or a compatible broader level of detail. Do not add a duplicate companion merely to fill a slot. When both are present they must use the same edition release and must not contradict each other; the extended coding may add compatible precision. Compatible meaning must be checked through the terminology contract, not inferred from code equality. When bodySite is present, the extended coding must represent the same complete anatomical scope. A precoordinated concept is sufficient if its defined meaning already represents that scope; otherwise use a valid refined SNOMED CT expression. Validate concept membership, compositional grammar, MRCM, clinical templates and anatomical equivalence with the terminology service; a FHIR syntax guard cannot establish these semantic requirements." />
      <comment value="Codes may be defined very casually in enumerations or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information." />
      <requirements value="Allows for alternative encodings within a code system, and translations to other code systems." />
      <min value="1" />
      <max value="1" />
      <base>
        <path value="CodeableConcept.coding" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="Coding" />
        <profile value="https://novari.no/fhir/digidot/StructureDefinition/digidot-Coding-SCTpost-no" />
      </type>
      <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>
      <mustSupport value="true" />
      <isSummary value="true" />
      <binding>
        <strength value="required" />
        <description value="Use the SNOMED CT Observable entity content of this ValueSet. Its local-code members do not override the SNOMED CT-only Coding profiles; local observations require a governed SNOMED CT mapping or a separately agreed representation." />
        <valueSet value="https://novari.no/fhir/digidot/ValueSet/digidot-observation-codes" />
      </binding>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="CE/CNE/CWE subset one of the sets of component 1-3 or 4-6" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="CV" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding rdfs:subClassOf dt:CDCoding" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.1-8, C*E.10-22" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="union(., ./translation)" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:CodeableConcept.coding rdfs:subPropertyOf dt:CD.coding" />
      </mapping>
    </element>
    <element id="Observation.code.coding:SCTextended.id">
      <path value="Observation.code.coding.id" />
      <representation value="xmlAttr" />
      <short value="SCTextended slot identifier" />
      <definition value="Required technical slot identifier. It distinguishes the two roles even when their system, version and code are identical." />
      <min value="1" />
      <max value="1" />
      <base>
        <path value="Element.id" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-json-type">
            <valueString value="string" />
          </extension>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-xml-type">
            <valueString value="xsd:string" />
          </extension>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-rdf-type">
            <valueString value="xsd:string" />
          </extension>
        </code>
      </type>
      <fixedString value="SCTextended" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
    </element>
    <element id="Observation.code.coding:SCTextended.extension">
      <path value="Observation.code.coding.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="Extensions are not used" />
      <definition value="Clinical meaning is represented in Coding.code as a SNOMED CT concept or expression. Coding extensions are not used in the agreed DigiDOT scope." />
      <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="0" />
      <base>
        <path value="Element.extension" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="Extension" />
      </type>
      <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>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="N/A" />
      </mapping>
    </element>
    <element id="Observation.code.coding:SCTextended.system">
      <path value="Observation.code.coding.system" />
      <short value="SNOMED CT code system" />
      <definition value="Fixed to the canonical SNOMED CT code system URI." />
      <comment value="The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...).  OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously." />
      <requirements value="Need to be unambiguous about the source of the definition of the symbol." />
      <min value="1" />
      <max value="1" />
      <base>
        <path value="Coding.system" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="uri" />
      </type>
      <fixedUri value="http://snomed.info/sct" />
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.3" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./codeSystem" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding.system rdfs:subPropertyOf dt:CDCoding.codeSystem" />
      </mapping>
    </element>
    <element id="Observation.code.coding:SCTextended.version">
      <path value="Observation.code.coding.version" />
      <short value="Published SNOMED CT edition release URI" />
      <definition value="Identify the published SNOMED CT edition and release used to interpret the concept or expression, for example the Norwegian edition release URI." />
      <comment value="Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date." />
      <min value="1" />
      <max value="1" />
      <base>
        <path value="Coding.version" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="string" />
      </type>
      <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="sct-extended-version-sct" />
        <severity value="error" />
        <human value="Version must be an SCT version in the form .../sct/edition/version/yyyymmdd." />
        <expression value="matches('^http://snomed[.]info/sct/.*/version/[0-9]{8}$')" />
        <source value="https://novari.no/fhir/digidot/StructureDefinition/digidot-Coding-SCTpost-no" />
      </constraint>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.7" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./codeSystemVersion" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding.version rdfs:subPropertyOf dt:CDCoding.codeSystemVersion" />
      </mapping>
    </element>
    <element id="Observation.code.coding:SCTextended.code">
      <path value="Observation.code.coding.code" />
      <short value="SNOMED CT concept identifier or postcoordinated expression" />
      <definition value="A single numeric SNOMED CT concept identifier is sufficient when it represents the intended meaning. A postcoordinated expression may add necessary precision. No separate SCTpre companion is required by this datatype. Local codes are not allowed. The invariant is only a basic syntax guard, not a full compositional grammar, concept-existence, MRCM or semantic validation." />
      <comment value="Note that FHIR strings SHALL NOT exceed 1MB in size" />
      <requirements value="Need to refer to a particular code in the system." />
      <min value="1" />
      <max value="1" />
      <base>
        <path value="Coding.code" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="code" />
      </type>
      <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="sct-extended-concept-or-expression" />
        <severity value="error" />
        <human value="Use a numeric SNOMED CT concept identifier or SNOMED CT expression syntax; validate full syntax and meaning with terminology tooling." />
        <expression value="matches('^[0-9]{6,18}$') or matches('[:=+|{}&lt;]')" />
        <source value="https://novari.no/fhir/digidot/StructureDefinition/digidot-Coding-SCTpost-no" />
      </constraint>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.1" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./code" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding.code rdfs:subPropertyOf dt:CDCoding.code" />
      </mapping>
    </element>
    <element id="Observation.code.coding:SCTextended.display">
      <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable">
        <valueBoolean value="true" />
      </extension>
      <path value="Observation.code.coding.display" />
      <short value="Human-readable concept or expression display" />
      <definition value="Include a readable term or expression rendering when available, consistent with code and edition release." />
      <comment value="Note that FHIR strings SHALL NOT exceed 1MB in size" />
      <requirements value="Need to be able to carry a human-readable meaning of the code for readers that do not know  the system." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Coding.display" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="string" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.2 - but note this is not well followed" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="CV.displayName" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding.display rdfs:subPropertyOf dt:CDCoding.displayName" />
      </mapping>
    </element>
    <element id="Observation.code.coding:SCTextended.userSelected">
      <path value="Observation.code.coding.userSelected" />
      <short value="User-selection marker is not used" />
      <definition value="User selection is a source-system interaction detail and does not define the clinical meaning." />
      <comment value="Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely." />
      <requirements value="This has been identified as a clinical safety criterium - that this exact system/code pair was chosen explicitly, rather than inferred by the system based on some rules or language processing." />
      <min value="0" />
      <max value="0" />
      <base>
        <path value="Coding.userSelected" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="boolean" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="Sometimes implied by being first" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="CD.codingRationale" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding.userSelected fhir:mapsTo dt:CDCoding.codingRationale. fhir:Coding.userSelected fhir:hasMap fhir:Coding.userSelected.map. fhir:Coding.userSelected.map a fhir:Map;   fhir:target dt:CDCoding.codingRationale. fhir:Coding.userSelected\#true a [     fhir:source &quot;true&quot;;     fhir:target dt:CDCoding.codingRationale\#O   ]" />
      </mapping>
    </element>
    <element id="Observation.code.text">
      <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable">
        <valueBoolean value="true" />
      </extension>
      <path value="Observation.code.text" />
      <short value="Plain text representation of the concept" />
      <definition value="A human language representation of the concept as seen/selected/uttered by the user who entered the data and/or which represents the intended meaning of the user." />
      <comment value="Very often the text is the same as a displayName of one of the codings." />
      <requirements value="The codes from the terminologies do not always capture the correct meaning with all the nuances of the human using them, or sometimes there is no appropriate code at all. In these cases, the text is used to capture the full meaning of the source." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="CodeableConcept.text" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="string" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.9. But note many systems use C*E.2 for this" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./originalText[mediaType/code=&quot;text/plain&quot;]/data" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:CodeableConcept.text rdfs:subPropertyOf dt:CD.originalText" />
      </mapping>
    </element>
    <element id="Observation.subject">
      <path value="Observation.subject" />
      <short value="Patient the observation belongs to" />
      <definition value="Reference the no-basis Patient that owns the dental observation. External data must be mapped to this agreed patient representation before it becomes a canonical DigiDOT Observation in Central Storage." />
      <comment value="One would expect this element to be a cardinality of 1..1. The only circumstance in which the subject can be missing is when the observation is made by a device that does not know the patient. In this case, the observation SHALL be matched to a patient through some context/channel matching technique, and at this point, the observation should be updated." />
      <requirements value="Observations have no value if you don't know who or what they're about." />
      <min value="1" />
      <max value="1" />
      <base>
        <path value="Observation.subject" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.no/fhir/StructureDefinition/no-basis-Patient" />
      </type>
      <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="ref-1" />
        <severity value="error" />
        <human value="SHALL have a contained resource if a local reference is provided" />
        <expression value="reference.startsWith('#').not() or (reference.substring(1).trace('url') in %resource.contained.id.trace('ids'))" />
        <xpath value="not(starts-with(f:reference/@value, '#')) or exists(ancestor::*[self::f:entry or self::f:parameter]/f:resource/f:*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')]|/*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')])" />
        <source value="http://hl7.org/fhir/StructureDefinition/Reference" />
      </constraint>
      <mustSupport value="true" />
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="The target of a resource reference is a RIM entry point (Act, Role, or Entity)" />
      </mapping>
      <mapping>
        <identity value="workflow" />
        <map value="Event.subject" />
      </mapping>
      <mapping>
        <identity value="w5" />
        <map value="FiveWs.subject[x]" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="PID-3" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="participation[typeCode=RTGT]" />
      </mapping>
      <mapping>
        <identity value="w5" />
        <map value="FiveWs.subject" />
      </mapping>
    </element>
    <element id="Observation.focus">
      <path value="Observation.focus" />
      <short value="Not used in the current DigiDOT Observation draft" />
      <definition value="Condition.evidence.detail is the authoritative explicit relationship from a clinical condition to its supporting Observation. Observation.bodySite references the patient-specific DigiDOT Dental BodyStructure when anatomy is known. Observation.focus is not used as an alternative link to Condition or BodyStructure." />
      <comment value="Typically, an observation is made about the subject - a patient, or group of patients, location, or device - and the distinction between the subject and what is directly measured for an observation is specified in the observation code itself ( e.g., &quot;Blood Glucose&quot;) and does not need to be represented separately using this element.  Use `specimen` if a reference to a specimen is required.  If a code is required instead of a resource use either  `bodysite` for bodysites or the standard extension [focusCode](extension-observation-focuscode.html)." />
      <min value="0" />
      <max value="0" />
      <base>
        <path value="Observation.focus" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Resource" />
      </type>
      <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="ref-1" />
        <severity value="error" />
        <human value="SHALL have a contained resource if a local reference is provided" />
        <expression value="reference.startsWith('#').not() or (reference.substring(1).trace('url') in %resource.contained.id.trace('ids'))" />
        <xpath value="not(starts-with(f:reference/@value, '#')) or exists(ancestor::*[self::f:entry or self::f:parameter]/f:resource/f:*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')]|/*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')])" />
        <source value="http://hl7.org/fhir/StructureDefinition/Reference" />
      </constraint>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="The target of a resource reference is a RIM entry point (Act, Role, or Entity)" />
      </mapping>
      <mapping>
        <identity value="w5" />
        <map value="FiveWs.subject[x]" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="OBX-3" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="participation[typeCode=SBJ]" />
      </mapping>
      <mapping>
        <identity value="w5" />
        <map value="FiveWs.subject" />
      </mapping>
    </element>
    <element id="Observation.encounter">
      <path value="Observation.encounter" />
      <short value="Encounter where the observation was made" />
      <definition value="Reference the DigiDOT Encounter during which the observation was measured, assessed or reported. Location and organisation context are resolved through the Encounter." />
      <comment value="This will typically be the encounter the event occurred within, but some events may be initiated prior to or after the official completion of an encounter but still be tied to the context of the encounter (e.g. pre-admission laboratory tests)." />
      <requirements value="For some observations it may be important to know the link between an observation and a particular encounter." />
      <alias value="Context" />
      <min value="1" />
      <max value="1" />
      <base>
        <path value="Observation.encounter" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="Reference" />
        <targetProfile value="https://novari.no/fhir/digidot/StructureDefinition/digidot-Encounter-no" />
      </type>
      <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="ref-1" />
        <severity value="error" />
        <human value="SHALL have a contained resource if a local reference is provided" />
        <expression value="reference.startsWith('#').not() or (reference.substring(1).trace('url') in %resource.contained.id.trace('ids'))" />
        <xpath value="not(starts-with(f:reference/@value, '#')) or exists(ancestor::*[self::f:entry or self::f:parameter]/f:resource/f:*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')]|/*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')])" />
        <source value="http://hl7.org/fhir/StructureDefinition/Reference" />
      </constraint>
      <mustSupport value="true" />
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="The target of a resource reference is a RIM entry point (Act, Role, or Entity)" />
      </mapping>
      <mapping>
        <identity value="workflow" />
        <map value="Event.context" />
      </mapping>
      <mapping>
        <identity value="w5" />
        <map value="FiveWs.context" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="PV1" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="inboundRelationship[typeCode=COMP].source[classCode=ENC, moodCode=EVN]" />
      </mapping>
    </element>
    <element id="Observation.effective[x]">
      <path value="Observation.effective[x]" />
      <short value="Time when the observed value was true" />
      <definition value="Use effectiveDateTime for the clinically relevant time of a simple dental observation. This is normally when it was measured, assessed or reported, and may differ from when the record was created or imported." />
      <comment value="At least a date should be present unless this observation is a historical report.  For recording imprecise or &quot;fuzzy&quot; times (For example, a blood glucose measurement taken &quot;after breakfast&quot;) use the [Timing](datatypes.html#timing) datatype which allow the measurement to be tied to regular life events." />
      <requirements value="Knowing when an observation was deemed true is important to its relevance as well as determining trends." />
      <alias value="Occurrence" />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Observation.effective[x]" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="dateTime" />
      </type>
      <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>
      <mustSupport value="true" />
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="workflow" />
        <map value="Event.occurrence[x]" />
      </mapping>
      <mapping>
        <identity value="w5" />
        <map value="FiveWs.done[x]" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="OBX-14, and/or OBX-19 after v2.4  (depends on who observation made)" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="effectiveTime" />
      </mapping>
    </element>
    <element id="Observation.issued">
      <path value="Observation.issued" />
      <short value="Not used in the current DigiDOT Observation draft" />
      <definition value="Use Observation.effectiveDateTime for the clinically relevant time. Source import, publication and record-history times are handled by resource metadata and Provenance rather than Observation.issued." />
      <comment value="For Observations that don’t require review and verification, it may be the same as the [`lastUpdated` ](resource-definitions.html#Meta.lastUpdated) time of the resource itself.  For Observations that do require review and verification for certain updates, it might not be the same as the `lastUpdated` time of the resource itself due to a non-clinically significant update that doesn’t require the new version to be reviewed and verified again." />
      <min value="0" />
      <max value="0" />
      <base>
        <path value="Observation.issued" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="instant" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="w5" />
        <map value="FiveWs.recorded" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="OBR.22 (or MSH.7), or perhaps OBX-19 (depends on who observation made)" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="participation[typeCode=AUT].time" />
      </mapping>
    </element>
    <element id="Observation.performer">
      <path value="Observation.performer" />
      <short value="Person responsible for the observation" />
      <definition value="Who was responsible for asserting the observed value as &quot;true&quot;." />
      <comment value="Practitioner targets conform to no-basis-Practitioner. Use the standard FHIR R4 Reference datatype; literal and logical references are permitted. Reference.reference, type, identifier and display retain their base cardinalities. A targetProfile constraint does not itself require a literal reference or select an identifier system. Other explicitly permitted target types retain their own clinical responsibility." />
      <requirements value="May give a degree of confidence in the observation and also indicates where follow-up questions should be directed." />
      <min value="0" />
      <max value="*" />
      <base>
        <path value="Observation.performer" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.no/fhir/StructureDefinition/no-basis-Practitioner" />
        <targetProfile value="http://hl7.no/fhir/StructureDefinition/no-basis-Patient" />
        <targetProfile value="http://hl7.no/fhir/StructureDefinition/no-basis-RelatedPerson" />
      </type>
      <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="ref-1" />
        <severity value="error" />
        <human value="SHALL have a contained resource if a local reference is provided" />
        <expression value="reference.startsWith('#').not() or (reference.substring(1).trace('url') in %resource.contained.id.trace('ids'))" />
        <xpath value="not(starts-with(f:reference/@value, '#')) or exists(ancestor::*[self::f:entry or self::f:parameter]/f:resource/f:*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')]|/*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')])" />
        <source value="http://hl7.org/fhir/StructureDefinition/Reference" />
      </constraint>
      <mustSupport value="true" />
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="The target of a resource reference is a RIM entry point (Act, Role, or Entity)" />
      </mapping>
      <mapping>
        <identity value="workflow" />
        <map value="Event.performer.actor" />
      </mapping>
      <mapping>
        <identity value="w5" />
        <map value="FiveWs.actor" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="OBX.15 / (Practitioner)  OBX-16,  PRT-5:PRT-4='RO' /  (Device)  OBX-18 , PRT-10:PRT-4='EQUIP' / (Organization)  OBX-23,  PRT-8:PRT-4='PO'" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="participation[typeCode=PRF]" />
      </mapping>
    </element>
    <element id="Observation.value[x]">
      <path value="Observation.value[x]" />
      <slicing>
        <discriminator>
          <type value="type" />
          <path value="$this" />
        </discriminator>
        <rules value="closed" />
      </slicing>
      <short value="Result value" />
      <definition value="The single result of the observation. Use valueQuantity for a measured quantity, valueCodeableConcept for a coded categorical result, valueInteger for a score or calculated count, valueBoolean for a true/false result, and valueString only when no structured result can faithfully represent the source content. Do not use valueString to repeat structured codes, anatomy, status or method. When no result is available, use dataAbsentReason instead of leaving both elements empty." />
      <comment value="An observation may have; 1)  a single value here, 2)  both a value and a set of related or component values,  or 3)  only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code.  A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value.  For additional guidance, see the [Notes section](observation.html#notes) below." />
      <requirements value="An observation exists to have a value, though it might not if it is in error, or if it represents a group of observations." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Observation.value[x]" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="Quantity" />
      </type>
      <type>
        <code value="CodeableConcept" />
      </type>
      <type>
        <code value="string" />
      </type>
      <type>
        <code value="boolean" />
      </type>
      <type>
        <code value="integer" />
      </type>
      <type>
        <code value="Range" />
      </type>
      <type>
        <code value="Ratio" />
      </type>
      <type>
        <code value="SampledData" />
      </type>
      <type>
        <code value="time" />
      </type>
      <type>
        <code value="dateTime" />
      </type>
      <type>
        <code value="Period" />
      </type>
      <condition value="ele-1" />
      <condition value="obs-7" />
      <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>
      <mustSupport value="true" />
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="sct-concept" />
        <map value="&lt; 441742003 |Evaluation finding|" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="OBX.2, OBX.5, OBX.6" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="value" />
      </mapping>
      <mapping>
        <identity value="sct-attr" />
        <map value="363714003 |Interprets|" />
      </mapping>
    </element>
    <element id="Observation.value[x]:valueBoolean">
      <path value="Observation.value[x]" />
      <sliceName value="valueBoolean" />
      <short value="True or false result" />
      <definition value="Use valueBoolean for a clinically meaningful true/false result. Do not use it for a coded category with more than two possible results." />
      <comment value="An observation may have; 1)  a single value here, 2)  both a value and a set of related or component values,  or 3)  only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code.  A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value.  For additional guidance, see the [Notes section](observation.html#notes) below." />
      <requirements value="An observation exists to have a value, though it might not if it is in error, or if it represents a group of observations." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Observation.value[x]" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="boolean" />
      </type>
      <condition value="ele-1" />
      <condition value="obs-7" />
      <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>
      <mustSupport value="true" />
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="sct-concept" />
        <map value="&lt; 441742003 |Evaluation finding|" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="OBX.2, OBX.5, OBX.6" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="value" />
      </mapping>
      <mapping>
        <identity value="sct-attr" />
        <map value="363714003 |Interprets|" />
      </mapping>
    </element>
    <element id="Observation.value[x]:valueInteger">
      <path value="Observation.value[x]" />
      <sliceName value="valueInteger" />
      <short value="Whole-number score or count" />
      <definition value="Use valueInteger for a discrete score, count or calculated index with no physical unit, such as DMFT or DMFS. Use valueQuantity when a unit of measure is required." />
      <comment value="An observation may have; 1)  a single value here, 2)  both a value and a set of related or component values,  or 3)  only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code.  A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value.  For additional guidance, see the [Notes section](observation.html#notes) below." />
      <requirements value="An observation exists to have a value, though it might not if it is in error, or if it represents a group of observations." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Observation.value[x]" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="integer" />
      </type>
      <condition value="ele-1" />
      <condition value="obs-7" />
      <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>
      <mustSupport value="true" />
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="sct-concept" />
        <map value="&lt; 441742003 |Evaluation finding|" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="OBX.2, OBX.5, OBX.6" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="value" />
      </mapping>
      <mapping>
        <identity value="sct-attr" />
        <map value="363714003 |Interprets|" />
      </mapping>
    </element>
    <element id="Observation.value[x]:valueString">
      <path value="Observation.value[x]" />
      <sliceName value="valueString" />
      <short value="Source result without a faithful structured representation" />
      <definition value="Use valueString only when the source result cannot faithfully be represented as a quantity, coded result, integer or Boolean. It is a controlled fallback, not a default result type. Record a mapping gap when the same unstructured result recurs and needs a governed representation." />
      <comment value="An observation may have; 1)  a single value here, 2)  both a value and a set of related or component values,  or 3)  only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code.  A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value.  For additional guidance, see the [Notes section](observation.html#notes) below." />
      <requirements value="An observation exists to have a value, though it might not if it is in error, or if it represents a group of observations." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Observation.value[x]" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="string" />
      </type>
      <condition value="ele-1" />
      <condition value="obs-7" />
      <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>
      <mustSupport value="true" />
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="sct-concept" />
        <map value="&lt; 441742003 |Evaluation finding|" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="OBX.2, OBX.5, OBX.6" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="value" />
      </mapping>
      <mapping>
        <identity value="sct-attr" />
        <map value="363714003 |Interprets|" />
      </mapping>
    </element>
    <element id="Observation.value[x]:valueCodeableConcept">
      <path value="Observation.value[x]" />
      <sliceName value="valueCodeableConcept" />
      <short value="Coded categorical result" />
      <definition value="Use valueCodeableConcept for a categorical result that has a faithful code. The applicable code system and ValueSet depend on Observation.code. This field remains open for agreed SNOMED CT, national and other governed code systems; it is not restricted to one generic result ValueSet." />
      <comment value="An observation may have; 1)  a single value here, 2)  both a value and a set of related or component values,  or 3)  only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code.  A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value.  For additional guidance, see the [Notes section](observation.html#notes) below." />
      <requirements value="An observation exists to have a value, though it might not if it is in error, or if it represents a group of observations." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Observation.value[x]" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="CodeableConcept" />
      </type>
      <condition value="ele-1" />
      <condition value="obs-7" />
      <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>
      <mustSupport value="true" />
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="sct-concept" />
        <map value="&lt; 441742003 |Evaluation finding|" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="OBX.2, OBX.5, OBX.6" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="value" />
      </mapping>
      <mapping>
        <identity value="sct-attr" />
        <map value="363714003 |Interprets|" />
      </mapping>
    </element>
    <element id="Observation.value[x]:valueCodeableConcept.id">
      <path value="Observation.value[x].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>
        <code>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-json-type">
            <valueString value="string" />
          </extension>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-xml-type">
            <valueString value="xsd:string" />
          </extension>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-rdf-type">
            <valueString value="xsd:string" />
          </extension>
        </code>
      </type>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
    </element>
    <element id="Observation.value[x]:valueCodeableConcept.extension">
      <path value="Observation.value[x].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="No extensions on the coded result" />
      <definition value="The coded result is represented by its coding and optional source text. Extensions are not used in the current DigiDOT draft." />
      <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="0" />
      <base>
        <path value="Element.extension" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="Extension" />
      </type>
      <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>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="N/A" />
      </mapping>
    </element>
    <element id="Observation.value[x]:valueCodeableConcept.coding">
      <path value="Observation.value[x].coding" />
      <short value="Coded observation result" />
      <definition value="When valueCodeableConcept is used, record at least one coded result. Use the code system and ValueSet that are appropriate for Observation.code; text may supplement but must not be the only result representation. When a coding uses SNOMED CT, it must be a direct precoordinated concept with the selected SNOMED CT edition release." />
      <comment value="Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information.  Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true." />
      <requirements value="Allows for alternative encodings within a code system, and translations to other code systems." />
      <min value="1" />
      <max value="*" />
      <base>
        <path value="CodeableConcept.coding" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="Coding" />
      </type>
      <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="obs-result-snomed-pre" />
        <severity value="error" />
        <human value="A SNOMED CT coded result must use a direct numeric concept identifier and state the SNOMED CT edition release." />
        <expression value="system != 'http://snomed.info/sct' or (version.exists() and code.matches('^[0-9]{6,18}$'))" />
        <source value="https://novari.no/fhir/digidot/StructureDefinition/digidot-Observation-no" />
      </constraint>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="CE/CNE/CWE subset one of the sets of component 1-3 or 4-6" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="CV" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding rdfs:subClassOf dt:CDCoding" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.1-8, C*E.10-22" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="union(., ./translation)" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:CodeableConcept.coding rdfs:subPropertyOf dt:CD.coding" />
      </mapping>
    </element>
    <element id="Observation.value[x]:valueCodeableConcept.coding.id">
      <path value="Observation.value[x].coding.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>
        <code>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-json-type">
            <valueString value="string" />
          </extension>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-xml-type">
            <valueString value="xsd:string" />
          </extension>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-rdf-type">
            <valueString value="xsd:string" />
          </extension>
        </code>
      </type>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
    </element>
    <element id="Observation.value[x]:valueCodeableConcept.coding.extension">
      <path value="Observation.value[x].coding.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="No extensions on the coded result coding" />
      <definition value="A coded result uses the agreed code system directly. Extensions on the coding are not used in the current DigiDOT draft." />
      <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="0" />
      <base>
        <path value="Element.extension" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="Extension" />
      </type>
      <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>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="N/A" />
      </mapping>
    </element>
    <element id="Observation.value[x]:valueCodeableConcept.coding.system">
      <path value="Observation.value[x].coding.system" />
      <short value="Code system for the coded result" />
      <definition value="The identification of the code system that defines the meaning of the symbol in the code." />
      <comment value="The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...).  OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously." />
      <requirements value="Need to be unambiguous about the source of the definition of the symbol." />
      <min value="1" />
      <max value="1" />
      <base>
        <path value="Coding.system" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="uri" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.3" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./codeSystem" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding.system rdfs:subPropertyOf dt:CDCoding.codeSystem" />
      </mapping>
    </element>
    <element id="Observation.value[x]:valueCodeableConcept.coding.version">
      <path value="Observation.value[x].coding.version" />
      <short value="Version of the system - if relevant" />
      <definition value="The version of the code system which was used when choosing this code. Note that a well-maintained code system does not need the version reported, because the meaning of codes is consistent across versions. However this cannot consistently be assured, and when the meaning is not guaranteed to be consistent, the version SHOULD be exchanged." />
      <comment value="Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Coding.version" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="string" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.7" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./codeSystemVersion" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding.version rdfs:subPropertyOf dt:CDCoding.codeSystemVersion" />
      </mapping>
    </element>
    <element id="Observation.value[x]:valueCodeableConcept.coding.code">
      <path value="Observation.value[x].coding.code" />
      <short value="Code for the coded result" />
      <definition value="A symbol in syntax defined by the system. The symbol may be a predefined code or an expression in a syntax defined by the coding system (e.g. post-coordination)." />
      <comment value="Note that FHIR strings SHALL NOT exceed 1MB in size" />
      <requirements value="Need to refer to a particular code in the system." />
      <min value="1" />
      <max value="1" />
      <base>
        <path value="Coding.code" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="code" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.1" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./code" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding.code rdfs:subPropertyOf dt:CDCoding.code" />
      </mapping>
    </element>
    <element id="Observation.value[x]:valueCodeableConcept.coding.display">
      <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable">
        <valueBoolean value="true" />
      </extension>
      <path value="Observation.value[x].coding.display" />
      <short value="Representation defined by the system" />
      <definition value="A representation of the meaning of the code in the system, following the rules of the system." />
      <comment value="Note that FHIR strings SHALL NOT exceed 1MB in size" />
      <requirements value="Need to be able to carry a human-readable meaning of the code for readers that do not know  the system." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Coding.display" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="string" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.2 - but note this is not well followed" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="CV.displayName" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding.display rdfs:subPropertyOf dt:CDCoding.displayName" />
      </mapping>
    </element>
    <element id="Observation.value[x]:valueCodeableConcept.coding.userSelected">
      <path value="Observation.value[x].coding.userSelected" />
      <short value="Not used for the coded result" />
      <definition value="The code is the agreed exchange representation. userSelected is not used in the current DigiDOT draft." />
      <comment value="Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely." />
      <requirements value="This has been identified as a clinical safety criterium - that this exact system/code pair was chosen explicitly, rather than inferred by the system based on some rules or language processing." />
      <min value="0" />
      <max value="0" />
      <base>
        <path value="Coding.userSelected" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="boolean" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="Sometimes implied by being first" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="CD.codingRationale" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding.userSelected fhir:mapsTo dt:CDCoding.codingRationale. fhir:Coding.userSelected fhir:hasMap fhir:Coding.userSelected.map. fhir:Coding.userSelected.map a fhir:Map;   fhir:target dt:CDCoding.codingRationale. fhir:Coding.userSelected\#true a [     fhir:source &quot;true&quot;;     fhir:target dt:CDCoding.codingRationale\#O   ]" />
      </mapping>
    </element>
    <element id="Observation.value[x]:valueCodeableConcept.text">
      <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable">
        <valueBoolean value="true" />
      </extension>
      <path value="Observation.value[x].text" />
      <short value="Supplementary source display text" />
      <definition value="Text may preserve a useful source display, but it does not replace the required coding and must not introduce a different clinical result." />
      <comment value="Very often the text is the same as a displayName of one of the codings." />
      <requirements value="The codes from the terminologies do not always capture the correct meaning with all the nuances of the human using them, or sometimes there is no appropriate code at all. In these cases, the text is used to capture the full meaning of the source." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="CodeableConcept.text" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="string" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.9. But note many systems use C*E.2 for this" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./originalText[mediaType/code=&quot;text/plain&quot;]/data" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:CodeableConcept.text rdfs:subPropertyOf dt:CD.originalText" />
      </mapping>
    </element>
    <element id="Observation.value[x]:valueQuantity">
      <path value="Observation.value[x]" />
      <sliceName value="valueQuantity" />
      <short value="Measured quantity" />
      <definition value="Use valueQuantity for a numeric observation with a physical unit. The value, UCUM system and UCUM code are required." />
      <comment value="An observation may have; 1)  a single value here, 2)  both a value and a set of related or component values,  or 3)  only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code.  A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value.  For additional guidance, see the [Notes section](observation.html#notes) below." />
      <requirements value="An observation exists to have a value, though it might not if it is in error, or if it represents a group of observations." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Observation.value[x]" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="Quantity" />
      </type>
      <condition value="ele-1" />
      <condition value="obs-7" />
      <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>
      <mustSupport value="true" />
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="sct-concept" />
        <map value="&lt; 441742003 |Evaluation finding|" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="OBX.2, OBX.5, OBX.6" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="value" />
      </mapping>
      <mapping>
        <identity value="sct-attr" />
        <map value="363714003 |Interprets|" />
      </mapping>
    </element>
    <element id="Observation.value[x]:valueQuantity.id">
      <path value="Observation.value[x].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>
        <code>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-json-type">
            <valueString value="string" />
          </extension>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-xml-type">
            <valueString value="xsd:string" />
          </extension>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-rdf-type">
            <valueString value="xsd:string" />
          </extension>
        </code>
      </type>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
    </element>
    <element id="Observation.value[x]:valueQuantity.extension">
      <path value="Observation.value[x].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="No extensions on the measured quantity" />
      <definition value="The measured quantity is represented by the standard Quantity fields. Extensions are not used in the current DigiDOT draft." />
      <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="0" />
      <base>
        <path value="Element.extension" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="Extension" />
      </type>
      <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>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="N/A" />
      </mapping>
    </element>
    <element id="Observation.value[x]:valueQuantity.value">
      <path value="Observation.value[x].value" />
      <short value="Measured value" />
      <definition value="The value of the measured amount. The value includes an implicit precision in the presentation of the value." />
      <comment value="The implicit precision in the value should always be honored. Monetary values have their own rules for handling precision (refer to standard accounting text books)." />
      <requirements value="Precision is handled implicitly in almost all cases of measurement." />
      <min value="1" />
      <max value="1" />
      <base>
        <path value="Quantity.value" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="decimal" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="SN.2  / CQ - N/A" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="PQ.value, CO.value, MO.value, IVL.high or IVL.low depending on the value" />
      </mapping>
    </element>
    <element id="Observation.value[x]:valueQuantity.comparator">
      <path value="Observation.value[x].comparator" />
      <short value="Measurement comparator when recorded" />
      <definition value="Use the comparator only when it is part of the source measurement meaning, such as less than or greater than a stated value. Do not use it as a replacement for a coded qualitative result." />
      <comment value="Note that FHIR strings SHALL NOT exceed 1MB in size" />
      <requirements value="Need a framework for handling measures where the value is &lt;5ug/L or &gt;400mg/L due to the limitations of measuring methodology." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Quantity.comparator" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="code" />
      </type>
      <meaningWhenMissing value="If there is no comparator, then there is no modification of the value" />
      <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>
      <isModifier value="true" />
      <isModifierReason value="This is labeled as &quot;Is Modifier&quot; because the comparator modifies the interpretation of the value significantly. If there is no comparator, then there is no modification of the value" />
      <isSummary value="true" />
      <binding>
        <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
          <valueString value="QuantityComparator" />
        </extension>
        <strength value="required" />
        <description value="How the Quantity should be understood and represented." />
        <valueSet value="http://hl7.org/fhir/ValueSet/quantity-comparator|4.0.0" />
      </binding>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="SN.1  / CQ.1" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="IVL properties" />
      </mapping>
    </element>
    <element id="Observation.value[x]:valueQuantity.unit">
      <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable">
        <valueBoolean value="true" />
      </extension>
      <path value="Observation.value[x].unit" />
      <short value="Human-readable UCUM unit display" />
      <definition value="Populate unit when the source provides a human-readable display. UCUM system and code remain the authoritative machine-readable unit representation." />
      <comment value="Note that FHIR strings SHALL NOT exceed 1MB in size" />
      <requirements value="There are many representations for units of measure and in many contexts, particular representations are fixed and required. I.e. mcg for micrograms." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Quantity.unit" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="string" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="(see OBX.6 etc.) / CQ.2" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="PQ.unit" />
      </mapping>
    </element>
    <element id="Observation.value[x]:valueQuantity.system">
      <path value="Observation.value[x].system" />
      <short value="UCUM unit system" />
      <definition value="The identification of the system that provides the coded form of the unit." />
      <comment value="see http://en.wikipedia.org/wiki/Uniform_resource_identifier" />
      <requirements value="Need to know the system that defines the coded form of the unit." />
      <min value="1" />
      <max value="1" />
      <base>
        <path value="Quantity.system" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="uri" />
      </type>
      <fixedUri value="http://unitsofmeasure.org" />
      <condition value="ele-1" />
      <condition value="qty-3" />
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="(see OBX.6 etc.) / CQ.2" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="CO.codeSystem, PQ.translation.codeSystem" />
      </mapping>
    </element>
    <element id="Observation.value[x]:valueQuantity.code">
      <path value="Observation.value[x].code" />
      <short value="UCUM unit code" />
      <definition value="A computer processable form of the unit in some unit representation system." />
      <comment value="The preferred system is UCUM, but SNOMED CT can also be used (for customary units) or ISO 4217 for currency.  The context of use may additionally require a code from a particular system." />
      <requirements value="Need a computable form of the unit that is fixed across all forms. UCUM provides this for quantities, but SNOMED CT provides many units of interest." />
      <min value="1" />
      <max value="1" />
      <base>
        <path value="Quantity.code" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="code" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="(see OBX.6 etc.) / CQ.2" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="PQ.code, MO.currency, PQ.translation.code" />
      </mapping>
    </element>
    <element id="Observation.dataAbsentReason">
      <path value="Observation.dataAbsentReason" />
      <short value="Reason a simple result is absent" />
      <definition value="Use the standard FHIR data-absent-reason coding when an expected simple result is unavailable. Do not use it together with Observation.value[x]. This distinguishes an unavailable result from an omitted value." />
      <comment value="Null or exceptional values can be represented two ways in FHIR Observations.  One way is to simply include them in the value set and represent the exceptions in the value.  For example, measurement values for a serology test could be  &quot;detected&quot;, &quot;not detected&quot;, &quot;inconclusive&quot;, or  &quot;specimen unsatisfactory&quot;.   &#xA;&#xA;The alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values.  For example, the dataAbsentReason code &quot;error&quot; could be used when the measurement was not completed. Note that an observation may only be reported if there are values to report. For example differential cell counts values may be reported only when &gt; 0.  Because of these options, use-case agreements are required to interpret general observations for null or exceptional values." />
      <requirements value="For many results it is necessary to handle exceptional values in measurements." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Observation.dataAbsentReason" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="CodeableConcept" />
      </type>
      <condition value="ele-1" />
      <condition value="obs-6" />
      <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>
      <mustSupport value="true" />
      <binding>
        <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
          <valueString value="ObservationValueAbsentReason" />
        </extension>
        <strength value="required" />
        <description value="Use one standard FHIR data absent reason code." />
        <valueSet value="http://hl7.org/fhir/ValueSet/data-absent-reason" />
      </binding>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="CE/CNE/CWE" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="CD" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:CodeableConcept rdfs:subClassOf dt:CD" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="N/A" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="value.nullFlavor" />
      </mapping>
    </element>
    <element id="Observation.dataAbsentReason.id">
      <path value="Observation.dataAbsentReason.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>
        <code>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-json-type">
            <valueString value="string" />
          </extension>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-xml-type">
            <valueString value="xsd:string" />
          </extension>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-rdf-type">
            <valueString value="xsd:string" />
          </extension>
        </code>
      </type>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
    </element>
    <element id="Observation.dataAbsentReason.extension">
      <path value="Observation.dataAbsentReason.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="No extensions on the absent-result reason" />
      <definition value="The absent-result reason is represented by one standard FHIR code. Extensions on Observation.dataAbsentReason are not used in the current DigiDOT draft." />
      <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="0" />
      <base>
        <path value="Element.extension" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="Extension" />
      </type>
      <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>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="N/A" />
      </mapping>
    </element>
    <element id="Observation.dataAbsentReason.coding">
      <path value="Observation.dataAbsentReason.coding" />
      <short value="Coded reason the result is absent" />
      <definition value="When dataAbsentReason is used, record exactly one standard FHIR data absent reason code." />
      <comment value="Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information.  Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true." />
      <requirements value="Allows for alternative encodings within a code system, and translations to other code systems." />
      <min value="1" />
      <max value="1" />
      <base>
        <path value="CodeableConcept.coding" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="Coding" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="CE/CNE/CWE subset one of the sets of component 1-3 or 4-6" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="CV" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding rdfs:subClassOf dt:CDCoding" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.1-8, C*E.10-22" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="union(., ./translation)" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:CodeableConcept.coding rdfs:subPropertyOf dt:CD.coding" />
      </mapping>
    </element>
    <element id="Observation.dataAbsentReason.coding.id">
      <path value="Observation.dataAbsentReason.coding.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>
        <code>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-json-type">
            <valueString value="string" />
          </extension>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-xml-type">
            <valueString value="xsd:string" />
          </extension>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-rdf-type">
            <valueString value="xsd:string" />
          </extension>
        </code>
      </type>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
    </element>
    <element id="Observation.dataAbsentReason.coding.extension">
      <path value="Observation.dataAbsentReason.coding.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="No extensions on the absent-result coding" />
      <definition value="The absent-result coding uses the standard FHIR code system directly. Extensions on the coding are not used in the current DigiDOT draft." />
      <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="0" />
      <base>
        <path value="Element.extension" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="Extension" />
      </type>
      <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>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="N/A" />
      </mapping>
    </element>
    <element id="Observation.dataAbsentReason.coding.system">
      <path value="Observation.dataAbsentReason.coding.system" />
      <short value="Code system for the absent-result reason" />
      <definition value="The identification of the code system that defines the meaning of the symbol in the code." />
      <comment value="The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...).  OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously." />
      <requirements value="Need to be unambiguous about the source of the definition of the symbol." />
      <min value="1" />
      <max value="1" />
      <base>
        <path value="Coding.system" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="uri" />
      </type>
      <fixedUri value="http://terminology.hl7.org/CodeSystem/data-absent-reason" />
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.3" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./codeSystem" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding.system rdfs:subPropertyOf dt:CDCoding.codeSystem" />
      </mapping>
    </element>
    <element id="Observation.dataAbsentReason.coding.version">
      <path value="Observation.dataAbsentReason.coding.version" />
      <short value="Version of the system - if relevant" />
      <definition value="The version of the code system which was used when choosing this code. Note that a well-maintained code system does not need the version reported, because the meaning of codes is consistent across versions. However this cannot consistently be assured, and when the meaning is not guaranteed to be consistent, the version SHOULD be exchanged." />
      <comment value="Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Coding.version" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="string" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.7" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./codeSystemVersion" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding.version rdfs:subPropertyOf dt:CDCoding.codeSystemVersion" />
      </mapping>
    </element>
    <element id="Observation.dataAbsentReason.coding.code">
      <path value="Observation.dataAbsentReason.coding.code" />
      <short value="Code for the absent-result reason" />
      <definition value="A symbol in syntax defined by the system. The symbol may be a predefined code or an expression in a syntax defined by the coding system (e.g. post-coordination)." />
      <comment value="Note that FHIR strings SHALL NOT exceed 1MB in size" />
      <requirements value="Need to refer to a particular code in the system." />
      <min value="1" />
      <max value="1" />
      <base>
        <path value="Coding.code" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="code" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.1" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./code" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding.code rdfs:subPropertyOf dt:CDCoding.code" />
      </mapping>
    </element>
    <element id="Observation.dataAbsentReason.coding.display">
      <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable">
        <valueBoolean value="true" />
      </extension>
      <path value="Observation.dataAbsentReason.coding.display" />
      <short value="Representation defined by the system" />
      <definition value="A representation of the meaning of the code in the system, following the rules of the system." />
      <comment value="Note that FHIR strings SHALL NOT exceed 1MB in size" />
      <requirements value="Need to be able to carry a human-readable meaning of the code for readers that do not know  the system." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Coding.display" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="string" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.2 - but note this is not well followed" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="CV.displayName" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding.display rdfs:subPropertyOf dt:CDCoding.displayName" />
      </mapping>
    </element>
    <element id="Observation.dataAbsentReason.coding.userSelected">
      <path value="Observation.dataAbsentReason.coding.userSelected" />
      <short value="Not used for the absent-result reason" />
      <definition value="The standard absent-result reason is the agreed exchange code. userSelected is not used in the current DigiDOT draft." />
      <comment value="Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely." />
      <requirements value="This has been identified as a clinical safety criterium - that this exact system/code pair was chosen explicitly, rather than inferred by the system based on some rules or language processing." />
      <min value="0" />
      <max value="0" />
      <base>
        <path value="Coding.userSelected" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="boolean" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="Sometimes implied by being first" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="CD.codingRationale" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding.userSelected fhir:mapsTo dt:CDCoding.codingRationale. fhir:Coding.userSelected fhir:hasMap fhir:Coding.userSelected.map. fhir:Coding.userSelected.map a fhir:Map;   fhir:target dt:CDCoding.codingRationale. fhir:Coding.userSelected\#true a [     fhir:source &quot;true&quot;;     fhir:target dt:CDCoding.codingRationale\#O   ]" />
      </mapping>
    </element>
    <element id="Observation.dataAbsentReason.text">
      <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable">
        <valueBoolean value="true" />
      </extension>
      <path value="Observation.dataAbsentReason.text" />
      <short value="No free text for the absent-result reason" />
      <definition value="Use the standard coded reason. Free text is not used as a second absent-result representation." />
      <comment value="Very often the text is the same as a displayName of one of the codings." />
      <requirements value="The codes from the terminologies do not always capture the correct meaning with all the nuances of the human using them, or sometimes there is no appropriate code at all. In these cases, the text is used to capture the full meaning of the source." />
      <min value="0" />
      <max value="0" />
      <base>
        <path value="CodeableConcept.text" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="string" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.9. But note many systems use C*E.2 for this" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./originalText[mediaType/code=&quot;text/plain&quot;]/data" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:CodeableConcept.text rdfs:subPropertyOf dt:CD.originalText" />
      </mapping>
    </element>
    <element id="Observation.interpretation">
      <path value="Observation.interpretation" />
      <short value="Not used in the current DigiDOT Observation draft" />
      <definition value="No governed dental interpretation terminology or cross-system mapping is agreed. Record a coded clinical result in valueCodeableConcept when that is the observation result; use a Condition for a clinically significant finding or diagnosis." />
      <comment value="Historically used for laboratory results (known as 'abnormal flag' ),  its use extends to other use cases where coded interpretations  are relevant.  Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result." />
      <requirements value="For some results, particularly numeric results, an interpretation is necessary to fully understand the significance of a result." />
      <alias value="Abnormal Flag" />
      <min value="0" />
      <max value="0" />
      <base>
        <path value="Observation.interpretation" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="CodeableConcept" />
      </type>
      <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>
      <binding>
        <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
          <valueString value="ObservationInterpretation" />
        </extension>
        <strength value="extensible" />
        <description value="Codes identifying interpretations of observations." />
        <valueSet value="http://hl7.org/fhir/ValueSet/observation-interpretation" />
      </binding>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="CE/CNE/CWE" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="CD" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:CodeableConcept rdfs:subClassOf dt:CD" />
      </mapping>
      <mapping>
        <identity value="sct-concept" />
        <map value="&lt; 260245000 |Findings values|" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="OBX-8" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="interpretationCode" />
      </mapping>
      <mapping>
        <identity value="sct-attr" />
        <map value="363713009 |Has interpretation|" />
      </mapping>
    </element>
    <element id="Observation.note">
      <path value="Observation.note" />
      <short value="Comments about the observation" />
      <definition value="Comments about the observation or the results." />
      <comment value="May include general statements about the observation, or statements about significant, unexpected or unreliable results values, or information about its source when relevant to its interpretation." />
      <requirements value="Need to be able to provide free text additional information." />
      <min value="0" />
      <max value="*" />
      <base>
        <path value="Observation.note" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="Annotation" />
      </type>
      <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>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="N/A" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="Act" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="NTE.3 (partner NTE to OBX, or sometimes another (child?) OBX)" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="subjectOf.observationEvent[code=&quot;annotation&quot;].value" />
      </mapping>
    </element>
    <element id="Observation.note.id">
      <path value="Observation.note.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>
        <code>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-json-type">
            <valueString value="string" />
          </extension>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-xml-type">
            <valueString value="xsd:string" />
          </extension>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-rdf-type">
            <valueString value="xsd:string" />
          </extension>
        </code>
      </type>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
    </element>
    <element id="Observation.note.extension">
      <path value="Observation.note.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>
      <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>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="N/A" />
      </mapping>
    </element>
    <element id="Observation.note.author[x]">
      <path value="Observation.note.author[x]" />
      <short value="Individual responsible for the annotation" />
      <definition value="The individual responsible for making the annotation." />
      <comment value="Practitioner targets conform to no-basis-Practitioner. Use the standard FHIR R4 Reference datatype; literal and logical references are permitted. Reference.reference, type, identifier and display retain their base cardinalities. A targetProfile constraint does not itself require a literal reference or select an identifier system. Other explicitly permitted target types retain their own clinical responsibility." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Annotation.author[x]" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.no/fhir/StructureDefinition/no-basis-Practitioner" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Patient" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/RelatedPerson" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Organization" />
      </type>
      <type>
        <code value="string" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="N/A" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="Act.participant[typeCode=AUT].role" />
      </mapping>
    </element>
    <element id="Observation.note.time">
      <path value="Observation.note.time" />
      <short value="When the annotation was made" />
      <definition value="Indicates when this particular annotation was made." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Annotation.time" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="dateTime" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="N/A" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="Act.effectiveTime" />
      </mapping>
    </element>
    <element id="Observation.note.text">
      <path value="Observation.note.text" />
      <short value="The annotation  - text content (as markdown)" />
      <definition value="The text of the annotation in markdown format." />
      <comment value="Systems are not required to have markdown support, so the text should be readable without markdown processing. The markdown syntax is GFM - see https://github.github.com/gfm/" />
      <min value="1" />
      <max value="1" />
      <base>
        <path value="Annotation.text" />
        <min value="1" />
        <max value="1" />
      </base>
      <type>
        <code value="markdown" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="N/A" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="Act.text" />
      </mapping>
    </element>
    <element id="Observation.bodySite">
      <path value="Observation.bodySite" />
      <short value="Inline Xt-EHR anatomy group" />
      <definition value="One inline anatomical group in the shared DentalBodySite format: a complex extension containing location, repeated locationQualifier, laterality, morphology and description, matching the Xt-EHR logical field model. No independent BodyStructure resource is required. Clinical coding and dental workflow rules apply separately." />
      <comment value="The two inline qualifier extensions are explicitly defined DigiDOT R4 extensions. The FHIR structure stays directly coded; shared terminology tooling composes and compares the SCTextended anatomy. See DentalBodySite-use for the supplier contract." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Observation.bodySite" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="CodeableConcept" />
        <profile value="https://novari.no/fhir/digidot/StructureDefinition/digidot-DentalBodySite-no" />
      </type>
      <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>
      <mustSupport value="true" />
      <binding>
        <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
          <valueString value="BodySite" />
        </extension>
        <strength value="example" />
        <description value="Codes describing anatomical locations. May include laterality." />
        <valueSet value="http://hl7.org/fhir/ValueSet/body-site" />
      </binding>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="CE/CNE/CWE" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="CD" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:CodeableConcept rdfs:subClassOf dt:CD" />
      </mapping>
      <mapping>
        <identity value="sct-concept" />
        <map value="&lt; 123037004 |Body structure|" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="OBX-20" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="targetSiteCode" />
      </mapping>
      <mapping>
        <identity value="sct-attr" />
        <map value="718497002 |Inherent location|" />
      </mapping>
    </element>
    <element id="Observation.method">
      <path value="Observation.method" />
      <short value="How the observation was made or calculated" />
      <definition value="Use method only when it adds information that is not already implicit in Observation.code. If the source records a clinically relevant method, it shall be populated. Prefer an agreed SNOMED CT or national code where available. The small DigiDOT method ValueSet is a local draft aid, not a national terminology decision." />
      <comment value="Only used if not implicit in code for Observation.code." />
      <requirements value="In some cases, method can impact results and is thus used for determining whether results can be compared or determining significance of results." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Observation.method" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="CodeableConcept" />
      </type>
      <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>
      <mustSupport value="true" />
      <binding>
        <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
          <valueString value="ObservationMethod" />
        </extension>
        <strength value="preferred" />
        <description value="The DigiDOT method ValueSet is a preferred local draft list. Use an agreed SNOMED CT or national method code when available." />
        <valueSet value="https://novari.no/fhir/digidot/ValueSet/digidot-observation-method" />
      </binding>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="CE/CNE/CWE" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="CD" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:CodeableConcept rdfs:subClassOf dt:CD" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="OBX-17" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="methodCode" />
      </mapping>
    </element>
    <element id="Observation.method.id">
      <path value="Observation.method.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>
        <code>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-json-type">
            <valueString value="string" />
          </extension>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-xml-type">
            <valueString value="xsd:string" />
          </extension>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-rdf-type">
            <valueString value="xsd:string" />
          </extension>
        </code>
      </type>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
    </element>
    <element id="Observation.method.extension">
      <path value="Observation.method.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="No extensions on the observation method" />
      <definition value="Method is represented by its coded value. Extensions on Observation.method are not used in the current DigiDOT draft." />
      <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="0" />
      <base>
        <path value="Element.extension" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="Extension" />
      </type>
      <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>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="N/A" />
      </mapping>
    </element>
    <element id="Observation.method.coding">
      <path value="Observation.method.coding" />
      <short value="Coded observation method" />
      <definition value="When Observation.method is populated, use exactly one coded method. The code can come from the DigiDOT method ValueSet, SNOMED CT or another agreed national code system." />
      <comment value="Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information.  Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true." />
      <requirements value="Allows for alternative encodings within a code system, and translations to other code systems." />
      <min value="1" />
      <max value="1" />
      <base>
        <path value="CodeableConcept.coding" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="Coding" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="CE/CNE/CWE subset one of the sets of component 1-3 or 4-6" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="CV" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding rdfs:subClassOf dt:CDCoding" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.1-8, C*E.10-22" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="union(., ./translation)" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:CodeableConcept.coding rdfs:subPropertyOf dt:CD.coding" />
      </mapping>
    </element>
    <element id="Observation.method.coding.id">
      <path value="Observation.method.coding.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>
        <code>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-json-type">
            <valueString value="string" />
          </extension>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-xml-type">
            <valueString value="xsd:string" />
          </extension>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-rdf-type">
            <valueString value="xsd:string" />
          </extension>
        </code>
      </type>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
    </element>
    <element id="Observation.method.coding.extension">
      <path value="Observation.method.coding.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="No extensions on the observation method coding" />
      <definition value="The observation method is represented by one agreed coding. Extensions on Observation.method.coding are not used in the current DigiDOT draft." />
      <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="0" />
      <base>
        <path value="Element.extension" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="Extension" />
      </type>
      <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>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="N/A" />
      </mapping>
    </element>
    <element id="Observation.method.coding.system">
      <path value="Observation.method.coding.system" />
      <short value="Code system for the observation method" />
      <definition value="The identification of the code system that defines the meaning of the symbol in the code." />
      <comment value="The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...).  OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously." />
      <requirements value="Need to be unambiguous about the source of the definition of the symbol." />
      <min value="1" />
      <max value="1" />
      <base>
        <path value="Coding.system" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="uri" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.3" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./codeSystem" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding.system rdfs:subPropertyOf dt:CDCoding.codeSystem" />
      </mapping>
    </element>
    <element id="Observation.method.coding.version">
      <path value="Observation.method.coding.version" />
      <short value="Version of the system - if relevant" />
      <definition value="The version of the code system which was used when choosing this code. Note that a well-maintained code system does not need the version reported, because the meaning of codes is consistent across versions. However this cannot consistently be assured, and when the meaning is not guaranteed to be consistent, the version SHOULD be exchanged." />
      <comment value="Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Coding.version" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="string" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.7" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./codeSystemVersion" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding.version rdfs:subPropertyOf dt:CDCoding.codeSystemVersion" />
      </mapping>
    </element>
    <element id="Observation.method.coding.code">
      <path value="Observation.method.coding.code" />
      <short value="Code for the observation method" />
      <definition value="A symbol in syntax defined by the system. The symbol may be a predefined code or an expression in a syntax defined by the coding system (e.g. post-coordination)." />
      <comment value="Note that FHIR strings SHALL NOT exceed 1MB in size" />
      <requirements value="Need to refer to a particular code in the system." />
      <min value="1" />
      <max value="1" />
      <base>
        <path value="Coding.code" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="code" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.1" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./code" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding.code rdfs:subPropertyOf dt:CDCoding.code" />
      </mapping>
    </element>
    <element id="Observation.method.coding.display">
      <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable">
        <valueBoolean value="true" />
      </extension>
      <path value="Observation.method.coding.display" />
      <short value="Representation defined by the system" />
      <definition value="A representation of the meaning of the code in the system, following the rules of the system." />
      <comment value="Note that FHIR strings SHALL NOT exceed 1MB in size" />
      <requirements value="Need to be able to carry a human-readable meaning of the code for readers that do not know  the system." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Coding.display" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="string" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.2 - but note this is not well followed" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="CV.displayName" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding.display rdfs:subPropertyOf dt:CDCoding.displayName" />
      </mapping>
    </element>
    <element id="Observation.method.coding.userSelected">
      <path value="Observation.method.coding.userSelected" />
      <short value="Not used for the observation method" />
      <definition value="The coded method is the agreed exchange representation. userSelected is not used in the current DigiDOT draft." />
      <comment value="Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely." />
      <requirements value="This has been identified as a clinical safety criterium - that this exact system/code pair was chosen explicitly, rather than inferred by the system based on some rules or language processing." />
      <min value="0" />
      <max value="0" />
      <base>
        <path value="Coding.userSelected" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="boolean" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="Sometimes implied by being first" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="CD.codingRationale" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:Coding.userSelected fhir:mapsTo dt:CDCoding.codingRationale. fhir:Coding.userSelected fhir:hasMap fhir:Coding.userSelected.map. fhir:Coding.userSelected.map a fhir:Map;   fhir:target dt:CDCoding.codingRationale. fhir:Coding.userSelected\#true a [     fhir:source &quot;true&quot;;     fhir:target dt:CDCoding.codingRationale\#O   ]" />
      </mapping>
    </element>
    <element id="Observation.method.text">
      <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable">
        <valueBoolean value="true" />
      </extension>
      <path value="Observation.method.text" />
      <short value="No free text method" />
      <definition value="Use the coded method. Free text is not used as a second method representation." />
      <comment value="Very often the text is the same as a displayName of one of the codings." />
      <requirements value="The codes from the terminologies do not always capture the correct meaning with all the nuances of the human using them, or sometimes there is no appropriate code at all. In these cases, the text is used to capture the full meaning of the source." />
      <min value="0" />
      <max value="0" />
      <base>
        <path value="CodeableConcept.text" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="string" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="C*E.9. But note many systems use C*E.2 for this" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./originalText[mediaType/code=&quot;text/plain&quot;]/data" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:CodeableConcept.text rdfs:subPropertyOf dt:CD.originalText" />
      </mapping>
    </element>
    <element id="Observation.specimen">
      <path value="Observation.specimen" />
      <short value="Not used in the current DigiDOT Observation draft" />
      <definition value="Specimen-based laboratory observations require a separate agreed model and are outside the current dental Observation scope." />
      <comment value="Should only be used if not implicit in code found in `Observation.code`.  Observations are not made on specimens themselves; they are made on a subject, but in many cases by the means of a specimen. Note that although specimens are often involved, they are not always tracked and reported explicitly. Also note that observation resources may be used in contexts that track the specimen explicitly (e.g. Diagnostic Report)." />
      <min value="0" />
      <max value="0" />
      <base>
        <path value="Observation.specimen" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Specimen" />
      </type>
      <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="ref-1" />
        <severity value="error" />
        <human value="SHALL have a contained resource if a local reference is provided" />
        <expression value="reference.startsWith('#').not() or (reference.substring(1).trace('url') in %resource.contained.id.trace('ids'))" />
        <xpath value="not(starts-with(f:reference/@value, '#')) or exists(ancestor::*[self::f:entry or self::f:parameter]/f:resource/f:*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')]|/*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')])" />
        <source value="http://hl7.org/fhir/StructureDefinition/Reference" />
      </constraint>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="The target of a resource reference is a RIM entry point (Act, Role, or Entity)" />
      </mapping>
      <mapping>
        <identity value="sct-concept" />
        <map value="&lt; 123038009 |Specimen|" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="SPM segment" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="participation[typeCode=SPC].specimen" />
      </mapping>
      <mapping>
        <identity value="sct-attr" />
        <map value="704319004 |Inherent in|" />
      </mapping>
    </element>
    <element id="Observation.device">
      <path value="Observation.device" />
      <short value="Not used in the current DigiDOT Observation draft" />
      <definition value="The current profile does not model device-generated measurements. Imaging and device context must use their own agreed resources and relationships." />
      <comment value="Note that this is not meant to represent a device involved in the transmission of the result, e.g., a gateway.  Such devices may be documented using the Provenance resource where relevant." />
      <min value="0" />
      <max value="0" />
      <base>
        <path value="Observation.device" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Device" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/DeviceMetric" />
      </type>
      <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="ref-1" />
        <severity value="error" />
        <human value="SHALL have a contained resource if a local reference is provided" />
        <expression value="reference.startsWith('#').not() or (reference.substring(1).trace('url') in %resource.contained.id.trace('ids'))" />
        <xpath value="not(starts-with(f:reference/@value, '#')) or exists(ancestor::*[self::f:entry or self::f:parameter]/f:resource/f:*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')]|/*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')])" />
        <source value="http://hl7.org/fhir/StructureDefinition/Reference" />
      </constraint>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="The target of a resource reference is a RIM entry point (Act, Role, or Entity)" />
      </mapping>
      <mapping>
        <identity value="sct-concept" />
        <map value="&lt; 49062001 |Device|" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="OBX-17 / PRT -10" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="participation[typeCode=DEV]" />
      </mapping>
      <mapping>
        <identity value="sct-attr" />
        <map value="424226004 |Using device|" />
      </mapping>
    </element>
    <element id="Observation.referenceRange">
      <path value="Observation.referenceRange" />
      <short value="Not used in the current DigiDOT Observation draft" />
      <definition value="No dental reference-range terminology or cross-system calculation model is agreed for the current scope." />
      <comment value="Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties." />
      <requirements value="Knowing what values are considered &quot;normal&quot; can help evaluate the significance of a particular result. Need to be able to provide multiple reference ranges for different contexts." />
      <min value="0" />
      <max value="0" />
      <base>
        <path value="Observation.referenceRange" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="BackboneElement" />
      </type>
      <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="obs-3" />
        <severity value="error" />
        <human value="Must have at least a low or a high or text" />
        <expression value="low.exists() or high.exists() or text.exists()" />
        <xpath value="(exists(f:low) or exists(f:high)or exists(f:text))" />
        <source value="http://hl7.org/fhir/StructureDefinition/Observation" />
      </constraint>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="OBX.7" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="outboundRelationship[typeCode=REFV]/target[classCode=OBS, moodCode=EVN]" />
      </mapping>
    </element>
    <element id="Observation.referenceRange.id">
      <path value="Observation.referenceRange.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>
        <code>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-json-type">
            <valueString value="string" />
          </extension>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-xml-type">
            <valueString value="xsd:string" />
          </extension>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-rdf-type">
            <valueString value="xsd:string" />
          </extension>
        </code>
      </type>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
    </element>
    <element id="Observation.referenceRange.extension">
      <path value="Observation.referenceRange.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>
      <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>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="N/A" />
      </mapping>
    </element>
    <element id="Observation.referenceRange.modifierExtension">
      <path value="Observation.referenceRange.modifierExtension" />
      <short value="Extensions that cannot be ignored even if unrecognized" />
      <definition value="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. 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. Applications processing a resource are required to check for modifier extensions.&#xA;&#xA;Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself)." />
      <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." />
      <requirements value="Modifier extensions allow for extensions that *cannot* be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored.  This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the [definition of modifier extensions](extensibility.html#modifierExtension)." />
      <alias value="extensions" />
      <alias value="user content" />
      <alias value="modifiers" />
      <min value="0" />
      <max value="*" />
      <base>
        <path value="BackboneElement.modifierExtension" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="Extension" />
      </type>
      <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="true" />
      <isModifierReason value="Modifier extensions are expected to modify the meaning or interpretation of the element that contains them" />
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="N/A" />
      </mapping>
    </element>
    <element id="Observation.referenceRange.low">
      <path value="Observation.referenceRange.low" />
      <short value="Low Range, if relevant" />
      <definition value="The value of the low bound of the reference range.  The low bound of the reference range endpoint is inclusive of the value (e.g.  reference range is &gt;=5 - &lt;=9). If the low bound is omitted,  it is assumed to be meaningless (e.g. reference range is &lt;=2.3)." />
      <comment value="The context of use may frequently define what kind of quantity this is and therefore what kind of units can be used. The context of use may also restrict the values for the comparator." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Observation.referenceRange.low" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="Quantity" />
        <profile value="http://hl7.org/fhir/StructureDefinition/SimpleQuantity" />
      </type>
      <condition value="ele-1" />
      <condition value="obs-3" />
      <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="qty-3" />
        <severity value="error" />
        <human value="If a code for the unit is present, the system SHALL also be present" />
        <expression value="code.empty() or system.exists()" />
        <xpath value="not(exists(f:code)) or exists(f:system)" />
        <source value="http://hl7.org/fhir/StructureDefinition/Quantity" />
      </constraint>
      <constraint>
        <key value="sqty-1" />
        <severity value="error" />
        <human value="The comparator is not used on a SimpleQuantity" />
        <expression value="comparator.empty()" />
        <xpath value="not(exists(f:comparator))" />
        <source value="http://hl7.org/fhir/StructureDefinition/SimpleQuantity" />
      </constraint>
      <isModifier value="false" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="SN (see also Range) or CQ" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="PQ, IVL&lt;PQ&gt;, MO, CO, depending on the values" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="OBX-7" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="value:IVL_PQ.low" />
      </mapping>
    </element>
    <element id="Observation.referenceRange.high">
      <path value="Observation.referenceRange.high" />
      <short value="High Range, if relevant" />
      <definition value="The value of the high bound of the reference range.  The high bound of the reference range endpoint is inclusive of the value (e.g.  reference range is &gt;=5 - &lt;=9). If the high bound is omitted,  it is assumed to be meaningless (e.g. reference range is &gt;= 2.3)." />
      <comment value="The context of use may frequently define what kind of quantity this is and therefore what kind of units can be used. The context of use may also restrict the values for the comparator." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Observation.referenceRange.high" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="Quantity" />
        <profile value="http://hl7.org/fhir/StructureDefinition/SimpleQuantity" />
      </type>
      <condition value="ele-1" />
      <condition value="obs-3" />
      <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="qty-3" />
        <severity value="error" />
        <human value="If a code for the unit is present, the system SHALL also be present" />
        <expression value="code.empty() or system.exists()" />
        <xpath value="not(exists(f:code)) or exists(f:system)" />
        <source value="http://hl7.org/fhir/StructureDefinition/Quantity" />
      </constraint>
      <constraint>
        <key value="sqty-1" />
        <severity value="error" />
        <human value="The comparator is not used on a SimpleQuantity" />
        <expression value="comparator.empty()" />
        <xpath value="not(exists(f:comparator))" />
        <source value="http://hl7.org/fhir/StructureDefinition/SimpleQuantity" />
      </constraint>
      <isModifier value="false" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="SN (see also Range) or CQ" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="PQ, IVL&lt;PQ&gt;, MO, CO, depending on the values" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="OBX-7" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="value:IVL_PQ.high" />
      </mapping>
    </element>
    <element id="Observation.referenceRange.type">
      <path value="Observation.referenceRange.type" />
      <short value="Reference range qualifier" />
      <definition value="Codes to indicate the what part of the targeted reference population it applies to. For example, the normal or therapeutic range." />
      <comment value="This SHOULD be populated if there is more than one range.  If this element is not present then the normal range is assumed." />
      <requirements value="Need to be able to say what kind of reference range this is - normal, recommended, therapeutic, etc.,  - for proper interpretation." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Observation.referenceRange.type" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="CodeableConcept" />
      </type>
      <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>
      <binding>
        <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
          <valueString value="ObservationRangeMeaning" />
        </extension>
        <strength value="preferred" />
        <description value="Code for the meaning of a reference range." />
        <valueSet value="http://hl7.org/fhir/ValueSet/referencerange-meaning" />
      </binding>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="CE/CNE/CWE" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="CD" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:CodeableConcept rdfs:subClassOf dt:CD" />
      </mapping>
      <mapping>
        <identity value="sct-concept" />
        <map value="&lt; 260245000 |Findings values| OR  &#xD;&lt; 365860008 |General clinical state finding| &#xD;OR &#xD;&lt; 250171008 |Clinical history or observation findings| OR  &#xD;&lt; 415229000 |Racial group| OR &#xD;&lt; 365400002 |Finding of puberty stage| OR&#xD;&lt; 443938003 |Procedure carried out on subject|" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="OBX-10" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="interpretationCode" />
      </mapping>
    </element>
    <element id="Observation.referenceRange.appliesTo">
      <path value="Observation.referenceRange.appliesTo" />
      <short value="Reference range population" />
      <definition value="Codes to indicate the target population this reference range applies to.  For example, a reference range may be based on the normal population or a particular sex or race.  Multiple `appliesTo`  are interpreted as an &quot;AND&quot; of the target populations.  For example, to represent a target population of African American females, both a code of female and a code for African American would be used." />
      <comment value="This SHOULD be populated if there is more than one range.  If this element is not present then the normal population is assumed." />
      <requirements value="Need to be able to identify the target population for proper interpretation." />
      <min value="0" />
      <max value="*" />
      <base>
        <path value="Observation.referenceRange.appliesTo" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="CodeableConcept" />
      </type>
      <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>
      <binding>
        <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
          <valueString value="ObservationRangeType" />
        </extension>
        <strength value="example" />
        <description value="Codes identifying the population the reference range applies to." />
        <valueSet value="http://hl7.org/fhir/ValueSet/referencerange-appliesto" />
      </binding>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="CE/CNE/CWE" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="CD" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:CodeableConcept rdfs:subClassOf dt:CD" />
      </mapping>
      <mapping>
        <identity value="sct-concept" />
        <map value="&lt; 260245000 |Findings values| OR  &#xD;&lt; 365860008 |General clinical state finding| &#xD;OR &#xD;&lt; 250171008 |Clinical history or observation findings| OR  &#xD;&lt; 415229000 |Racial group| OR &#xD;&lt; 365400002 |Finding of puberty stage| OR&#xD;&lt; 443938003 |Procedure carried out on subject|" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="OBX-10" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="interpretationCode" />
      </mapping>
    </element>
    <element id="Observation.referenceRange.age">
      <path value="Observation.referenceRange.age" />
      <short value="Applicable age range, if relevant" />
      <definition value="The age at which this reference range is applicable. This is a neonatal age (e.g. number of weeks at term) if the meaning says so." />
      <comment value="The stated low and high value are assumed to have arbitrarily high precision when it comes to determining which values are in the range. I.e. 1.99 is not in the range 2 -&gt; 3." />
      <requirements value="Some analytes vary greatly over age." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Observation.referenceRange.age" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="Range" />
      </type>
      <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="rng-2" />
        <severity value="error" />
        <human value="If present, low SHALL have a lower value than high" />
        <expression value="low.empty() or high.empty() or (low &lt;= high)" />
        <xpath value="not(exists(f:low/f:value/@value)) or not(exists(f:high/f:value/@value)) or (number(f:low/f:value/@value) &lt;= number(f:high/f:value/@value))" />
        <source value="http://hl7.org/fhir/StructureDefinition/Range" />
      </constraint>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="NR and also possibly SN (but see also quantity)" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="IVL&lt;QTY[not(type=&quot;TS&quot;)]&gt; [lowClosed=&quot;true&quot; and highClosed=&quot;true&quot;]or URG&lt;QTY[not(type=&quot;TS&quot;)]&gt;" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="outboundRelationship[typeCode=PRCN].targetObservationCriterion[code=&quot;age&quot;].value" />
      </mapping>
    </element>
    <element id="Observation.referenceRange.text">
      <path value="Observation.referenceRange.text" />
      <short value="Text based reference range in an observation" />
      <definition value="Text based reference range in an observation which may be used when a quantitative range is not appropriate for an observation.  An example would be a reference value of &quot;Negative&quot; or a list or table of &quot;normals&quot;." />
      <comment value="Note that FHIR strings SHALL NOT exceed 1MB in size" />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Observation.referenceRange.text" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="string" />
      </type>
      <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>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="OBX-7" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="value:ST" />
      </mapping>
    </element>
    <element id="Observation.hasMember">
      <path value="Observation.hasMember" />
      <short value="Not used in the current DigiDOT Observation draft" />
      <definition value="Use separate DigiDOT Observation resources when results need separate codes, anatomy, times or lifecycle states. Grouping and questionnaire modelling require separate agreed profiles." />
      <comment value="When using this element, an observation will typically have either a value or a set of related resources, although both may be present in some cases.  For a discussion on the ways Observations can assembled in groups together, see [Notes](observation.html#obsgrouping) below.  Note that a system may calculate results from [QuestionnaireResponse](questionnaireresponse.html)  into a final score and represent the score as an Observation." />
      <min value="0" />
      <max value="0" />
      <base>
        <path value="Observation.hasMember" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Observation" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/MolecularSequence" />
      </type>
      <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="ref-1" />
        <severity value="error" />
        <human value="SHALL have a contained resource if a local reference is provided" />
        <expression value="reference.startsWith('#').not() or (reference.substring(1).trace('url') in %resource.contained.id.trace('ids'))" />
        <xpath value="not(starts-with(f:reference/@value, '#')) or exists(ancestor::*[self::f:entry or self::f:parameter]/f:resource/f:*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')]|/*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')])" />
        <source value="http://hl7.org/fhir/StructureDefinition/Reference" />
      </constraint>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="The target of a resource reference is a RIM entry point (Act, Role, or Entity)" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="Relationships established by OBX-4 usage" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="outBoundRelationship" />
      </mapping>
    </element>
    <element id="Observation.derivedFrom">
      <path value="Observation.derivedFrom" />
      <short value="Not used in the current DigiDOT Observation draft" />
      <definition value="No governed target profiles and source-document relationship model are agreed for Observation.derivedFrom. Imaging, document and questionnaire relationships are deferred to their dedicated resources and profiles." />
      <comment value="All the reference choices that are listed in this element can represent clinical observations and other measurements that may be the source for a derived value.  The most common reference will be another Observation.  For a discussion on the ways Observations can assembled in groups together, see [Notes](observation.html#obsgrouping) below." />
      <min value="0" />
      <max value="0" />
      <base>
        <path value="Observation.derivedFrom" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/DocumentReference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/ImagingStudy" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Media" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Observation" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/MolecularSequence" />
      </type>
      <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="ref-1" />
        <severity value="error" />
        <human value="SHALL have a contained resource if a local reference is provided" />
        <expression value="reference.startsWith('#').not() or (reference.substring(1).trace('url') in %resource.contained.id.trace('ids'))" />
        <xpath value="not(starts-with(f:reference/@value, '#')) or exists(ancestor::*[self::f:entry or self::f:parameter]/f:resource/f:*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')]|/*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')])" />
        <source value="http://hl7.org/fhir/StructureDefinition/Reference" />
      </constraint>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="The target of a resource reference is a RIM entry point (Act, Role, or Entity)" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="Relationships established by OBX-4 usage" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value=".targetObservation" />
      </mapping>
    </element>
    <element id="Observation.component">
      <path value="Observation.component" />
      <short value="Not used in the current DigiDOT Observation draft" />
      <definition value="The current Central Storage draft represents one result per Observation. A multi-component dental index or assessment requires a governed component terminology and mapping model before Observation.component is reopened." />
      <comment value="For a discussion on the ways Observations can be assembled in groups together see [Notes](observation.html#notes) below." />
      <requirements value="Component observations share the same attributes in the Observation resource as the primary observation and are always treated a part of a single observation (they are not separable).   However, the reference range for the primary observation value is not inherited by the component values and is required when appropriate for each component observation." />
      <min value="0" />
      <max value="0" />
      <base>
        <path value="Observation.component" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="BackboneElement" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="containment by OBX-4?" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="outBoundRelationship[typeCode=COMP]" />
      </mapping>
    </element>
    <element id="Observation.component.id">
      <path value="Observation.component.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>
        <code>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-json-type">
            <valueString value="string" />
          </extension>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-xml-type">
            <valueString value="xsd:string" />
          </extension>
          <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-rdf-type">
            <valueString value="xsd:string" />
          </extension>
        </code>
      </type>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
    </element>
    <element id="Observation.component.extension">
      <path value="Observation.component.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>
      <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>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="N/A" />
      </mapping>
    </element>
    <element id="Observation.component.modifierExtension">
      <path value="Observation.component.modifierExtension" />
      <short value="Extensions that cannot be ignored even if unrecognized" />
      <definition value="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. 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. Applications processing a resource are required to check for modifier extensions.&#xA;&#xA;Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself)." />
      <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." />
      <requirements value="Modifier extensions allow for extensions that *cannot* be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored.  This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the [definition of modifier extensions](extensibility.html#modifierExtension)." />
      <alias value="extensions" />
      <alias value="user content" />
      <alias value="modifiers" />
      <min value="0" />
      <max value="*" />
      <base>
        <path value="BackboneElement.modifierExtension" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="Extension" />
      </type>
      <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="true" />
      <isModifierReason value="Modifier extensions are expected to modify the meaning or interpretation of the element that contains them" />
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="N/A" />
      </mapping>
    </element>
    <element id="Observation.component.code">
      <path value="Observation.component.code" />
      <short value="Type of component observation (code / type)" />
      <definition value="Describes what was observed. Sometimes this is called the observation &quot;code&quot;." />
      <comment value="*All* code-value and  component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation." />
      <requirements value="Knowing what kind of observation is being made is essential to understanding the observation." />
      <min value="1" />
      <max value="1" />
      <base>
        <path value="Observation.component.code" />
        <min value="1" />
        <max value="1" />
      </base>
      <type>
        <code value="CodeableConcept" />
      </type>
      <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>
      <isSummary value="true" />
      <binding>
        <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
          <valueString value="ObservationCode" />
        </extension>
        <strength value="example" />
        <description value="Codes identifying names of simple observations." />
        <valueSet value="http://hl7.org/fhir/ValueSet/observation-codes" />
      </binding>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="CE/CNE/CWE" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="CD" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:CodeableConcept rdfs:subClassOf dt:CD" />
      </mapping>
      <mapping>
        <identity value="w5" />
        <map value="FiveWs.what[x]" />
      </mapping>
      <mapping>
        <identity value="sct-concept" />
        <map value="&lt; 363787002 |Observable entity| OR &#xD;&lt; 386053000 |Evaluation procedure|" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="OBX-3" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="code" />
      </mapping>
    </element>
    <element id="Observation.component.value[x]">
      <path value="Observation.component.value[x]" />
      <short value="Actual component result" />
      <definition value="The information determined as a result of making the observation, if the information has a simple value." />
      <comment value="Used when observation has a set of component observations. An observation may have both a value (e.g. an  Apgar score)  and component observations (the observations from which the Apgar score was derived). If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value.  For additional guidance, see the [Notes section](observation.html#notes) below." />
      <requirements value="An observation exists to have a value, though it might not if it is in error, or if it represents a group of observations." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Observation.component.value[x]" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="Quantity" />
      </type>
      <type>
        <code value="CodeableConcept" />
      </type>
      <type>
        <code value="string" />
      </type>
      <type>
        <code value="boolean" />
      </type>
      <type>
        <code value="integer" />
      </type>
      <type>
        <code value="Range" />
      </type>
      <type>
        <code value="Ratio" />
      </type>
      <type>
        <code value="SampledData" />
      </type>
      <type>
        <code value="time" />
      </type>
      <type>
        <code value="dateTime" />
      </type>
      <type>
        <code value="Period" />
      </type>
      <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>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="sct-concept" />
        <map value="363714003 |Interprets| &lt; 441742003 |Evaluation finding|" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="OBX.2, OBX.5, OBX.6" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="value" />
      </mapping>
      <mapping>
        <identity value="sct-attr" />
        <map value="363714003 |Interprets|" />
      </mapping>
    </element>
    <element id="Observation.component.dataAbsentReason">
      <path value="Observation.component.dataAbsentReason" />
      <short value="Why the component result is missing" />
      <definition value="Provides a reason why the expected value in the element Observation.component.value[x] is missing." />
      <comment value="&quot;Null&quot; or exceptional values can be represented two ways in FHIR Observations.  One way is to simply include them in the value set and represent the exceptions in the value.  For example, measurement values for a serology test could be  &quot;detected&quot;, &quot;not detected&quot;, &quot;inconclusive&quot;, or  &quot;test not done&quot;. &#xA;&#xA;The alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values.  For example, the dataAbsentReason code &quot;error&quot; could be used when the measurement was not completed.  Because of these options, use-case agreements are required to interpret general observations for exceptional values." />
      <requirements value="For many results it is necessary to handle exceptional values in measurements." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Observation.component.dataAbsentReason" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="CodeableConcept" />
      </type>
      <condition value="ele-1" />
      <condition value="obs-6" />
      <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>
      <binding>
        <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
          <valueString value="ObservationValueAbsentReason" />
        </extension>
        <strength value="extensible" />
        <description value="Codes specifying why the result (`Observation.value[x]`) is missing." />
        <valueSet value="http://hl7.org/fhir/ValueSet/data-absent-reason" />
      </binding>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="CE/CNE/CWE" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="CD" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:CodeableConcept rdfs:subClassOf dt:CD" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="N/A" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="value.nullFlavor" />
      </mapping>
    </element>
    <element id="Observation.component.interpretation">
      <path value="Observation.component.interpretation" />
      <short value="High, low, normal, etc." />
      <definition value="A categorical assessment of an observation value.  For example, high, low, normal." />
      <comment value="Historically used for laboratory results (known as 'abnormal flag' ),  its use extends to other use cases where coded interpretations  are relevant.  Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result." />
      <requirements value="For some results, particularly numeric results, an interpretation is necessary to fully understand the significance of a result." />
      <alias value="Abnormal Flag" />
      <min value="0" />
      <max value="*" />
      <base>
        <path value="Observation.component.interpretation" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="CodeableConcept" />
      </type>
      <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>
      <binding>
        <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
          <valueString value="ObservationInterpretation" />
        </extension>
        <strength value="extensible" />
        <description value="Codes identifying interpretations of observations." />
        <valueSet value="http://hl7.org/fhir/ValueSet/observation-interpretation" />
      </binding>
      <mapping>
        <identity value="rim" />
        <map value="n/a" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="CE/CNE/CWE" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="CD" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:CodeableConcept rdfs:subClassOf dt:CD" />
      </mapping>
      <mapping>
        <identity value="sct-concept" />
        <map value="&lt; 260245000 |Findings values|" />
      </mapping>
      <mapping>
        <identity value="v2" />
        <map value="OBX-8" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="interpretationCode" />
      </mapping>
      <mapping>
        <identity value="sct-attr" />
        <map value="363713009 |Has interpretation|" />
      </mapping>
    </element>
    <element id="Observation.component.referenceRange">
      <path value="Observation.component.referenceRange" />
      <short value="Provides guide for interpretation of component result" />
      <definition value="Guidance on how to interpret the value by comparison to a normal or recommended range." />
      <comment value="Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties." />
      <requirements value="Knowing what values are considered &quot;normal&quot; can help evaluate the significance of a particular result. Need to be able to provide multiple reference ranges for different contexts." />
      <min value="0" />
      <max value="*" />
      <base>
        <path value="Observation.component.referenceRange" />
        <min value="0" />
        <max value="*" />
      </base>
      <contentReference value="#Observation.referenceRange" />
      <mapping>
        <identity value="v2" />
        <map value="OBX.7" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="outboundRelationship[typeCode=REFV]/target[classCode=OBS, moodCode=EVN]" />
      </mapping>
    </element>
  </snapshot>
  <differential>
    <element id="Observation">
      <path value="Observation" />
      <short value="Dental measurement, assessment result, patient-reported score or calculated indicator" />
      <constraint>
        <key value="obs-result-or-absent-reason" />
        <severity value="error" />
        <human value="A DigiDOT Observation must contain one result value or one standard data absent reason." />
        <expression value="value.exists() or dataAbsentReason.exists()" />
      </constraint>
      <constraint>
        <key value="observation-anatomy-same-release" />
        <severity value="error" />
        <human value="When bodySite is populated, SNOMED CT clinical codings use the same release as the inline anatomical value." />
        <expression value="bodySite.empty() or code.coding.where(system = 'http://snomed.info/sct').all(version = 'http://snomed.info/sct/51000202101/version/20260715')" />
      </constraint>
    </element>
    <element id="Observation.implicitRules">
      <path value="Observation.implicitRules" />
      <short value="Not used in the current DigiDOT Observation draft" />
      <definition value="The Central Storage representation follows the published DigiDOT profile and does not use resource-specific implicit rules." />
      <max value="0" />
    </element>
    <element id="Observation.contained">
      <path value="Observation.contained" />
      <short value="Not used in the current DigiDOT Observation draft" />
      <definition value="Central Storage uses independently identifiable and searchable resources. Supporting resources must be stored separately and referenced through an agreed profile relationship." />
      <max value="0" />
    </element>
    <element id="Observation.extension">
      <path value="Observation.extension" />
      <short value="Not used in the current DigiDOT Observation draft" />
      <definition value="No named and governed Observation extension is in scope. A future extension requires a documented use case and an explicit profile change." />
      <max value="0" />
    </element>
    <element id="Observation.modifierExtension">
      <path value="Observation.modifierExtension" />
      <short value="Not used in the current DigiDOT Observation draft" />
      <definition value="Modifier extensions can change the meaning of an Observation and require every consumer to understand them. No modifier extension is defined for the current DigiDOT scope." />
      <max value="0" />
    </element>
    <element id="Observation.identifier">
      <path value="Observation.identifier" />
      <short value="Stable source business identifiers when available" />
      <definition value="Stable business identifiers for this record. If the source EHR or external system has a stable business identifier, it SHALL be included and preserved with its assigning system and value. The element is optional when no such identifier is available. Each supplied identifier SHALL contain system and value. Do not copy the local FHIR resource id merely to populate this element." />
      <comment value="MustSupport requires producers to support conveying available source identifiers and receivers to support preserving them; it does not require inventing an identifier when none is available. Any additional identifier-assignment and matching requirements belong in the exchange contract. An integration-assigned identifier requires governed assignment and a persistent mapping across retries; never generate a fresh identifier on each submission. Different records retain their own identities, even when they share the same patient or care episode. Resource references and FHIR server id rules are unchanged." />
      <min value="0" />
      <max value="*" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.identifier.system">
      <path value="Observation.identifier.system" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Observation.identifier.value">
      <path value="Observation.identifier.value" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Observation.basedOn">
      <path value="Observation.basedOn" />
      <short value="Planned or requested service that this observation fulfils" />
      <definition value="Use basedOn when the observation fulfils a planned, proposed or requested dental service, examination or assessment. When known, reference DigiDOT ServiceRequest." />
      <type>
        <code value="Reference" />
        <targetProfile value="https://novari.no/fhir/digidot/StructureDefinition/digidot-ServiceRequest-no" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Observation.partOf">
      <path value="Observation.partOf" />
      <short value="Not used in the current DigiDOT Observation draft" />
      <definition value="Use Encounter for the dental contact and DiagnosticReport.result for an agreed imaging or diagnostic report relationship. No Observation.partOf relationship is currently modelled for Central Storage." />
      <max value="0" />
    </element>
    <element id="Observation.status">
      <path value="Observation.status" />
      <short value="Lifecycle status for the observation" />
      <definition value="Use final for a stable clinical result. Other valid FHIR Observation statuses remain available for preliminary, corrected, entered-in-error or migrated data when that lifecycle is known." />
      <min value="1" />
      <max value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.category">
      <path value="Observation.category" />
      <short value="Optional standard category marker for the observation" />
      <definition value="Use Observation.category as an optional standard marker for searching, sorting, display and comparison across systems. It is not the clinical observation code and does not replace Observation.code." />
      <min value="0" />
      <max value="1" />
      <binding>
        <strength value="required" />
        <description value="When Observation.category is included, use one code from the standard FHIR Observation category value set." />
        <valueSet value="http://terminology.hl7.org/ValueSet/observation-category" />
      </binding>
    </element>
    <element id="Observation.category.extension">
      <path value="Observation.category.extension" />
      <short value="No extensions on the observation category" />
      <definition value="The category is a single standard interoperable marker. Extensions on Observation.category are not used in the current DigiDOT draft." />
      <max value="0" />
    </element>
    <element id="Observation.category.coding">
      <path value="Observation.category.coding" />
      <short value="Standard FHIR Observation category coding" />
      <definition value="When Observation.category is populated, use exactly one coding from the standard FHIR Observation category code system." />
      <min value="1" />
      <max value="1" />
      <patternCoding>
        <system value="http://terminology.hl7.org/CodeSystem/observation-category" />
      </patternCoding>
    </element>
    <element id="Observation.code">
      <path value="Observation.code" />
      <short value="Observable entity" />
      <definition value="Record what was measured or assessed in the SNOMED CT Observable entity hierarchy. The result belongs in value[x], not in the clinical code. Include exactly one SCTextended coding and optionally one SCTpre coding. SCTextended carries the complete intended meaning as either a single precoordinated SNOMED CT concept or a postcoordinated expression. SCTpre is an optional, directly usable concept representing the same clinical meaning at the same or a compatible broader level of detail. Do not add a duplicate companion merely to fill a slot. When both are present they must use the same edition release and must not contradict each other; the extended coding may add compatible precision. Compatible meaning must be checked through the terminology contract, not inferred from code equality. When bodySite is present, the extended coding must represent the same complete anatomical scope. A precoordinated concept is sufficient if its defined meaning already represents that scope; otherwise use a valid refined SNOMED CT expression. Validate concept membership, compositional grammar, MRCM, clinical templates and anatomical equivalence with the terminology service; a FHIR syntax guard cannot establish these semantic requirements." />
      <min value="1" />
      <max value="1" />
      <constraint>
        <key value="digidot-coding-same-release" />
        <severity value="error" />
        <human value="When SCTpre is present, both clinical codings must use the same SNOMED CT edition release." />
        <expression value="coding.where(id = 'SCTpre').empty() or coding.where(id = 'SCTpre').version = coding.where(id = 'SCTextended').version" />
      </constraint>
      <mustSupport value="true" />
      <binding>
        <strength value="extensible" />
        <description value="Use the SNOMED CT Observable entity content of this ValueSet. Its local-code members do not override the SNOMED CT-only Coding profiles; local observations require a governed SNOMED CT mapping or a separately agreed representation." />
        <valueSet value="https://novari.no/fhir/digidot/ValueSet/digidot-observation-codes" />
      </binding>
    </element>
    <element id="Observation.code.extension">
      <path value="Observation.code.extension" />
      <short value="No extensions on the clinical observation code" />
      <definition value="Additional SNOMED CT precision is represented by the agreed SCTextended coding in Observation.code.coding. Extensions on Observation.code are not used in the current DigiDOT draft." />
      <max value="0" />
    </element>
    <element id="Observation.code.coding">
      <path value="Observation.code.coding" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="id" />
        </discriminator>
        <rules value="closed" />
      </slicing>
      <short value="One required extended coding and one optional precoordinated coding" />
      <definition value="Include exactly one SCTextended coding and optionally one SCTpre coding. SCTextended carries the complete intended meaning as either a single precoordinated SNOMED CT concept or a postcoordinated expression. SCTpre is an optional, directly usable concept representing the same clinical meaning at the same or a compatible broader level of detail. Do not add a duplicate companion merely to fill a slot. When both are present they must use the same edition release and must not contradict each other; the extended coding may add compatible precision. Compatible meaning must be checked through the terminology contract, not inferred from code equality. Fixed Coding.id values distinguish the roles because a numeric concept can conform to both datatype profiles." />
      <min value="1" />
      <max value="2" />
    </element>
    <element id="Observation.code.coding:SCTpre">
      <path value="Observation.code.coding" />
      <sliceName value="SCTpre" />
      <short value="Optional precoordinated SNOMED CT concept" />
      <definition value="Record what was measured or assessed in the SNOMED CT Observable entity hierarchy. The result belongs in value[x], not in the clinical code. Include exactly one SCTextended coding and optionally one SCTpre coding. SCTextended carries the complete intended meaning as either a single precoordinated SNOMED CT concept or a postcoordinated expression. SCTpre is an optional, directly usable concept representing the same clinical meaning at the same or a compatible broader level of detail. Do not add a duplicate companion merely to fill a slot. When both are present they must use the same edition release and must not contradict each other; the extended coding may add compatible precision. Compatible meaning must be checked through the terminology contract, not inferred from code equality. When bodySite is present, the extended coding must represent the same complete anatomical scope. A precoordinated concept is sufficient if its defined meaning already represents that scope; otherwise use a valid refined SNOMED CT expression. Validate concept membership, compositional grammar, MRCM, clinical templates and anatomical equivalence with the terminology service; a FHIR syntax guard cannot establish these semantic requirements." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Coding" />
        <profile value="https://novari.no/fhir/digidot/StructureDefinition/digidot-Coding-SCTpre-no" />
      </type>
      <mustSupport value="true" />
      <binding>
        <strength value="required" />
        <description value="Use the SNOMED CT Observable entity content of this ValueSet. Its local-code members do not override the SNOMED CT-only Coding profiles; local observations require a governed SNOMED CT mapping or a separately agreed representation." />
        <valueSet value="https://novari.no/fhir/digidot/ValueSet/digidot-observation-codes" />
      </binding>
    </element>
    <element id="Observation.code.coding:SCTpre.id">
      <path value="Observation.code.coding.id" />
      <short value="SCTpre slot identifier" />
      <definition value="Required technical slot identifier. It distinguishes the two roles even when their system, version and code are identical." />
      <min value="1" />
      <fixedString value="SCTpre" />
    </element>
    <element id="Observation.code.coding:SCTextended">
      <path value="Observation.code.coding" />
      <sliceName value="SCTextended" />
      <short value="Required extended SNOMED CT code: concept or expression" />
      <definition value="Record what was measured or assessed in the SNOMED CT Observable entity hierarchy. The result belongs in value[x], not in the clinical code. Include exactly one SCTextended coding and optionally one SCTpre coding. SCTextended carries the complete intended meaning as either a single precoordinated SNOMED CT concept or a postcoordinated expression. SCTpre is an optional, directly usable concept representing the same clinical meaning at the same or a compatible broader level of detail. Do not add a duplicate companion merely to fill a slot. When both are present they must use the same edition release and must not contradict each other; the extended coding may add compatible precision. Compatible meaning must be checked through the terminology contract, not inferred from code equality. When bodySite is present, the extended coding must represent the same complete anatomical scope. A precoordinated concept is sufficient if its defined meaning already represents that scope; otherwise use a valid refined SNOMED CT expression. Validate concept membership, compositional grammar, MRCM, clinical templates and anatomical equivalence with the terminology service; a FHIR syntax guard cannot establish these semantic requirements." />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Coding" />
        <profile value="https://novari.no/fhir/digidot/StructureDefinition/digidot-Coding-SCTpost-no" />
      </type>
      <mustSupport value="true" />
      <binding>
        <strength value="required" />
        <description value="Use the SNOMED CT Observable entity content of this ValueSet. Its local-code members do not override the SNOMED CT-only Coding profiles; local observations require a governed SNOMED CT mapping or a separately agreed representation." />
        <valueSet value="https://novari.no/fhir/digidot/ValueSet/digidot-observation-codes" />
      </binding>
    </element>
    <element id="Observation.code.coding:SCTextended.id">
      <path value="Observation.code.coding.id" />
      <short value="SCTextended slot identifier" />
      <definition value="Required technical slot identifier. It distinguishes the two roles even when their system, version and code are identical." />
      <min value="1" />
      <fixedString value="SCTextended" />
    </element>
    <element id="Observation.subject">
      <path value="Observation.subject" />
      <short value="Patient the observation belongs to" />
      <definition value="Reference the no-basis Patient that owns the dental observation. External data must be mapped to this agreed patient representation before it becomes a canonical DigiDOT Observation in Central Storage." />
      <min value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.no/fhir/StructureDefinition/no-basis-Patient" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Observation.focus">
      <path value="Observation.focus" />
      <short value="Not used in the current DigiDOT Observation draft" />
      <definition value="Condition.evidence.detail is the authoritative explicit relationship from a clinical condition to its supporting Observation. Observation.bodySite references the patient-specific DigiDOT Dental BodyStructure when anatomy is known. Observation.focus is not used as an alternative link to Condition or BodyStructure." />
      <max value="0" />
    </element>
    <element id="Observation.encounter">
      <path value="Observation.encounter" />
      <short value="Encounter where the observation was made" />
      <definition value="Reference the DigiDOT Encounter during which the observation was measured, assessed or reported. Location and organisation context are resolved through the Encounter." />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://novari.no/fhir/digidot/StructureDefinition/digidot-Encounter-no" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Observation.effective[x]">
      <path value="Observation.effective[x]" />
      <short value="Time when the observed value was true" />
      <definition value="Use effectiveDateTime for the clinically relevant time of a simple dental observation. This is normally when it was measured, assessed or reported, and may differ from when the record was created or imported." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="dateTime" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Observation.issued">
      <path value="Observation.issued" />
      <short value="Not used in the current DigiDOT Observation draft" />
      <definition value="Use Observation.effectiveDateTime for the clinically relevant time. Source import, publication and record-history times are handled by resource metadata and Provenance rather than Observation.issued." />
      <max value="0" />
    </element>
    <element id="Observation.performer">
      <path value="Observation.performer" />
      <short value="Person responsible for the observation" />
      <definition value="Who was responsible for asserting the observed value as &quot;true&quot;." />
      <comment value="Practitioner targets conform to no-basis-Practitioner. Use the standard FHIR R4 Reference datatype; literal and logical references are permitted. Reference.reference, type, identifier and display retain their base cardinalities. A targetProfile constraint does not itself require a literal reference or select an identifier system. Other explicitly permitted target types retain their own clinical responsibility." />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.no/fhir/StructureDefinition/no-basis-Practitioner" />
        <targetProfile value="http://hl7.no/fhir/StructureDefinition/no-basis-Patient" />
        <targetProfile value="http://hl7.no/fhir/StructureDefinition/no-basis-RelatedPerson" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Observation.value[x]">
      <path value="Observation.value[x]" />
      <slicing>
        <discriminator>
          <type value="type" />
          <path value="$this" />
        </discriminator>
        <rules value="closed" />
      </slicing>
      <short value="Result value" />
      <definition value="The single result of the observation. Use valueQuantity for a measured quantity, valueCodeableConcept for a coded categorical result, valueInteger for a score or calculated count, valueBoolean for a true/false result, and valueString only when no structured result can faithfully represent the source content. Do not use valueString to repeat structured codes, anatomy, status or method. When no result is available, use dataAbsentReason instead of leaving both elements empty." />
      <min value="0" />
      <max value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.value[x]:valueBoolean">
      <path value="Observation.value[x]" />
      <sliceName value="valueBoolean" />
      <short value="True or false result" />
      <definition value="Use valueBoolean for a clinically meaningful true/false result. Do not use it for a coded category with more than two possible results." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="boolean" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Observation.value[x]:valueInteger">
      <path value="Observation.value[x]" />
      <sliceName value="valueInteger" />
      <short value="Whole-number score or count" />
      <definition value="Use valueInteger for a discrete score, count or calculated index with no physical unit, such as DMFT or DMFS. Use valueQuantity when a unit of measure is required." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="integer" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Observation.value[x]:valueString">
      <path value="Observation.value[x]" />
      <sliceName value="valueString" />
      <short value="Source result without a faithful structured representation" />
      <definition value="Use valueString only when the source result cannot faithfully be represented as a quantity, coded result, integer or Boolean. It is a controlled fallback, not a default result type. Record a mapping gap when the same unstructured result recurs and needs a governed representation." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="string" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Observation.value[x]:valueCodeableConcept">
      <path value="Observation.value[x]" />
      <sliceName value="valueCodeableConcept" />
      <short value="Coded categorical result" />
      <definition value="Use valueCodeableConcept for a categorical result that has a faithful code. The applicable code system and ValueSet depend on Observation.code. This field remains open for agreed SNOMED CT, national and other governed code systems; it is not restricted to one generic result ValueSet." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="CodeableConcept" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Observation.value[x]:valueCodeableConcept.extension">
      <path value="Observation.value[x].extension" />
      <short value="No extensions on the coded result" />
      <definition value="The coded result is represented by its coding and optional source text. Extensions are not used in the current DigiDOT draft." />
      <max value="0" />
    </element>
    <element id="Observation.value[x]:valueCodeableConcept.coding">
      <path value="Observation.value[x].coding" />
      <short value="Coded observation result" />
      <definition value="When valueCodeableConcept is used, record at least one coded result. Use the code system and ValueSet that are appropriate for Observation.code; text may supplement but must not be the only result representation. When a coding uses SNOMED CT, it must be a direct precoordinated concept with the selected SNOMED CT edition release." />
      <min value="1" />
      <constraint>
        <key value="obs-result-snomed-pre" />
        <severity value="error" />
        <human value="A SNOMED CT coded result must use a direct numeric concept identifier and state the SNOMED CT edition release." />
        <expression value="system != 'http://snomed.info/sct' or (version.exists() and code.matches('^[0-9]{6,18}$'))" />
      </constraint>
    </element>
    <element id="Observation.value[x]:valueCodeableConcept.coding.extension">
      <path value="Observation.value[x].coding.extension" />
      <short value="No extensions on the coded result coding" />
      <definition value="A coded result uses the agreed code system directly. Extensions on the coding are not used in the current DigiDOT draft." />
      <max value="0" />
    </element>
    <element id="Observation.value[x]:valueCodeableConcept.coding.system">
      <path value="Observation.value[x].coding.system" />
      <short value="Code system for the coded result" />
      <min value="1" />
    </element>
    <element id="Observation.value[x]:valueCodeableConcept.coding.code">
      <path value="Observation.value[x].coding.code" />
      <short value="Code for the coded result" />
      <min value="1" />
    </element>
    <element id="Observation.value[x]:valueCodeableConcept.coding.userSelected">
      <path value="Observation.value[x].coding.userSelected" />
      <short value="Not used for the coded result" />
      <definition value="The code is the agreed exchange representation. userSelected is not used in the current DigiDOT draft." />
      <max value="0" />
    </element>
    <element id="Observation.value[x]:valueCodeableConcept.text">
      <path value="Observation.value[x].text" />
      <short value="Supplementary source display text" />
      <definition value="Text may preserve a useful source display, but it does not replace the required coding and must not introduce a different clinical result." />
    </element>
    <element id="Observation.value[x]:valueQuantity">
      <path value="Observation.value[x]" />
      <sliceName value="valueQuantity" />
      <short value="Measured quantity" />
      <definition value="Use valueQuantity for a numeric observation with a physical unit. The value, UCUM system and UCUM code are required." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Quantity" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Observation.value[x]:valueQuantity.extension">
      <path value="Observation.value[x].extension" />
      <short value="No extensions on the measured quantity" />
      <definition value="The measured quantity is represented by the standard Quantity fields. Extensions are not used in the current DigiDOT draft." />
      <max value="0" />
    </element>
    <element id="Observation.value[x]:valueQuantity.value">
      <path value="Observation.value[x].value" />
      <short value="Measured value" />
      <min value="1" />
    </element>
    <element id="Observation.value[x]:valueQuantity.comparator">
      <path value="Observation.value[x].comparator" />
      <short value="Measurement comparator when recorded" />
      <definition value="Use the comparator only when it is part of the source measurement meaning, such as less than or greater than a stated value. Do not use it as a replacement for a coded qualitative result." />
    </element>
    <element id="Observation.value[x]:valueQuantity.unit">
      <path value="Observation.value[x].unit" />
      <short value="Human-readable UCUM unit display" />
      <definition value="Populate unit when the source provides a human-readable display. UCUM system and code remain the authoritative machine-readable unit representation." />
    </element>
    <element id="Observation.value[x]:valueQuantity.system">
      <path value="Observation.value[x].system" />
      <short value="UCUM unit system" />
      <min value="1" />
      <fixedUri value="http://unitsofmeasure.org" />
    </element>
    <element id="Observation.value[x]:valueQuantity.code">
      <path value="Observation.value[x].code" />
      <short value="UCUM unit code" />
      <min value="1" />
    </element>
    <element id="Observation.dataAbsentReason">
      <path value="Observation.dataAbsentReason" />
      <short value="Reason a simple result is absent" />
      <definition value="Use the standard FHIR data-absent-reason coding when an expected simple result is unavailable. Do not use it together with Observation.value[x]. This distinguishes an unavailable result from an omitted value." />
      <min value="0" />
      <max value="1" />
      <mustSupport value="true" />
      <binding>
        <strength value="required" />
        <description value="Use one standard FHIR data absent reason code." />
        <valueSet value="http://hl7.org/fhir/ValueSet/data-absent-reason" />
      </binding>
    </element>
    <element id="Observation.dataAbsentReason.extension">
      <path value="Observation.dataAbsentReason.extension" />
      <short value="No extensions on the absent-result reason" />
      <definition value="The absent-result reason is represented by one standard FHIR code. Extensions on Observation.dataAbsentReason are not used in the current DigiDOT draft." />
      <max value="0" />
    </element>
    <element id="Observation.dataAbsentReason.coding">
      <path value="Observation.dataAbsentReason.coding" />
      <short value="Coded reason the result is absent" />
      <definition value="When dataAbsentReason is used, record exactly one standard FHIR data absent reason code." />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Observation.dataAbsentReason.coding.extension">
      <path value="Observation.dataAbsentReason.coding.extension" />
      <short value="No extensions on the absent-result coding" />
      <definition value="The absent-result coding uses the standard FHIR code system directly. Extensions on the coding are not used in the current DigiDOT draft." />
      <max value="0" />
    </element>
    <element id="Observation.dataAbsentReason.coding.system">
      <path value="Observation.dataAbsentReason.coding.system" />
      <short value="Code system for the absent-result reason" />
      <min value="1" />
      <fixedUri value="http://terminology.hl7.org/CodeSystem/data-absent-reason" />
    </element>
    <element id="Observation.dataAbsentReason.coding.code">
      <path value="Observation.dataAbsentReason.coding.code" />
      <short value="Code for the absent-result reason" />
      <min value="1" />
    </element>
    <element id="Observation.dataAbsentReason.coding.userSelected">
      <path value="Observation.dataAbsentReason.coding.userSelected" />
      <short value="Not used for the absent-result reason" />
      <definition value="The standard absent-result reason is the agreed exchange code. userSelected is not used in the current DigiDOT draft." />
      <max value="0" />
    </element>
    <element id="Observation.dataAbsentReason.text">
      <path value="Observation.dataAbsentReason.text" />
      <short value="No free text for the absent-result reason" />
      <definition value="Use the standard coded reason. Free text is not used as a second absent-result representation." />
      <max value="0" />
    </element>
    <element id="Observation.interpretation">
      <path value="Observation.interpretation" />
      <short value="Not used in the current DigiDOT Observation draft" />
      <definition value="No governed dental interpretation terminology or cross-system mapping is agreed. Record a coded clinical result in valueCodeableConcept when that is the observation result; use a Condition for a clinically significant finding or diagnosis." />
      <min value="0" />
      <max value="0" />
    </element>
    <element id="Observation.note">
      <path value="Observation.note" />
      <min value="0" />
      <max value="*" />
    </element>
    <element id="Observation.note.author[x]">
      <path value="Observation.note.author[x]" />
      <definition value="The individual responsible for making the annotation." />
      <comment value="Practitioner targets conform to no-basis-Practitioner. Use the standard FHIR R4 Reference datatype; literal and logical references are permitted. Reference.reference, type, identifier and display retain their base cardinalities. A targetProfile constraint does not itself require a literal reference or select an identifier system. Other explicitly permitted target types retain their own clinical responsibility." />
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.no/fhir/StructureDefinition/no-basis-Practitioner" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Patient" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/RelatedPerson" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Organization" />
      </type>
      <type>
        <code value="string" />
      </type>
    </element>
    <element id="Observation.bodySite">
      <path value="Observation.bodySite" />
      <short value="Inline Xt-EHR anatomy group" />
      <definition value="One inline anatomical group in the shared DentalBodySite format: a complex extension containing location, repeated locationQualifier, laterality, morphology and description, matching the Xt-EHR logical field model. No independent BodyStructure resource is required. Clinical coding and dental workflow rules apply separately." />
      <comment value="The two inline qualifier extensions are explicitly defined DigiDOT R4 extensions. The FHIR structure stays directly coded; shared terminology tooling composes and compares the SCTextended anatomy. See DentalBodySite-use for the supplier contract." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="CodeableConcept" />
        <profile value="https://novari.no/fhir/digidot/StructureDefinition/digidot-DentalBodySite-no" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Observation.method">
      <path value="Observation.method" />
      <short value="How the observation was made or calculated" />
      <definition value="Use method only when it adds information that is not already implicit in Observation.code. If the source records a clinically relevant method, it shall be populated. Prefer an agreed SNOMED CT or national code where available. The small DigiDOT method ValueSet is a local draft aid, not a national terminology decision." />
      <min value="0" />
      <max value="1" />
      <mustSupport value="true" />
      <binding>
        <strength value="preferred" />
        <description value="The DigiDOT method ValueSet is a preferred local draft list. Use an agreed SNOMED CT or national method code when available." />
        <valueSet value="https://novari.no/fhir/digidot/ValueSet/digidot-observation-method" />
      </binding>
    </element>
    <element id="Observation.method.extension">
      <path value="Observation.method.extension" />
      <short value="No extensions on the observation method" />
      <definition value="Method is represented by its coded value. Extensions on Observation.method are not used in the current DigiDOT draft." />
      <max value="0" />
    </element>
    <element id="Observation.method.coding">
      <path value="Observation.method.coding" />
      <short value="Coded observation method" />
      <definition value="When Observation.method is populated, use exactly one coded method. The code can come from the DigiDOT method ValueSet, SNOMED CT or another agreed national code system." />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Observation.method.coding.extension">
      <path value="Observation.method.coding.extension" />
      <short value="No extensions on the observation method coding" />
      <definition value="The observation method is represented by one agreed coding. Extensions on Observation.method.coding are not used in the current DigiDOT draft." />
      <max value="0" />
    </element>
    <element id="Observation.method.coding.system">
      <path value="Observation.method.coding.system" />
      <short value="Code system for the observation method" />
      <min value="1" />
    </element>
    <element id="Observation.method.coding.code">
      <path value="Observation.method.coding.code" />
      <short value="Code for the observation method" />
      <min value="1" />
    </element>
    <element id="Observation.method.coding.userSelected">
      <path value="Observation.method.coding.userSelected" />
      <short value="Not used for the observation method" />
      <definition value="The coded method is the agreed exchange representation. userSelected is not used in the current DigiDOT draft." />
      <max value="0" />
    </element>
    <element id="Observation.method.text">
      <path value="Observation.method.text" />
      <short value="No free text method" />
      <definition value="Use the coded method. Free text is not used as a second method representation." />
      <max value="0" />
    </element>
    <element id="Observation.specimen">
      <path value="Observation.specimen" />
      <short value="Not used in the current DigiDOT Observation draft" />
      <definition value="Specimen-based laboratory observations require a separate agreed model and are outside the current dental Observation scope." />
      <max value="0" />
    </element>
    <element id="Observation.device">
      <path value="Observation.device" />
      <short value="Not used in the current DigiDOT Observation draft" />
      <definition value="The current profile does not model device-generated measurements. Imaging and device context must use their own agreed resources and relationships." />
      <max value="0" />
    </element>
    <element id="Observation.referenceRange">
      <path value="Observation.referenceRange" />
      <short value="Not used in the current DigiDOT Observation draft" />
      <definition value="No dental reference-range terminology or cross-system calculation model is agreed for the current scope." />
      <max value="0" />
    </element>
    <element id="Observation.hasMember">
      <path value="Observation.hasMember" />
      <short value="Not used in the current DigiDOT Observation draft" />
      <definition value="Use separate DigiDOT Observation resources when results need separate codes, anatomy, times or lifecycle states. Grouping and questionnaire modelling require separate agreed profiles." />
      <max value="0" />
    </element>
    <element id="Observation.derivedFrom">
      <path value="Observation.derivedFrom" />
      <short value="Not used in the current DigiDOT Observation draft" />
      <definition value="No governed target profiles and source-document relationship model are agreed for Observation.derivedFrom. Imaging, document and questionnaire relationships are deferred to their dedicated resources and profiles." />
      <max value="0" />
    </element>
    <element id="Observation.component">
      <path value="Observation.component" />
      <short value="Not used in the current DigiDOT Observation draft" />
      <definition value="The current Central Storage draft represents one result per Observation. A multi-component dental index or assessment requires a governed component terminology and mapping model before Observation.component is reopened." />
      <max value="0" />
    </element>
  </differential>
</StructureDefinition>