Release 5

This page is part of the FHIR Specification (v5.0.0: R5 - STU). This is a downloaded copy of the specification. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3

Dosage.shex

Modeling and Methodology Work GroupMaturity Level: N/AStandards Status: Informative

Raw ShEx

ShEx statement for Dosage

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 <Ratio.shex>
IMPORT <Range.shex>
IMPORT <string.shex>
IMPORT <Timing.shex>
IMPORT <integer.shex>
IMPORT <boolean.shex>
IMPORT <Element.shex>
IMPORT <Quantity.shex>
IMPORT <BackboneType.shex>
IMPORT <SimpleQuantity.shex>
IMPORT <CodeableConcept.shex>

# How the medication is/was taken or should be taken
<Dosage> EXTENDS @<BackboneType> CLOSED {   

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

    fhir:sequence @<integer>?;              # The order of the dosage 
                                            # instructions 
    fhir:text @<string>?;                   # Free text dosage instructions e.g. 
                                            # SIG 
    fhir:additionalInstruction @<OneOrMore_CodeableConcept>?;  # Supplemental instruction or 
                                            # warnings to the patient - e.g. 
                                            # "with meals", "may cause 
                                            # drowsiness" 
    fhir:patientInstruction @<string>?;     # Patient or consumer oriented 
                                            # instructions 
    fhir:timing @<Timing>?;                 # When medication should be 
                                            # administered 
    fhir:asNeeded @<boolean>?;              # Take "as needed"
    fhir:asNeededFor @<OneOrMore_CodeableConcept>?;  # Take "as needed" (for x)
    fhir:site @<CodeableConcept>?;          # Body site to administer to
    fhir:route @<CodeableConcept>?;         # How drug should enter body
    fhir:method @<CodeableConcept>?;        # Technique for administering 
                                            # medication 
    fhir:doseAndRate @<OneOrMore_Element>?;  # Amount of medication administered, 
                                            # to be administered or typical 
                                            # amount to be administered 
    fhir:maxDosePerPeriod @<OneOrMore_Ratio>?;  # Upper limit on medication per unit 
                                            # of time 
    fhir:maxDosePerAdministration @<Quantity>?;  # Upper limit on medication per 
                                            # administration 
    fhir:maxDosePerLifetime @<Quantity>?;   # Upper limit on medication per 
                                            # lifetime of the patient 
}  

# Amount of medication administered, to be administered or typical amount to be administered
<Dosage.doseAndRate> EXTENDS @<Element> CLOSED {   
    fhir:type @<CodeableConcept>?;          # The kind of dose or rate specified
    fhir:dose @<Range>  OR 
    			@<SimpleQuantity>  ?;  # Amount of medication per dose
    fhir:rate @<Ratio>  OR 
    			@<Range>  OR 
    			@<SimpleQuantity>  ?;  # Amount of medication per unit of 
                                            # time 
}  

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

<OneOrMore_CodeableConcept> CLOSED {
    rdf:first @<CodeableConcept>  ;
    rdf:rest [rdf:nil] OR @<OneOrMore_CodeableConcept> 
}

<OneOrMore_Element> CLOSED {
    rdf:first @<Element>  ;
    rdf:rest [rdf:nil] OR @<OneOrMore_Element> 
}

<OneOrMore_Ratio> CLOSED {
    rdf:first @<Ratio>  ;
    rdf:rest [rdf:nil] OR @<OneOrMore_Ratio> 
}


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.