<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="NCDGameDataComposition" />
  <url value="https://fhir.inso-world.com/ncd-prevention-games/StructureDefinition/NCDGameDataComposition" />
  <name value="NCDGameDataComposition" />
  <title value="NCD GameData Composition" />
  <status value="draft" />
  <description value="The Composition resource representing the game data of the document" />
  <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.category">
      <path value="Composition.category" />
      <max value="0" />
    </element>
    <element id="Composition.subject">
      <path value="Composition.subject" />
      <max value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.inso-world.com/ncd-prevention-games/StructureDefinition/NCDPatient" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Composition.encounter">
      <path value="Composition.encounter" />
      <max value="0" />
    </element>
    <element id="Composition.author">
      <path value="Composition.author" />
      <max value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.inso-world.com/ncd-prevention-games/StructureDefinition/NCDPatient" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Composition.attester">
      <path value="Composition.attester" />
      <max value="0" />
    </element>
    <element id="Composition.custodian">
      <path value="Composition.custodian" />
      <max value="0" />
    </element>
    <element id="Composition.event">
      <path value="Composition.event" />
      <max value="0" />
    </element>
    <element id="Composition.section">
      <path value="Composition.section" />
      <slicing>
        <discriminator>
          <type value="pattern" />
          <path value="code" />
        </discriminator>
        <rules value="closed" />
      </slicing>
      <min value="1" />
    </element>
    <element id="Composition.section:achievements">
      <path value="Composition.section" />
      <sliceName value="achievements" />
      <min value="0" />
      <max value="*" />
    </element>
    <element id="Composition.section:achievements.title">
      <path value="Composition.section.title" />
      <min value="1" />
      <fixedString value="Achievements" />
      <mustSupport value="true" />
    </element>
    <element id="Composition.section:achievements.author">
      <path value="Composition.section.author" />
      <max value="0" />
    </element>
    <element id="Composition.section:achievements.focus">
      <path value="Composition.section.focus" />
      <max value="0" />
    </element>
    <element id="Composition.section:achievements.text">
      <path value="Composition.section.text" />
      <max value="0" />
    </element>
    <element id="Composition.section:achievements.orderedBy">
      <path value="Composition.section.orderedBy" />
      <max value="0" />
    </element>
    <element id="Composition.section:achievements.entry">
      <path value="Composition.section.entry" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.inso-world.com/ncd-prevention-games/StructureDefinition/NCDAchievementObservation" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Composition.section:achievements.entry.reference">
      <path value="Composition.section.entry.reference" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Composition.section:achievements.entry.type">
      <path value="Composition.section.entry.type" />
      <max value="0" />
    </element>
    <element id="Composition.section:achievements.entry.identifier">
      <path value="Composition.section.entry.identifier" />
      <max value="0" />
    </element>
    <element id="Composition.section:achievements.entry.display">
      <path value="Composition.section.entry.display" />
      <max value="0" />
    </element>
    <element id="Composition.section:achievements.emptyReason">
      <path value="Composition.section.emptyReason" />
      <max value="0" />
    </element>
    <element id="Composition.section:achievements.section">
      <path value="Composition.section.section" />
      <max value="0" />
    </element>
    <element id="Composition.section:highscore">
      <path value="Composition.section" />
      <sliceName value="highscore" />
      <min value="0" />
      <max value="*" />
    </element>
    <element id="Composition.section:highscore.title">
      <path value="Composition.section.title" />
      <min value="1" />
      <fixedString value="Highscore" />
      <mustSupport value="true" />
    </element>
    <element id="Composition.section:highscore.author">
      <path value="Composition.section.author" />
      <max value="0" />
    </element>
    <element id="Composition.section:highscore.focus">
      <path value="Composition.section.focus" />
      <max value="0" />
    </element>
    <element id="Composition.section:highscore.text">
      <path value="Composition.section.text" />
      <max value="0" />
    </element>
    <element id="Composition.section:highscore.orderedBy">
      <path value="Composition.section.orderedBy" />
      <max value="0" />
    </element>
    <element id="Composition.section:highscore.entry">
      <path value="Composition.section.entry" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.inso-world.com/ncd-prevention-games/StructureDefinition/NCDHighscoreObservation" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Composition.section:highscore.entry.reference">
      <path value="Composition.section.entry.reference" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Composition.section:highscore.entry.type">
      <path value="Composition.section.entry.type" />
      <max value="0" />
    </element>
    <element id="Composition.section:highscore.entry.identifier">
      <path value="Composition.section.entry.identifier" />
      <max value="0" />
    </element>
    <element id="Composition.section:highscore.entry.display">
      <path value="Composition.section.entry.display" />
      <max value="0" />
    </element>
    <element id="Composition.section:highscore.emptyReason">
      <path value="Composition.section.emptyReason" />
      <max value="0" />
    </element>
    <element id="Composition.section:highscore.section">
      <path value="Composition.section.section" />
      <max value="0" />
    </element>
    <element id="Composition.section:avatar">
      <path value="Composition.section" />
      <sliceName value="avatar" />
      <min value="0" />
      <max value="*" />
    </element>
    <element id="Composition.section:avatar.title">
      <path value="Composition.section.title" />
      <min value="1" />
      <fixedString value="Game character (avatar)" />
      <mustSupport value="true" />
    </element>
    <element id="Composition.section:avatar.author">
      <path value="Composition.section.author" />
      <max value="0" />
    </element>
    <element id="Composition.section:avatar.focus">
      <path value="Composition.section.focus" />
      <max value="0" />
    </element>
    <element id="Composition.section:avatar.text">
      <path value="Composition.section.text" />
      <max value="0" />
    </element>
    <element id="Composition.section:avatar.orderedBy">
      <path value="Composition.section.orderedBy" />
      <max value="0" />
    </element>
    <element id="Composition.section:avatar.entry">
      <path value="Composition.section.entry" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.inso-world.com/ncd-prevention-games/StructureDefinition/NCDCharacterObservation" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Composition.section:avatar.entry.reference">
      <path value="Composition.section.entry.reference" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Composition.section:avatar.entry.type">
      <path value="Composition.section.entry.type" />
      <max value="0" />
    </element>
    <element id="Composition.section:avatar.entry.identifier">
      <path value="Composition.section.entry.identifier" />
      <max value="0" />
    </element>
    <element id="Composition.section:avatar.entry.display">
      <path value="Composition.section.entry.display" />
      <max value="0" />
    </element>
    <element id="Composition.section:avatar.emptyReason">
      <path value="Composition.section.emptyReason" />
      <max value="0" />
    </element>
    <element id="Composition.section:avatar.section">
      <path value="Composition.section.section" />
      <max value="0" />
    </element>
    <element id="Composition.section:engagement">
      <path value="Composition.section" />
      <sliceName value="engagement" />
      <min value="0" />
      <max value="*" />
    </element>
    <element id="Composition.section:engagement.title">
      <path value="Composition.section.title" />
      <min value="1" />
      <fixedString value="Engagement data" />
      <mustSupport value="true" />
    </element>
    <element id="Composition.section:engagement.author">
      <path value="Composition.section.author" />
      <max value="0" />
    </element>
    <element id="Composition.section:engagement.focus">
      <path value="Composition.section.focus" />
      <max value="0" />
    </element>
    <element id="Composition.section:engagement.text">
      <path value="Composition.section.text" />
      <max value="0" />
    </element>
    <element id="Composition.section:engagement.orderedBy">
      <path value="Composition.section.orderedBy" />
      <max value="0" />
    </element>
    <element id="Composition.section:engagement.entry">
      <path value="Composition.section.entry" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.inso-world.com/ncd-prevention-games/StructureDefinition/NCDEngagementObservation" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Composition.section:engagement.entry.reference">
      <path value="Composition.section.entry.reference" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Composition.section:engagement.entry.type">
      <path value="Composition.section.entry.type" />
      <max value="0" />
    </element>
    <element id="Composition.section:engagement.entry.identifier">
      <path value="Composition.section.entry.identifier" />
      <max value="0" />
    </element>
    <element id="Composition.section:engagement.entry.display">
      <path value="Composition.section.entry.display" />
      <max value="0" />
    </element>
    <element id="Composition.section:engagement.emptyReason">
      <path value="Composition.section.emptyReason" />
      <max value="0" />
    </element>
    <element id="Composition.section:engagement.section">
      <path value="Composition.section.section" />
      <max value="0" />
    </element>
    <element id="Composition.section:progress">
      <path value="Composition.section" />
      <sliceName value="progress" />
      <min value="1" />
      <max value="*" />
      <mustSupport value="true" />
    </element>
    <element id="Composition.section:progress.title">
      <path value="Composition.section.title" />
      <min value="1" />
      <fixedString value="Game progress data" />
      <mustSupport value="true" />
    </element>
    <element id="Composition.section:progress.author">
      <path value="Composition.section.author" />
      <max value="0" />
    </element>
    <element id="Composition.section:progress.focus">
      <path value="Composition.section.focus" />
      <max value="0" />
    </element>
    <element id="Composition.section:progress.text">
      <path value="Composition.section.text" />
      <max value="0" />
    </element>
    <element id="Composition.section:progress.orderedBy">
      <path value="Composition.section.orderedBy" />
      <max value="0" />
    </element>
    <element id="Composition.section:progress.entry">
      <path value="Composition.section.entry" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.inso-world.com/ncd-prevention-games/StructureDefinition/NCDGameprogressObservation" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Composition.section:progress.entry.reference">
      <path value="Composition.section.entry.reference" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Composition.section:progress.entry.type">
      <path value="Composition.section.entry.type" />
      <max value="0" />
    </element>
    <element id="Composition.section:progress.entry.identifier">
      <path value="Composition.section.entry.identifier" />
      <max value="0" />
    </element>
    <element id="Composition.section:progress.entry.display">
      <path value="Composition.section.entry.display" />
      <max value="0" />
    </element>
    <element id="Composition.section:progress.emptyReason">
      <path value="Composition.section.emptyReason" />
      <max value="0" />
    </element>
    <element id="Composition.section:progress.section">
      <path value="Composition.section.section" />
      <max value="0" />
    </element>
    <element id="Composition.section:inventory">
      <path value="Composition.section" />
      <sliceName value="inventory" />
      <min value="0" />
      <max value="*" />
    </element>
    <element id="Composition.section:inventory.title">
      <path value="Composition.section.title" />
      <min value="1" />
      <fixedString value="Inventory" />
      <mustSupport value="true" />
    </element>
    <element id="Composition.section:inventory.author">
      <path value="Composition.section.author" />
      <max value="0" />
    </element>
    <element id="Composition.section:inventory.focus">
      <path value="Composition.section.focus" />
      <max value="0" />
    </element>
    <element id="Composition.section:inventory.text">
      <path value="Composition.section.text" />
      <max value="0" />
    </element>
    <element id="Composition.section:inventory.orderedBy">
      <path value="Composition.section.orderedBy" />
      <max value="0" />
    </element>
    <element id="Composition.section:inventory.entry">
      <path value="Composition.section.entry" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.inso-world.com/ncd-prevention-games/StructureDefinition/NCDInventoryItem" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Composition.section:inventory.entry.reference">
      <path value="Composition.section.entry.reference" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Composition.section:inventory.entry.type">
      <path value="Composition.section.entry.type" />
      <max value="0" />
    </element>
    <element id="Composition.section:inventory.entry.identifier">
      <path value="Composition.section.entry.identifier" />
      <max value="0" />
    </element>
    <element id="Composition.section:inventory.entry.display">
      <path value="Composition.section.entry.display" />
      <max value="0" />
    </element>
    <element id="Composition.section:inventory.emptyReason">
      <path value="Composition.section.emptyReason" />
      <max value="0" />
    </element>
    <element id="Composition.section:inventory.section">
      <path value="Composition.section.section" />
      <max value="0" />
    </element>
    <element id="Composition.section:personalization">
      <path value="Composition.section" />
      <sliceName value="personalization" />
      <min value="0" />
      <max value="*" />
    </element>
    <element id="Composition.section:personalization.title">
      <path value="Composition.section.title" />
      <min value="1" />
      <fixedString value="Personalization" />
      <mustSupport value="true" />
    </element>
    <element id="Composition.section:personalization.author">
      <path value="Composition.section.author" />
      <max value="0" />
    </element>
    <element id="Composition.section:personalization.focus">
      <path value="Composition.section.focus" />
      <max value="0" />
    </element>
    <element id="Composition.section:personalization.text">
      <path value="Composition.section.text" />
      <max value="0" />
    </element>
    <element id="Composition.section:personalization.orderedBy">
      <path value="Composition.section.orderedBy" />
      <max value="0" />
    </element>
    <element id="Composition.section:personalization.entry">
      <path value="Composition.section.entry" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.inso-world.com/ncd-prevention-games/StructureDefinition/NCDPersonalizationObservation" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Composition.section:personalization.entry.reference">
      <path value="Composition.section.entry.reference" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Composition.section:personalization.entry.type">
      <path value="Composition.section.entry.type" />
      <max value="0" />
    </element>
    <element id="Composition.section:personalization.entry.identifier">
      <path value="Composition.section.entry.identifier" />
      <max value="0" />
    </element>
    <element id="Composition.section:personalization.entry.display">
      <path value="Composition.section.entry.display" />
      <max value="0" />
    </element>
    <element id="Composition.section:personalization.emptyReason">
      <path value="Composition.section.emptyReason" />
      <max value="0" />
    </element>
    <element id="Composition.section:personalization.section">
      <path value="Composition.section.section" />
      <max value="0" />
    </element>
    <element id="Composition.section:configuration">
      <path value="Composition.section" />
      <sliceName value="configuration" />
      <min value="0" />
      <max value="*" />
    </element>
    <element id="Composition.section:configuration.title">
      <path value="Composition.section.title" />
      <min value="1" />
      <fixedString value="Configuration" />
      <mustSupport value="true" />
    </element>
    <element id="Composition.section:configuration.author">
      <path value="Composition.section.author" />
      <max value="0" />
    </element>
    <element id="Composition.section:configuration.focus">
      <path value="Composition.section.focus" />
      <max value="0" />
    </element>
    <element id="Composition.section:configuration.text">
      <path value="Composition.section.text" />
      <max value="0" />
    </element>
    <element id="Composition.section:configuration.orderedBy">
      <path value="Composition.section.orderedBy" />
      <max value="0" />
    </element>
    <element id="Composition.section:configuration.entry">
      <path value="Composition.section.entry" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.inso-world.com/ncd-prevention-games/StructureDefinition/NCDConfigurationObservation" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Composition.section:configuration.entry.reference">
      <path value="Composition.section.entry.reference" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Composition.section:configuration.entry.type">
      <path value="Composition.section.entry.type" />
      <max value="0" />
    </element>
    <element id="Composition.section:configuration.entry.identifier">
      <path value="Composition.section.entry.identifier" />
      <max value="0" />
    </element>
    <element id="Composition.section:configuration.entry.display">
      <path value="Composition.section.entry.display" />
      <max value="0" />
    </element>
    <element id="Composition.section:configuration.emptyReason">
      <path value="Composition.section.emptyReason" />
      <max value="0" />
    </element>
    <element id="Composition.section:configuration.section">
      <path value="Composition.section.section" />
      <max value="0" />
    </element>
  </differential>
</StructureDefinition>