Real Time Location Services Implementation Guide
1.0.0-ballot - CI Build International flag

Real Time Location Services Implementation Guide, published by HL7 International - Patient Administration Work Group. This is not an authorized publication; it is the continuous build for version 1.0.0-ballot). This version is based on the current content of https://github.com/HL7/rtls-ig/ and changes regularly. See the Directory of published versions

Resource Profile: RTLS Tag Device Profile ( Experimental )

Official URL: http://hl7.org/fhir/uv/rtls/StructureDefinition/rtlsDevice Version: 1.0.0-ballot
Standards status: Informative Computable Name: RTLSDevice

Device resource profile for tags or badges in RTLS workflows.

This profile defines minimum expectations for the Device resource to be used in RTLS workflows.

Usage:

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

This structure is derived from Device

NameFlagsCard.TypeDescription & Constraintsdoco
.. Device 0..*DeviceItem used in healthcare
... identifier S1..*IdentifierInstance identifier
... status 0..1codeA status of "active" indicates that a tracking tag is in use (regardless of current assignment to a subject) and "inactive" indicates that a tracking tag is no longer in use.
... location S0..1Reference(RTLS Location Resource Profile)Where the device is found

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Device C0..*DeviceItem used in healthcare
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... contained 0..*ResourceContained, inline Resources
... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
... status ?!Σ0..1codeA status of "active" indicates that a tracking tag is in use (regardless of current assignment to a subject) and "inactive" indicates that a tracking tag is no longer in use.
Binding: FHIRDeviceStatus (required): The record status of the device.

... location S0..1Reference(RTLS Location Resource Profile)Where the device is found

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Device.statusrequiredFHIRDeviceStatus

Constraints

IdGradePath(s)DetailsRequirements
dev-1errorDeviceonly one Device.name.display SHALL be true when there is more than one Device.name
: name.where(display=true).count() <= 1
dom-2errorDeviceIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorDeviceIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorDeviceIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorDeviceIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceDeviceA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
NameFlagsCard.TypeDescription & Constraintsdoco
.. Device C0..*DeviceItem used in healthcare
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: AllLanguages (required): IETF language tag for a human language

... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
... identifier S1..*IdentifierInstance identifier
... displayName 0..1stringThe name used to display by default when the device is referenced
... definition 0..1CodeableReference(DeviceDefinition)The reference to the definition for the device
... udiCarrier Σ0..*BackboneElementUnique Device Identifier (UDI) Barcode string
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... deviceIdentifier Σ1..1stringMandatory fixed portion of UDI
.... issuer Σ1..1uriUDI Issuing Organization
.... jurisdiction 0..1uriRegional UDI authority
.... carrierAIDC Σ0..1base64BinaryUDI Machine Readable Barcode String
.... carrierHRF Σ0..1stringUDI Human Readable Barcode String
.... entryType 0..1codebarcode | rfid | manual | card | self-reported | electronic-transmission | unknown
Binding: UDIEntryType (required): Codes to identify how UDI data was entered.

... status ?!Σ0..1codeA status of "active" indicates that a tracking tag is in use (regardless of current assignment to a subject) and "inactive" indicates that a tracking tag is no longer in use.
Binding: FHIRDeviceStatus (required): The record status of the device.

... availabilityStatus 0..1CodeableConceptlost | damaged | destroyed | available
Binding: FHIRDeviceAvailabilityStatus (extensible): The availability status reason of the device.

... biologicalSourceEvent 0..1IdentifierAn identifier that supports traceability to the event during which material in this product from one or more biological entities was obtained or pooled
... manufacturer 0..1stringName of device manufacturer
... manufactureDate 0..1dateTimeDate when the device was made
... expirationDate 0..1dateTimeDate and time of expiry of this device (if applicable)
... lotNumber 0..1stringLot number of manufacture
... serialNumber 0..1stringSerial number assigned by the manufacturer
... name C0..*BackboneElementThe name or names of the device as known to the manufacturer and/or patient
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... value Σ1..1stringThe term that names the device
.... type Σ1..1coderegistered-name | user-friendly-name | patient-reported-name
Binding: DeviceNameType (required): The type of name the device is referred by.

.... display ?!ΣC0..1booleanThe preferred device name
... modelNumber 0..1stringThe manufacturer's model number for the device
... partNumber 0..1stringThe part number or catalog number of the device
... category 0..*CodeableConceptIndicates a high-level grouping of the device
Binding: FHIRDeviceCategory (example): Categories of medical devices.


... type 0..*CodeableConceptThe kind or type of device
Binding: DeviceType (example): Codes to identify medical devices.


... version 0..*BackboneElementThe actual design of the device or software version running on the device
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... type 0..1CodeableConceptThe type of the device version, e.g. manufacturer, approved, internal
Binding: DeviceVersionType (example): The type of version indicated for the device.

