<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="Condition-verto" />
  <url value="http://verto.ca/fhir/StructureDefinition/Condition-verto" />
  <version value="1.0.0" />
  <name value="Condition" />
  <title value="Verto's Condition Profile" />
  <status value="active" />
  <experimental value="true" />
  <date value="2025-01-13" />
  <publisher value="Verto Health" />
  <description value="Condition Profile constrained by Verto's Digital Twin" />
  <fhirVersion value="5.0.0" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="Condition" />
  <baseDefinition value="http://hl7.org/fhir/R5/StructureDefinition/Condition" />
  <derivation value="constraint" />
  <differential>
    <element id="Condition">
      <path value="Condition" />
      <short value="Verto's Condition Profile" />
      <definition value="Detailed information about a condition, problem, diagnosis, or other event" />
    </element>
    <element id="Condition.id">
      <path value="Condition.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 id is auto-generated as a UUID by Verto when the resource is created, and is used as an internal identifier within the Digital Twin. It has no business meaning outside of the Digital Twin's context." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Resource.id" />
        <min value="0" />
        <max value="1" />
      </base>
      <isModifier value="false" />
      <isSummary value="true" />
    </element>
    <element id="Condition.identifier">
      <path value="Condition.identifier" />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="Identifier" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Condition.clinicalStatus">
      <path value="Condition.clinicalStatus" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="CodeableConcept" />
      </type>
      <mustSupport value="true" />
      <binding>
        <strength value="required" />
        <valueSet value="http://hl7.org/fhir/ValueSet/condition-clinical" />
      </binding>
    </element>
    <element id="Condition.category">
      <path value="Condition.category" />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="CodeableConcept" />
      </type>
      <mustSupport value="true" />
      <binding>
        <strength value="preferred" />
        <valueSet value="http://hl7.org/fhir/ValueSet/condition-category" />
      </binding>
    </element>
    <element id="Condition.severity">
      <path value="Condition.severity" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="CodeableConcept" />
      </type>
      <mustSupport value="true" />
      <binding>
        <strength value="preferred" />
        <valueSet value="http://hl7.org/fhir/ValueSet/condition-severity" />
      </binding>
    </element>
    <element id="Condition.code">
      <path value="Condition.code" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="CodeableConcept" />
      </type>
      <mustSupport value="true" />
      <binding>
        <strength value="example" />
        <valueSet value="http://hl7.org/fhir/ValueSet/condition-code" />
      </binding>
    </element>
    <element id="Condition.bodySite">
      <path value="Condition.bodySite" />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="CodeableConcept" />
      </type>
      <mustSupport value="true" />
      <binding>
        <strength value="example" />
        <valueSet value="http://hl7.org/fhir/ValueSet/body-site" />
      </binding>
    </element>
    <element id="Condition.subject">
      <path value="Condition.subject" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://verto.ca/fhir/StructureDefinition/Verto's Patient Profile" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Group" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Condition.encounter">
      <path value="Condition.encounter" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Encounter" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Condition.onset[x]">
      <path value="Condition.onset[x]" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="dateTime" />
      </type>
      <type>
        <code value="Period" />
      </type>
      <type>
        <code value="Range" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Condition.abatement[x]">
      <path value="Condition.abatement[x]" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="dateTime" />
      </type>
      <type>
        <code value="Period" />
      </type>
      <type>
        <code value="Range" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Condition.recordedDate">
      <path value="Condition.recordedDate" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="dateTime" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Condition.recorder">
      <path value="Condition.recorder" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Practitioner" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/PractitionerRole" />
        <targetProfile value="http://verto.ca/fhir/StructureDefinition/Verto's Patient Profile" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/RelatedPerson" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Condition.asserter">
      <path value="Condition.asserter" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Practitioner" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/PractitionerRole" />
        <targetProfile value="http://verto.ca/fhir/StructureDefinition/Verto's Patient Profile" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/RelatedPerson" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Condition.stage">
      <path value="Condition.stage" />
      <short value="Stage/grade, usually assessed formally" />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="BackboneElement" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Condition.stage.summary">
      <path value="Condition.stage.summary" />
      <short value="Simple summary (disease specific)" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="CodeableConcept" />
      </type>
      <mustSupport value="true" />
      <binding>
        <strength value="example" />
        <description value="Simple summary of stage/grade." />
        <valueSet value="http://hl7.org/fhir/ValueSet/condition-stage" />
      </binding>
    </element>
    <element id="Condition.stage.type">
      <path value="Condition.stage.type" />
      <short value="Kind of staging" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="CodeableConcept" />
      </type>
      <mustSupport value="true" />
      <binding>
        <strength value="example" />
        <description value="Type of staging." />
        <valueSet value="http://hl7.org/fhir/ValueSet/condition-stage-type" />
      </binding>
    </element>
  </differential>
</StructureDefinition>