Expression.xml 1 <?xml version="1.0" encoding="utf-8"?> 2 <StructureDefinition xmlns="http://hl7.org/fhir"> 3 <id value="Expression" /> 4 <meta> 5 <lastUpdated value="2019-10-31T23:29:23.356+01:00" /> 6 </meta> 7 <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status"> 8 <valueCode value="trial-use" /> 9 </extension> 10 <url value="http://hl7.org/fhir/StructureDefinition/Expression" /> 11 <version value="4.0.1" /> 12 <name value="Expression" /> 13 <status value="draft" /> 14 <date value="2019-10-31T23:29:23.0000000+01:00" /> 15 <publisher value="HL7 FHIR Standard" /> 16 <contact> 17 <telecom> 18 <system value="url" /> 19 <value value="http://hl7.org/fhir" /> 20 </telecom> 21 </contact> 22 <description value="Base StructureDefinition for Expression Type: A expression that is evaluated in a specified context and returns a value. The context of use of the expression must specify the context in which the expression is evaluated, and how the result of the expression is used." /> 23 <fhirVersion value="4.0.1" /> 24 <mapping> 25 <identity value="rim" /> 26 <uri value="http://hl7.org/v3" /> 27 <name value="RIM Mapping" /> 28 </mapping> 29 <kind value="complex-type" /> 30 <abstract value="false" /> 31 <type value="Expression" /> 32 <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Element" /> 33 <derivation value="specialization" /> 34 <snapshot> 35 <element id="Expression"> 36 <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status"> 37 <valueCode value="trial-use" /> 38 </extension> 39 <path value="Expression" /> 40 <short value="An expression that can be used to generate a value" /> 41 <definition value="A expression that is evaluated in a specified context and returns a value. The context of use of the expression must specify the context in which the expression is evaluated, and how the result of the expression is used." /> 42 <min value="0" /> 43 <max value="*" /> 44 <base> 45 <path value="Expression" /> 46 <min value="0" /> 47 <max value="*" /> 48 </base> 49 <condition value="ele-1" /> 50 <constraint> 51 <key value="ele-1" /> 52 <severity value="error" /> 53 <human value="All FHIR elements must have a @value or children" /> 54 <expression value="hasValue() or (children().count() > id.count())" /> 55 <xpath value="@value|f:*|h:div" /> 56 <source value="http://hl7.org/fhir/StructureDefinition/Element" /> 57 </constraint> 58 <constraint> 59 <key value="exp-1" /> 60 <severity value="error" /> 61 <human value="An expression or a reference must be provided" /> 62 <expression value="expression.exists() or reference.exists()" /> 63 <xpath value="exists(f:expression) or exists(f:reference)" /> 64 </constraint> 65 <isModifier value="false" /> 66 <mapping> 67 <identity value="rim" /> 68 <map value="n/a" /> 69 </mapping> 70 </element> 71 <element id="Expression.id"> 72 <path value="Expression.id" /> 73 <representation value="xmlAttr" /> 74 <short value="Unique id for inter-element referencing" /> 75 <definition value="Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces." /> 76 <min value="0" /> 77 <max value="1" /> 78 <base> 79 <path value="Element.id" /> 80 <min value="0" /> 81 <max value="1" /> 82 </base> 83 <type> 84 <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type"> 85 <valueUrl value="string" /> 86 </extension> 87 <code value="http://hl7.org/fhirpath/System.String" /> 88 </type> 89 <isModifier value="false" /> 90 <isSummary value="false" /> 91 <mapping> 92 <identity value="rim" /> 93 <map value="n/a" /> 94 </mapping> 95 </element> 96 <element id="Expression.extension"> 97 <path value="Expression.extension" /> 98 <slicing> 99 <discriminator> 100 <type value="value" /> 101 <path value="url" /> 102 </discriminator> 103 <description value="Extensions are always sliced by (at least) url" /> 104 <rules value="open" /> 105 </slicing> 106 <short value="Additional content defined by implementations" /> 107 <definition value="May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension." /> 108 <comment value="There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone." /> 109 <alias value="extensions" /> 110 <alias value="user content" /> 111 <min value="0" /> 112 <max value="*" /> 113 <base> 114 <path value="Element.extension" /> 115 <min value="0" /> 116 <max value="*" /> 117 </base> 118 <type> 119 <code value="Extension" /> 120 </type> 121 <constraint> 122 <key value="ele-1" /> 123 <severity value="error" /> 124 <human value="All FHIR elements must have a @value or children" /> 125 <expression value="hasValue() or (children().count() > id.count())" /> 126 <xpath value="@value|f:*|h:div" /> 127 <source value="http://hl7.org/fhir/StructureDefinition/Element" /> 128 </constraint> 129 <constraint> 130 <key value="ext-1" /> 131 <severity value="error" /> 132 <human value="Must have either extensions or value[x], not both" /> 133 <expression value="extension.exists() != value.exists()" /> 134 <xpath value="exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])" /> 135 <source value="http://hl7.org/fhir/StructureDefinition/Extension" /> 136 </constraint> 137 <isModifier value="false" /> 138 <isSummary value="false" /> 139 <mapping> 140 <identity value="rim" /> 141 <map value="n/a" /> 142 </mapping> 143 </element> 144 <element id="Expression.description"> 145 <path value="Expression.description" /> 146 <short value="Natural language description of the condition" /> 147 <definition value="A brief, natural language description of the condition that effectively communicates the intended semantics." /> 148 <min value="0" /> 149 <max value="1" /> 150 <base> 151 <path value="Expression.description" /> 152 <min value="0" /> 153 <max value="1" /> 154 </base> 155 <type> 156 <code value="string" /> 157 </type> 158 <constraint> 159 <key value="ele-1" /> 160 <severity value="error" /> 161 <human value="All FHIR elements must have a @value or children" /> 162 <expression value="hasValue() or (children().count() > id.count())" /> 163 <xpath value="@value|f:*|h:div" /> 164 <source value="http://hl7.org/fhir/StructureDefinition/Element" /> 165 </constraint> 166 <isModifier value="false" /> 167 <isSummary value="true" /> 168 </element> 169 <element id="Expression.name"> 170 <path value="Expression.name" /> 171 <short value="Short name assigned to expression for reuse" /> 172 <definition value="A short name assigned to the expression to allow for multiple reuse of the expression in the context where it is defined." /> 173 <min value="0" /> 174 <max value="1" /> 175 <base> 176 <path value="Expression.name" /> 177 <min value="0" /> 178 <max value="1" /> 179 </base> 180 <type> 181 <code value="id" /> 182 </type> 183 <constraint> 184 <key value="ele-1" /> 185 <severity value="error" /> 186 <human value="All FHIR elements must have a @value or children" /> 187 <expression value="hasValue() or (children().count() > id.count())" /> 188 <xpath value="@value|f:*|h:div" /> 189 <source value="http://hl7.org/fhir/StructureDefinition/Element" /> 190 </constraint> 191 <isModifier value="false" /> 192 <isSummary value="true" /> 193 </element> 194 <element id="Expression.language"> 195 <path value="Expression.language" /> 196 <short value="text/cql | text/fhirpath | application/x-fhir-query | etc." /> 197 <definition value="The media type of the language for the expression." /> 198 <min value="1" /> 199 <max value="1" /> 200 <base> 201 <path value="Expression.language" /> 202 <min value="1" /> 203 <max value="1" /> 204 </base> 205 <type> 206 <code value="code" /> 207 </type> 208 <constraint> 209 <key value="ele-1" /> 210 <severity value="error" /> 211 <human value="All FHIR elements must have a @value or children" /> 212 <expression value="hasValue() or (children().count() > id.count())" /> 213 <xpath value="@value|f:*|h:div" /> 214 <source value="http://hl7.org/fhir/StructureDefinition/Element" /> 215 </constraint> 216 <isModifier value="false" /> 217 <isSummary value="true" /> 218 <binding> 219 <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet"> 220 <valueCanonical value="http://www.rfc-editor.org/bcp/bcp13.txt" /> 221 </extension> 222 <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName"> 223 <valueString value="ExpressionLanguage" /> 224 </extension> 225 <strength value="extensible" /> 226 <description value="The media type of the expression language." /> 227 <valueSet value="http://hl7.org/fhir/ValueSet/expression-language" /> 228 </binding> 229 </element> 230 <element id="Expression.expression"> 231 <path value="Expression.expression" /> 232 <short value="Expression in specified language" /> 233 <definition value="An expression in the specified language that returns a value." /> 234 <min value="0" /> 235 <max value="1" /> 236 <base> 237 <path value="Expression.expression" /> 238 <min value="0" /> 239 <max value="1" /> 240 </base> 241 <type> 242 <code value="string" /> 243 </type> 244 <constraint> 245 <key value="ele-1" /> 246 <severity value="error" /> 247 <human value="All FHIR elements must have a @value or children" /> 248 <expression value="hasValue() or (children().count() > id.count())" /> 249 <xpath value="@value|f:*|h:div" /> 250 <source value="http://hl7.org/fhir/StructureDefinition/Element" /> 251 </constraint> 252 <isModifier value="false" /> 253 <isSummary value="true" /> 254 </element> 255 <element id="Expression.reference"> 256 <path value="Expression.reference" /> 257 <short value="Where the expression is found" /> 258 <definition value="A URI that defines where the expression is found." /> 259 <comment value="If both a reference and an expression is found, the reference SHALL point to the same expression." /> 260 <min value="0" /> 261 <max value="1" /> 262 <base> 263 <path value="Expression.reference" /> 264 <min value="0" /> 265 <max value="1" /> 266 </base> 267 <type> 268 <code value="uri" /> 269 </type> 270 <constraint> 271 <key value="ele-1" /> 272 <severity value="error" /> 273 <human value="All FHIR elements must have a @value or children" /> 274 <expression value="hasValue() or (children().count() > id.count())" /> 275 <xpath value="@value|f:*|h:div" /> 276 <source value="http://hl7.org/fhir/StructureDefinition/Element" /> 277 </constraint> 278 <isModifier value="false" /> 279 <isSummary value="true" /> 280 </element> 281 </snapshot> 282 <differential> 283 <element id="Expression"> 284 <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status"> 285 <valueCode value="trial-use" /> 286 </extension> 287 <path value="Expression" /> 288 <short value="An expression that can be used to generate a value" /> 289 <definition value="A expression that is evaluated in a specified context and returns a value. The context of use of the expression must specify the context in which the expression is evaluated, and how the result of the expression is used." /> 290 <min value="0" /> 291 <max value="*" /> 292 <constraint> 293 <key value="exp-1" /> 294 <severity value="error" /> 295 <human value="An expression or a reference must be provided" /> 296 <expression value="expression.exists() or reference.exists()" /> 297 <xpath value="exists(f:expression) or exists(f:reference)" /> 298 </constraint> 299 </element> 300 <element id="Expression.description"> 301 <path value="Expression.description" /> 302 <short value="Natural language description of the condition" /> 303 <definition value="A brief, natural language description of the condition that effectively communicates the intended semantics." /> 304 <min value="0" /> 305 <max value="1" /> 306 <type> 307 <code value="string" /> 308 </type> 309 <isSummary value="true" /> 310 </element> 311 <element id="Expression.name"> 312 <path value="Expression.name" /> 313 <short value="Short name assigned to expression for reuse" /> 314 <definition value="A short name assigned to the expression to allow for multiple reuse of the expression in the context where it is defined." /> 315 <min value="0" /> 316 <max value="1" /> 317 <type> 318 <code value="id" /> 319 </type> 320 <isSummary value="true" /> 321 </element> 322 <element id="Expression.language"> 323 <path value="Expression.language" /> 324 <short value="text/cql | text/fhirpath | application/x-fhir-query | etc." /> 325 <definition value="The media type of the language for the expression." /> 326 <min value="1" /> 327 <max value="1" /> 328 <type> 329 <code value="code" /> 330 </type> 331 <isSummary value="true" /> 332 <binding> 333 <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet"> 334 <valueCanonical value="http://www.rfc-editor.org/bcp/bcp13.txt" /> 335 </extension> 336 <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName"> 337 <valueString value="ExpressionLanguage" /> 338 </extension> 339 <strength value="extensible" /> 340 <description value="The media type of the expression language." /> 341 <valueSet value="http://hl7.org/fhir/ValueSet/expression-language" /> 342 </binding> 343 </element> 344 <element id="Expression.expression"> 345 <path value="Expression.expression" /> 346 <short value="Expression in specified language" /> 347 <definition value="An expression in the specified language that returns a value." /> 348 <min value="0" /> 349 <max value="1" /> 350 <type> 351 <code value="string" /> 352 </type> 353 <isSummary value="true" /> 354 </element> 355 <element id="Expression.reference"> 356 <path value="Expression.reference" /> 357 <short value="Where the expression is found" /> 358 <definition value="A URI that defines where the expression is found." /> 359 <comment value="If both a reference and an expression is found, the reference SHALL point to the same expression." /> 360 <min value="0" /> 361 <max value="1" /> 362 <type> 363 <code value="uri" /> 364 </type> 365 <isSummary value="true" /> 366 </element> 367 </differential> 368 </StructureDefinition>