<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="08754bf3-1605-4381-be0b-635fb91f607d" />
  <meta>
    <lastUpdated value="2017-12-01T13:52:20.447+01:00" />
  </meta>
  <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-wg">
    <valueCode value="dev" />
  </extension>
  <url value="http://devices.fhir.org/StructureDefinition/VmdDeviceComponent" />
  <name value="VmdDeviceComponent" />
  <title value="VMD DeviceComponent Profile" />
  <status value="draft" />
  <date value="2017-06-13" />
  <description value="StructureDefinition for a Virtual Medical Device (VMD) DeviceComponent resource" />
  <fhirVersion value="3.0.0" />
  <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:instance">
      <path value="DeviceComponent.extension" />
      <sliceName value="instance" />
      <short value="Instance number" />
      <definition value="If multiple instances of the same VMD type exist, the devicecomponent-instance extension allows to define a sequence." />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="http://devices.fhir.org/StructureDefinition/devicecomponent-instance" />
      </type>
    </element>
    <element id="DeviceComponent.type">
      <path value="DeviceComponent.type" />
      <short value="Virtual Medical Device (VMD) type" />
      <definition value="DeviceComponent.type shall have a coding from the ISO/IEEE 11073 MDC device nomenclature. The Rosetta Terminology Mapping Management System (RTMMS) lists available codes. DeviceComponent.type.coding allows additional coding from other code systems." />
    </element>
    <element id="DeviceComponent.type.coding">
      <path value="DeviceComponent.type.coding" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="system" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <min value="1" />
    </element>
    <element id="DeviceComponent.type.coding:11073MDC">
      <path value="DeviceComponent.type.coding" />
      <sliceName value="11073MDC" />
      <short value="11073 MDC code" />
      <definition value="Code defined by the ISO/IEEE 11073-10101 Nomenclature" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="DeviceComponent.type.coding:11073MDC.system">
      <path value="DeviceComponent.type.coding.system" />
      <min value="1" />
      <fixedUri value="urn:iso:std:iso:11073:10101" />
    </element>
    <element id="DeviceComponent.type.coding:11073MDC.code">
      <path value="DeviceComponent.type.coding.code" />
      <min value="1" />
    </element>
    <element id="DeviceComponent.source">
      <path value="DeviceComponent.source" />
      <definition value="DeviceComponent.source shall be present and refer to a Device resource according to the PoC Device profile." />
      <min value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://devices.fhir.org/StructureDefinition/PoCDevice" />
      </type>
    </element>
    <element id="DeviceComponent.parent">
      <path value="DeviceComponent.parent" />
      <definition value="DeviceComponent.parent is a reference to the next upper level DeviceComponent resource. For VMD DeviceComponent, it shall be present and refer to a MDS DeviceComponent." />
      <min value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://devices.fhir.org/StructureDefinition/MdsDeviceComponent" />
      </type>
    </element>
  </differential>
</StructureDefinition>