<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="profile-composition" />
  <url value="https://fhir.synapxe.sg/StructureDefinition/profile-composition" />
  <name value="Composition" />
  <title value="Summary Notes Composition Profile" />
  <status value="active" />
  <publisher value="Synapxe" />
  <description value="Composition resource will be used to store the dental summary, referral notes, programme case summary or intervention notes which is associated to an encounter within a patient visit." />
  <fhirVersion value="5.0.0" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="Composition" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Composition" />
  <derivation value="constraint" />
  <differential>
    <element id="Composition.extension:createdDate">
      <path value="Composition.extension" />
      <sliceName value="createdDate" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/ext-dateTime" />
      </type>
    </element>
    <element id="Composition.extension:generalInfo">
      <path value="Composition.extension" />
      <sliceName value="generalInfo" />
      <type>
        <code value="Extension" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/ext-generalinfo" />
      </type>
    </element>
    <element id="Composition.url">
      <path value="Composition.url" />
      <max value="0" />
    </element>
    <element id="Composition.identifier">
      <path value="Composition.identifier" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Identifier" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-identifier" />
      </type>
    </element>
    <element id="Composition.version">
      <path value="Composition.version" />
      <max value="0" />
    </element>
    <element id="Composition.type">
      <path value="Composition.type" />
      <type>
        <code value="CodeableConcept" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-codeableconcept" />
      </type>
    </element>
    <element id="Composition.type.extension:version">
      <path value="Composition.type.extension" />
      <sliceName value="version" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/ext-version" />
      </type>
      <isModifier value="false" />
    </element>
    <element id="Composition.category">
      <path value="Composition.category" />
      <max value="1" />
      <type>
        <code value="CodeableConcept" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-codeableconcept" />
      </type>
    </element>
    <element id="Composition.subject">
      <path value="Composition.subject" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-patient" />
      </type>
    </element>
    <element id="Composition.subject.id">
      <path value="Composition.subject.id" />
      <max value="0" />
    </element>
    <element id="Composition.subject.extension">
      <path value="Composition.subject.extension" />
      <max value="0" />
    </element>
    <element id="Composition.subject.reference">
      <path value="Composition.subject.reference" />
      <max value="0" />
    </element>
    <element id="Composition.subject.type">
      <path value="Composition.subject.type" />
      <min value="1" />
      <patternUri value="Patient" />
    </element>
    <element id="Composition.subject.identifier">
      <path value="Composition.subject.identifier" />
      <min value="1" />
      <type>
        <code value="Identifier" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-identifier" />
      </type>
    </element>
    <element id="Composition.subject.identifier.system">
      <path value="Composition.subject.identifier.system" />
      <patternUri value="https://fhir.synapxe.sg/NamingSystem/nric" />
    </element>
    <element id="Composition.subject.display">
      <path value="Composition.subject.display" />
      <max value="0" />
    </element>
    <element id="Composition.encounter">
      <path value="Composition.encounter" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-sn-encounter" />
      </type>
    </element>
    <element id="Composition.encounter.id">
      <path value="Composition.encounter.id" />
      <max value="0" />
    </element>
    <element id="Composition.encounter.extension">
      <path value="Composition.encounter.extension" />
      <max value="0" />
    </element>
    <element id="Composition.encounter.reference">
      <path value="Composition.encounter.reference" />
      <min value="1" />
    </element>
    <element id="Composition.encounter.type">
      <path value="Composition.encounter.type" />
      <max value="0" />
    </element>
    <element id="Composition.encounter.identifier">
      <path value="Composition.encounter.identifier" />
      <max value="0" />
    </element>
    <element id="Composition.encounter.identifier.system">
      <path value="Composition.encounter.identifier.system" />
      <patternUri value="https://fhir.synapxe.sg/NamingSystem/event-id" />
    </element>
    <element id="Composition.encounter.display">
      <path value="Composition.encounter.display" />
      <max value="0" />
    </element>
    <element id="Composition.useContext">
      <path value="Composition.useContext" />
      <max value="0" />
    </element>
    <element id="Composition.author">
      <path value="Composition.author" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-practitionerrole" />
      </type>
    </element>
    <element id="Composition.name">
      <path value="Composition.name" />
      <max value="0" />
    </element>
    <element id="Composition.note">
      <path value="Composition.note" />
      <max value="1" />
      <type>
        <code value="Annotation" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-annotation" />
      </type>
    </element>
    <element id="Composition.attester">
      <path value="Composition.attester" />
      <max value="1" />
    </element>
    <element id="Composition.attester.id">
      <path value="Composition.attester.id" />
      <max value="0" />
    </element>
    <element id="Composition.attester.extension">
      <path value="Composition.attester.extension" />
      <max value="0" />
    </element>
    <element id="Composition.attester.modifierExtension">
      <path value="Composition.attester.modifierExtension" />
      <max value="0" />
    </element>
    <element id="Composition.attester.mode.coding.code">
      <path value="Composition.attester.mode.coding.code" />
      <patternCode value="official" />
    </element>
    <element id="Composition.attester.time">
      <path value="Composition.attester.time" />
      <min value="1" />
    </element>
    <element id="Composition.attester.party">
      <path value="Composition.attester.party" />
      <min value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-practitioner" />
      </type>
    </element>
    <element id="Composition.attester.party.id">
      <path value="Composition.attester.party.id" />
      <max value="0" />
    </element>
    <element id="Composition.attester.party.extension">
      <path value="Composition.attester.party.extension" />
      <max value="0" />
    </element>
    <element id="Composition.attester.party.reference">
      <path value="Composition.attester.party.reference" />
      <max value="0" />
    </element>
    <element id="Composition.attester.party.type">
      <path value="Composition.attester.party.type" />
      <min value="1" />
      <patternUri value="Practitioner" />
    </element>
    <element id="Composition.attester.party.identifier">
      <path value="Composition.attester.party.identifier" />
      <min value="1" />
      <type>
        <code value="Identifier" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-identifier" />
      </type>
    </element>
    <element id="Composition.attester.party.identifier.system">
      <path value="Composition.attester.party.identifier.system" />
      <patternUri value="https://fhir.synapxe.sg/NamingSystem/mcr" />
    </element>
    <element id="Composition.attester.party.display">
      <path value="Composition.attester.party.display" />
      <min value="1" />
    </element>
    <element id="Composition.custodian">
      <path value="Composition.custodian" />
      <min value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-organization" />
      </type>
    </element>
    <element id="Composition.custodian.id">
      <path value="Composition.custodian.id" />
      <max value="0" />
    </element>
    <element id="Composition.custodian.extension">
      <path value="Composition.custodian.extension" />
      <max value="0" />
    </element>
    <element id="Composition.custodian.reference">
      <path value="Composition.custodian.reference" />
      <max value="0" />
    </element>
    <element id="Composition.custodian.type">
      <path value="Composition.custodian.type" />
      <min value="1" />
      <patternUri value="Organization" />
    </element>
    <element id="Composition.custodian.identifier">
      <path value="Composition.custodian.identifier" />
      <type>
        <code value="Identifier" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-identifier" />
      </type>
    </element>
    <element id="Composition.custodian.identifier.system">
      <path value="Composition.custodian.identifier.system" />
      <patternUri value="https://fhir.synapxe.sg/NamingSystem/hci-code" />
    </element>
    <element id="Composition.custodian.display">
      <path value="Composition.custodian.display" />
      <min value="1" />
    </element>
    <element id="Composition.relatesTo">
      <path value="Composition.relatesTo" />
      <max value="0" />
      <type>
        <code value="RelatedArtifact" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-relatedartifact" />
      </type>
    </element>
    <element id="Composition.relatesTo.extension">
      <path value="Composition.relatesTo.extension" />
      <max value="0" />
    </element>
    <element id="Composition.relatesTo.type">
      <path value="Composition.relatesTo.type" />
      <patternCode value="documentation" />
    </element>
    <element id="Composition.relatesTo.citation">
      <path value="Composition.relatesTo.citation" />
      <max value="0" />
    </element>
    <element id="Composition.event">
      <path value="Composition.event" />
      <max value="0" />
    </element>
    <element id="Composition.section">
      <path value="Composition.section" />
    </element>
    <element id="Composition.section.id">
      <path value="Composition.section.id" />
      <max value="0" />
    </element>
    <element id="Composition.section.extension">
      <path value="Composition.section.extension" />
      <max value="0" />
    </element>
    <element id="Composition.section.modifierExtension">
      <path value="Composition.section.modifierExtension" />
      <max value="0" />
    </element>
    <element id="Composition.section.code">
      <path value="Composition.section.code" />
      <binding>
        <strength value="preferred" />
        <valueSet value="https://fhir.synapxe.sg/ValueSet/doc-section-code" />
      </binding>
    </element>
    <element id="Composition.section.author">
      <path value="Composition.section.author" />
      <max value="0" />
    </element>
    <element id="Composition.section.focus">
      <path value="Composition.section.focus" />
      <max value="0" />
    </element>
    <element id="Composition.section.orderedBy">
      <path value="Composition.section.orderedBy" />
      <max value="0" />
    </element>
    <element id="Composition.section.entry">
      <path value="Composition.section.entry" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-sn-condition" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-sn-observation" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-sn-diagnosticreport" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-sn-referralrequest" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-sn-questionnaireresponse" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-fileattachment" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-sn-procedure" />
        <aggregation value="bundled" />
      </type>
    </element>
    <element id="Composition.section.entry.id">
      <path value="Composition.section.entry.id" />
      <max value="0" />
    </element>
    <element id="Composition.section.entry.extension">
      <path value="Composition.section.entry.extension" />
      <max value="0" />
    </element>
    <element id="Composition.section.entry.reference">
      <path value="Composition.section.entry.reference" />
      <min value="1" />
    </element>
    <element id="Composition.section.entry.type">
      <path value="Composition.section.entry.type" />
      <max value="0" />
    </element>
    <element id="Composition.section.entry.identifier">
      <path value="Composition.section.entry.identifier" />
      <max value="0" />
    </element>
    <element id="Composition.section.entry.display">
      <path value="Composition.section.entry.display" />
      <max value="0" />
    </element>
    <element id="Composition.section.emptyReason">
      <path value="Composition.section.emptyReason" />
      <max value="0" />
    </element>
  </differential>
</StructureDefinition>