R6 Ballot (2nd Draft)

Publish-box (todo)

Devicemetric.shex

Health Care Devices Work GroupMaturity Level: N/AStandards Status: InformativeCompartments: No defined compartments

Raw ShEx

ShEx statement for devicemetric

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 <code.shex>
IMPORT <Device.shex>
IMPORT <instant.shex>
IMPORT <Quantity.shex>
IMPORT <Reference.shex>
IMPORT <Identifier.shex>
IMPORT <DomainResource.shex>
IMPORT <CodeableConcept.shex>
IMPORT <BackboneElement.shex>


start=@<DeviceMetric> AND {fhir:nodeRole [fhir:treeRoot]}

# Measurement, calculation or setting capability of a medical device
<DeviceMetric> EXTENDS @<DomainResource> CLOSED {   

    a [fhir:DeviceMetric]?;
    fhir:nodeRole [fhir:treeRoot]?;

    fhir:identifier @<OneOrMore_Identifier>?;  # Instance identifier
    fhir:type @<CodeableConcept>;           # Identity of metric, for example 
                                            # Heart Rate or PEEP Setting 
    fhir:unit @<CodeableConcept>?;          # Unit of Measure for the Metric
    fhir:device @<Reference> AND {fhir:link 
    			@<Device> ? };  # Describes the link to the Device
    fhir:operationalStatus @<code> AND
    	{fhir:v @fhirvs:metric-operational-status}?;  # on | off | standby | 
                                            # entered-in-error 
    fhir:color @<code> AND
    	{fhir:v @fhirvs:color-codes}?;  # Color name (from CSS4) or #RRGGBB 
                                            # code 
    fhir:category @<CodeableConcept>;       # The kind of metric represented
    fhir:measurementFrequency @<Quantity>?;  # Indicates how often the metric is 
                                            # taken or recorded 
    fhir:calibration @<OneOrMore_DeviceMetric.calibration>?;  # Describes the calibrations that 
                                            # have been performed or that are 
                                            # required to be performed 
}  

# Describes the calibrations that have been performed or that are required to be performed
<DeviceMetric.calibration> EXTENDS @<BackboneElement> CLOSED {   
    fhir:type @<CodeableConcept>?;          # The method of calibration
    fhir:state @<code> AND
    	{fhir:v @fhirvs:metric-calibration-state}?;  # not-calibrated | 
                                            # calibration-required | calibrated 
                                            # | unspecified 
    fhir:time @<instant>?;                  # Describes the time last 
                                            # calibration has been performed 
}  

#---------------------- Cardinality Types (OneOrMore) -------------------

<OneOrMore_Identifier> CLOSED {
    rdf:first @<Identifier>  ;
    rdf:rest [rdf:nil] OR @<OneOrMore_Identifier> 
}

<OneOrMore_DeviceMetric.calibration> CLOSED {
    rdf:first @<DeviceMetric.calibration>  ;
    rdf:rest [rdf:nil] OR @<OneOrMore_DeviceMetric.calibration> 
}

#---------------------- Value Sets ------------------------

# This value set includes color codes - either the color names as defined in [CSS4](https://www.w3.org/TR/css-color-4/), or any valid RGB code (```#RRGGBB``` in Hex).
fhirvs:color-codes xsd:string #EXTERNAL

# Describes the state of a metric calibration.
fhirvs:metric-calibration-state ["not-calibrated" "calibration-required" "calibrated" "unspecified"]

# Describes the operational status of the DeviceMetric.
fhirvs:metric-operational-status ["on" "off" "standby" "entered-in-error"]


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.