FoundationThis is the Continuous Integration Build of FHIR (will be incorrect/inconsistent at times).
See the Directory of published versions
| Orders and Observations Work Group | Maturity Level: N/A | Standards Status: Informative | Compartments: Device |
ShEx statement for device
PREFIX fhir: <http://hl7.org/fhir/>
PREFIX fhirvs: <http://hl7.org/fhir/ValueSet/>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
IMPORT <uri.shex>
IMPORT <code.shex>
IMPORT <Range.shex>
IMPORT <string.shex>
IMPORT <boolean.shex>
IMPORT <integer.shex>
IMPORT <dateTime.shex>
IMPORT <Location.shex>
IMPORT <Quantity.shex>
IMPORT <Reference.shex>
IMPORT <Identifier.shex>
IMPORT <Annotation.shex>
IMPORT <Attachment.shex>
IMPORT <ContactPoint.shex>
IMPORT <base64Binary.shex>
IMPORT <DomainResource.shex>
IMPORT <CodeableConcept.shex>
IMPORT <BackboneElement.shex>
IMPORT <CodeableReference.shex>
start=@<Device> AND {fhir:nodeRole [fhir:treeRoot]}
# Item used in healthcare
<Device> EXTENDS @<DomainResource> CLOSED {
a [fhir:Device]?;fhir:nodeRole [fhir:treeRoot]?;
fhir:identifier @<OneOrMore_Identifier>?; # Instance identifier
fhir:definition @<Reference> AND {fhir:link
@<DeviceDefinition> ? }?; # The reference to the definition
# for the device
fhir:udiCarrier @<OneOrMore_Device.udiCarrier>?; # Unique Device Identifier (UDI)
# value
fhir:status @<code> AND
{fhir:v @fhirvs:device-status}?; # active | inactive |
# entered-in-error
fhir:availabilityStatus @<CodeableConcept>?; # lost | damaged | destroyed |
# available
fhir:biologicalSourceEvent @<Identifier>?; # A production identifier of the
# donation, collection, or pooling
# event from which biological
# material in this device was
# derived
fhir:manufacturer @<string>?; # Name of device manufacturer
fhir:manufactureDate @<dateTime>?; # A production identifier that
# indicates the date when the device
# was made
fhir:expirationDate @<dateTime>?; # A production identifier that
# indicates the date and time of
# expiry of this device (if
# applicable)
fhir:lotNumber @<string>?; # A production identifier that
# indicates the Lot number of
# manufacture
fhir:serialNumber @<string>?; # A production identifier that
# indicates the Serial number
# assigned by the manufacturer
fhir:name @<OneOrMore_Device.name>?; # The name or names of the device as
# known to the manufacturer and/or
# patient
fhir:modelNumber @<string>?; # The manufacturer's model number
# for the device
fhir:partNumber @<string>?; # The part number or catalog number
# of the device
fhir:category @<OneOrMore_CodeableConcept>?; # Indicates a high-level grouping of
# the device
fhir:type @<OneOrMore_CodeableConcept>?; # The kind or type of device
fhir:deviceVersion @<OneOrMore_Device.deviceVersion>?; # The actual design of the device or
# software version running on the
# device
fhir:conformsTo @<OneOrMore_Device.conformsTo>?; # Identifies the standards,
# specifications, or formal
# guidances for the capabilities
# supported by the device
fhir:property @<OneOrMore_Device.property>?; # Inherent, essentially fixed,
# characteristics of the device.
# e.g., time properties, size,
# material, etc.
fhir:additive @<OneOrMore_Device.additive>?; # Material added to a container
# device
fhir:contact @<OneOrMore_ContactPoint>?; # Details for human/organization for
# support
fhir:location @<Reference> AND {fhir:link
@<Location> ? }?; # Where the device is found
fhir:note @<OneOrMore_Annotation>?; # Device notes and comments
fhir:safety @<OneOrMore_CodeableConcept>?; # Safety Characteristics of Device
fhir:parent @<Reference> AND {fhir:link
@<Device> ? }?; # The higher level or encompassing
# device that this device is a
# logical part of
}
# Unique Device Identifier (UDI) value
<Device.udiCarrier> EXTENDS @<BackboneElement> CLOSED {
fhir:deviceIdentifier @<string>; # Mandatory fixed portion of UDI
fhir:deviceIdentifierSystem @<uri>?; # The namespace for the device
# identifier value
fhir:issuer @<uri>; # UDI Issuing Organization
fhir:jurisdiction @<uri>?; # Regional UDI authority
fhir:carrierAIDC @<base64Binary>?; # UDI Machine Readable value
fhir:carrierHRF @<string>?; # UDI Human Readable value
fhir:entryType @<code> AND
{fhir:v @fhirvs:udi-entry-type}?; # barcode | rfid | manual | card |
# self-reported |
# electronic-transmission | unknown
}
# Identifies the standards, specifications, or formal guidances for the capabilities supported by the device
<Device.conformsTo> EXTENDS @<BackboneElement> CLOSED {
fhir:category @<CodeableConcept>?; # Describes the common type of the
# standard, specification, or formal
# guidance. communication |
# performance | measurement
fhir:specification @<CodeableConcept>; # Identifies the standard,
# specification, or formal guidance
# that the device adheres to
fhir:version @<string>?; # Specific form or variant of the
# standard
}
# The name or names of the device as known to the manufacturer and/or patient
<Device.name> EXTENDS @<BackboneElement> CLOSED {
fhir:value @<string>; # The term that names the device
fhir:type @<CodeableConcept>; # registered-name |
# user-friendly-name |
# patient-reported-name
fhir:display @<boolean>?; # The preferred device name
}
# Inherent, essentially fixed, characteristics of the device. e.g., time properties, size, material, etc.
<Device.property> EXTENDS @<BackboneElement> CLOSED {
fhir:type @<CodeableConcept>; # Code that specifies the property
# being represented
fhir:value @<Quantity> OR
@<CodeableConcept> OR
@<string> OR
@<boolean> OR
@<integer> OR
@<Range> OR
@<Attachment> ; # Value of the property
}
# Material added to a container device
<Device.additive> EXTENDS @<BackboneElement> CLOSED {
fhir:type @<CodeableReference>; # The additive substance
fhir:quantity @<Quantity>?; # Quantity of additive substance
# within container
}
# The actual design of the device or software version running on the device
<Device.deviceVersion> EXTENDS @<BackboneElement> CLOSED {
fhir:type @<CodeableConcept>?; # The type of the device version,
# e.g. manufacturer, approved,
# internal
fhir:component @<Identifier>?; # The hardware or software module of
# the device to which the version
# applies
fhir:installDate @<dateTime>?; # The date the version was installed
# on the device
fhir:value @<string>; # The version text
}
#---------------------- Cardinality Types (OneOrMore) -------------------
<OneOrMore_Identifier> CLOSED {
rdf:first @<Identifier> ;
rdf:rest [rdf:nil] OR @<OneOrMore_Identifier>
}
<OneOrMore_Device.udiCarrier> CLOSED {
rdf:first @<Device.udiCarrier> ;
rdf:rest [rdf:nil] OR @<OneOrMore_Device.udiCarrier>
}
<OneOrMore_Device.name> CLOSED {
rdf:first @<Device.name> ;
rdf:rest [rdf:nil] OR @<OneOrMore_Device.name>
}
<OneOrMore_CodeableConcept> CLOSED {
rdf:first @<CodeableConcept> ;
rdf:rest [rdf:nil] OR @<OneOrMore_CodeableConcept>
}
<OneOrMore_Device.deviceVersion> CLOSED {
rdf:first @<Device.deviceVersion> ;
rdf:rest [rdf:nil] OR @<OneOrMore_Device.deviceVersion>
}
<OneOrMore_Device.conformsTo> CLOSED {
rdf:first @<Device.conformsTo> ;
rdf:rest [rdf:nil] OR @<OneOrMore_Device.conformsTo>
}
<OneOrMore_Device.property> CLOSED {
rdf:first @<Device.property> ;
rdf:rest [rdf:nil] OR @<OneOrMore_Device.property>
}
<OneOrMore_Device.additive> CLOSED {
rdf:first @<Device.additive> ;
rdf:rest [rdf:nil] OR @<OneOrMore_Device.additive>
}
<OneOrMore_ContactPoint> CLOSED {
rdf:first @<ContactPoint> ;
rdf:rest [rdf:nil] OR @<OneOrMore_ContactPoint>
}
<OneOrMore_Annotation> CLOSED {
rdf:first @<Annotation> ;
rdf:rest [rdf:nil] OR @<OneOrMore_Annotation>
}
#---------------------- Value Sets ------------------------
# The status of the Device record.
fhirvs:device-status ["active" "inactive" "entered-in-error"]
# Codes to identify how UDI data was entered.
fhirvs:udi-entry-type ["barcode" "rfid" "manual" "card" "self-reported" "electronic-transmission" "unknown"]
Usage note: every effort has been made to ensure that the ShEx files are correct and useful, but they are not a normative part of the specification.
FHIR ®© HL7.org 2011+. FHIR R6 hl7.fhir.core#6.0.0-ballot3 generated on Thu, Oct 23, 2025 19:45+0000.
Links: Search |
Version History |
Contents |
Glossary |
QA |
Compare to R5 |
|
Propose a change