.... component 0..1IdentifierThe hardware or software module of the device to which the version applies
.... installDate 0..1dateTimeThe date the version was installed on the device
.... value 1..1stringThe version text
... conformsTo 0..*BackboneElementIdentifies the standards, specifications, or formal guidances for the capabilities supported by the device
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... category 0..1CodeableConceptDescribes the common type of the standard, specification, or formal guidance. communication | performance | measurement
Binding: DeviceSpecificationCategory (example): The kind of standards used by the device.

.... specification 1..1CodeableConceptIdentifies the standard, specification, or formal guidance that the device adheres to
Binding: DeviceSpecificationType (example): The type of version indicated for the device.

.... version 0..1stringSpecific form or variant of the standard
... property 0..*BackboneElementInherent, essentially fixed, characteristics of the device. e.g., time properties, size, material, etc.
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... type 1..1CodeableConceptCode that specifies the property being represented
Binding: DeviceType (example): Device property type.

.... value[x] 1..1Value of the property
..... valueQuantityQuantity
..... valueCodeableConceptCodeableConcept
..... valueStringstring
..... valueBooleanboolean
..... valueIntegerinteger
..... valueRangeRange
..... valueAttachmentAttachment
... mode 0..1CodeableConceptThe designated condition for performing a task
Binding: FHIRDeviceOperationMode (example): Operational mode of a device.

... cycle 0..1CountThe series of occurrences that repeats during the operation of the device
... duration 0..1DurationA measurement of time during the device's operation (e.g., days, hours, mins, etc.)
... owner 0..1Reference(Organization)Organization responsible for device
... contact 0..*ContactPointDetails for human/organization for support
... location S0..1Reference(RTLS Location Resource Profile)Where the device is found
... url 0..1uriNetwork address to contact device
... endpoint 0..*Reference(Endpoint)Technical endpoints providing access to electronic services provided by the device
... gateway 0..*CodeableReference(Device)Linked device acting as a communication/data collector, translator or controller
... note 0..*AnnotationDevice notes and comments
... safety Σ0..*CodeableConceptSafety Characteristics of Device
Binding: DeviceSafety (example)
... parent 0..1Reference(Device)The higher level or encompassing device that this device is a logical part of

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Device.languagerequiredAllLanguages
Device.udiCarrier.entryTyperequiredUDIEntryType
Device.statusrequiredFHIRDeviceStatus
Device.availabilityStatusextensibleFHIRDeviceAvailabilityStatus
Device.name.typerequiredDeviceNameType
Device.categoryexampleFHIRDeviceCategory
Device.typeexampleDeviceType
Device.version.typeexampleDeviceVersionType
Device.conformsTo.categoryexampleDeviceSpecificationCategory
Device.conformsTo.specificationexampleDeviceSpecificationType
Device.property.typeexampleDeviceType
Device.modeexampleFHIRDeviceOperationMode
Device.safetyexampleDeviceSafety

Constraints

IdGradePath(s)DetailsRequirements
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

This structure is derived from Device

Summary

Mandatory: 1 element
Must-Support: 2 elements

Structures

This structure refers to these other structures:

Differential View

This structure is derived from Device

NameFlagsCard.TypeDescription & Constraintsdoco
.. Device 0..*DeviceItem used in healthcare
... identifier S1..*IdentifierInstance identifier
... status 0..1codeA status of "active" indicates that a tracking tag is in use (regardless of current assignment to a subject) and "inactive" indicates that a tracking tag is no longer in use.
... location S0..1Reference(RTLS Location Resource Profile)Where the device is found

doco Documentation for this format

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Device C0..*DeviceItem used in healthcare
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... contained 0..*ResourceContained, inline Resources
... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
... status ?!Σ0..1codeA status of "active" indicates that a tracking tag is in use (regardless of current assignment to a subject) and "inactive" indicates that a tracking tag is no longer in use.
Binding: FHIRDeviceStatus (required): The record status of the device.

... location S0..1Reference(RTLS Location Resource Profile)Where the device is found

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Device.statusrequiredFHIRDeviceStatus

Constraints

IdGradePath(s)DetailsRequirements
dev-1errorDeviceonly one Device.name.display SHALL be true when there is more than one Device.name
: name.where(display=true).count() <= 1
dom-2errorDeviceIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorDeviceIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorDeviceIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorDeviceIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceDeviceA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Device C0..*DeviceItem used in healthcare
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: AllLanguages (required): IETF language tag for a human language

... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
... identifier S1..*IdentifierInstance identifier
... displayName 0..1stringThe name used to display by default when the device is referenced
... definition 0..1CodeableReference(DeviceDefinition)The reference to the definition for the device
... udiCarrier Σ0..*BackboneElementUnique Device Identifier (UDI) Barcode string
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... deviceIdentifier Σ1..1stringMandatory fixed portion of UDI
.... issuer Σ1..1uriUDI Issuing Organization
.... jurisdiction 0..1uriRegional UDI authority
.... carrierAIDC Σ0..1base64BinaryUDI Machine Readable Barcode String
.... carrierHRF Σ0..1stringUDI Human Readable Barcode String
.... entryType 0..1codebarcode | rfid | manual | card | self-reported | electronic-transmission | unknown
Binding: UDIEntryType (required): Codes to identify how UDI data was entered.

