FoundationThis page is part of the FHIR Specification (v5.0.0: R5 - STU). This is the current published version in it's permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions
. Page versions: R5 R4B R4
| Orders and Observations Work Group | Maturity Level: N/A | Standards Status: Informative | Compartments: No defined compartments |
ShEx statement for devicedefinition
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 <Period.shex>
IMPORT <Coding.shex>
IMPORT <integer.shex>
IMPORT <boolean.shex>
IMPORT <markdown.shex>
IMPORT <Quantity.shex>
IMPORT <Reference.shex>
IMPORT <Identifier.shex>
IMPORT <Annotation.shex>
IMPORT <Attachment.shex>
IMPORT <Organization.shex>
IMPORT <ContactPoint.shex>
IMPORT <UsageContext.shex>
IMPORT <DomainResource.shex>
IMPORT <CodeableConcept.shex>
IMPORT <BackboneElement.shex>
IMPORT <RelatedArtifact.shex>
IMPORT <ProductShelfLife.shex>
IMPORT <CodeableReference.shex>
start=@<DeviceDefinition> AND {fhir:nodeRole [fhir:treeRoot]}
# An instance of a medical-related component of a medical device
<DeviceDefinition> EXTENDS @<DomainResource> CLOSED {
a [fhir:DeviceDefinition]?;
fhir:nodeRole [fhir:treeRoot]?;
fhir:description @<markdown>?; # Additional information to describe
# the device
fhir:identifier @<OneOrMore_Identifier>?; # Instance identifier
fhir:udiDeviceIdentifier @<OneOrMore_DeviceDefinition.udiDeviceIdentifier>?; # Unique Device Identifier (UDI)
# Barcode string
fhir:regulatoryIdentifier @<OneOrMore_DeviceDefinition.regulatoryIdentifier>?; # Regulatory identifier(s)
# associated with this device
fhir:partNumber @<string>?; # The part number or catalog number
# of the device
fhir:manufacturer @<Reference> AND {fhir:link
@<Organization> ? }?; # Name of device manufacturer
fhir:deviceName @<OneOrMore_DeviceDefinition.deviceName>?; # The name or names of the device as
# given by the manufacturer
fhir:modelNumber @<string>?; # The catalog or model number for
# the device for example as defined
# by the manufacturer
fhir:classification @<OneOrMore_DeviceDefinition.classification>?; # What kind of device or device
# system this is
fhir:conformsTo @<OneOrMore_DeviceDefinition.conformsTo>?; # Identifies the standards,
# specifications, or formal
# guidances for the capabilities
# supported by the device
fhir:hasPart @<OneOrMore_DeviceDefinition.hasPart>?; # A device, part of the current one
fhir:packaging @<OneOrMore_DeviceDefinition.packaging>?; # Information about the packaging of
# the device, i.e. how the device is
# packaged
fhir:version @<OneOrMore_DeviceDefinition.version>?; # The version of the device or
# software
fhir:safety @<OneOrMore_CodeableConcept>?; # Safety characteristics of the
# device
fhir:shelfLifeStorage @<OneOrMore_ProductShelfLife>?; # Shelf Life and storage information
fhir:languageCode @<OneOrMore_CodeableConcept>?; # Language code for the
# human-readable text strings
# produced by the device (all
# supported)
fhir:property @<OneOrMore_DeviceDefinition.property>?; # Inherent, essentially fixed,
# characteristics of this kind of
# device, e.g., time properties,
# size, etc
fhir:owner @<Reference> AND {fhir:link
@<Organization> ? }?; # Organization responsible for device
fhir:contact @<OneOrMore_ContactPoint>?; # Details for human/organization for
# support
fhir:link @<OneOrMore_DeviceDefinition.link>?; # An associated device, attached to,
# used with, communicating with or
# linking a previous or new device
# model to the focal device
fhir:note @<OneOrMore_Annotation>?; # Device notes and comments
fhir:material @<OneOrMore_DeviceDefinition.material>?; # A substance used to create the
# material(s) of which the device is
# made
fhir:productionIdentifierInUDI @<OneOrMore_code> AND
{fhir:v @fhirvs:device-productidentifierinudi}?; # lot-number | manufactured-date |
# serial-number | expiration-date |
# biological-source |
# software-version
fhir:guideline @<DeviceDefinition.guideline>?; # Information aimed at providing
# directions for the usage of this
# model of device
fhir:correctiveAction @<DeviceDefinition.correctiveAction>?; # Tracking of latest field safety
# corrective action
fhir:chargeItem @<OneOrMore_DeviceDefinition.chargeItem>?; # Billing code or reference
# associated with the device
}
# The version of the device or software
<DeviceDefinition.version> 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:value @<string>; # The version text
}
# Unique Device Identifier (UDI) Barcode string
<DeviceDefinition.udiDeviceIdentifier> EXTENDS @<BackboneElement> CLOSED {
fhir:deviceIdentifier @<string>; # The identifier that is to be
# associated with every Device that
# references this DeviceDefintiion
# for the issuer and jurisdiction
# provided in the
# DeviceDefinition.udiDeviceIdenti-
# fier
fhir:issuer @<uri>; # The organization that assigns the
# identifier algorithm
fhir:jurisdiction @<uri>; # The jurisdiction to which the
# deviceIdentifier applies
fhir:marketDistribution @<OneOrMore_DeviceDefinition.udiDeviceIdentifier.marketDistribution>?; # Indicates whether and when the
# device is available on the market
}
# Information about the packaging of the device, i.e. how the device is packaged
<DeviceDefinition.packaging> EXTENDS @<BackboneElement> CLOSED {
fhir:identifier @<Identifier>?; # Business identifier of the
# packaged medication
fhir:type @<CodeableConcept>?; # A code that defines the specific
# type of packaging
fhir:count @<integer>?; # The number of items contained in
# the package (devices or
# sub-packages)
fhir:distributor @<OneOrMore_DeviceDefinition.packaging.distributor>?; # An organization that distributes
# the packaged device
fhir:udiDeviceIdentifier @<OneOrMore_DeviceDefinition.udiDeviceIdentifier>?; # Unique Device Identifier (UDI)
# Barcode string on the packaging
fhir:packaging @<OneOrMore_DeviceDefinition.packaging>?; # Allows packages within packages
}
# Information aimed at providing directions for the usage of this model of device
<DeviceDefinition.guideline> EXTENDS @<BackboneElement> CLOSED {
fhir:useContext @<OneOrMore_UsageContext>?; # The circumstances that form the
# setting for using the device
fhir:usageInstruction @<markdown>?; # Detailed written and visual
# directions for the user on how to
# use the device
fhir:relatedArtifact @<OneOrMore_RelatedArtifact>?; # A source of information or
# reference for this guideline
fhir:indication @<OneOrMore_CodeableConcept>?; # A clinical condition for which the
# device was designed to be used
fhir:contraindication @<OneOrMore_CodeableConcept>?; # A specific situation when a device
# should not be used because it may
# cause harm
fhir:warning @<OneOrMore_CodeableConcept>?; # Specific hazard alert information
# that a user needs to know before
# using the device
fhir:intendedUse @<string>?; # A description of the general
# purpose or medical use of the
# device or its function
}
# Indicates whether and when the device is available on the market
<DeviceDefinition.udiDeviceIdentifier.marketDistribution> EXTENDS @<BackboneElement> CLOSED {
fhir:marketPeriod @<Period>; # Begin and end dates for the
# commercial distribution of the
# device
fhir:subJurisdiction @<uri>; # National state or territory where
# the device is commercialized
}
# Billing code or reference associated with the device
<DeviceDefinition.chargeItem> EXTENDS @<BackboneElement> CLOSED {
fhir:chargeItemCode @<CodeableReference>; # The code or reference for the
# charge item
fhir:count @<Quantity>; # Coefficient applicable to the
# billing code
fhir:effectivePeriod @<Period>?; # A specific time period in which
# this charge item applies
fhir:useContext @<OneOrMore_UsageContext>?; # The context to which this charge
# item applies
}
# A device, part of the current one
<DeviceDefinition.hasPart> EXTENDS @<BackboneElement> CLOSED {
fhir:reference @<Reference> AND {fhir:link
@<DeviceDefinition> ? }; # Reference to the part
fhir:count @<integer>?; # Number of occurrences of the part
}
# An organization that distributes the packaged device
<DeviceDefinition.packaging.distributor> EXTENDS @<BackboneElement> CLOSED {
fhir:name @<string>?; # Distributor's human-readable name
fhir:organizationReference @<OneOrMore_Reference_Organization>?; # Distributor as an Organization
# resource
}
# Allows packages within packages
<DeviceDefinition.packaging.packagingnull> CLOSED {
}
# What kind of device or device system this is
<DeviceDefinition.classification> EXTENDS @<BackboneElement> CLOSED {
fhir:type @<CodeableConcept>; # A classification or risk class of
# the device model
fhir:justification @<OneOrMore_RelatedArtifact>?; # Further information qualifying
# this classification of the device
# model
}
# The name or names of the device as given by the manufacturer
<DeviceDefinition.deviceName> EXTENDS @<BackboneElement> CLOSED {
fhir:name @<string>; # A name that is used to refer to
# the device
fhir:type @<code> AND
{fhir:v @fhirvs:device-nametype}; # registered-name |
# user-friendly-name |
# patient-reported-name
}
# Tracking of latest field safety corrective action
<DeviceDefinition.correctiveAction> EXTENDS @<BackboneElement> CLOSED {
fhir:recall @<boolean>; # Whether the corrective action was
# a recall
fhir:scope @<code> AND
{fhir:v @fhirvs:device-correctiveactionscope}?; # model | lot-numbers |
# serial-numbers
fhir:period @<Period>; # Start and end dates of the
# corrective action
}
# A substance used to create the material(s) of which the device is made
<DeviceDefinition.material> EXTENDS @<BackboneElement> CLOSED {
fhir:substance @<CodeableConcept>; # A relevant substance that the
# device contains, may contain, or
# is made of
fhir:alternate @<boolean>?; # Indicates an alternative material
# of the device
fhir:allergenicIndicator @<boolean>?; # Whether the substance is a known
# or suspected allergen
}
# An associated device, attached to, used with, communicating with or linking a previous or new device model to the focal device
<DeviceDefinition.link> EXTENDS @<BackboneElement> CLOSED {
fhir:relation @<Coding>; # The type indicates the
# relationship of the related device
# to the device instance
fhir:relatedDevice @<CodeableReference>; # A reference to the linked device
}
# Regulatory identifier(s) associated with this device
<DeviceDefinition.regulatoryIdentifier> EXTENDS @<BackboneElement> CLOSED {
fhir:type @<code> AND
{fhir:v @fhirvs:devicedefinition-regulatory-identifier-type}; # basic | master | license
fhir:deviceIdentifier @<string>; # The identifier itself
fhir:issuer @<uri>; # The organization that issued this
# identifier
fhir:jurisdiction @<uri>; # The jurisdiction to which the
# deviceIdentifier applies
}
# Inherent, essentially fixed, characteristics of this kind of device, e.g., time properties, size, etc
<DeviceDefinition.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
}
# Identifies the standards, specifications, or formal guidances for the capabilities supported by the device
<DeviceDefinition.conformsTo> EXTENDS @<BackboneElement> CLOSED {
fhir:category @<CodeableConcept>?; # Describes the common type of the
# standard, specification, or formal
# guidance
fhir:specification @<CodeableConcept>; # Identifies the standard,
# specification, or formal guidance
# that the device adheres to the
# Device Specification type
fhir:version @<OneOrMore_string>?; # The specific form or variant of
# the standard, specification or
# formal guidance
fhir:source @<OneOrMore_RelatedArtifact>?; # Standard, regulation,
# certification, or guidance
# website, document, or other
# publication, or similar,
# supporting the conformance
}
#---------------------- Cardinality Types (OneOrMore) -------------------
<OneOrMore_Identifier> CLOSED {
rdf:first @<Identifier> ;
rdf:rest [rdf:nil] OR @<OneOrMore_Identifier>
}
<OneOrMore_DeviceDefinition.udiDeviceIdentifier> CLOSED {
rdf:first @<DeviceDefinition.udiDeviceIdentifier> ;
rdf:rest [rdf:nil] OR @<OneOrMore_DeviceDefinition.udiDeviceIdentifier>
}
<OneOrMore_DeviceDefinition.regulatoryIdentifier> CLOSED {
rdf:first @<DeviceDefinition.regulatoryIdentifier> ;
rdf:rest [rdf:nil] OR @<OneOrMore_DeviceDefinition.regulatoryIdentifier>
}
<OneOrMore_DeviceDefinition.deviceName> CLOSED {
rdf:first @<DeviceDefinition.deviceName> ;
rdf:rest [rdf:nil] OR @<OneOrMore_DeviceDefinition.deviceName>
}
<OneOrMore_DeviceDefinition.classification> CLOSED {
rdf:first @<DeviceDefinition.classification> ;
rdf:rest [rdf:nil] OR @<OneOrMore_DeviceDefinition.classification>
}
<OneOrMore_DeviceDefinition.conformsTo> CLOSED {
rdf:first @<DeviceDefinition.conformsTo> ;
rdf:rest [rdf:nil] OR @<OneOrMore_DeviceDefinition.conformsTo>
}
<OneOrMore_DeviceDefinition.hasPart> CLOSED {
rdf:first @<DeviceDefinition.hasPart> ;
rdf:rest [rdf:nil] OR @<OneOrMore_DeviceDefinition.hasPart>
}
<OneOrMore_DeviceDefinition.packaging> CLOSED {
rdf:first @<DeviceDefinition.packaging> ;
rdf:rest [rdf:nil] OR @<OneOrMore_DeviceDefinition.packaging>
}
<OneOrMore_DeviceDefinition.version> CLOSED {
rdf:first @<DeviceDefinition.version> ;
rdf:rest [rdf:nil] OR @<OneOrMore_DeviceDefinition.version>
}
<OneOrMore_CodeableConcept> CLOSED {
rdf:first @<CodeableConcept> ;
rdf:rest [rdf:nil] OR @<OneOrMore_CodeableConcept>
}
<OneOrMore_ProductShelfLife> CLOSED {
rdf:first @<ProductShelfLife> ;
rdf:rest [rdf:nil] OR @<OneOrMore_ProductShelfLife>
}
<OneOrMore_DeviceDefinition.property> CLOSED {
rdf:first @<DeviceDefinition.property> ;
rdf:rest [rdf:nil] OR @<OneOrMore_DeviceDefinition.property>
}
<OneOrMore_ContactPoint> CLOSED {
rdf:first @<ContactPoint> ;
rdf:rest [rdf:nil] OR @<OneOrMore_ContactPoint>
}
<OneOrMore_DeviceDefinition.link> CLOSED {
rdf:first @<DeviceDefinition.link> ;
rdf:rest [rdf:nil] OR @<OneOrMore_DeviceDefinition.link>
}
<OneOrMore_Annotation> CLOSED {
rdf:first @<Annotation> ;
rdf:rest [rdf:nil] OR @<OneOrMore_Annotation>
}
<OneOrMore_DeviceDefinition.material> CLOSED {
rdf:first @<DeviceDefinition.material> ;
rdf:rest [rdf:nil] OR @<OneOrMore_DeviceDefinition.material>
}
<OneOrMore_code> CLOSED {
rdf:first @<code> ;
rdf:rest [rdf:nil] OR @<OneOrMore_code>
}
<OneOrMore_DeviceDefinition.chargeItem> CLOSED {
rdf:first @<DeviceDefinition.chargeItem> ;
rdf:rest [rdf:nil] OR @<OneOrMore_DeviceDefinition.chargeItem>
}
<OneOrMore_DeviceDefinition.udiDeviceIdentifier.marketDistribution> CLOSED {
rdf:first @<DeviceDefinition.udiDeviceIdentifier.marketDistribution> ;
rdf:rest [rdf:nil] OR @<OneOrMore_DeviceDefinition.udiDeviceIdentifier.marketDistribution>
}
<OneOrMore_DeviceDefinition.packaging.distributor> CLOSED {
rdf:first @<DeviceDefinition.packaging.distributor> ;
rdf:rest [rdf:nil] OR @<OneOrMore_DeviceDefinition.packaging.distributor>
}
<OneOrMore_UsageContext> CLOSED {
rdf:first @<UsageContext> ;
rdf:rest [rdf:nil] OR @<OneOrMore_UsageContext>
}
<OneOrMore_RelatedArtifact> CLOSED {
rdf:first @<RelatedArtifact> ;
rdf:rest [rdf:nil] OR @<OneOrMore_RelatedArtifact>
}
<OneOrMore_Reference_Organization> CLOSED {
rdf:first @<Reference> AND {fhir:link
@<Organization> } ;
rdf:rest [rdf:nil] OR @<OneOrMore_Reference_Organization>
}
<OneOrMore_string> CLOSED {
rdf:first @<string> ;
rdf:rest [rdf:nil] OR @<OneOrMore_string>
}
#---------------------- Value Sets ------------------------
# Device - Corrective action scope
fhirvs:device-correctiveactionscope ["model" "lot-numbers" "serial-numbers"]
# The type of name the device is referred by.
fhirvs:device-nametype ["registered-name" "user-friendly-name" "patient-reported-name"]
# Device Production Identifier in UDI
fhirvs:device-productidentifierinudi ["lot-number" "manufactured-date" "serial-number" "expiration-date" "biological-source" "software-version"]
# Regulatory Identifier type
fhirvs:devicedefinition-regulatory-identifier-type ["basic" "master" "license"]
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 R5 hl7.fhir.core#5.0.0 generated on Sun, Mar 26, 2023 15:24+1100.
Links: Search |
Version History |
Contents |
Glossary |
QA |
Compare to R4 |
Compare to R4B |
|
Propose a change