XML

<StructureDefinition xmlns="http://hl7.org/fhir">
    <id value="54bdb774-70ec-44fe-920a-afab2733975f" />
    <meta>
        <versionId value="3" />
        <lastUpdated value="2019-07-01T17:14:48.8551466+00:00" />
    </meta>
    <url value="http://roche.com/fhir/rdc/StructureDefinition/phd-devicecomponent" />
    <version value="1" />
    <name value="phd-devicecomponent" />
    <status value="active" />
    <date value="2019-07-01T17:14:47.8173022+00:00" />
    <fhirVersion value="3.0.2" />
    <mapping>
        <identity value="ACSPIX2FHIR" />
        <name value="ACSPIX (Extensions for IP)" />
    </mapping>
    <mapping>
        <identity value="GREENDOT" />
        <name value="Greendot" />
    </mapping>
    <mapping>
        <identity value="GLUCI-CHEK" />
        <name value="FHIR2ACSPIX" />
        <comment value="The input will be a FHIR file and the output can be 1 to N ACSPIX files, one per each Device Component found." />
    </mapping>
    <mapping>
        <identity value="CDF2FHIR" />
        <name value="CDF2FHIR" />
    </mapping>
    <kind value="resource" />
    <abstract value="false" />
    <type value="DeviceComponent" />
    <baseDefinition value="http://hl7.org/fhir/StructureDefinition/DeviceComponent" />
    <derivation value="constraint" />
    <differential>
        <element id="DeviceComponent.extension">
            <path value="DeviceComponent.extension" />
            <slicing>
                <discriminator>
                    <type value="value" />
                    <path value="url" />
                </discriminator>
                <rules value="open" />
            </slicing>
        </element>
        <element id="DeviceComponent.extension:bolusIncrement">
            <path value="DeviceComponent.extension" />
            <sliceName value="bolusIncrement" />
            <type>
                <code value="Extension" />
                <profile value="http://roche.com/fhir/rdc/StructureDefinition/device-component-bolus-increment" />
            </type>
        </element>
        <element id="DeviceComponent.extension:deliverySpeed">
            <path value="DeviceComponent.extension" />
            <sliceName value="deliverySpeed" />
            <type>
                <code value="Extension" />
                <profile value="http://roche.com/fhir/rdc/StructureDefinition/device-component-delivery-speed" />
            </type>
        </element>
        <element id="DeviceComponent.extension:infusionSetCannulaFillAmt">
            <path value="DeviceComponent.extension" />
            <sliceName value="infusionSetCannulaFillAmt" />
            <type>
                <code value="Extension" />
                <profile value="http://roche.com/fhir/rdc/StructureDefinition/device-component-infusion-set-cannula-fill-amt" />
            </type>
        </element>
        <element id="DeviceComponent.extension:infusionSetTubingFillAmt">
            <path value="DeviceComponent.extension" />
            <sliceName value="infusionSetTubingFillAmt" />
            <type>
                <code value="Extension" />
                <profile value="http://roche.com/fhir/rdc/StructureDefinition/device-component-infusion-set-tubing-fill-amt" />
            </type>
        </element>
        <element id="DeviceComponent.extension:lowCartAlarmQty">
            <path value="DeviceComponent.extension" />
            <sliceName value="lowCartAlarmQty" />
            <type>
                <code value="Extension" />
                <profile value="http://roche.com/fhir/rdc/StructureDefinition/device-component-low-cart-alarm-qty" />
            </type>
        </element>
        <element id="DeviceComponent.extension:primeQty">
            <path value="DeviceComponent.extension" />
            <sliceName value="primeQty" />
            <type>
                <code value="Extension" />
                <profile value="http://roche.com/fhir/rdc/StructureDefinition/device-component-prime-qty" />
            </type>
        </element>
        <element id="DeviceComponent.extension:restUseDays">
            <path value="DeviceComponent.extension" />
            <sliceName value="restUseDays" />
            <type>
                <code value="Extension" />
                <profile value="http://roche.com/fhir/rdc/StructureDefinition/device-component-rest-use-days" />
            </type>
        </element>
        <element id="DeviceComponent.extension:deviceCarePlan">
            <path value="DeviceComponent.extension" />
            <sliceName value="deviceCarePlan" />
            <type>
                <code value="Extension" />
                <profile value="http://roche.com/fhir/rdc/StructureDefinition/device-component-device-care-plan" />
            </type>
        </element>
        <element id="DeviceComponent.extension:maxHourlyBasalRate">
            <path value="DeviceComponent.extension" />
            <sliceName value="maxHourlyBasalRate" />
            <type>
                <code value="Extension" />
                <profile value="http://roche.com/fhir/rdc/StructureDefinition/device-component-max-hourly-basal-rate" />
            </type>
        </element>
        <element id="DeviceComponent.extension:activeBasalProfile">
            <path value="DeviceComponent.extension" />
            <sliceName value="activeBasalProfile" />
            <type>
                <code value="Extension" />
                <profile value="http://roche.com/fhir/rdc/StructureDefinition/device-component-active-basal-profile" />
            </type>
        </element>
        <element id="DeviceComponent.extension:tbrMaxAdjustment">
            <path value="DeviceComponent.extension" />
            <sliceName value="tbrMaxAdjustment" />
            <type>
                <code value="Extension" />
                <profile value="http://roche.com/fhir/rdc/StructureDefinition/device-component-tbr-max-adjustment" />
            </type>
        </element>
        <element id="DeviceComponent.extension:tbrMaxDuration">
            <path value="DeviceComponent.extension" />
            <sliceName value="tbrMaxDuration" />
            <type>
                <code value="Extension" />
                <profile value="http://roche.com/fhir/rdc/StructureDefinition/device-component-tbr-max-duration" />
            </type>
        </element>
        <element id="DeviceComponent.extension:pairedIp">
            <path value="DeviceComponent.extension" />
            <sliceName value="pairedIp" />
            <type>
                <code value="Extension" />
                <profile value="http://roche.com/fhir/rdc/StructureDefinition/device-component-paired-ip" />
            </type>
        </element>
        <element id="DeviceComponent.extension:bolusAdviceEnabled">
            <path value="DeviceComponent.extension" />
            <sliceName value="bolusAdviceEnabled" />
            <max value="1" />
            <type>
                <code value="Extension" />
                <profile value="http://roche.com/fhir/rdc/StructureDefinition/device-component-bolus-advice-enabled" />
            </type>
        </element>
        <element id="DeviceComponent.extension:maxBolusAmount">
            <path value="DeviceComponent.extension" />
            <sliceName value="maxBolusAmount" />
            <max value="1" />
            <type>
                <code value="Extension" />
                <profile value="http://roche.com/fhir/rdc/StructureDefinition/device-component-maximum-bolus-amount" />
            </type>
        </element>
        <element id="DeviceComponent.extension:maxQuickBolusAmount">
            <path value="DeviceComponent.extension" />
            <sliceName value="maxQuickBolusAmount" />
            <max value="1" />
            <type>
                <code value="Extension" />
                <profile value="http://roche.com/fhir/rdc/StructureDefinition/device-component-maximum-quick-bolus-amount" />
            </type>
        </element>
        <element id="DeviceComponent.extension:quickBolusEnabled">
            <path value="DeviceComponent.extension" />
            <sliceName value="quickBolusEnabled" />
            <max value="1" />
            <type>
                <code value="Extension" />
                <profile value="http://roche.com/fhir/rdc/StructureDefinition/device-component-quick-bolus-enabled" />
            </type>
        </element>
        <element id="DeviceComponent.extension:bolusLagtimeEnabled">
            <path value="DeviceComponent.extension" />
            <sliceName value="bolusLagtimeEnabled" />
            <max value="1" />
            <type>
                <code value="Extension" />
                <profile value="http://roche.com/fhir/rdc/StructureDefinition/device-component-bolus-lagtime-enabled" />
            </type>
        </element>
        <element id="DeviceComponent.identifier.system">
            <path value="DeviceComponent.identifier.system" />
            <min value="1" />
            <fixedUri value="http://roche.com/fhir/rdc/sid/device-identifier" />
            <mapping>
                <identity value="ACSPIX2FHIR" />
                <map value="http://roche.com/fhir/rdc/sid/device-identifier" />
            </mapping>
            <mapping>
                <identity value="GREENDOT" />
                <map value="http://roche.com/fhir/rdc/sid/device-identifier" />
                <comment value="Fixed value" />
            </mapping>
            <mapping>
                <identity value="CDF2FHIR" />
                <map value="http://roche.com/fhir/rdc/sid/device-identifier" />
            </mapping>
        </element>
        <element id="DeviceComponent.identifier.value">
            <path value="DeviceComponent.identifier.value" />
            <comment value="If the value is a full URI, then the system SHALL  be urn:ietf:rfc:3986.  The value&#39;s primary purpose is computational mapping.  As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.)  A value formatted for human display can be conveyed using the [Rendered Value extension](extension-rendered-value.html)." />
            <min value="1" />
            <mapping>
                <identity value="ACSPIX2FHIR" />
                <map value="partNumber ? `${source}/${partNumber}/${serialNumber}` : `${source}/${serialNumber}" />
                <comment value="example: source[uDTC/SyncApp/Accu-Chek Smart Pix Software]/ModelNum[555]/SN[009990670]" />
            </mapping>
            <mapping>
                <identity value="GREENDOT" />
                <map value="Greendot/device model/device serial number" />
                <comment value="Greendot/&lt;modelNumber&gt;/&lt;serialNumber&gt;" />
            </mapping>
            <mapping>
                <identity value="CDF2FHIR" />
                <map value="partNumber ? {source}/{partNumber}/{serialNumber} : {source}/{serialNumber}" />
                <comment value="Source/&lt;ModelUID&gt;/&lt;SerialNumber&gt;" />
            </mapping>
        </element>
        <element id="DeviceComponent.type">
            <path value="DeviceComponent.type" />
            <binding>
                <strength value="preferred" />
                <valueSetUri value="http://roche.com/fhir/rdc/ValueSet/device-kind" />
            </binding>
        </element>
        <element id="DeviceComponent.type.coding.system">
            <path value="DeviceComponent.type.coding.system" />
            <mapping>
                <identity value="ACSPIX2FHIR" />
                <map value="isMeter? http://roche.com/fhir/rdc/cdf : http://snomed.info/sct" />
                <comment value="Based on device type(BG,IP) system can be assigned" />
            </mapping>
            <mapping>
                <identity value="GREENDOT" />
                <map value="http://roche.com/fhir/rdc/cs" />
                <comment value="Fixed value" />
            </mapping>
            <mapping>
                <identity value="CDF2FHIR" />
                <map value="isMeter? http://roche.com/fhir/rdc/cdf : http://snomed.info/sct" />
                <comment value="Based on device type(BG,IP) system can be assigned" />
            </mapping>
        </element>
        <element id="DeviceComponent.type.coding.code">
            <path value="DeviceComponent.type.coding.code" />
            <mapping>
                <identity value="ACSPIX2FHIR" />
                <map value="isMeter ? cdf.dev.bgmeter : 69805005" />
                <comment value="Based on device type (BG,IP) code can be asssigned" />
            </mapping>
            <mapping>
                <identity value="GREENDOT" />
                <map value="smartPhone" />
                <comment value="Fixed value" />
            </mapping>
            <mapping>
                <identity value="CDF2FHIR" />
                <map value="isMeter ? cdf.dev.bgmeter : 69805005" />
                <comment value="Based on device type (BG,IP) code can be asssigned" />
            </mapping>
        </element>
        <element id="DeviceComponent.type.coding.display">
            <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable">
                <valueBoolean value="true" />
            </extension>
            <path value="DeviceComponent.type.coding.display" />
            <mapping>
                <identity value="ACSPIX2FHIR" />
                <map value="isMeter ? Glucometer : Insulin Pump" />
                <comment value="Based on device type(BG,IP) display can be assigned" />
            </mapping>
            <mapping>
                <identity value="GREENDOT" />
                <map value="Smart Phone" />
                <comment value="Fixed value" />
            </mapping>
            <mapping>
                <identity value="CDF2FHIR" />
                <map value="isMeter ? Glucometer : Insulin Pump" />
                <comment value="Based on device type(BG,IP) display can be assigned" />
            </mapping>
        </element>
        <element id="DeviceComponent.lastSystemChange">
            <path value="DeviceComponent.lastSystemChange" />
            <mapping>
                <identity value="ACSPIX2FHIR" />
                <map value="Dt+Tm" />
                <comment value="ACSPIX Device tag Date and Time fields." />
            </mapping>
            <mapping>
                <identity value="GLUCI-CHEK" />
                <map value="DEVICE.Dt" />
                <comment value="Map the Date from the lastSystemChange" />
            </mapping>
            <mapping>
                <identity value="GLUCI-CHEK" />
                <map value="DEVICE.Tm" />
                <comment value="Map the Time from the lastSystemChange (hh:mm)" />
            </mapping>
        </element>
        <element id="DeviceComponent.source">
            <path value="DeviceComponent.source" />
            <min value="1" />
            <type>
                <code value="Reference" />
                <targetProfile value="http://roche.com/fhir/rdc/StructureDefinition/phg-device" />
            </type>
        </element>
        <element id="DeviceComponent.source.reference">
            <path value="DeviceComponent.source.reference" />
            <min value="1" />
            <mapping>
                <identity value="ACSPIX2FHIR" />
                <map value="Device/${deviceId}" />
            </mapping>
            <mapping>
                <identity value="GREENDOT" />
                <map value="Device/{DeviceId}" />
                <comment value="&lt;UID of the device resource&gt;" />
            </mapping>
            <mapping>
                <identity value="CDF2FHIR" />
                <map value="Device/{deviceId}" />
            </mapping>
        </element>
        <element id="DeviceComponent.parent">
            <path value="DeviceComponent.parent" />
            <type>
                <code value="Reference" />
                <targetProfile value="http://roche.com/fhir/rdc/StructureDefinition/phd-devicecomponent" />
            </type>
        </element>
        <element id="DeviceComponent.measurementPrinciple">
            <path value="DeviceComponent.measurementPrinciple" />
            <definition value="Omit .measurementPrinciple if other than Glucometer (e.g. IP)\n&quot;impedance&quot; used for glucometers." />
            <comment value="Omit .measurementPrinciple if other than Glucometer (e.g. IP)\n&quot;impedance&quot; used for glucometers." />
            <mapping>
                <identity value="ACSPIX2FHIR" />
                <map value="impedance" />
                <comment value="Fixed value" />
            </mapping>
            <mapping>
                <identity value="GREENDOT" />
                <map value="optical" />
                <comment value="Fixed value" />
            </mapping>
            <mapping>
                <identity value="CDF2FHIR" />
                <map value="impedance" />
                <comment value="hardcoded value" />
            </mapping>
        </element>
        <element id="DeviceComponent.productionSpecification.specType">
            <path value="DeviceComponent.productionSpecification.specType" />
            <binding>
                <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
                    <valueString value="DeviceSpecificationSpecType" />
                </extension>
                <strength value="extensible" />
                <valueSetUri value="http://roche.com/fhir/rdc/ValueSet/device-spectype" />
            </binding>
        </element>
        <element id="DeviceComponent.productionSpecification.specType.coding.system">
            <path value="DeviceComponent.productionSpecification.specType.coding.system" />
            <mapping>
                <identity value="ACSPIX2FHIR" />
                <map value="http://hl7.org/fhir/specification-type" />
                <comment value="All occurrences will have fixed value" />
            </mapping>
            <mapping>
                <identity value="GREENDOT" />
                <map value="http://hl7.org/fhir/specification-type" />
                <comment value="All occurrence have fixed value" />
            </mapping>
            <mapping>
                <identity value="CDF2FHIR" />
                <map value="http://hl7.org/fhir/specification-type" />
                <comment value="All occurrences will have fixed value" />
            </mapping>
        </element>
        <element id="DeviceComponent.productionSpecification.specType.coding.code">
            <path value="DeviceComponent.productionSpecification.specType.coding.code" />
            <mapping>
                <identity value="ACSPIX2FHIR" />
                <map value="serial-number[0] : part-number[1] : unspecified[2]" />
                <comment value="Fixed value" />
            </mapping>
            <mapping>
                <identity value="GREENDOT" />
                <map value="serial-number[0] : part-number[1] : unspecified[2] : part-number[3] : hardware-revision[4] : software-revision[5] : firmware-revision[6]" />
                <comment value="[x] array position and fixed value should be mapped accordingly" />
            </mapping>
            <mapping>
                <identity value="CDF2FHIR" />
                <map value="serial-number[0] : part-number[1] : unspecified[2]" />
                <comment value="Fixed value" />
            </mapping>
        </element>
        <element id="DeviceComponent.productionSpecification.specType.coding.display">
            <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable">
                <valueBoolean value="true" />
            </extension>
            <path value="DeviceComponent.productionSpecification.specType.coding.display" />
            <mapping>
                <identity value="ACSPIX2FHIR" />
                <map value="Serial Number[0] : Part Number[1] : Unspecified Production Specification[2]" />
                <comment value="Fixed value" />
            </mapping>
            <mapping>
                <identity value="GREENDOT" />
                <map value="Serial Number[0] : Model Number [1] : Model Name[2] : Part Number[3] : Hardware Revision[4] : Software Revision[5] : Firmware Revision[6]" />
                <comment value="[x] array position and fixed value should be mapped accordingly" />
            </mapping>
            <mapping>
                <identity value="CDF2FHIR" />
                <map value="Serial Number[0] : Part Number[1] : Unspecified Production Specification[2]" />
                <comment value="Fixed value" />
            </mapping>
        </element>
        <element id="DeviceComponent.productionSpecification.productionSpec">
            <path value="DeviceComponent.productionSpecification.productionSpec" />
            <mapping>
                <identity value="ACSPIX2FHIR" />
                <map value="SN[0] : ModelNum[1] : Name[2]" />
                <comment value="Device tage SN , ModelNum and Name" />
            </mapping>
            <mapping>
                <identity value="GREENDOT" />
                <map value="android.os.Build.FINGERPRINT[0] : android.os.Build.MODEL[1]: android.os.Build.VERSION.SDK_INT[2] : android.os.Build.VERSION.DEVICE[3]" />
                <comment value="device serial number : device model : device firmware : operation system version" />
            </mapping>
            <mapping>
                <identity value="GLUCI-CHEK" />
                <map value="DEVICE.Name" />
                <comment value="IF “DeviceComponent. productionSpecification. specType.coding.code= ‘unspecified’” THEN DeviceComponent. productionSpecification.productionSpec" />
            </mapping>
            <mapping>
                <identity value="GLUCI-CHEK" />
                <map value="DEVICE.SN" />
                <comment value="IF “DeviceComponent. productionSpecification. specType.coding.code= ‘serial-number’” THEN DeviceComponent. productionSpecification.productionSpec" />
            </mapping>
            <mapping>
                <identity value="GLUCI-CHEK" />
                <map value="DEVICE.ModelNum" />
                <comment value="IF “DeviceComponent. productionSpecification. specType.coding.code= ‘part-number’” THEN DeviceComponent. productionSpecification.productionSpec" />
            </mapping>
            <mapping>
                <identity value="CDF2FHIR" />
                <map value="SerialNumber[0] : ModelUID[1] : ModelName[2]" />
                <comment value="&lt;SerialNumber&gt;00057305&lt;/SerialNumber&gt; :  &lt;ModelUID&gt;481&lt;/ModelUID&gt; : &lt;ModelName&gt;Accu-Chek Aviva Insight&lt;/ModelName&gt;" />
            </mapping>
        </element>
    </differential>
</StructureDefinition>