... status ?!Σ0..1codeA status of "active" indicates that a tracking tag is in use (regardless of current assignment to a subject) and "inactive" indicates that a tracking tag is no longer in use.
Binding: FHIRDeviceStatus (required): The record status of the device.

... availabilityStatus 0..1CodeableConceptlost | damaged | destroyed | available
Binding: FHIRDeviceAvailabilityStatus (extensible): The availability status reason of the device.

... biologicalSourceEvent 0..1IdentifierAn identifier that supports traceability to the event during which material in this product from one or more biological entities was obtained or pooled
... manufacturer 0..1stringName of device manufacturer
... manufactureDate 0..1dateTimeDate when the device was made
... expirationDate 0..1dateTimeDate and time of expiry of this device (if applicable)
... lotNumber 0..1stringLot number of manufacture
... serialNumber 0..1stringSerial number assigned by the manufacturer
... name C0..*BackboneElementThe name or names of the device as known to the manufacturer and/or patient
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... value Σ1..1stringThe term that names the device
.... type Σ1..1coderegistered-name | user-friendly-name | patient-reported-name
Binding: DeviceNameType (required): The type of name the device is referred by.

.... display ?!ΣC0..1booleanThe preferred device name
... modelNumber 0..1stringThe manufacturer's model number for the device
... partNumber 0..1stringThe part number or catalog number of the device
... category 0..*CodeableConceptIndicates a high-level grouping of the device
Binding: FHIRDeviceCategory (example): Categories of medical devices.


... type 0..*CodeableConceptThe kind or type of device
Binding: DeviceType (example): Codes to identify medical devices.


... version 0..*BackboneElementThe actual design of the device or software version running on the device
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... type 0..1CodeableConceptThe type of the device version, e.g. manufacturer, approved, internal
Binding: DeviceVersionType (example): The type of version indicated for the device.

.... component 0..1IdentifierThe hardware or software module of the device to which the version applies
.... installDate 0..1dateTimeThe date the version was installed on the device
.... value 1..1stringThe version text
... conformsTo 0..*BackboneElementIdentifies the standards, specifications, or formal guidances for the capabilities supported by the device
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... category 0..1CodeableConceptDescribes the common type of the standard, specification, or formal guidance. communication | performance | measurement
Binding: DeviceSpecificationCategory (example): The kind of standards used by the device.

.... specification 1..1CodeableConceptIdentifies the standard, specification, or formal guidance that the device adheres to
Binding: DeviceSpecificationType (example): The type of version indicated for the device.

.... version 0..1stringSpecific form or variant of the standard
... property 0..*BackboneElementInherent, essentially fixed, characteristics of the device. e.g., time properties, size, material, etc.
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... type 1..1CodeableConceptCode that specifies the property being represented
Binding: DeviceType (example): Device property type.

.... value[x] 1..1Value of the property
..... valueQuantityQuantity
..... valueCodeableConceptCodeableConcept
..... valueStringstring
..... valueBooleanboolean
..... valueIntegerinteger
..... valueRangeRange
..... valueAttachmentAttachment
... mode 0..1CodeableConceptThe designated condition for performing a task
Binding: FHIRDeviceOperationMode (example): Operational mode of a device.

... cycle 0..1CountThe series of occurrences that repeats during the operation of the device
... duration 0..1DurationA measurement of time during the device's operation (e.g., days, hours, mins, etc.)
... owner 0..1Reference(Organization)Organization responsible for device
... contact 0..*ContactPointDetails for human/organization for support
... location S0..1Reference(RTLS Location Resource Profile)Where the device is found
... url 0..1uriNetwork address to contact device
... endpoint 0..*Reference(Endpoint)Technical endpoints providing access to electronic services provided by the device
... gateway 0..*CodeableReference(Device)Linked device acting as a communication/data collector, translator or controller
... note 0..*AnnotationDevice notes and comments
... safety Σ0..*CodeableConceptSafety Characteristics of Device
Binding: DeviceSafety (example)
... parent 0..1Reference(Device)The higher level or encompassing device that this device is a logical part of

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Device.languagerequiredAllLanguages
Device.udiCarrier.entryTyperequiredUDIEntryType
Device.statusrequiredFHIRDeviceStatus
Device.availabilityStatusextensibleFHIRDeviceAvailabilityStatus
Device.name.typerequiredDeviceNameType
Device.categoryexampleFHIRDeviceCategory
Device.typeexampleDeviceType
Device.version.typeexampleDeviceVersionType
Device.conformsTo.categoryexampleDeviceSpecificationCategory
Device.conformsTo.specificationexampleDeviceSpecificationType
Device.property.typeexampleDeviceType
Device.modeexampleFHIRDeviceOperationMode
Device.safetyexampleDeviceSafety

Constraints

IdGradePath(s)DetailsRequirements
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

This structure is derived from Device

Summary

Mandatory: 1 element
Must-Support: 2 elements

Structures

This structure refers to these other structures:

 

Other representations of profile: CSV, Excel, Schematron