<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="digidot-Condition-no" />
  <url value="https://novari.no/fhir/digidot/StructureDefinition/digidot-Condition-no" />
  <version value="0.7.0" />
  <name value="DigidotConditionNo" />
  <title value="DigiDot Condition (NO)" />
  <status value="draft" />
  <date value="2026-11-03" />
  <publisher value="Novari AS - DigiDOT" />
  <description value="Readiness: [In review](https://simplifier.net/guide/Visual-overview/Home/Review-status-and-releases.page.md?version=current#readiness-condition).&#xA;&#xA;Profile base: FHIR R4 Condition (http://hl7.org/fhir/StructureDefinition/Condition).&#xA;&#xA;Represents a clinically significant dental finding, diagnosis or problem, such as dental caries or periodontitis. Use it to record what has been identified, its clinical status and diagnostic certainty, and the affected tooth or oral site. Link it to the patient contact where it was recorded. The condition can be followed over time and referenced when planning or documenting treatment." />
  <purpose value="Use this profile when a dental clinician records or exchanges a clinically significant dental condition that should be assessed, tracked, managed or used as a reason for planned or performed care. Every Condition references the Encounter where it was asserted or recorded. When anatomy is known, Condition.bodySite carries one complete inline anatomical value for each tooth or oral structure. When the resource represents an external assertion retained in Central Storage, preserve source responsibility, provenance and freshness. Generate structured anatomy and extended clinical meaning from the same clinical input and validate equal anatomical scope." />
  <fhirVersion value="4.0.1" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="Condition" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Condition" />
  <derivation value="constraint" />
  <differential>
    <element id="Condition">
      <path value="Condition" />
      <short value="Clinically significant dental finding, diagnosis, problem or condition" />
      <constraint>
        <key value="cond-clinical-status-or-entered-error" />
        <severity value="error" />
        <human value="A clinical status is required unless verificationStatus is entered-in-error." />
        <expression value="clinicalStatus.exists() or verificationStatus.coding.where(system = 'http://terminology.hl7.org/CodeSystem/condition-ver-status' and code = 'entered-in-error').exists()" />
      </constraint>
      <constraint>
        <key value="condition-anatomy-same-release" />
        <severity value="error" />
        <human value="When bodySite is populated, clinical SNOMED CT codings use the pinned Norwegian draft release 20260715. Anatomical Coding.version equality is checked separately." />
        <expression value="bodySite.empty() or code.coding.where(system = 'http://snomed.info/sct').all(version = 'http://snomed.info/sct/51000202101/version/20260715')" />
      </constraint>
      <constraint>
        <key value="condition-anatomy-version-match" />
        <severity value="error" />
        <human value="Every SNOMED CT anatomical coding in the inline body-structure extension must state the same edition release as SCTextended." />
        <expression value="bodySite.extension.where(url = 'https://novari.no/fhir/digidot/StructureDefinition/digidot-ehds-body-structure').extension.value.ofType(CodeableConcept).coding.where(system = 'http://snomed.info/sct').all(version.exists() and version = %resource.code.coding.where(id = 'SCTextended').version)" />
      </constraint>
    </element>
    <element id="Condition.implicitRules">
      <path value="Condition.implicitRules" />
      <max value="0" />
    </element>
    <element id="Condition.contained">
      <path value="Condition.contained" />
      <max value="0" />
    </element>
    <element id="Condition.extension">
      <path value="Condition.extension" />
      <max value="0" />
    </element>
    <element id="Condition.modifierExtension">
      <path value="Condition.modifierExtension" />
      <max value="0" />
    </element>
    <element id="Condition.identifier">
      <path value="Condition.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="Condition.identifier.system">
      <path value="Condition.identifier.system" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Condition.identifier.value">
      <path value="Condition.identifier.value" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Condition.clinicalStatus">
      <path value="Condition.clinicalStatus" />
      <short value="Authoritative lifecycle status for the dental condition" />
      <definition value="Use clinicalStatus as the authoritative FHIR lifecycle status for the condition. It is required unless verificationStatus is entered-in-error; in that case it must be absent in accordance with inherited FHIR R4 con-5. A SNOMED CT expression must not contradict the lifecycle represented here." />
      <min value="0" />
      <max value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Condition.verificationStatus">
      <path value="Condition.verificationStatus" />
      <short value="Verification status for the finding or diagnosis" />
      <definition value="Use verificationStatus to distinguish confirmed dental findings from provisional, differential, refuted or entered-in-error records. If verificationStatus is entered-in-error, clinicalStatus is absent in accordance with FHIR R4. If the source records verification status, it shall be populated." />
      <min value="0" />
      <max value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Condition.category">
      <path value="Condition.category" />
      <short value="Optional workflow categories and dental marker from published HL7 code systems" />
      <definition value="Use the FHIR R4 categories problem-list-item and encounter-diagnosis according to the source workflow. The optional dental code from HL7 Dental Data Exchange marks a condition as dental in nature. Represent different classifications as separate category entries. Absence of the dental marker does not establish that a condition is non-dental. The clinical finding or diagnosis remains in Condition.code." />
      <comment value="Sources: https://hl7.org/fhir/R4/valueset-condition-category.html and https://hl7.org/fhir/us/dental-data-exchange/STU1/CodeSystem-dental-category.html. Dental Data Exchange STU1 is a published US implementation guide; its Dental Category CodeSystem has draft status. Reusing its code does not assert US Core or EHDS conformance." />
      <min value="0" />
      <max value="*" />
      <binding>
        <strength value="required" />
        <description value="Each supplied category must use a code selected from the published FHIR R4 Condition category or HL7 Dental Data Exchange code systems. The category field itself remains optional; the dental marker is not mandatory." />
        <valueSet value="https://novari.no/fhir/digidot/ValueSet/digidot-condition-category" />
      </binding>
    </element>
    <element id="Condition.category.extension">
      <path value="Condition.category.extension" />
      <max value="0" />
    </element>
    <element id="Condition.category.coding">
      <path value="Condition.category.coding" />
      <short value="Published HL7 category coding" />
      <definition value="Use one coding from the bound ValueSet for each category entry. Do not use the retired DigiDOT dental-finding code or the demonstrator example.org code system." />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Condition.severity">
      <path value="Condition.severity" />
      <short value="Not used in the current DigiDOT Condition draft" />
      <definition value="No governed dental severity terminology or cross-system mapping is agreed for this field. Additional clinical precision may be represented in the validated postcoordinated SNOMED CT expression. Reopen this element only with an agreed terminology and implementation rule." />
      <max value="0" />
    </element>
    <element id="Condition.code">
      <path value="Condition.code" />
      <short value="Dental finding, diagnosis or condition" />
      <definition value="Record a clinically significant dental finding, diagnosis or problem in the SNOMED CT Clinical finding hierarchy. Do not use Situation wrappers. Clinical and verification statuses remain authoritative. 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. Prefer a valid postcoordinated expression when additional clinical or anatomical detail needs to be represented. A single precoordinated concept is sufficient if its defined meaning already represents the complete intended scope. 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="preferred" />
        <description value="Prefer a suitable concept from the national dental findings core, either directly or as the focus of a postcoordinated expression. If it does not cover the intended meaning, use another suitable concept within the Clinical finding hierarchy. Validate the complete coding against the required binding on its slice. No additional SCTpre coding is required to satisfy this preferred selection." />
        <valueSet value="https://novari.no/fhir/digidot/ValueSet/snomed-clinical-findings" />
      </binding>
    </element>
    <element id="Condition.code.extension">
      <path value="Condition.code.extension" />
      <max value="0" />
    </element>
    <element id="Condition.code.coding">
      <path value="Condition.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="Condition.code.coding:SCTpre">
      <path value="Condition.code.coding" />
      <sliceName value="SCTpre" />
      <short value="Optional precoordinated SNOMED CT concept" />
      <definition value="Optional single numeric SNOMED CT concept in the Clinical finding hierarchy, compatible with the complete meaning in SCTextended. The SCTpre datatype prohibits postcoordinated expressions. Both codings must use the same edition release. Follow the core-selection guidance on Condition.code." />
      <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="Required Clinical finding scope, restricted here to a single concept by the SCTpre datatype. Postcoordinated expressions are not permitted in this slice." />
        <valueSet value="http://hl7.org/fhir/ValueSet/clinical-findings" />
      </binding>
    </element>
    <element id="Condition.code.coding:SCTpre.id">
      <path value="Condition.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="Condition.code.coding:SCTextended">
      <path value="Condition.code.coding" />
      <sliceName value="SCTextended" />
      <short value="Required extended SNOMED CT code: concept or expression" />
      <definition value="The complete clinical meaning as one sufficiently specific SNOMED CT concept or a valid postcoordinated expression. Prefer a suitable national core concept as the focus; another suitable focus is allowed when the core does not cover the meaning. The complete expression must satisfy the Clinical finding hierarchy binding, not membership of the core refset. Follow the meaning and anatomy rules on Condition.code. Do not add an identical or broader SCTpre coding solely to match the core list." />
      <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="Required Clinical finding scope for the complete coding. Single concepts and postcoordinated expressions are permitted. Validate the entire value, not only its focus concept, against this ValueSet using the stated SNOMED edition and release. Expression syntax and concept-model rules also require terminology validation." />
        <valueSet value="http://hl7.org/fhir/ValueSet/clinical-findings" />
      </binding>
    </element>
    <element id="Condition.code.coding:SCTextended.id">
      <path value="Condition.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="Condition.bodySite">
      <path value="Condition.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="Use the current DentalBodySite complex body-structure extension. This draft pins clinical SNOMED CT coding to Norwegian release 20260715 when bodySite is supplied, and separately checks all supplied SNOMED anatomical Coding.version values against SCTextended. This release baseline must be revised deliberately when terminology is upgraded. Version equality does not establish clinical or anatomical semantic equivalence." />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="CodeableConcept" />
        <profile value="https://novari.no/fhir/digidot/StructureDefinition/digidot-DentalBodySite-no" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Condition.subject">
      <path value="Condition.subject" />
      <short value="Patient with the dental condition" />
      <definition value="Reference the no-basis Patient who has the dental condition. External patient information must be mapped to the agreed patient representation before it is stored as a canonical DigiDOT Condition." />
      <comment value="Use a literal Reference.reference to a separately stored resource conforming to the permitted national target profile. Identifier-only and contained references are not permitted. Official identifiers belong on the target resource. Reuse a confirmed resource in central storage; if no matching resource exists, register it before persisting the clinical reference. The receiving service must check target existence and profile conformance; the profile alone does not perform identity matching or prove that a resource exists in central storage." />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.no/fhir/StructureDefinition/no-basis-Patient" />
      </type>
      <constraint>
        <key value="condition-subject-literal" />
        <severity value="error" />
        <human value="A shared-resource reference must contain a literal reference value; identifiers and contained references are not permitted." />
        <expression value="($this is Reference) implies (reference.hasValue() and identifier.empty() and reference.startsWith('#').not())" />
        <source value="https://novari.no/fhir/digidot/StructureDefinition/digidot-Condition-no" />
      </constraint>
      <mustSupport value="true" />
    </element>
    <element id="Condition.subject.reference">
      <path value="Condition.subject.reference" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Condition.subject.identifier">
      <path value="Condition.subject.identifier" />
      <min value="0" />
      <max value="0" />
    </element>
    <element id="Condition.encounter">
      <path value="Condition.encounter" />
      <short value="Encounter where the condition was asserted or recorded" />
      <definition value="Reference the DigiDOT Encounter in which the dental finding, diagnosis or condition was asserted or recorded. Location and organisation context are resolved through the Encounter. Data without an identifiable clinical contact must be mapped to an agreed source Encounter before it can conform to this profile." />
      <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="Condition.onset[x]">
      <path value="Condition.onset[x]" />
      <short value="Onset or finding time" />
      <definition value="Use onset[x] for the known, estimated or patient-reported onset of the condition. This is not necessarily the same as the time it was recorded by the dental service. If the source records onset or finding time, it shall be populated without inventing a more precise date or time." />
      <min value="0" />
      <mustSupport value="true" />
    </element>
    <element id="Condition.abatement[x]">
      <path value="Condition.abatement[x]" />
      <short value="Time or period when the condition abated" />
      <definition value="Use abatement[x] when the condition is inactive, in remission or resolved and the source records when that state was reached. If the source records abatement, it shall be populated. The value must remain consistent with clinicalStatus according to the base FHIR R4 Condition rules." />
      <min value="0" />
      <mustSupport value="true" />
    </element>
    <element id="Condition.recordedDate">
      <path value="Condition.recordedDate" />
      <short value="Date the condition was first recorded" />
      <definition value="Use recordedDate for the date and time this Condition record was first entered or received by the responsible system. Preserve external source provenance separately when the condition originates outside the dental service. If the source records the date, it shall be populated." />
      <min value="0" />
      <max value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Condition.recorder">
      <path value="Condition.recorder" />
      <short value="Practitioner who recorded the condition" />
      <definition value="Individual who recorded the record and takes responsibility for its content." />
      <comment value="Use a literal Reference.reference to a separately stored resource conforming to the permitted national target profile. Identifier-only and contained references are not permitted. Official identifiers belong on the target resource. Reuse a confirmed resource in central storage; if no matching resource exists, register it before persisting the clinical reference. The receiving service must check target existence and profile conformance; the profile alone does not perform identity matching or prove that a resource exists in central storage." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.no/fhir/StructureDefinition/no-basis-Practitioner" />
      </type>
      <constraint>
        <key value="condition-recorder-literal" />
        <severity value="error" />
        <human value="A shared-resource reference must contain a literal reference value; identifiers and contained references are not permitted." />
        <expression value="($this is Reference) implies (reference.hasValue() and identifier.empty() and reference.startsWith('#').not())" />
        <source value="https://novari.no/fhir/digidot/StructureDefinition/digidot-Condition-no" />
      </constraint>
      <mustSupport value="true" />
    </element>
    <element id="Condition.recorder.extension">
      <path value="Condition.recorder.extension" />
      <definition value="No additional Reference extension is part of this Condition contract. Use the standard reference, type, identifier and display fields as permitted by the reference contract." />
      <min value="0" />
      <max value="0" />
    </element>
    <element id="Condition.recorder.reference">
      <path value="Condition.recorder.reference" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Condition.recorder.identifier">
      <path value="Condition.recorder.identifier" />
      <min value="0" />
      <max value="0" />
    </element>
    <element id="Condition.asserter">
      <path value="Condition.asserter" />
      <short value="Patient or practitioner who clinically asserts the condition" />
      <definition value="Individual who is making the condition statement." />
      <comment value="Use a literal Reference.reference to a separately stored resource conforming to the permitted national target profile. Identifier-only and contained references are not permitted. Official identifiers belong on the target resource. Reuse a confirmed resource in central storage; if no matching resource exists, register it before persisting the clinical reference. The receiving service must check target existence and profile conformance; the profile alone does not perform identity matching or prove that a resource exists in central storage." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.no/fhir/StructureDefinition/no-basis-Practitioner" />
        <targetProfile value="http://hl7.no/fhir/StructureDefinition/no-basis-Patient" />
      </type>
      <constraint>
        <key value="condition-asserter-literal" />
        <severity value="error" />
        <human value="A shared-resource reference must contain a literal reference value; identifiers and contained references are not permitted." />
        <expression value="($this is Reference) implies (reference.hasValue() and identifier.empty() and reference.startsWith('#').not())" />
        <source value="https://novari.no/fhir/digidot/StructureDefinition/digidot-Condition-no" />
      </constraint>
      <mustSupport value="true" />
    </element>
    <element id="Condition.asserter.extension">
      <path value="Condition.asserter.extension" />
      <definition value="No additional Reference extension is part of this Condition contract. Use the standard reference, type, identifier and display fields as permitted by the reference contract." />
      <min value="0" />
      <max value="0" />
    </element>
    <element id="Condition.asserter.reference">
      <path value="Condition.asserter.reference" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Condition.asserter.identifier">
      <path value="Condition.asserter.identifier" />
      <min value="0" />
      <max value="0" />
    </element>
    <element id="Condition.stage">
      <path value="Condition.stage" />
      <short value="Not used in the current DigiDOT Condition draft" />
      <definition value="No governed dental staging terminology, assessment model or cross-system mapping is agreed for this field. Reopen it only with a defined dental staging model and terminology binding." />
      <max value="0" />
    </element>
    <element id="Condition.evidence">
      <path value="Condition.evidence" />
      <short value="Supporting observation or source document" />
      <definition value="Link a clinically relevant DigiDOT Observation or no-basis DocumentReference that supports the finding or diagnosis. Keep the result or document represented once; evidence supplies the explicit clinical relationship." />
      <min value="0" />
      <max value="*" />
    </element>
    <element id="Condition.evidence.extension">
      <path value="Condition.evidence.extension" />
      <max value="0" />
    </element>
    <element id="Condition.evidence.modifierExtension">
      <path value="Condition.evidence.modifierExtension" />
      <max value="0" />
    </element>
    <element id="Condition.evidence.code">
      <path value="Condition.evidence.code" />
      <short value="Not used in the current DigiDOT Condition draft" />
      <definition value="No separate evidence-type coding is used. The evidence is identified by the referenced DigiDOT Observation or no-basis DocumentReference." />
      <max value="0" />
    </element>
    <element id="Condition.evidence.detail">
      <path value="Condition.evidence.detail" />
      <short value="Observation or document supporting the condition" />
      <definition value="Reference a DigiDOT Observation or no-basis DocumentReference that provides clinical evidence for the Condition. Use a document link for an actual supporting source report or image, not merely because it concerns the same patient or anatomy. Preserve the clinical finding in Condition and the document metadata in DocumentReference. Patient-specific evidence must concern the same patient." />
      <comment value="Use a literal reference to a separately stored permitted resource. The receiving service must check target existence, profile conformance and patient consistency. File access is through the document API, not a database table identifier." />
      <min value="1" />
      <max value="*" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://novari.no/fhir/digidot/StructureDefinition/digidot-Observation-no" />
        <targetProfile value="http://hl7.no/fhir/StructureDefinition/no-basis-DocumentReference" />
      </type>
      <constraint>
        <key value="condition-evidence-detail-literal" />
        <severity value="error" />
        <human value="A shared-resource reference must contain a literal reference value; identifiers and contained references are not permitted." />
        <expression value="($this is Reference) implies (reference.hasValue() and identifier.empty() and reference.startsWith('#').not())" />
        <source value="https://novari.no/fhir/digidot/StructureDefinition/digidot-Condition-no" />
      </constraint>
      <mustSupport value="true" />
    </element>
    <element id="Condition.evidence.detail.reference">
      <path value="Condition.evidence.detail.reference" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Condition.evidence.detail.identifier">
      <path value="Condition.evidence.detail.identifier" />
      <max value="0" />
    </element>
    <element id="Condition.note">
      <path value="Condition.note" />
      <short value="Additional unstructured clinical context" />
      <definition value="Use note only for clinically relevant narrative that has no appropriate structured element. Do not use note to replace the coded condition, clinical or verification status, anatomy, encounter, timing or responsible person." />
      <min value="0" />
    </element>
    <element id="Condition.note.extension">
      <path value="Condition.note.extension" />
      <definition value="Use the standard Annotation content for limited clinical narrative. No additional note extension is part of this Condition contract; structured clinical facts remain in their defined elements." />
      <min value="0" />
      <max value="0" />
    </element>
    <element id="Condition.note.author[x]">
      <path value="Condition.note.author[x]" />
      <definition value="The individual responsible for making the annotation." />
      <comment value="Use a literal Reference.reference to a separately stored resource conforming to the permitted national target profile. Identifier-only and contained references are not permitted. Official identifiers belong on the target resource. Reuse a confirmed resource in central storage; if no matching resource exists, register it before persisting the clinical reference. The receiving service must check target existence and profile conformance; the profile alone does not perform identity matching or prove that a resource exists in central storage. An authorString may be retained where this Annotation choice permits it; if authorReference is used, the literal-reference rule applies." />
      <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" />
        <targetProfile value="http://hl7.no/fhir/StructureDefinition/no-basis-Organization" />
      </type>
      <type>
        <code value="string" />
      </type>
      <constraint>
        <key value="condition-note-author-x-literal" />
        <severity value="error" />
        <human value="A shared-resource reference must contain a literal reference value; identifiers and contained references are not permitted." />
        <expression value="($this is Reference) implies (reference.hasValue() and identifier.empty() and reference.startsWith('#').not())" />
        <source value="https://novari.no/fhir/digidot/StructureDefinition/digidot-Condition-no" />
      </constraint>
    </element>
  </differential>
</StructureDefinition>