<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="HealthApp" />
  <url value="https://fhir.bfarm.de/StructureDefinition/HealthApp" />
  <version value="3.1.0-TEST" />
  <name value="HealthApp" />
  <title value="HealthApp" />
  <status value="active" />
  <description value="Definition of a digital health application (DiGA) or digital nursing application (DiPA)." />
  <fhirVersion value="4.0.1" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="DeviceDefinition" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/DeviceDefinition" />
  <derivation value="constraint" />
  <differential>
    <element id="DeviceDefinition">
      <path value="DeviceDefinition" />
      <short value="A digital application" />
      <definition value="Represents information about a digital health application (DiGA) or digital nursing application (DiPA)." />
      <mustSupport value="true" />
    </element>
    <element id="DeviceDefinition.extension">
      <path value="DeviceDefinition.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <ordered value="false" />
        <rules value="open" />
      </slicing>
      <mustSupport value="true" />
    </element>
    <element id="DeviceDefinition.extension:handbook">
      <path value="DeviceDefinition.extension" />
      <sliceName value="handbook" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://fhir.bfarm.de/StructureDefinition/HealthAppHandbook" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="DeviceDefinition.extension:hiisTrustAttributes">
      <path value="DeviceDefinition.extension" />
      <sliceName value="hiisTrustAttributes" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://fhir.bfarm.de/StructureDefinition/HealthAppHiisTrustAttributes" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="DeviceDefinition.extension:media">
      <path value="DeviceDefinition.extension" />
      <sliceName value="media" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://fhir.bfarm.de/StructureDefinition/HealthAppMedia" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="DeviceDefinition.extension:mivSet">
      <path value="DeviceDefinition.extension" />
      <sliceName value="mivSet" />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="Extension" />
        <profile value="https://fhir.bfarm.de/StructureDefinition/HealthAppMivSet" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="DeviceDefinition.extension:nutzungshinweis">
      <path value="DeviceDefinition.extension" />
      <sliceName value="nutzungshinweis" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://fhir.bfarm.de/StructureDefinition/HealthAppNutzungshinweis" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="DeviceDefinition.extension:summaries">
      <path value="DeviceDefinition.extension" />
      <sliceName value="summaries" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://fhir.bfarm.de/StructureDefinition/HealthAppSummaries" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="DeviceDefinition.identifier">
      <path value="DeviceDefinition.identifier" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="system" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <short value="IDs of the digital application" />
      <definition value="Contains values for unique identification of the digital application." />
      <mustSupport value="true" />
    </element>
    <element id="DeviceDefinition.identifier:digaId">
      <path value="DeviceDefinition.identifier" />
      <sliceName value="digaId" />
      <short value="DiGA-ID in the directory" />
      <definition value="The unique directory number of the digital health application (DiGA-ID) in the directory according to § 139e SGB V." />
      <min value="0" />
      <max value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DeviceDefinition.identifier:digaId.system">
      <path value="DeviceDefinition.identifier.system" />
      <min value="1" />
      <fixedUri value="https://fhir.bfarm.de/Identifier/DigaId" />
      <mustSupport value="true" />
    </element>
    <element id="DeviceDefinition.identifier:digaId.value">
      <path value="DeviceDefinition.identifier.value" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DeviceDefinition.identifier:dipaId">
      <path value="DeviceDefinition.identifier" />
      <sliceName value="dipaId" />
      <short value="DiPA-ID in the directory" />
      <definition value="The unique directory number of the digital nursing application (DiPA-ID) in the directory according to § 78a SGB XI." />
      <min value="0" />
      <max value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DeviceDefinition.identifier:dipaId.system">
      <path value="DeviceDefinition.identifier.system" />
      <min value="1" />
      <fixedUri value="https://fhir.bfarm.de/Identifier/DipaId" />
      <mustSupport value="true" />
    </element>
    <element id="DeviceDefinition.identifier:dipaId.value">
      <path value="DeviceDefinition.identifier.value" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DeviceDefinition.manufacturer[x]">
      <path value="DeviceDefinition.manufacturer[x]" />
      <slicing>
        <discriminator>
          <type value="type" />
          <path value="$this" />
        </discriminator>
        <ordered value="false" />
        <rules value="open" />
      </slicing>
      <mustSupport value="true" />
    </element>
    <element id="DeviceDefinition.manufacturer[x]:manufacturerReference">
      <path value="DeviceDefinition.manufacturer[x]" />
      <sliceName value="manufacturerReference" />
      <short value="HealthAppManufacturer" />
      <definition value="The reference to the manufacturer (HealthAppManufacturer) of the digital application." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.bfarm.de/StructureDefinition/HealthAppManufacturer" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="DeviceDefinition.manufacturer[x]:manufacturerReference.reference">
      <path value="DeviceDefinition.manufacturer[x].reference" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DeviceDefinition.manufacturer[x]:manufacturerReference.display">
      <path value="DeviceDefinition.manufacturer[x].display" />
      <mustSupport value="true" />
    </element>
    <element id="DeviceDefinition.deviceName">
      <path value="DeviceDefinition.deviceName" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="type" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <short value="Application name" />
      <definition value="The name of the digital application." />
      <mustSupport value="true" />
    </element>
    <element id="DeviceDefinition.deviceName:userFriendlyName">
      <path value="DeviceDefinition.deviceName" />
      <sliceName value="userFriendlyName" />
      <short value="Name" />
      <min value="0" />
      <max value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DeviceDefinition.deviceName:userFriendlyName.name">
      <path value="DeviceDefinition.deviceName.name" />
      <mustSupport value="true" />
    </element>
    <element id="DeviceDefinition.deviceName:userFriendlyName.type">
      <path value="DeviceDefinition.deviceName.type" />
      <fixedCode value="user-friendly-name" />
    </element>
    <element id="DeviceDefinition.onlineInformation">
      <path value="DeviceDefinition.onlineInformation" />
      <short value="Information website" />
      <definition value="The URL to the information website of the digital application." />
      <mustSupport value="true" />
    </element>
    <element id="DeviceDefinition.note">
      <path value="DeviceDefinition.note" />
      <short value="Internal search index (not for client use)" />
      <definition value="For technical reasons (search indexing), the server may map MIV Set data to this element, in particular to note.text. The content is solely part of that technical mapping to support the miv-set search and must not be read or used by clients for any business content, MIV Set interpretation, or other integration purpose." />
    </element>
    <element id="DeviceDefinition.note.text">
      <path value="DeviceDefinition.note.text" />
      <short value="Technical MIV Set mapping (not for client use)" />
      <definition value="Only used internally for search indexing; must not be interpreted or relied upon by clients (see miv-set search, HIIS use cases documentation)." />
    </element>
  </differential>
</StructureDefinition>