STU 3 Candidate

This page is part of the FHIR Specification (v1.4.0: STU 3 Ballot 3). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions

StructureDefinition: QICore-Device - JSON

StructureDefinition for Profile of Device for decision support/quality metrics. Defines the core set of elements and extensions for quality rule and measure authors.

Raw JSON

{
  "resourceType": "StructureDefinition",
  "id": "qicore-device",
  "text": {
    "status": "generated",
    "div": "<div>!-- Snipped for Brevity --></div>"
  },
  "url": "http://hl7.org/fhir/StructureDefinition/qicore-device",
  "name": "QICore-Device",
  "status": "draft",
  "publisher": "Health Level Seven International (Clinical Quality Information - QICore)",
  "contact": [
    {
      "telecom": [
        {
          "system": "other",
          "value": "http://hl7.org/special/committees/CQI"
        }
      ]
    }
  ],
  "date": "2015-03-11",
  "description": "Profile of Device for decision support/quality metrics. Defines the core set of elements and extensions for quality rule and measure authors.",
  "fhirVersion": "1.4.0",
  "mapping": [
    {
      "identity": "qdm",
      "uri": "http://www.healthit.gov/quality-data-model",
      "name": "Quality Data Model"
    }
  ],
  "kind": "resource",
  "abstract": false,
  "baseType": "Device",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Device",
  "derivation": "constraint",
  "snapshot": {
    "element": [
      {
        "path": "Device",
        "name": "QICore-Device",
        "short": "Item used in healthcare",
        "definition": "This resource identifies an instance or a type of a manufactured item that is used in the provision of healthcare without being substantially changed through that activity. The device may be a medical or non-medical device.  Medical devices includes durable (reusable) medical equipment, implantable devices, as well as disposable equipment used for diagnostic, treatment, and research for healthcare and public health.  Non-medical devices may include items such as a machine, cellphone, computer, application, etc.",
        "min": 0,
        "max": "*",
        "base": {
          "path": "Device",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Device"
          }
        ],
        "mapping": [
          {
            "identity": "udi",
            "map": "N/A"
          },
          {
            "identity": "rim",
            "map": "Device"
          },
          {
            "identity": "w5",
            "map": "administrative.device"
          },
          {
            "identity": "qdm",
            "map": "Device, Applied or Order or Recommended"
          }
        ]
      },
      {
        "path": "Device.id",
        "short": "Logical id of this artifact",
        "definition": "The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.",
        "comments": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation. Bundles always have an id, though it is usually a generated UUID.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Resource.id",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "id"
          }
        ],
        "isSummary": true
      },
      {
        "path": "Device.meta",
        "short": "Metadata about the resource",
        "definition": "The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content may not always be associated with version changes to the resource.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Resource.meta",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Meta"
          }
        ],
        "isSummary": true
      },
      {
        "path": "Device.implicitRules",
        "short": "A set of rules under which this content was created",
        "definition": "A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content.",
        "comments": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element as much as possible.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Resource.implicitRules",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "uri"
          }
        ],
        "isModifier": true,
        "isSummary": true
      },
      {
        "path": "Device.language",
        "short": "Language of the resource content",
        "definition": "The base language in which the resource is written.",
        "comments": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies  to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource  Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Resource.language",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "code"
          }
        ],
        "binding": {
          "strength": "required",
          "description": "A human language.",
          "valueSetUri": "http://tools.ietf.org/html/bcp47"
        }
      },
      {
        "path": "Device.text",
        "short": "Text summary of the resource, for human interpretation",
        "definition": "A human-readable narrative that contains a summary of the resource, and may be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it \"clinically safe\" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.",
        "comments": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative.",
        "alias": [
          "narrative",
          "html",
          "xhtml",
          "display"
        ],
        "min": 0,
        "max": "1",
        "base": {
          "path": "DomainResource.text",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Narrative"
          }
        ],
        "condition": [
          "dom-1"
        ],
        "mapping": [
          {
            "identity": "rim",
            "map": "Act.text?"
          }
        ]
      },
      {
        "path": "Device.contained",
        "short": "Contained, inline Resources",
        "definition": "These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.",
        "comments": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again.",
        "alias": [
          "inline resources",
          "anonymous resources",
          "contained resources"
        ],
        "min": 0,
        "max": "*",
        "base": {
          "path": "DomainResource.contained",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Resource"
          }
        ],
        "mapping": [
          {
            "identity": "rim",
            "map": "N/A"
          }
        ]
      },
      {
        "path": "Device.extension",
        "short": "Additional Content defined by implementations",
        "definition": "May be used to represent additional information that is not part of the basic definition of the resource. In order to make the use of extensions safe and manageable, there is a strict set of governance  applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.",
        "comments": "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.",
        "alias": [
          "extensions",
          "user content"
        ],
        "min": 0,
        "max": "*",
        "base": {
          "path": "DomainResource.extension",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Extension"
          }
        ],
        "mapping": [
          {
            "identity": "rim",
            "map": "N/A"
          }
        ]
      },
      {
        "path": "Device.modifierExtension",
        "short": "Extensions that cannot be ignored",
        "definition": "May be used to represent additional information that is not part of the basic definition of the resource, and that modifies the understanding of the element that contains it. Usually modifier elements provide negation or qualification. In order to make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.",
        "comments": "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.",
        "alias": [
          "extensions",
          "user content"
        ],
        "min": 0,
        "max": "*",
        "base": {
          "path": "DomainResource.modifierExtension",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Extension"
          }
        ],
        "isModifier": true,
        "mapping": [
          {
            "identity": "rim",
            "map": "N/A"
          }
        ]
      },
      {
        "path": "Device.identifier",
        "short": "Instance identifier",
        "definition": "Unique instance identifiers assigned to a device by manufacturers other organizations or owners.",
        "comments": "The barcode string from a barcode present on a device label or package may identify the instance, include names given to the device in local usage, or may identify the type of device. If the identifier identifies the type of device, Device.type element should be used.  For [UDI](device.html#5.11.3.2.2),  this element corresponds to the variable portion of the UDI that identifies the serial number of a specific device. See [UDI mappings](device-mappings.html#udi) for a complete mapping of UDI parts to Device.",
        "alias": [
          "Serial Number"
        ],
        "min": 0,
        "max": "*",
        "base": {
          "path": "Device.identifier",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Identifier"
          }
        ],
        "mapping": [
          {
            "identity": "udi",
            "map": "The serial number which is a component of the the production identifier (PI), a conditional, variable portion of a UDI.   The identifier.type code should be set to “SNO�(Serial Number) and the system left empty."
          },
          {
            "identity": "rim",
            "map": ".id"
          },
          {
            "identity": "w5",
            "map": "id"
          }
        ]
      },
      {
        "path": "Device.udiCarrier",
        "short": "Unique Device Identifier (UDI) Barcode string",
        "definition": "[Unique device identifier (UDI)](device.html#5.11.3.2.2) barcode or rfid string assigned to device label or package.",
        "comments": "The udiCarrier string may identify an unique instance of a device, or it may only identify the type of the device. The Human Readable format (HRF) is required in FHIR. AIDC identifiers cannot be conveyed in FHIR, Because of limitations on character sets in XML and the need to round-trip JSON data through XML.  See [UDI mappings](device-mappings.html#udi) for a complete mapping of UDI parts to Device.",
        "alias": [
          "UDI",
          "Barcode String"
        ],
        "min": 0,
        "max": "1",
        "base": {
          "path": "Device.udiCarrier",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "Identifier"
          }
        ],
        "mapping": [
          {
            "identity": "udi",
            "map": "The full UDI carrier - The Human Readable Form (HRF) representation of the barcode string as printed on the packaging of the device.  The  'type' component should be set to “UDI� and the 'system' component to the the appropriate repository url.  the additional URL is needed to identify the authoritative source for UDI generation within the jurisdiction.  All UDIs are globally unique within a single namespace. with the appropriate repository uri as the system.  This allows a recipient of a UDI to know which database will contain the UDI-associated metadata.  For example,  UDIs of devices managed in the U.S. by the FDA, the value is  http://hl7.org/fhir/NamingSystem/fda-udi.  Because of limitations on character sets in XML and the need to round-trip JSON data through XML, AIDC identifiers cannot be conveyed in FHIR."
          },
          {
            "identity": "rim",
            "map": ".id[where root is root for UDI]"
          },
          {
            "identity": "w5",
            "map": "id"
          }
        ]
      },
      {
        "path": "Device.status",
        "short": "available | not-available | entered-in-error",
        "definition": "Status of the Device availability.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Device.status",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code"
          }
        ],
        "mustSupport": true,
        "isModifier": true,
        "isSummary": true,
        "binding": {
          "strength": "required",
          "description": "The availability status of the device.",
          "valueSetReference": {
            "reference": "http://hl7.org/fhir/ValueSet/devicestatus"
          }
        },
        "mapping": [
          {
            "identity": "udi",
            "map": "N/A"
          },
          {
            "identity": "rim",
            "map": ".statusCode"
          },
          {
            "identity": "w5",
            "map": "status"
          }
        ]
      },
      {
        "path": "Device.type",
        "short": "What kind of device this is",
        "definition": "Code or identifier to identify a kind of device.",
        "comments": "There can be different code values thath may correspond to different granularities of the same concept.  These can be represented as translations using  the [codeableConcept](datatypes.html#codeableconcept) datatype.  For [UDI](device.html#5.11.3.2.2), this element corresponds to the UDI device identifier (DI) part. See [UDI mappings](device-mappings.html#udi) for a complete mapping of UDI parts to Device.",
        "min": 1,
        "max": "1",
        "base": {
          "path": "Device.type",
          "min": 1,
          "max": "1"
        },
        "type": [
          {
            "code": "CodeableConcept"
          }
        ],
        "mustSupport": true,
        "binding": {
          "strength": "example",
          "description": "Codes to identify medical devices",
          "valueSetReference": {
            "reference": "http://hl7.org/fhir/ValueSet/device-kind"
          }
        },
        "mapping": [
          {
            "identity": "udi",
            "map": "The device identifier (DI), a mandatory, fixed portion of a UDI that identifies the labeler and the specific version or model of a devicet.  The system uri should be included. Possible URIs include\nGS1 DIs: \n http://hl7.org/fhir/NamingSystem/gs1-di\nHIBCC DIs:\n http://hl7.org/fhir/NamingSystem/hibcc-di\nICCBBA DIs for blood containers:\n http://hl7.org/fhir/NamingSystem/iccbba-blood-di\nICCBA DIs for other devices:\n http://hl7.org/fhir/NamingSystem/iccbba-other-di"
          },
          {
            "identity": "rim",
            "map": ".code"
          },
          {
            "identity": "w5",
            "map": "what"
          },
          {
            "identity": "qdm",
            "map": "primary code"
          }
        ]
      },
      {
        "path": "Device.lotNumber",
        "short": "Lot number of manufacture",
        "definition": "Lot number assigned by the manufacturer.",
        "comments": "Alphanumeric. For [UDI](device.html#5.11.3.2.2), this element corresponds to the variable portion of a UDI that identifies the lot or batch number within which a physical instance of a device was manufactured. See [UDI mappings](device-mappings.html#udi) for a complete mapping of UDI parts to Device.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Device.lotNumber",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ],
        "mapping": [
          {
            "identity": "udi",
            "map": "The lot or batch number within which a device was manufactured - which is a component of the the production identifier (PI), a conditional, variable portion of a UDI."
          },
          {
            "identity": "rim",
            "map": ".lotNumberText"
          },
          {
            "identity": "w5",
            "map": "what"
          }
        ]
      },
      {
        "path": "Device.manufacturer",
        "short": "Name of device manufacturer",
        "definition": "A name of the manufacturer.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Device.manufacturer",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ],
        "mapping": [
          {
            "identity": "udi",
            "map": "N/A"
          },
          {
            "identity": "rim",
            "map": ".playedRole[typeCode=MANU].scoper.name"
          },
          {
            "identity": "w5",
            "map": "what"
          }
        ]
      },
      {
        "path": "Device.manufactureDate",
        "short": "Date when the device was made",
        "definition": "The date and time when the device was manufactured.",
        "comments": "For [UDI](device.html#5.11.3.2.2), this element corresponds to the variable portion of a UDI that identifies the date a physical instance of a device was manufactured. See [UDI mappings](device-mappings.html#udi) for a complete mapping of UDI parts to Device.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Device.manufactureDate",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "dateTime"
          }
        ],
        "mapping": [
          {
            "identity": "udi",
            "map": "The date a specific device was manufactured - which is a component of the the production identifier (PI), a conditional, variable portion of a UDI.  For FHIR, The datetime syntax must converted to YYYY-MM-DD[THH:MM:SS].  If hour is present, the minutes and seconds should both be set to “00�."
          },
          {
            "identity": "rim",
            "map": ".existenceTime.low"
          },
          {
            "identity": "w5",
            "map": "what"
          }
        ]
      },
      {
        "path": "Device.expirationDate",
        "short": "Date and time of expiry of this device (if applicable)",
        "definition": "The date and time beyond which this device is no longer valid or should not be used (if applicable).",
        "comments": "For [UDI](device.html#5.11.3.2.2), this element corresponds to the variable portion of a UDI that identifies the expiration date of a physical instance of a device. See [UDI mappings](device-mappings.html#udi) for a complete mapping of UDI parts to Device.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Device.expirationDate",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "dateTime"
          }
        ],
        "mapping": [
          {
            "identity": "udi",
            "map": "the expiration date of a specific device -  which is a component of the the production identifier (PI), a conditional, variable portion of a UDI.  For FHIR, The datetime syntax must converted to YYYY-MM-DD[THH:MM:SS].  If hour is present, the minutes and seconds should both be set to “00�."
          },
          {
            "identity": "rim",
            "map": ".expirationTime"
          },
          {
            "identity": "w5",
            "map": "what"
          }
        ]
      },
      {
        "path": "Device.model",
        "short": "Model id assigned by the manufacturer",
        "definition": "The \"model\" is an identifier assigned by the manufacturer to identify the product by its type. This number is shared by the all devices sold as the same type.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Device.model",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ],
        "mapping": [
          {
            "identity": "udi",
            "map": "N/A"
          },
          {
            "identity": "rim",
            "map": ".playedRole[typeCode=MANU].code"
          },
          {
            "identity": "w5",
            "map": "what"
          }
        ]
      },
      {
        "path": "Device.version",
        "short": "Version number (i.e. software)",
        "definition": "The version of the device, if the device has multiple releases under the same model, or if the device is software or carries firmware.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Device.version",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ],
        "mapping": [
          {
            "identity": "udi",
            "map": "N/A"
          },
          {
            "identity": "rim",
            "map": ".softwareName (included as part)"
          },
          {
            "identity": "w5",
            "map": "what"
          }
        ]
      },
      {
        "path": "Device.patient",
        "short": "Patient to whom Device is affixed",
        "definition": "Patient information, If the device is affixed to a person.",
        "requirements": "If the device is implanted in a patient, then need to associate the device to the patient.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Device.patient",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "Reference",
            "profile": [
              "http://hl7.org/fhir/StructureDefinition/qicore-patient"
            ]
          }
        ],
        "mustSupport": true,
        "mapping": [
          {
            "identity": "udi",
            "map": "N/A"
          },
          {
            "identity": "rim",
            "map": ".playedRole[typeCode=USED].scoper.playedRole[typeCode=PAT]"
          },
          {
            "identity": "w5",
            "map": "who.focus"
          }
        ]
      },
      {
        "path": "Device.owner",
        "short": "Organization responsible for device",
        "definition": "An organization that is responsible for the provision and ongoing maintenance of the device.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Device.owner",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "Reference",
            "profile": [
              "http://hl7.org/fhir/StructureDefinition/qicore-organization"
            ]
          }
        ],
        "mapping": [
          {
            "identity": "udi",
            "map": "N/A"
          },
          {
            "identity": "rim",
            "map": ".playedRole[typeCode=OWN].scoper"
          },
          {
            "identity": "w5",
            "map": "who.source"
          }
        ]
      },
      {
        "path": "Device.contact",
        "short": "Details for human/organization for support",
        "definition": "Contact details for an organization or a particular human that is responsible for the device.",
        "comments": "used for troubleshooting etc.",
        "min": 0,
        "max": "*",
        "base": {
          "path": "Device.contact",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "ContactPoint"
          }
        ],
        "mapping": [
          {
            "identity": "udi",
            "map": "N/A"
          },
          {
            "identity": "rim",
            "map": ".scopedRole[typeCode=CON].player"
          },
          {
            "identity": "w5",
            "map": "who.source"
          }
        ]
      },
      {
        "path": "Device.location",
        "short": "Where the resource is found",
        "definition": "The place where the device can be found.",
        "requirements": "Device.location can be used to track device location.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Device.location",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "Reference",
            "profile": [
              "http://hl7.org/fhir/StructureDefinition/qicore-location"
            ]
          }
        ],
        "mustSupport": true,
        "mapping": [
          {
            "identity": "udi",
            "map": "N/A"
          },
          {
            "identity": "rim",
            "map": ".playedRole[typeCode=LOCE].scoper"
          },
          {
            "identity": "w5",
            "map": "where"
          },
          {
            "identity": "qdm",
            "map": "anatomical location site"
          }
        ]
      },
      {
        "path": "Device.url",
        "short": "Network address to contact device",
        "definition": "A network address on which the device may be contacted directly.",
        "comments": "If the device is running a FHIR server, the network address should  be the root URL from which a conformance statement may be retrieved.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Device.url",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "uri"
          }
        ],
        "mapping": [
          {
            "identity": "udi",
            "map": "N/A"
          },
          {
            "identity": "rim",
            "map": ".telecom"
          },
          {
            "identity": "w5",
            "map": "where"
          }
        ]
      },
      {
        "path": "Device.note",
        "short": "Device notes and comments",
        "definition": "Descriptive information, usage information or implantation information that is not captured in an existing element.",
        "min": 0,
        "max": "*",
        "base": {
          "path": "Device.note",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Annotation"
          }
        ],
        "mapping": [
          {
            "identity": "udi",
            "map": "N/A"
          },
          {
            "identity": "rim",
            "map": ".text"
          }
        ]
      }
    ]
  },
  "differential": {
    "element": [
      {
        "path": "Device",
        "name": "QICore-Device",
        "min": 0,
        "max": "*",
        "type": [
          {
            "code": "Device"
          }
        ],
        "mapping": [
          {
            "identity": "qdm",
            "map": "Device, Applied or Order or Recommended"
          }
        ]
      },
      {
        "path": "Device.status",
        "mustSupport": true
      },
      {
        "path": "Device.type",
        "mustSupport": true,
        "mapping": [
          {
            "identity": "qdm",
            "map": "primary code"
          }
        ]
      },
      {
        "path": "Device.patient",
        "type": [
          {
            "code": "Reference",
            "profile": [
              "http://hl7.org/fhir/StructureDefinition/qicore-patient"
            ]
          }
        ],
        "mustSupport": true
      },
      {
        "path": "Device.owner",
        "type": [
          {
            "code": "Reference",
            "profile": [
              "http://hl7.org/fhir/StructureDefinition/qicore-organization"
            ]
          }
        ]
      },
      {
        "path": "Device.location",
        "type": [
          {
            "code": "Reference",
            "profile": [
              "http://hl7.org/fhir/StructureDefinition/qicore-location"
            ]
          }
        ],
        "mustSupport": true,
        "mapping": [
          {
            "identity": "qdm",
            "map": "anatomical location site"
          }
        ]
      }
    ]
  }
}