<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="KarolinskaDevice" />
  <url value="https://simplifier.net/gdr-mvp/karolinskadevice/StructureDefinition/KarolinskaDevice" />
  <name value="KarolinskaDevice" />
  <status value="draft" />
  <description value="A profile of the Device resource." />
  <fhirVersion value="4.0.1" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="Device" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Device" />
  <derivation value="constraint" />
  <differential>
    <element id="Device.extension">
      <path value="Device.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <ordered value="false" />
        <rules value="open" />
      </slicing>
    </element>
    <element id="Device.extension:deviceDocumentation">
      <path value="Device.extension" />
      <sliceName value="deviceDocumentation" />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="Extension" />
        <profile value="https://simplifier.net/gdr-mvp/karolinskadevice/StructureDefinition/device-documentation" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Device.identifier">
      <path value="Device.identifier" />
      <mustSupport value="true" />
    </element>
    <element id="Device.definition">
      <path value="Device.definition" />
      <max value="0" />
    </element>
    <element id="Device.udiCarrier">
      <path value="Device.udiCarrier" />
      <mustSupport value="true" />
    </element>
    <element id="Device.status">
      <path value="Device.status" />
      <binding>
        <strength value="required" />
        <valueSet value="https://simplifier.net/gdr-mvp/karolinskadevice/ValueSet/device-status-vs" />
      </binding>
    </element>
    <element id="Device.statusReason">
      <path value="Device.statusReason" />
      <max value="0" />
    </element>
    <element id="Device.distinctIdentifier">
      <path value="Device.distinctIdentifier" />
      <max value="0" />
    </element>
    <element id="Device.manufacturer">
      <path value="Device.manufacturer" />
      <mustSupport value="true" />
    </element>
    <element id="Device.manufactureDate">
      <path value="Device.manufactureDate" />
      <max value="0" />
    </element>
    <element id="Device.expirationDate">
      <path value="Device.expirationDate" />
      <max value="0" />
    </element>
    <element id="Device.lotNumber">
      <path value="Device.lotNumber" />
      <max value="0" />
    </element>
    <element id="Device.serialNumber">
      <path value="Device.serialNumber" />
      <mustSupport value="true" />
    </element>
    <element id="Device.deviceName">
      <path value="Device.deviceName" />
      <mustSupport value="true" />
    </element>
    <element id="Device.modelNumber">
      <path value="Device.modelNumber" />
      <max value="0" />
    </element>
    <element id="Device.partNumber">
      <path value="Device.partNumber" />
      <max value="0" />
    </element>
    <element id="Device.type">
      <path value="Device.type" />
      <binding>
        <strength value="required" />
        <valueSet value="https://simplifier.net/gdr-mvp/karolinskadevice/ValueSet/device-type-vs" />
      </binding>
    </element>
    <element id="Device.specialization">
      <path value="Device.specialization" />
      <max value="0" />
    </element>
    <element id="Device.version">
      <path value="Device.version" />
      <mustSupport value="true" />
    </element>
    <element id="Device.property">
      <path value="Device.property" />
      <max value="0" />
    </element>
    <element id="Device.patient">
      <path value="Device.patient" />
      <max value="0" />
    </element>
    <element id="Device.owner">
      <path value="Device.owner" />
      <max value="0" />
    </element>
    <element id="Device.contact">
      <path value="Device.contact" />
      <max value="0" />
    </element>
    <element id="Device.location">
      <path value="Device.location" />
      <max value="0" />
    </element>
    <element id="Device.url">
      <path value="Device.url" />
      <max value="0" />
    </element>
    <element id="Device.note">
      <path value="Device.note" />
      <max value="0" />
    </element>
    <element id="Device.safety">
      <path value="Device.safety" />
      <max value="0" />
    </element>
    <element id="Device.parent">
      <path value="Device.parent" />
      <max value="0" />
    </element>
  </differential>
</StructureDefinition>