<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="DbirImplantDevice" />
  <url value="http://mrdm.nl/profiles/fhir/r4/dbir/StructureDefinition/ImplantDevice" />
  <name value="DbirImplantDevice" />
  <status value="draft" />
  <description value="The implant used in breast surgery as defined in the DBIR clinical registry." />
  <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:deviceFeatures">
      <path value="Device.extension" />
      <sliceName value="deviceFeatures" />
      <type>
        <code value="Extension" />
        <profile value="http://mrdm.nl/profiles/fhir/r4/dbir/StructureDefinition/DeviceFeatures" />
      </type>
      <isModifier value="false" />
    </element>
    <element id="Device.identifier">
      <path value="Device.identifier" />
      <slicing>
        <discriminator>
          <type value="exists" />
          <path value="system" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <min value="1" />
    </element>
    <element id="Device.identifier:GTIN">
      <path value="Device.identifier" />
      <sliceName value="GTIN" />
      <definition value="GTIN = Global Trade Item Number of the device.&#xD;&#xA;Will be filled in automatically when a barcode scanner is used successfully.&#xD;&#xA;In case this variable has to be filled in manually: The GTIN is composed of 14 numbers written in/under the barcode between the (01) and (10) or (17)." />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Device.identifier:GTIN.system">
      <path value="Device.identifier.system" />
      <short value="GTINProductIDCodelijst" />
      <definition value="Corresponds with GTINProductIDCodelijst: https://zibs.nl/wiki/MedischHulpmiddel-v3.4(2021NL)#ProductTypeCodelijst" />
      <min value="1" />
      <fixedUri value="urn:oid:2.16.840.1.113883.2.4.3.11.60.40.2.10.1.3" />
    </element>
    <element id="Device.identifier:GTIN.value">
      <path value="Device.identifier.value" />
      <min value="1" />
    </element>
    <element id="Device.identifier:ReferenceNumber">
      <path value="Device.identifier" />
      <sliceName value="ReferenceNumber" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Device.udiCarrier">
      <path value="Device.udiCarrier" />
      <definition value="GS1 barcode. Code starts with (01)" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Device.udiCarrier.id">
      <path value="Device.udiCarrier.id" />
      <definition value="Barcode as defined by the DBIR registry as gs1-barcode" />
    </element>
    <element id="Device.udiCarrier.deviceIdentifier">
      <path value="Device.udiCarrier.deviceIdentifier" />
      <definition value="The UDI (Unique Device Identifier) is 1 of the essential variables to trace an implant in the event of a recall.&#xA;&#xA;The UDI is a combination of the variables:&#xA;- GTIN +&#xA;- Expiry date +&#xA;- Lot number +&#xA;- Serial number." />
      <min value="1" />
    </element>
    <element id="Device.udiCarrier.carrierHRF">
      <path value="Device.udiCarrier.carrierHRF" />
      <definition value="The full UDI carrier as the human readable form (HRF) representation of the barcode string as printed on the packaging of the device. Defined as variable gs1-barcode in DBIR clinical registry" />
      <min value="1" />
    </element>
    <element id="Device.udiCarrier.entryType">
      <path value="Device.udiCarrier.entryType" />
      <min value="1" />
    </element>
    <element id="Device.status">
      <path value="Device.status" />
      <definition value="''Barcode processing status' indicates whether scanning of the GS1 barcode with your barcode scanner was successful or not. If the scan was successful, the fields below are automatically filled (GTIN, expiry date, lot number, serial number). If the scan failed, these fields are empty or only partially filled." />
    </element>
    <element id="Device.manufacturer">
      <path value="Device.manufacturer" />
      <definition value="Name of the manufacturer, either provided by DICA variable manufacturer or manother" />
      <min value="1" />
      <binding>
        <strength value="preferred" />
        <valueSet value="http://mrdm.nl/profiles/fhir/r4/dbir/ValueSet/Manufacturer" />
      </binding>
    </element>
    <element id="Device.expirationDate">
      <path value="Device.expirationDate" />
      <short value="Expiry date of device" />
      <definition value="Expiry date defined by variable gs1-expiry in DBIR clinical registry" />
      <min value="1" />
    </element>
    <element id="Device.lotNumber">
      <path value="Device.lotNumber" />
      <definition value="Lot number assigned by the manufacturer, defined by variable gs1-lotno in DBIR clinical registry" />
      <min value="1" />
    </element>
    <element id="Device.serialNumber">
      <path value="Device.serialNumber" />
      <definition value="Serial number assigned by the manufacturer, defined by variable gs1-serialno in DBIR clinical registry" />
      <min value="1" />
    </element>
    <element id="Device.type">
      <path value="Device.type" />
      <min value="1" />
    </element>
    <element id="Device.type.coding.system">
      <path value="Device.type.coding.system" />
      <min value="1" />
      <fixedUri value="http://snomed.info/sct" />
    </element>
    <element id="Device.type.coding.code">
      <path value="Device.type.coding.code" />
      <code>
        <system value="http://snomed.info/sct" />
        <code value="2282003" />
        <display value="Breast prosthesis" />
      </code>
      <code>
        <system value="http://snomed.info/sct" />
        <code value="310630001" />
        <display value="Breast tissue expander" />
      </code>
      <min value="1" />
    </element>
  </differential>
</StructureDefinition>