Clinical Quality Language Specification
2.0.0 - R2 STU 1

Clinical Quality Language Specification - Downloaded Version 2.0.0 See the Directory of published versions

## : CQL Language Capability Codes - XML Representation

Page standards status: Trial-use | Maturity Level: 2

Raw xml | Download

    <CodeSystem xmlns="http://hl7.org/fhir">
      <id value="cql-language-capabilities"/>
      <text>
        <status value="generated"/>
        <div xmlns="http://www.w3.org/1999/xhtml"><p class="res-header-id"><b>Generated Narrative: CodeSystem cql-language-capabilities</b></p><a name="cql-language-capabilities"> </a><a name="hccql-language-capabilities"> </a><p><b>Properties</b></p><p><b>This code system defines the following properties for its concepts</b></p><table class="grid"><tr><td><b>Name</b></td><td><b>Code</b></td><td><b>URI</b></td><td><b>Type</b></td><td><b>Description</b></td></tr><tr><td>Version</td><td>version</td><td>http://cql.hl7.org/CodeSystem/cql-capability-characteristic-codes#version</td><td>string</td><td>The version in which the capability was introduced in the specification</td></tr><tr><td>VersionTo</td><td>versionTo</td><td>http://cql.hl7.org/CodeSystem/cql-capability-characteristic-codes#versionTo</td><td>string</td><td>The last version in which the capability was included in the specification</td></tr><tr><td>Value</td><td>value</td><td>http://cql.hl7.org/CodeSystem/cql-capability-characteristic-codes#value</td><td>string</td><td>A qualifier value used to provide more detail about the capability</td></tr><tr><td>Value Meaning</td><td>valueMeaning</td><td>http://cql.hl7.org/CodeSystem/cql-capability-characteristic-codes#valueMeaning</td><td>string</td><td>A description of the meaning of qualifier values for the capability</td></tr><tr><td>Reference</td><td>reference</td><td>http://cql.hl7.org/CodeSystem/cql-capability-characteristic-codes#reference</td><td>string</td><td>A reference to the specification documenting this capability</td></tr></table><p><b>Concepts</b></p><p>This case-sensitive code system <code>http://cql.hl7.org/CodeSystem/cql-language-capabilities</code> defines the following codes in a Is-A hierarchy:</p><table class="codes"><tr><td><b>Lvl</b></td><td style="white-space:nowrap"><b>Code</b></td><td><b>Display</b></td><td><b>Definition</b></td><td><b>Version</b></td><td><b>Value</b></td><td><b>Value Meaning</b></td><td><b>Reference</b></td></tr><tr><td>1</td><td style="white-space:nowrap">decimal-precision-and-scale<a name="cql-language-capabilities-decimal-precision-and-scale"> </a></td><td>Decimal precision and scale</td><td>How many total digits (precision) and how many digits to the right of the decimal point (scale) the implementation supports for Decimal values.</td><td>1.0</td><td>28,8</td><td>The supported precision and scale of decimal values</td><td><code>https://cql.hl7.org/09-b-cqlreference.html#decimal</code></td></tr><tr><td>1</td><td style="white-space:nowrap">datetime-precision-and-scale<a name="cql-language-capabilities-datetime-precision-and-scale"> </a></td><td>Datetime precision and scale</td><td>The finest granularity (precision) and smallest increment (scale) supported for date/time values.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#datetime</code></td></tr><tr><td>1</td><td style="white-space:nowrap">ucum-unit-conversion-support<a name="cql-language-capabilities-ucum-unit-conversion-support"> </a></td><td>UCUM unit conversion support</td><td>Whether and how the engine can automatically convert between units of measure using UCUM.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#convertquantity</code></td></tr><tr><td>1</td><td style="white-space:nowrap">regex-dialect<a name="cql-language-capabilities-regex-dialect"> </a></td><td>Regex dialect</td><td>Which flavor of regular expressions the implementation supports.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#matches</code></td></tr><tr><td>1</td><td style="white-space:nowrap">supported-data-models<a name="cql-language-capabilities-supported-data-models"> </a></td><td>Supported data models</td><td>Which external models the engine can evaluate against.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/05-languagesemantics.html#data-model</code></td></tr><tr><td>1</td><td style="white-space:nowrap">expand-operator<a name="cql-language-capabilities-expand-operator"> </a></td><td>Expand operator</td><td>Expand on ValueSet/Interval.</td><td>1.3</td><td/><td/><td><code>https://cql.hl7.org/05-languagesemantics.html#collapse-and-expand-operators</code></td></tr><tr><td>1</td><td style="white-space:nowrap">fhirpath-support<a name="cql-language-capabilities-fhirpath-support"> </a></td><td>FHIRPath Support</td><td>Ability to evaluate/translate FHIRPath within CQL.</td><td>1.3</td><td/><td/><td><code>https://cql.hl7.org/16-i-fhirpathtranslation.html</code></td></tr><tr><td>1</td><td style="white-space:nowrap">precision-operators-for-decimal-and-date-time-types<a name="cql-language-capabilities-precision-operators-for-decimal-and-date-time-types"> </a></td><td>Precision operators for Decimal and Date/Time types</td><td>Operators that adjust/control precision.</td><td>1.4</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#precision</code></td></tr><tr><td>1</td><td style="white-space:nowrap">model-defined-contexts<a name="cql-language-capabilities-model-defined-contexts"> </a></td><td>Model-defined contexts</td><td>Contexts defined by the data model.</td><td>1.4</td><td/><td/><td><code>https://cql.hl7.org/05-languagesemantics.html#context-support</code></td></tr><tr><td>1</td><td style="white-space:nowrap">library-namespaces<a name="cql-language-capabilities-library-namespaces"> </a></td><td>Library namespaces</td><td>Organize libraries into namespaces.</td><td>1.4</td><td/><td/><td><code>https://cql.hl7.org/07-physicalrepresentation.html#media-types-and-namespaces</code></td></tr><tr><td>1</td><td style="white-space:nowrap">related-context-retrieves<a name="cql-language-capabilities-related-context-retrieves"> </a></td><td>Related-context retrieves</td><td>Context-relative retrieve operations.</td><td>1.4</td><td/><td/><td><code>https://cql.hl7.org/05-languagesemantics.html#retrieve-paths</code></td></tr><tr><td>1</td><td style="white-space:nowrap">unit-conversion-support<a name="cql-language-capabilities-unit-conversion-support"> </a></td><td>Unit conversion support</td><td>Convert between compatible UCUM units.</td><td>1.4</td><td/><td/><td><code>https://cql.hl7.org/05-languagesemantics.html#conversions</code></td></tr><tr><td>1</td><td style="white-space:nowrap">modular-arithmetic-for-quantities<a name="cql-language-capabilities-modular-arithmetic-for-quantities"> </a></td><td>Modular arithmetic for quantities</td><td>Modulo/remainder with Quantity.</td><td>1.5</td><td/><td/><td><code>https://cql.hl7.org/05-languagesemantics.html#quantity-arithmetic</code></td></tr><tr><td>1</td><td style="white-space:nowrap">expand-a-single-interval<a name="cql-language-capabilities-expand-a-single-interval"> </a></td><td>Expand a single interval</td><td>Expand applied to a single Interval.</td><td>1.5</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#expand</code></td></tr><tr><td>1</td><td style="white-space:nowrap">aggregate-clause<a name="cql-language-capabilities-aggregate-clause"> </a></td><td>Aggregate clause</td><td>Query clause for aggregation.</td><td>1.5</td><td/><td/><td><code>https://cql.hl7.org/05-languagesemantics.html#aggregate-clause</code></td></tr><tr><td>1</td><td style="white-space:nowrap">include-retrieves<a name="cql-language-capabilities-include-retrieves"> </a></td><td>Include retrieves</td><td>Retrieve that follows model references.</td><td>1.5</td><td/><td/><td><code>https://cql.hl7.org/05-languagesemantics.html#retrieve-paths</code></td></tr><tr><td>1</td><td style="white-space:nowrap">searchpath-retrieves<a name="cql-language-capabilities-searchpath-retrieves"> </a></td><td>Searchpath retrieves</td><td>Retrieve using a search path expression.</td><td>1.5</td><td/><td/><td><code>https://cql.hl7.org/05-languagesemantics.html#retrieve-paths</code></td></tr><tr><td>1</td><td style="white-space:nowrap">id-retrieves<a name="cql-language-capabilities-id-retrieves"> </a></td><td>Id retrieves</td><td>Retrieve by unique identifier.</td><td>1.5</td><td/><td/><td><code>https://cql.hl7.org/05-languagesemantics.html#retrieve-paths</code></td></tr><tr><td>1</td><td style="white-space:nowrap">system-data-types<a name="cql-language-capabilities-system-data-types"> </a></td><td>System Data Types</td><td>Primitive, structured, and collection types defined by the System namespace.</td><td/><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#types</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  system.integer<a name="cql-language-capabilities-system.46integer"> </a></td><td>System.Integer</td><td>Whole numbers with no fractional component.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#integer</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  system.long<a name="cql-language-capabilities-system.46long"> </a></td><td>System.Long</td><td>64-bit signed integers.</td><td>1.5</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#long</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  system.decimal<a name="cql-language-capabilities-system.46decimal"> </a></td><td>System.Decimal</td><td>Numbers with fractional precision and scale.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#decimal</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  system.string<a name="cql-language-capabilities-system.46string"> </a></td><td>System.String</td><td>Sequence of text characters.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#string</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  system.boolean<a name="cql-language-capabilities-system.46boolean"> </a></td><td>System.Boolean</td><td>Logical truth values.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#boolean</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  system.date<a name="cql-language-capabilities-system.46date"> </a></td><td>System.Date</td><td>Calendar date without time.</td><td>1.3</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#date</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  system.time<a name="cql-language-capabilities-system.46time"> </a></td><td>System.Time</td><td>Time of day without date.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#time</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  system.datetime<a name="cql-language-capabilities-system.46datetime"> </a></td><td>System.DateTime</td><td>Date and time point (optional offset).</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#datetime</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  system.quantity<a name="cql-language-capabilities-system.46quantity"> </a></td><td>System.Quantity</td><td>Numeric value with unit.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#quantity</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  system.ratio<a name="cql-language-capabilities-system.46ratio"> </a></td><td>System.Ratio</td><td>Fractional relationship between two Quantities.</td><td>1.3</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#ratio</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  system.interval<a name="cql-language-capabilities-system.46interval"> </a></td><td>System.Interval</td><td>Range over an ordered type.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#interval-operators-3</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  system.list<a name="cql-language-capabilities-system.46list"> </a></td><td>System.List</td><td>Ordered collection of elements of a type.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/63-expressionlanguagesemantics.html#collection-types</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  system.tuple<a name="cql-language-capabilities-system.46tuple"> </a></td><td>System.Tuple</td><td>Structured type with named elements.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/63-expressionlanguagesemantics.html#structured-types</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  system.choice<a name="cql-language-capabilities-system.46choice"> </a></td><td>System.Choice</td><td>Value of one among several types.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/63-expressionlanguagesemantics.html#choice-types</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  system.codesystem<a name="cql-language-capabilities-system.46codesystem"> </a></td><td>System.CodeSystem</td><td>Reference to an external code system.</td><td>1.5</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#codesystem</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  system.valueset<a name="cql-language-capabilities-system.46valueset"> </a></td><td>System.ValueSet</td><td>Reference to a set of codes.</td><td>1.5</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#valueset</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  system.vocabulary<a name="cql-language-capabilities-system.46vocabulary"> </a></td><td>System.Vocabulary</td><td>Base type for vocabulary-related types.</td><td>1.5</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#vocabulary</code></td></tr><tr><td>1</td><td style="white-space:nowrap">logical-operators<a name="cql-language-capabilities-logical-operators"> </a></td><td>Logical Operators</td><td>and, or, not, implies under 3-valued logic.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#logical-operators</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  logical-operators.and<a name="cql-language-capabilities-logical-operators.46and"> </a></td><td>Logical Operator and</td><td>The and operator returns true if both its arguments are true. If either argument is false, the result is false. Otherwise, the result is null.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#and</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  logical-operators.or<a name="cql-language-capabilities-logical-operators.46or"> </a></td><td>Logical Operator or</td><td>The or operator returns true if either of its arguments are true. If both arguments are false, the result is false. Otherwise, the result is null.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#or</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  logical-operators.not<a name="cql-language-capabilities-logical-operators.46not"> </a></td><td>Logical Operator not</td><td>The not operator returns true if the argument is false and false if the argument is true. Otherwise, the result is null.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#not</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  logical-operators.xor<a name="cql-language-capabilities-logical-operators.46xor"> </a></td><td>Logical Operator xor</td><td>The xor (exclusive or) operator returns true if one argument is true and the other is false. If both arguments are true or both arguments are false, the result is false. Otherwise, the result is null.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#xor</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  logical-operators.implies<a name="cql-language-capabilities-logical-operators.46implies"> </a></td><td>Logical Operator implies</td><td>The implies operator returns the logical implication of its arguments. This means that if the left operand evaluates to true, this operator returns the boolean evaluation of the right operand. If the left operand evaluates to false, this operator returns true. Otherwise, this operator returns true if the right operand evaluates to true, and null otherwise</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#implies</code></td></tr><tr><td>1</td><td style="white-space:nowrap">type-operators<a name="cql-language-capabilities-type-operators"> </a></td><td>Type Operators</td><td>Type inspection and conversion operators.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#type-operators</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  type-operators.as<a name="cql-language-capabilities-type-operators.46as"> </a></td><td>Type Operator as</td><td>The as operator allows the result of an expression to be cast as a given target type. This allows expressions to be written that are statically typed against the expected run-time type of the argument.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#as</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  type-operators.cast-as<a name="cql-language-capabilities-type-operators.46cast-as"> </a></td><td>Type Operator as</td><td>(See the as operator in addition) The cast prefix indicates that if the argument is not of the specified type at run-time then an exception is thrown.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#as</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  type-operators.is<a name="cql-language-capabilities-type-operators.46is"> </a></td><td>Type Operator is</td><td>The is operator allows the type of a result to be tested. If the run-time type of the argument is the same as or derived from the type being tested, the result of the operator is true; otherwise, the result is false.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#is</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  type-operators.children<a name="cql-language-capabilities-type-operators.46children"> </a></td><td>Type Operator children</td><td>For structured types, the Children operator returns a list of all the values of the elements of the type. List-valued elements are expanded and added to the result individually, rather than as a single list.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#children</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  type-operators.descendants<a name="cql-language-capabilities-type-operators.46descendants"> </a></td><td>Type Operator descendants</td><td>or structured types, the Descendants operator returns a list of all the values of the elements of the type, recursively. List-valued elements are expanded and added to the result individually, rather than as a single list.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#descendants</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  type-operators.convert-quantity<a name="cql-language-capabilities-type-operators.46convert-quantity"> </a></td><td>Type Operator convert-quantity</td><td>The convert operator converts a value to a specific type. The result of the operator is the value of the argument converted to the target type, if possible. If there is no valid conversion from the actual value to the target type, the result is null.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#convert</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  type-operators.to-boolean<a name="cql-language-capabilities-type-operators.46to-boolean"> </a></td><td>Type Operator to-boolean</td><td>The ToBoolean operator converts the value of its argument to a Boolean value.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#toboolean</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  type-operators.to-integer<a name="cql-language-capabilities-type-operators.46to-integer"> </a></td><td>Type Operator to-integer</td><td>The ToInteger operator converts the value of its argument to an Integer value.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#tointeger</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  type-operators.to-long<a name="cql-language-capabilities-type-operators.46to-long"> </a></td><td>Type Operator to-long</td><td>The ToLong operator converts the value of its argument to a Long value.</td><td>1.5</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#tolong</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  type-operators.to-decimal<a name="cql-language-capabilities-type-operators.46to-decimal"> </a></td><td>Type Operator to-decimal</td><td>The ToDecimal operator converts the value of its argument to a Decimal value.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#todecimal</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  type-operators.to-quantity<a name="cql-language-capabilities-type-operators.46to-quantity"> </a></td><td>Type Operator to-quantity</td><td>The ToQuantity operator converts the value of its argument to a Quantity value. The operation does not perform any unit conversion, that capability is supported by the ConvertQuantity operator.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#toquantity</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  type-operators.to-ratio<a name="cql-language-capabilities-type-operators.46to-ratio"> </a></td><td>Type Operator to-ratio</td><td>The ToRatio operator converts the value of its argument to a Ratio value.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#toratio</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  type-operators.to-date<a name="cql-language-capabilities-type-operators.46to-date"> </a></td><td>Type Operator to-date</td><td>The ToDate operator converts the value of its argument to a Date value.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#todate</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  type-operators.to-datetime<a name="cql-language-capabilities-type-operators.46to-datetime"> </a></td><td>Type Operator to-datetime</td><td>The ToDateTime operator converts the value of its argument to a DateTime value.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#todatetime</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  type-operators.to-time<a name="cql-language-capabilities-type-operators.46to-time"> </a></td><td>Type Operator to-time</td><td>The ToTime operator converts the value of its argument to a Time value. The operator expects the string to be formatted using ISO-8601 time representation.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#totime</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  type-operators.to-string<a name="cql-language-capabilities-type-operators.46to-string"> </a></td><td>Type Operator to-string</td><td>The ToString operator converts the value of its argument to a String value.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#tostring</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  type-operators.converts-to-boolean<a name="cql-language-capabilities-type-operators.46converts-to-boolean"> </a></td><td>Type Operator converts-to-boolean</td><td>The ConvertsToBoolean operator returns true if its argument is or can be converted to a Boolean value.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#convertstoboolean</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  type-operators.converts-to-integer<a name="cql-language-capabilities-type-operators.46converts-to-integer"> </a></td><td>Type Operator converts-to-integer</td><td>The ConvertsToInteger operator returns true if its argument is or can be converted to an Integer value. See the ToInteger operator for a description of the supported conversions.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#convertstointeger</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  type-operators.converts-to-long<a name="cql-language-capabilities-type-operators.46converts-to-long"> </a></td><td>Type Operator converts-to-long</td><td>The ConvertsToLong operator returns true if its argument is or can be converted to a Long value.</td><td>1.5</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#convertstolong</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  type-operators.converts-to-decimal<a name="cql-language-capabilities-type-operators.46converts-to-decimal"> </a></td><td>Type Operator converts-to-decimal</td><td>The ToDecimal operator returns true if its argument is or can be converted to a Decimal value.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#convertstodecimal</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  type-operators.converts-to-quantity<a name="cql-language-capabilities-type-operators.46converts-to-quantity"> </a></td><td>Type Operator converts-to-quantity</td><td>The ConvertsToQuantity operator returns true if its argument is or can be converted to a Quantity value. See the ToQuantity operator for a description of the supported conversions.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#convertstoquantity</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  type-operators.converts-to-ratio<a name="cql-language-capabilities-type-operators.46converts-to-ratio"> </a></td><td>Type Operator converts-to-ration</td><td>The ConvertsToRatio operator returns true if its argument is or can be converted to a Ratio value</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#convertstoratio</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  type-operators.converts-to-date<a name="cql-language-capabilities-type-operators.46converts-to-date"> </a></td><td>Type Operator converts-to-date</td><td>The ConvertsToDate operator returns true if its argument is or can be converted to a Date value.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#convertstodate</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  type-operators.converts-to-datetime<a name="cql-language-capabilities-type-operators.46converts-to-datetime"> </a></td><td>Type Operator converts-to-datetime</td><td>The ConvertsToDateTime operator returns true if its argument is or can be converted to a DateTime value.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#convertstodatetime</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  type-operators.converts-to-time<a name="cql-language-capabilities-type-operators.46converts-to-time"> </a></td><td>Type Operator converts-to-time</td><td>The ConvertsToTime operator returns true if its argument is or can be converted to a Time value.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#convertstotime</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  type-operators.converts-to-string<a name="cql-language-capabilities-type-operators.46converts-to-string"> </a></td><td>Type Operator converts-to-string</td><td>The ConvertsToString operator returns true if its argument is or can be converted to a String value.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#convertstostring</code></td></tr><tr><td>1</td><td style="white-space:nowrap">nullological-operators<a name="cql-language-capabilities-nullological-operators"> </a></td><td>Nullological Operators</td><td>Operators dealing with null/missing information.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#nullological-operators</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  nullological-operators.coalesce<a name="cql-language-capabilities-nullological-operators.46coalesce"> </a></td><td>Nullological Operators coalesce</td><td>The Coalesce operator returns the first non-null result in a list of arguments. If all arguments evaluate to null, the result is null.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#coalesce</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  nullological-operators.is-null<a name="cql-language-capabilities-nullological-operators.46is-null"> </a></td><td>Nullological Operators is-null</td><td>The is null operator determines whether or not its argument evaluates to null. If the argument evaluates to null, the result is true; otherwise, the result is false.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#isnull</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  nullological-operators.is-true<a name="cql-language-capabilities-nullological-operators.46is-true"> </a></td><td>Nullological Operators coalesce</td><td>The is true operator determines whether or not its argument evaluates to true. If the argument evaluates to true, the result is true; otherwise, the result is false.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#istrue</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  nullological-operators.is-false<a name="cql-language-capabilities-nullological-operators.46is-false"> </a></td><td>Nullological Operators is-false</td><td>The is false operator determines whether or not its argument evaluates to false. If the argument evaluates to false, the result is true; otherwise, the result is false.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#isfalse</code></td></tr><tr><td>1</td><td style="white-space:nowrap">comparison-operators<a name="cql-language-capabilities-comparison-operators"> </a></td><td>Comparison Operators</td><td>Equal, not equal, &lt;, &lt;=, &gt;, &gt;=, in/not in, etc.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#comparison-operators</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  comparison-operators.equal<a name="cql-language-capabilities-comparison-operators.46equal"> </a></td><td>Comparison Operators equal</td><td>The equal (=) operator returns true if the arguments are equal; false if the arguments are known unequal, and null otherwise. Equality semantics are defined to be value-based.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#equal</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  comparison-operators.equivalent<a name="cql-language-capabilities-comparison-operators.46equivalent"> </a></td><td>Comparison Operators equivalent</td><td>The equivalent (~) operator returns true if the arguments are equivalent in value, or if they are both null; and false otherwise.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#equivalent</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  comparison-operators.greater<a name="cql-language-capabilities-comparison-operators.46greater"> </a></td><td>Comparison Operators greater</td><td>The greater (&gt;) operator returns true if the first argument is greater than the second argument.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#greater</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  comparison-operators.greater-or-equal<a name="cql-language-capabilities-comparison-operators.46greater-or-equal"> </a></td><td>Comparison Operators greater or equal</td><td>The greater or equal (&gt;=) operator returns true if the first argument is greater than or equal to the second argument.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#greater-or-equal</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  comparison-operators.less<a name="cql-language-capabilities-comparison-operators.46less"> </a></td><td>Comparison Operators less</td><td>The less (&lt;) operator returns true if the first argument is less than the second argument.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#less</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  comparison-operators.less-or-equal<a name="cql-language-capabilities-comparison-operators.46less-or-equal"> </a></td><td>Comparison Operators less-or-equal</td><td>The less or equal (&lt;=) operator returns true if the first argument is less than or equal to the second argument.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#less-or-equal</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  comparison-operators.not-equal<a name="cql-language-capabilities-comparison-operators.46not-equal"> </a></td><td>Comparison Operators not-equal</td><td>The not equal (!=) operator returns true if its arguments are not the same value.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#not-equal</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  comparison-operators.not-equivalent<a name="cql-language-capabilities-comparison-operators.46not-equivalent"> </a></td><td>Comparison Operators not-equivalent</td><td>The not equivalent (!~) operator returns true if its arguments are not equivalent.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#not-equivalent</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  comparison-operators.between<a name="cql-language-capabilities-comparison-operators.46between"> </a></td><td>Comparison Operators between</td><td>The between operator determines whether the first argument is within a given range, inclusive. If the first argument is greater than or equal to the low argument, and less than or equal to the high argument, the result is true, otherwise, the result is false.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#between</code></td></tr><tr><td>1</td><td style="white-space:nowrap">arithmetic-operators<a name="cql-language-capabilities-arithmetic-operators"> </a></td><td>Arithmetic Operators</td><td>Add, subtract, multiply, divide, mod, round, etc.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#arithmetic-operators</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  arithmetic-operators.abs<a name="cql-language-capabilities-arithmetic-operators.46abs"> </a></td><td>Arithmetic Operators abs</td><td>The Abs operator returns the absolute value of its argument.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#abs</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  arithmetic-operators.add<a name="cql-language-capabilities-arithmetic-operators.46add"> </a></td><td>Arithmetic Operators add</td><td>The add (+) operator performs numeric addition of its arguments.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#add</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  arithmetic-operators.ceiling<a name="cql-language-capabilities-arithmetic-operators.46ceiling"> </a></td><td>Arithmetic Operators ceiling</td><td>The Ceiling operator returns the first integer greater than or equal to the argument.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#ceiling</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  arithmetic-operators.divide<a name="cql-language-capabilities-arithmetic-operators.46divide"> </a></td><td>Arithmetic Operators divide</td><td>The divide (/) operator performs numeric division of its arguments. Note that this operator is Decimal division; for Integer division, use the truncated divide (div) operator.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#string-operators</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  arithmetic-operators.floor<a name="cql-language-capabilities-arithmetic-operators.46floor"> </a></td><td>Arithmetic Operators floor</td><td>The Floor operator returns the first integer less than or equal to the argument.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#floor</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  arithmetic-operators.exp<a name="cql-language-capabilities-arithmetic-operators.46exp"> </a></td><td>Arithmetic Operators exp</td><td>The Exp operator raises e to the power of its argument.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#exp</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  arithmetic-operators.highboundary<a name="cql-language-capabilities-arithmetic-operators.46highboundary"> </a></td><td>Arithmetic Operators highboundary</td><td>The HighBoundary function returns the greatest possible value of the input to the specified precision.</td><td>1.5</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#highboundary</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  arithmetic-operators.log<a name="cql-language-capabilities-arithmetic-operators.46log"> </a></td><td>Arithmetic Operators log</td><td>The Log operator computes the logarithm of its first argument, using the second argument as the base.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#log</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  arithmetic-operators.lowboundary<a name="cql-language-capabilities-arithmetic-operators.46lowboundary"> </a></td><td>Arithmetic Operators lowboundary</td><td>The LowBoundary function returns the least possible value of the input to the specified precision.</td><td>1.5</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#lowboundary</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  arithmetic-operators.ln<a name="cql-language-capabilities-arithmetic-operators.46ln"> </a></td><td>Arithmetic Operators ln</td><td>The Ln operator computes the natural logarithm of its argument.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#ln</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  arithmetic-operators.maximum<a name="cql-language-capabilities-arithmetic-operators.46maximum"> </a></td><td>Arithmetic Operators maximum</td><td>The maximum operator returns the maximum representable value for the given type, defined for the Integer, Long, Decimal, Quantity, Date, DateTime, and Time types.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#maximum</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  arithmetic-operators.minimum<a name="cql-language-capabilities-arithmetic-operators.46minimum"> </a></td><td>Arithmetic Operators minimum</td><td>The minimum operator returns the minimum representable value for the given type, defined for the Integer, Long, Decimal, Quantity, Date, DateTime, and Time types.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#minimum</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  arithmetic-operators.mod<a name="cql-language-capabilities-arithmetic-operators.46mod"> </a></td><td>Arithmetic Operators mod</td><td>The mod operator computes the remainder of the division of its arguments.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#mod</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  arithmetic-operators.multiply<a name="cql-language-capabilities-arithmetic-operators.46multiply"> </a></td><td>Arithmetic Operators multiply</td><td>The multiply (*) operator performs numeric multiplication of its arguments.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#multiply</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  arithmetic-operators.negate<a name="cql-language-capabilities-arithmetic-operators.46negate"> </a></td><td>Arithmetic Operators negate</td><td>The negate (-) operator returns the negative of its argument.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#negate</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  arithmetic-operators.precision<a name="cql-language-capabilities-arithmetic-operators.46precision"> </a></td><td>Arithmetic Operators precision</td><td>The Precision function returns the number of digits of precision in the input value.</td><td>1.5</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#precision</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  arithmetic-operators.predecessor<a name="cql-language-capabilities-arithmetic-operators.46predecessor"> </a></td><td>Arithmetic Operators predecessor</td><td>The predecessor operator returns the predecessor of the argument. For example, the predecessor of 2 is 1. If the argument is already the minimum value for the type, a null is returned.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#predecessor</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  arithmetic-operators.power<a name="cql-language-capabilities-arithmetic-operators.46power"> </a></td><td>Arithmetic Operators power</td><td>The power (^) operator raises the first argument to the power given by the second argument.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#power</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  arithmetic-operators.round<a name="cql-language-capabilities-arithmetic-operators.46round"> </a></td><td>Arithmetic Operators round</td><td>The Round operator returns the nearest whole number to its argument. The semantics of round are defined as a traditional round (i.e. to the nearest whole number), meaning that a decimal value greater than or equal to 0.5 and less than 1.0 will round to 1, and a decimal value less than or equal to -0.5 and greater than -1.0 will round to -1.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#round</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  arithmetic-operators.subtract<a name="cql-language-capabilities-arithmetic-operators.46subtract"> </a></td><td>Arithmetic Operators subtract</td><td>The subtract (-) operator performs numeric subtraction of its arguments.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#subtract</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  arithmetic-operators.successor<a name="cql-language-capabilities-arithmetic-operators.46successor"> </a></td><td>Arithmetic Operators successor</td><td>The successor operator returns the successor of the argument. For example, the successor of 1 is 2. If the argument is already the maximum value for the type, a null is returned.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#successor</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  arithmetic-operators.truncate<a name="cql-language-capabilities-arithmetic-operators.46truncate"> </a></td><td>Arithmetic Operators truncate</td><td>The Truncate operator returns the integer component of its argument.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#truncate</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  arithmetic-operators.div<a name="cql-language-capabilities-arithmetic-operators.46div"> </a></td><td>Arithmetic Operators div</td><td>The div operator performs truncated division of its arguments.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#div</code></td></tr><tr><td>1</td><td style="white-space:nowrap">string-operators<a name="cql-language-capabilities-string-operators"> </a></td><td>String Operators</td><td>Length, substring, startsWith, endsWith, matches, replaceMatches, etc.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#string-operators</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  string-operators.combine<a name="cql-language-capabilities-string-operators.46combine"> </a></td><td>String Operators combine</td><td>The Combine operator combines a list of strings, optionally separating each string with the given separator.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#combine</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  string-operators.concatenate<a name="cql-language-capabilities-string-operators.46concatenate"> </a></td><td>String Operators concatenate</td><td>The concatenate (+ or &amp;) operator performs string concatenation of its arguments.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#concatenate</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  string-operators.endwith<a name="cql-language-capabilities-string-operators.46endwith"> </a></td><td>String Operators endwith</td><td>The EndsWith operator returns true if the given string ends with the given suffix.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#endwith</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  string-operators.indexer<a name="cql-language-capabilities-string-operators.46indexer"> </a></td><td>String Operators indexer</td><td>The indexer ([]) operator returns the character at the indexth position in a string.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#indexer</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  string-operators.lastpositionof<a name="cql-language-capabilities-string-operators.46lastpositionof"> </a></td><td>String Operators lastpositionof</td><td>The LastPositionOf operator returns the 0-based index of the last appearance of the given pattern in the given string.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#lastpositionof</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  string-operators.length<a name="cql-language-capabilities-string-operators.46length"> </a></td><td>String Operators length</td><td>The Length operator returns the number of characters in a string.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#length</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  string-operators.lower<a name="cql-language-capabilities-string-operators.46lower"> </a></td><td>String Operators lower</td><td>The Lower operator returns the given string with all characters converted to their lower case equivalents.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#lower</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  string-operators.matches<a name="cql-language-capabilities-string-operators.46matches"> </a></td><td>String Operators matches</td><td>The Matches operator returns true if the given string matches the given regular expression pattern. Regular expressions should function consistently, regardless of any culture- and locale-specific settings in the environment, should be case-sensitive, use partial matching, use single line mode, and allow Unicode characters. The start/end of line markers ^ and $ can be used to match the entire string.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#matches</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  string-operators.positionof<a name="cql-language-capabilities-string-operators.46positionof"> </a></td><td>String Operators positionof</td><td>The PositionOf operator returns the 0-based index of the given pattern in the given string.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#positionof</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  string-operators.replacematches<a name="cql-language-capabilities-string-operators.46replacematches"> </a></td><td>String Operators replacematches</td><td>The ReplaceMatches operator matches the given string using the given regular expression pattern, replacing each match with the given substitution. The substitution string may refer to identified match groups in the regular expression. Regular expressions should function consistently, regardless of any culture- and locale-specific settings in the environment, should be case-sensitive, use partial matching, use single line mode, and allow Unicode characters. The start and end of line markers ^, $ can be used to match the entire string.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#replacematches</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  string-operators.split<a name="cql-language-capabilities-string-operators.46split"> </a></td><td>String Operators split</td><td>The Split operator splits a string into a list of strings using a separator.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#split</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  string-operators.splitonmatches<a name="cql-language-capabilities-string-operators.46splitonmatches"> </a></td><td>String Operators splitonmatches</td><td>The SplitOnMatches operator splits a string into a list of strings using a separator that is defined by a regular expression pattern.</td><td>1.3</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#splitonmatches</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  string-operators.startswith<a name="cql-language-capabilities-string-operators.46startswith"> </a></td><td>String Operators startswith</td><td>The StartsWith operator returns true if the given string starts with the given prefix.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#startswith</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  string-operators.substring<a name="cql-language-capabilities-string-operators.46substring"> </a></td><td>String Operators substring</td><td>The Substring operator returns the string within stringToSub, starting at the 0-based index startIndex, and consisting of length characters.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#substring</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  string-operators.upper<a name="cql-language-capabilities-string-operators.46upper"> </a></td><td>String Operators upper</td><td>The Upper operator returns the given string with all characters converted to their upper case equivalents.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#upper</code></td></tr><tr><td>1</td><td style="white-space:nowrap">date-and-time-operators<a name="cql-language-capabilities-date-and-time-operators"> </a></td><td>Date and Time Operators</td><td>Date/time arithmetic, components, now/today, comparisons, etc.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#date-and-time-operators</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  date-and-time-operators.add<a name="cql-language-capabilities-date-and-time-operators.46add"> </a></td><td>Date and Time Operators add</td><td>The add (+) operator returns the value of the first argument, incremented by the time-valued quantity, respecting variable length periods for calendar years and months.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#add</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  date-and-time-operators.after<a name="cql-language-capabilities-date-and-time-operators.46after"> </a></td><td>Date and Time Operators after</td><td>The after-precision-of operator compares two Date, DateTime, or Time values to the specified precision to determine whether the first argument is the after the second argument. The comparison is performed by considering each precision in order, beginning with years (or hours for time values). If the values are the same, comparison proceeds to the next precision; if the first value is greater than the second, the result is true; if the first value is less than the second, the result is false; if either input has no value for the precision, the comparison stops and the result is null; if the specified precision has been reached, the comparison stops and the result is false.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#after</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  date-and-time-operators.before<a name="cql-language-capabilities-date-and-time-operators.46before"> </a></td><td>Date and Time Operators before</td><td>The before-precision-of operator compares two Date, DateTime, or Time values to the specified precision to determine whether the first argument is the before the second argument. The comparison is performed by considering each precision in order, beginning with years (or hours for time values). If the values are the same, comparison proceeds to the next precision; if the first value is less than the second, the result is true; if the first value is greater than the second, the result is false; if either input has no value for the precision, the comparison stops and the result is null; if the specified precision has been reached, the comparison stops and the result is false.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#before</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  date-and-time-operators.date<a name="cql-language-capabilities-date-and-time-operators.46date"> </a></td><td>Date and Time Operators date</td><td>The Date operator constructs a date value from the given components.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#date</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  date-and-time-operators.datetime<a name="cql-language-capabilities-date-and-time-operators.46datetime"> </a></td><td>Date and Time Operators datetime</td><td>The DateTime operator constructs a DateTime value from the given components.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#datetime</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  date-and-time-operators.from<a name="cql-language-capabilities-date-and-time-operators.46from"> </a></td><td>Date and Time Operators from</td><td>The component-from operator returns the specified component of the argument.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#from</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  date-and-time-operators.difference<a name="cql-language-capabilities-date-and-time-operators.46difference"> </a></td><td>Date and Time Operators difference</td><td>The difference-between operator returns the number of boundaries crossed for the specified precision between the first and second arguments. If the first argument is after the second argument, the result is negative. The result of this operation is always an integer; any fractional boundaries are dropped.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#difference</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  date-and-time-operators.duration<a name="cql-language-capabilities-date-and-time-operators.46duration"> </a></td><td>Date and Time Operators duration</td><td>The duration-between operator returns the number of whole calendar periods for the specified precision between the first and second arguments. If the first argument is after the second argument, the result is negative. The result of this operation is always an integer; any fractional periods are dropped.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#duration</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  date-and-time-operators.now<a name="cql-language-capabilities-date-and-time-operators.46now"> </a></td><td>Date and Time Operators now</td><td>The Now operator returns the date and time of the start timestamp associated with the evaluation request.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#now</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  date-and-time-operators.on-or-after<a name="cql-language-capabilities-date-and-time-operators.46on-or-after"> </a></td><td>Date and Time Operators on or after</td><td>The on or after operator for Date, DateTime, and Time values is a synonym for the same or after operator and is supported to enable natural phrasing. See the description of the Same Or After (Date, DateTime, or Time) operator.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#on-or-after</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  date-and-time-operators.on-or-before<a name="cql-language-capabilities-date-and-time-operators.46on-or-before"> </a></td><td>Date and Time Operators on or before</td><td>The on or before operator for Date, DateTime, and Time values is a synonym for the same or before operator and is supported to enable natural phrasing. See the description of the Same Or Before (Date, DateTime, or Time) operator.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#on-or-before</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  date-and-time-operators.same-as<a name="cql-language-capabilities-date-and-time-operators.46same-as"> </a></td><td>Date and Time Operators same as</td><td>The same-precision-as operator compares two Date, DateTime, or Time values to the specified precision for equality. The comparison is performed by considering each precision in order, beginning with years (or hours for time values). If the values are the same, comparison proceeds to the next precision; if the values are different, the comparison stops and the result is false; if either input has no value for the precision, the comparison stops and the result is null; if the specified precision has been reached, the comparison stops and the result is true.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#same-as</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  date-and-time-operators.same-or-after<a name="cql-language-capabilities-date-and-time-operators.46same-or-after"> </a></td><td>Date and Time Operators same or after</td><td>The same-precision-or after operator compares two Date, DateTime, or Time values to the specified precision to determine whether the first argument is the same or after the second argument. The comparison is performed by considering each precision in order, beginning with years (or hours for time values). If the values are the same, comparison proceeds to the next precision; if the first value is greater than the second, the result is true; if the first value is less than the second, the result is false; if either input has no value for the precision, the comparison stops and the result is null; if the specified precision has been reached, the comparison stops and the result is true.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#same-or-after</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  date-and-time-operators.same-or-before<a name="cql-language-capabilities-date-and-time-operators.46same-or-before"> </a></td><td>Date and Time Operators same or before</td><td>The same-precision-or before operator compares two Date, DateTime, or Time values to the specified precision to determine whether the first argument is the same or before the second argument. The comparison is performed by considering each precision in order, beginning with years (or hours for time values). If the values are the same, comparison proceeds to the next precision; if the first value is less than the second, the result is true; if the first value is greater than the second, the result is false; if either input has no value for the precision, the comparison stops and the result is null; if the specified precision has been reached, the comparison stops and the result is true.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#same-or-before</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  date-and-time-operators.subtract<a name="cql-language-capabilities-date-and-time-operators.46subtract"> </a></td><td>Date and Time Operators subtract</td><td>The subtract (-) operator returns the value of the given Date, DateTime, or Time, decremented by the time-valued quantity, respecting variable length periods for calendar years and months.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#subtract</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  date-and-time-operators.time<a name="cql-language-capabilities-date-and-time-operators.46time"> </a></td><td>Date and Time Operators time</td><td>The Time operator constructs a time value from the given components.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#time</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  date-and-time-operators.timeofday<a name="cql-language-capabilities-date-and-time-operators.46timeofday"> </a></td><td>Date and Time Operators timeofday</td><td>The TimeOfDay operator returns the time of day of the start timestamp associated with the evaluation request. See the Now operator for more information on the rationale for defining the TimeOfDay operator in this way.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#timeofday</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  date-and-time-operators.today<a name="cql-language-capabilities-date-and-time-operators.46today"> </a></td><td>Date and Time Operators today</td><td>The Today operator returns the date of the start timestamp associated with the evaluation request. See the Now operator for more information on the rationale for defining the Today operator in this way.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#today</code></td></tr><tr><td>1</td><td style="white-space:nowrap">interval-operators<a name="cql-language-capabilities-interval-operators"> </a></td><td>Interval Operators</td><td>contains, in, union, intersect, width, expand, etc.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#interval-operators-3</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  interval-operators.after<a name="cql-language-capabilities-interval-operators.46after"> </a></td><td>Interval Operators after</td><td>The after operator for intervals returns true if the first interval starts after the second one ends. In other words, if the starting point of the first interval is greater than the ending point of the second interval.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#after</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  interval-operators.before<a name="cql-language-capabilities-interval-operators.46before"> </a></td><td>Interval Operators before</td><td>The before operator for intervals returns true if the first interval ends before the second one starts. In other words, if the ending point of the first interval is less than the starting point of the second interval.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#before</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  interval-operators.collapse<a name="cql-language-capabilities-interval-operators.46collapse"> </a></td><td>Interval Operators collapse</td><td>The collapse operator returns the unique set of intervals that completely covers the ranges present in the given list of intervals. In other words, adjacent intervals within a sorted list are merged if they either overlap or meet.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#collapse</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  interval-operators.contains<a name="cql-language-capabilities-interval-operators.46contains"> </a></td><td>Interval Operators contains</td><td>The contains operator for intervals returns true if the given point is equal to the starting or ending point of the interval, or greater than the starting point and less than the ending point. For open interval boundaries, exclusive comparison operators are used. For closed interval boundaries, if the interval boundary is null, the result of the boundary comparison is considered true.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#contains</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  interval-operators.end<a name="cql-language-capabilities-interval-operators.46end"> </a></td><td>Interval Operators end</td><td>The End operator returns the ending point of an interval.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#end</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  interval-operators.ends<a name="cql-language-capabilities-interval-operators.46ends"> </a></td><td>Interval Operators ends</td><td>The ends operator returns true if the first interval ends the second. More precisely, if the starting point of the first interval is greater than or equal to the starting point of the second, and the ending point of the first interval is equal to the ending point of the second.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#ends</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  interval-operators.equal<a name="cql-language-capabilities-interval-operators.46equal"> </a></td><td>Interval Operators equal</td><td>The equal (=) operator for intervals returns true if and only if the intervals are over the same point type, and they have the same value for the starting and ending points of the intervals as determined by the Start and End operators</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  interval-operators.equivalent<a name="cql-language-capabilities-interval-operators.46equivalent"> </a></td><td>Interval Operators equivalent</td><td>The equivalent (~) operator for intervals returns true if and only if the intervals are over the same point type, and the starting and ending points of the intervals as determined by the Start and End operators are equivalent.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#equivalent</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  interval-operators.except<a name="cql-language-capabilities-interval-operators.46except"> </a></td><td>Interval Operators except</td><td>The except operator for intervals returns the set difference of two intervals. More precisely, this operator returns the portion of the first interval that does not overlap with the second. Note that to avoid returning an improper interval, if the second argument is properly contained within the first and does not start or end it, this operator returns null.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#except</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  interval-operators.expand<a name="cql-language-capabilities-interval-operators.46expand"> </a></td><td>Interval Operators expand</td><td>The expand operator returns the set of intervals of size per for all the intervals in the input, or the list of points covering the range of the given interval, if invoked on a single interval.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#expand</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  interval-operators.in<a name="cql-language-capabilities-interval-operators.46in"> </a></td><td>Interval Operators in</td><td>The in operator (can also be invoked using during) for intervals returns true if the given point is equal to the starting or ending point of the interval, or greater than the starting point and less than the ending point. For open interval boundaries, exclusive comparison operators are used. For closed interval boundaries, if the interval boundary is null, the result of the boundary comparison is considered true.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#in</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  interval-operators.includes<a name="cql-language-capabilities-interval-operators.46includes"> </a></td><td>Interval Operators includes</td><td>The includes operator for intervals returns true if the first interval completely includes the second. More precisely, if the starting point of the first interval is less than or equal to the starting point of the second interval, and the ending point of the first interval is greater than or equal to the ending point of the second interval.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#includes</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  interval-operators.included-in<a name="cql-language-capabilities-interval-operators.46included-in"> </a></td><td>Interval Operators included in</td><td>The included in (or during) operator for intervals returns true if the first interval is completely included in the second. More precisely, if the starting point of the first interval is greater than or equal to the starting point of the second interval, and the ending point of the first interval is less than or equal to the ending point of the second interval.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#included-in</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  interval-operators.intersect<a name="cql-language-capabilities-interval-operators.46intersect"> </a></td><td>Interval Operators intersect</td><td>The intersect operator for intervals returns the intersection of two intervals. More precisely, the operator returns the interval that defines the overlapping portion of both arguments. If the arguments do not overlap, this operator returns null.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#intersect</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  interval-operators.meets<a name="cql-language-capabilities-interval-operators.46meets"> </a></td><td>Interval Operators meets</td><td>The meets operator returns true if the first interval ends immediately before the second interval starts, or if the first interval starts immediately after the second interval ends. In other words, if the ending point of the first interval is equal to the predecessor of the starting point of the second, or if the starting point of the first interval is equal to the successor of the ending point of the second.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#meets</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  interval-operators.not-equal<a name="cql-language-capabilities-interval-operators.46not-equal"> </a></td><td>Interval Operators not equal</td><td>The not equal (!=) operator for intervals returns true if its arguments are not the same value.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#not-equal</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  interval-operators.not-equivalent<a name="cql-language-capabilities-interval-operators.46not-equivalent"> </a></td><td>Interval Operators not equivalent</td><td>The not equivalent (!~) operator for intervals returns true if its arguments are not equivalent.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#not-equivalent</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  interval-operators.on-or-after<a name="cql-language-capabilities-interval-operators.46on-or-after"> </a></td><td>Interval Operators on or after</td><td>The on or after operator for intervals is a synonym for the same or after operator and is supported to enable natural phrasing. See the description of the Same Or After (Intervals) operator.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#on-or-after</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  interval-operators.on-or-before<a name="cql-language-capabilities-interval-operators.46on-or-before"> </a></td><td>Interval Operators on or before</td><td>The on or before operator for Date-, DateTime-, or Time-based intervals is a synonym for the same or before operator and is supported to enable natural phrasing. See the description of the Same Or Before (Intervals) operator.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#on-or-before</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  interval-operators.overlaps<a name="cql-language-capabilities-interval-operators.46overlaps"> </a></td><td>Interval Operators overlaps</td><td>The overlaps operator returns true if the first interval overlaps the second. More precisely, if the starting or ending point of either interval is in the other, or if the ending point of the first interval is greater than or equal to the starting point of the second interval, and the starting point of the first interval is less than or equal to the ending point of the second interval.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#overlaps</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  interval-operators.point-from<a name="cql-language-capabilities-interval-operators.46point-from"> </a></td><td>Interval Operators point from</td><td>The point from operator extracts the single point from a unit interval. If the argument is not a unit interval, a run-time error is thrown.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#point-from</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  interval-operators.properly-includes<a name="cql-language-capabilities-interval-operators.46properly-includes"> </a></td><td>Interval Operators properly includes</td><td>The properly includes operator for intervals returns true if the first interval completely includes the second and the first interval is strictly larger than the second. More precisely, if the starting point of the first interval is less than or equal to the starting point of the second interval, and the ending point of the first interval is greater than or equal to the ending point of the second interval, and they are not the same interval.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#properly-includes</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  interval-operators.properly-included-in<a name="cql-language-capabilities-interval-operators.46properly-included-in"> </a></td><td>Interval Operators properly included in</td><td>The properly included in (or properly during) operator for intervals returns true if the first interval is completely included in the second and the first interval is strictly smaller than the second. More precisely, if the starting point of the first interval is greater than or equal to the starting point of the second interval, and the ending point of the first interval is less than or equal to the ending point of the second interval, and they are not the same interval.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#included-in</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  interval-operators.same-as<a name="cql-language-capabilities-interval-operators.46same-as"> </a></td><td>Interval Operators same as</td><td>The same-precision-as operator for intervals returns true if the two intervals start and end at the same value, using the semantics described in the Start and End operators to determine interval boundaries, and for Date, DateTime, or Time value, performing the comparisons at the specified precision, as described in the Same As operator for Date, DateTime, or Time values.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#same-as</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  interval-operators.same-or-after<a name="cql-language-capabilities-interval-operators.46same-or-after"> </a></td><td>Interval Operators same or after</td><td>The same-precision-or after operator for intervals returns true if the first interval starts on or after the second one ends, using the semantics described in the Start and End operators to determine interval boundaries, and for Date, DateTime, or Time values, performing the comparisons at the specified precision, as described in the Same or After (Date, DateTime, or Time) operator for Date, DateTime, or Time values.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#same-or-after</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  interval-operators.same-or-before<a name="cql-language-capabilities-interval-operators.46same-or-before"> </a></td><td>Interval Operators same or before</td><td>The same-precision-or before operator returns true if the first interval ends on or before the second one starts, using the semantics described in the Start and End operators to determine interval boundaries, and for Date, DateTime, or Time values, performing the comparisons at the specified precision, as described in the Same or Before (Date, DateTime, or Time) operator for Date, DateTime, or Time values.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#same-or-before</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  interval-operators.size<a name="cql-language-capabilities-interval-operators.46size"> </a></td><td>Interval Operators size</td><td>The Size operator returns the size of an interval. The result of this operator is equivalent to invoking: (end of argument – start of argument) + point-size, where point-size is determined by successor of minimum T - minimum T.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#size</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  interval-operators.start<a name="cql-language-capabilities-interval-operators.46start"> </a></td><td>Interval Operators start</td><td>The Start operator returns the starting point of an interval.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#start</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  interval-operators.starts<a name="cql-language-capabilities-interval-operators.46starts"> </a></td><td>Interval Operators starts</td><td>The starts operator returns true if the first interval starts the second. More precisely, if the starting point of the first is equal to the starting point of the second interval and the ending point of the first interval is less than or equal to the ending point of the second interval.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#starts</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  interval-operators.union<a name="cql-language-capabilities-interval-operators.46union"> </a></td><td>Interval Operators union</td><td>The union operator for intervals returns the union of the intervals. More precisely, the operator returns the interval that starts at the earliest starting point in either argument, and ends at the latest starting point in either argument. If the arguments do not overlap or meet, this operator returns null.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#union</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  interval-operators.width<a name="cql-language-capabilities-interval-operators.46width"> </a></td><td>Interval Operators width</td><td>The width operator returns the width of an interval. The result of this operator is equivalent to invoking: (end of argument – start of argument).</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#width</code></td></tr><tr><td>1</td><td style="white-space:nowrap">list-operators<a name="cql-language-capabilities-list-operators"> </a></td><td>List Operators</td><td>size, first/last, contains, union/intersect/except, map/filter/distinct, sort/reverse/zip, etc.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#list-operators</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  list-operators.contains<a name="cql-language-capabilities-list-operators.46contains"> </a></td><td>List Operators contains</td><td>The contains operator for lists returns true if the given element is in the list using equality semantics, with the exception that null elements are considered equal.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#contains</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  list-operators.distinct<a name="cql-language-capabilities-list-operators.46distinct"> </a></td><td>List Operators distinct</td><td>The distinct operator returns the given list with duplicates eliminated using equality semantics.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#distinct</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  list-operators.equal<a name="cql-language-capabilities-list-operators.46equal"> </a></td><td>List Operators equal</td><td>The equal (=) operator for lists returns true if and only if the lists have the same element type, and have the same elements by value, in the same order.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#equal</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  list-operators.equivalent<a name="cql-language-capabilities-list-operators.46equivalent"> </a></td><td>List Operators equivalent</td><td>The equivalent (~) operator for lists returns true if and only if the lists contain elements of the same type, have the same number of elements, and for each element in the lists, in order, the elements are equivalent.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#equivalent</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  list-operators.except<a name="cql-language-capabilities-list-operators.46except"> </a></td><td>List Operators except</td><td>The except operator returns the set difference of two lists. More precisely, the operator returns a list with the elements that appear in the first operand that do not appear in the second operand.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#except</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  list-operators.exists<a name="cql-language-capabilities-list-operators.46exists"> </a></td><td>List Operators exists</td><td>The exists operator returns true if the list contains any non-null elements.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#exists</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  list-operators.flatten<a name="cql-language-capabilities-list-operators.46flatten"> </a></td><td>List Operators flatten</td><td>The flatten operator flattens a list of lists into a single list.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#flatten</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  list-operators.first<a name="cql-language-capabilities-list-operators.46first"> </a></td><td>List Operators first</td><td>The First operator returns the first element in a list. The operator is equivalent to invoking the indexer with an index of 0.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#first</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  list-operators.in<a name="cql-language-capabilities-list-operators.46in"> </a></td><td>List Operators in</td><td>The in operator for lists returns true if the given element is in the given list using equality semantics, with the exception that null elements are considered equal.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#in</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  list-operators.includes<a name="cql-language-capabilities-list-operators.46includes"> </a></td><td>List Operators includes</td><td>The includes operator for lists returns true if the first list contains every element of the second list using equality semantics, with the exception that null elements are considered equal.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#includes</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  list-operators.included_in<a name="cql-language-capabilities-list-operators.46included_in"> </a></td><td>List Operators included in</td><td>The included in operator for lists returns true if every element of the first list is in the second list using equality semantics.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#included-in</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  list-operators.indexer<a name="cql-language-capabilities-list-operators.46indexer"> </a></td><td>List Operators indexer</td><td>The indexer ([]) operator returns the element at the indexth position in a list.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#indexer</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  list-operators.indexof<a name="cql-language-capabilities-list-operators.46indexof"> </a></td><td>List Operators IndexOf</td><td>The IndexOf operator returns the 0-based index of the given element in the given source list using equality semantics, with the exception that nulls are considered equal.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#indexof</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  list-operators.intersect<a name="cql-language-capabilities-list-operators.46intersect"> </a></td><td>List Operators intersect</td><td>The intersect operator for lists returns the intersection of two lists. More precisely, the operator returns a list containing only the elements that appear in both lists.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#intersect</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  list-operators.last<a name="cql-language-capabilities-list-operators.46last"> </a></td><td>List Operators last</td><td>The Last operator returns the last element in a list. In a list of length N, the operator is equivalent to invoking the indexer with an index of N - 1</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#last</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  list-operators.length<a name="cql-language-capabilities-list-operators.46length"> </a></td><td>List Operators length</td><td>The Length operator returns the number of elements in a list.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#length</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  list-operators.not_equal<a name="cql-language-capabilities-list-operators.46not_equal"> </a></td><td>List Operators not equal</td><td>The not equal (!=) operator for lists returns true if its arguments are not the same value.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#not_equal</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  list-operators.not_equivalent<a name="cql-language-capabilities-list-operators.46not_equivalent"> </a></td><td>List Operators not equivalent</td><td>The not equivalent (!~) operator for lists returns true if its arguments are not equivalent.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#not_equivalent</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  list-operators.properly_includes<a name="cql-language-capabilities-list-operators.46properly_includes"> </a></td><td>List Operators properly includes</td><td>The properly includes operator for lists returns true if the first list contains every element of the second list, and the first list is strictly larger than the second list.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#properly_includes</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  list-operators.properly_included_in<a name="cql-language-capabilities-list-operators.46properly_included_in"> </a></td><td>List Operators properly included in</td><td>The properly included in operator for lists returns true if every element of the first list is in the second list and the first list is strictly smaller than the second list.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#properly_included_in</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  list-operators.singleton_from<a name="cql-language-capabilities-list-operators.46singleton_from"> </a></td><td>List Operators singleton from</td><td>The singleton from operator extracts a single element from the source list. If the source list is empty, the result is null. If the source list contains one element, that element is returned. If the list contains more than one element, a run-time error is thrown.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#singleton_from</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  list-operators.skip<a name="cql-language-capabilities-list-operators.46skip"> </a></td><td>List Operators skip</td><td>The Skip operator returns the elements in the list, skipping the first number elements. If the list has less number elements, the result is empty.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#skip</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  list-operators.tail<a name="cql-language-capabilities-list-operators.46tail"> </a></td><td>List Operators tail</td><td>The Tail operator returns all but the first element from the given list. If the list is empty, the result is empty.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#tail</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  list-operators.take<a name="cql-language-capabilities-list-operators.46take"> </a></td><td>List Operators take</td><td>The Take operator returns the first number elements from the given list. If the list has less than number elements, the result only contains the elements in the list.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#take</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  list-operators.union<a name="cql-language-capabilities-list-operators.46union"> </a></td><td>List Operators union</td><td>The union operator for lists returns a list with all unique elements from both arguments.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#union</code></td></tr><tr><td>1</td><td style="white-space:nowrap">aggregate-functions<a name="cql-language-capabilities-aggregate-functions"> </a></td><td>Aggregate Functions</td><td>count, sum, min, max, average, median, mode, etc.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#aggregate-functions</code></td></tr><tr><td>1</td><td style="white-space:nowrap">clinical-operators<a name="cql-language-capabilities-clinical-operators"> </a></td><td>Clinical Operators</td><td>Retrieve/terminology functions; temporal/duration in clinical context.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#clinical-operators</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  clinical-operators.age<a name="cql-language-capabilities-clinical-operators.46age"> </a></td><td>Clinical Operators age</td><td>The Age operators calculate the age of the patient as of the current date in the precision named in the operator.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#age</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  clinical-operators.ageat<a name="cql-language-capabilities-clinical-operators.46ageat"> </a></td><td>Clinical Operators age at</td><td>The AgeAt operators calculate the age of the patient as of a given date and in the precision named in the operator.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#ageat</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  clinical-operators.calculateage<a name="cql-language-capabilities-clinical-operators.46calculateage"> </a></td><td>Clinical Operators calculate age</td><td>The CalculateAge operators calculate the age of a person born on the given birth date, as of the current date, and in the precision named in the operator.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#calculateage</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  clinical-operators.calculateageat<a name="cql-language-capabilities-clinical-operators.46calculateageat"> </a></td><td>Clinical Operators Calculate age at</td><td>The CalculateAgeAt operators calculate the age of a person born on the given birth date as of the given date, and in the precision named in the operator.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#calculateageat</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  clinical-operators.contains_codesystem<a name="cql-language-capabilities-clinical-operators.46contains_codesystem"> </a></td><td>Clinical Operators contains codesystem</td><td>The ~contains (Codesystem) operators determine whether or not a given code, or any of a list of codes, is in a particular codesystem. Note that these operators can only be invoked by referencing a defined codesystem or CodeSystem-valued expression.</td><td>2.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#calculateage</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  clinical-operators.contains_valueset<a name="cql-language-capabilities-clinical-operators.46contains_valueset"> </a></td><td>Clinical Operators contains valueset</td><td>The ~contains (Valueset) operators determine whether or not a given code, or any of a list of codes, is in a particular valueset. Note that these operators can only be invoked by referencing a defined valueset or ValueSet-valued expression.</td><td>2.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  clinical-operators.equal<a name="cql-language-capabilities-clinical-operators.46equal"> </a></td><td>Clinical Operators equal</td><td>The equal (=) operator for Codes and Concepts uses tuple equality semantics. This means that the operator will return true if and only if the values for each element by name are equal.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#equal-3</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  clinical-operators.equivalent<a name="cql-language-capabilities-clinical-operators.46equivalent"> </a></td><td>Clinical Operators equivalent</td><td>The equivalent (~) operator for Code values returns true if the code and system elements are equivalent. The version and display elements are ignored for the purposes of determining Code equivalence.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#equivalent-3</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  clinical-operators.in-codesysterm<a name="cql-language-capabilities-clinical-operators.46in-codesysterm"> </a></td><td>Clinical Operators in (Codesystem)</td><td>The in (Codesystem) operators determine whether or not a given code, or any of a list of codes, is in a particular codesystem. Note that these operators can only be invoked by referencing a defined codesystem.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#in-codesystem</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  clinical-operators.expandvalueset<a name="cql-language-capabilities-clinical-operators.46expandvalueset"> </a></td><td>Clinical Operators expand valueset</td><td>The ExpandValueSet function returns the current expansion for the given value set.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#expandvalueset</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  clinical-operators.in_valueset<a name="cql-language-capabilities-clinical-operators.46in_valueset"> </a></td><td>Clinical Operators in valueset</td><td>The in (Valueset) operators determine whether or not a given code, or any of a list of codes, is in a particular valueset. Note that these operators can only be invoked by referencing a defined valueset.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html</code></td></tr><tr><td>1</td><td style="white-space:nowrap">diagnostic-operators<a name="cql-language-capabilities-diagnostic-operators"> </a></td><td>Diagnostic Operators</td><td>Errors and messaging functions.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#errors-and-messaging</code></td></tr><tr><td>2</td><td style="white-space:nowrap">  diagnostic-operators.message<a name="cql-language-capabilities-diagnostic-operators.46message"> </a></td><td>Diagnostic Operators message</td><td>The Message operator provides a run-time mechanism for returning messages, warnings, traces, and errors to the calling environment.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#message</code></td></tr><tr><td>1</td><td style="white-space:nowrap">single-source-query<a name="cql-language-capabilities-single-source-query"> </a></td><td>Single source query</td><td>Query over one source.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/74-queryevaluation.html#evaluate-sources</code></td></tr><tr><td>1</td><td style="white-space:nowrap">relationships-query<a name="cql-language-capabilities-relationships-query"> </a></td><td>Relationships query</td><td>Query involving two or more sources.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/74-queryevaluation.html#evaluate-sources</code></td></tr><tr><td>1</td><td style="white-space:nowrap">let-clause-query<a name="cql-language-capabilities-let-clause-query"> </a></td><td>Let clause query</td><td>Introduce local bindings.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/74-queryevaluation.html#let-clause</code></td></tr><tr><td>1</td><td style="white-space:nowrap">where-clause-query<a name="cql-language-capabilities-where-clause-query"> </a></td><td>Where clause query</td><td>Filter using Boolean conditions.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/74-queryevaluation.html#where-clause</code></td></tr><tr><td>1</td><td style="white-space:nowrap">return-clause-query<a name="cql-language-capabilities-return-clause-query"> </a></td><td>Return clause query</td><td>Specify the shape/content of returned rows.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/74-queryevaluation.html#return-clause</code></td></tr><tr><td>1</td><td style="white-space:nowrap">aggregate-clause-query<a name="cql-language-capabilities-aggregate-clause-query"> </a></td><td>Aggregate clause query</td><td>Reduce rows to a summary value.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/74-queryevaluation.html#aggregate-clause</code></td></tr><tr><td>1</td><td style="white-space:nowrap">multi-source-query<a name="cql-language-capabilities-multi-source-query"> </a></td><td>Multi source query</td><td>Query using two or more sources.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/74-queryevaluation.html#evaluate-sources</code></td></tr><tr><td>1</td><td style="white-space:nowrap">unfiltered-context-retrieve<a name="cql-language-capabilities-unfiltered-context-retrieve"> </a></td><td>Unfiltered context retrieve</td><td>All data of a type in the current context.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/05-languagesemantics.html#language-capabilities</code></td></tr><tr><td>1</td><td style="white-space:nowrap">terminology-based-retrieve<a name="cql-language-capabilities-terminology-based-retrieve"> </a></td><td>Terminology-based retrieve</td><td>Retrieve filtered by ValueSet/CodeSystem/Code.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/05-languagesemantics.html#retrieve-paths</code></td></tr><tr><td>1</td><td style="white-space:nowrap">valueset-terminology-target-retrieve<a name="cql-language-capabilities-valueset-terminology-target-retrieve"> </a></td><td>Valueset terminology target retrieve</td><td>Retrieve filtered by a ValueSet reference.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/05-languagesemantics.html#retrieve-paths</code></td></tr><tr><td>1</td><td style="white-space:nowrap">codesystem-terminology-target-retrieve<a name="cql-language-capabilities-codesystem-terminology-target-retrieve"> </a></td><td>CodeSystem terminology target retrieve</td><td>Retrieve filtered by a CodeSystem.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/05-languagesemantics.html#retrieve-paths</code></td></tr><tr><td>1</td><td style="white-space:nowrap">code-terminology-target-retrieve<a name="cql-language-capabilities-code-terminology-target-retrieve"> </a></td><td>Code terminology target retrieve</td><td>Retrieve filtered by a single Code.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/05-languagesemantics.html#retrieve-paths</code></td></tr><tr><td>1</td><td style="white-space:nowrap">searchpath-retrieve<a name="cql-language-capabilities-searchpath-retrieve"> </a></td><td>Searchpath retrieve</td><td>Retrieve using a search path expression.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/05-languagesemantics.html#retrieve-paths</code></td></tr><tr><td>1</td><td style="white-space:nowrap">include-retrieve<a name="cql-language-capabilities-include-retrieve"> </a></td><td>Include retrieve</td><td>Retrieve that includes related records via references.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/05-languagesemantics.html#retrieve-paths</code></td></tr><tr><td>1</td><td style="white-space:nowrap">related-context-retrieve<a name="cql-language-capabilities-related-context-retrieve"> </a></td><td>Related-context retrieve</td><td>Retrieve scoped to a related context entity.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/05-languagesemantics.html#retrieve-paths</code></td></tr><tr><td>1</td><td style="white-space:nowrap">profile-based-retrieve<a name="cql-language-capabilities-profile-based-retrieve"> </a></td><td>Profile-based retrieve</td><td>Retrieve constrained to a profile.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/42-conformancelevels.html#strict-conformance</code></td></tr><tr><td>1</td><td style="white-space:nowrap">tuple<a name="cql-language-capabilities-tuple"> </a></td><td>Tuple</td><td>Structured type with named elements.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/63-expressionlanguagesemantics.html#structured-types</code></td></tr><tr><td>1</td><td style="white-space:nowrap">choice<a name="cql-language-capabilities-choice"> </a></td><td>Choice</td><td>Value that may be one of several specified types.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/63-expressionlanguagesemantics.html#choice-types</code></td></tr><tr><td>1</td><td style="white-space:nowrap">list&lt;T&gt;<a name="cql-language-capabilities-list.60T.62"> </a></td><td>List&lt;T&gt;</td><td>Ordered collection of elements of type T.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/63-expressionlanguagesemantics.html#collection-types</code></td></tr><tr><td>1</td><td style="white-space:nowrap">interval&lt;T&gt;<a name="cql-language-capabilities-interval.60T.62"> </a></td><td>Interval&lt;T&gt;</td><td>Range of values of type T.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#interval-operators-3</code></td></tr><tr><td>1</td><td style="white-space:nowrap">interval&lt;integer&gt;<a name="cql-language-capabilities-interval.60integer.62"> </a></td><td>Interval&lt;Integer&gt;</td><td>Range of integers.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#interval-operators-3</code></td></tr><tr><td>1</td><td style="white-space:nowrap">interval&lt;decimal&gt;<a name="cql-language-capabilities-interval.60decimal.62"> </a></td><td>Interval&lt;Decimal&gt;</td><td>Range of decimal numbers.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#interval-operators-3</code></td></tr><tr><td>1</td><td style="white-space:nowrap">interval&lt;date&gt;<a name="cql-language-capabilities-interval.60date.62"> </a></td><td>Interval&lt;Date&gt;</td><td>Range of dates (no time).</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#interval-operators-3</code></td></tr><tr><td>1</td><td style="white-space:nowrap">interval&lt;time&gt;<a name="cql-language-capabilities-interval.60time.62"> </a></td><td>Interval&lt;Time&gt;</td><td>Range of times of day (no date).</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#interval-operators-3</code></td></tr><tr><td>1</td><td style="white-space:nowrap">interval&lt;datetime&gt;<a name="cql-language-capabilities-interval.60datetime.62"> </a></td><td>Interval&lt;DateTime&gt;</td><td>Range of full date/times.</td><td>1.0</td><td/><td/><td><code>https://cql.hl7.org/09-b-cqlreference.html#interval-operators-3</code></td></tr></table></div>
      </text>
      <extension
                 url="http://hl7.org/fhir/StructureDefinition/structuredefinition-wg">
        <valueCode value="cds"/>
      </extension>
      <extension
                 url="http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status">
        <valueCode value="trial-use"/>
      </extension>
      <extension
                 url="http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm">
        <valueInteger value="2"/>
      </extension>
      <url value="http://cql.hl7.org/CodeSystem/cql-language-capabilities"/>
      <identifier>
        <system value="urn:ietf:rfc:3986"/>
        <value value="urn:oid:2.16.840.1.113883.4.642.40.71.16.2"/>
      </identifier>
      <version value="2.0.0"/>
      <name value="CQLLanguageCapabilityCodes"/>
      <title value="CQL Language Capability Codes"/>
      <status value="active"/>
      <experimental value="false"/>
      <date value="2026-07-29T09:34:45+10:00"/>
      <publisher value="Clinical Decision Support WG"/>
      <contact>
        <telecom>
          <system value="url"/>
          <value value="http://www.hl7.org/Special/committees/dss/index.cfm"/>
        </telecom>
      </contact>
      <description
                   value="This code system defines codes to represent CQL language capabilities, including characteristics of each capability such as the version of the specification in which the capability was introduced. This code system can be used to support advertising the capabilities required by knowledge artifacts, as well as the capabilities supported by CQL engines. The nature of the codes in this code system necessarily duplicate content in the CQL specification. When this duplication disagrees with the definition of features in the specification, the specification content is considered the source of truth (i.e. this code system is not the source of truth for CQL specification and capability semantics)."/>
      <caseSensitive value="true"/>
      <valueSet value="http://cql.hl7.org/ValueSet/cql-language-capability"/>
      <hierarchyMeaning value="is-a"/>
      <content value="complete"/>
      <property>
        <code value="version"/>
        <uri
             value="http://cql.hl7.org/CodeSystem/cql-capability-characteristic-codes#version"/>
        <description
                     value="The version in which the capability was introduced in the specification"/>
        <type value="string"/>
      </property>
      <property>
        <code value="versionTo"/>
        <uri
             value="http://cql.hl7.org/CodeSystem/cql-capability-characteristic-codes#versionTo"/>
        <description
                     value="The last version in which the capability was included in the specification"/>
        <type value="string"/>
      </property>
      <property>
        <code value="value"/>
        <uri
             value="http://cql.hl7.org/CodeSystem/cql-capability-characteristic-codes#value"/>
        <description
                     value="A qualifier value used to provide more detail about the capability"/>
        <type value="string"/>
      </property>
      <property>
        <code value="valueMeaning"/>
        <uri
             value="http://cql.hl7.org/CodeSystem/cql-capability-characteristic-codes#valueMeaning"/>
        <description
                     value="A description of the meaning of qualifier values for the capability"/>
        <type value="string"/>
      </property>
      <property>
        <code value="reference"/>
        <uri
             value="http://cql.hl7.org/CodeSystem/cql-capability-characteristic-codes#reference"/>
        <description
                     value="A reference to the specification documenting this capability"/>
        <type value="string"/>
      </property>
      <concept>
        <code value="decimal-precision-and-scale"/>
        <display value="Decimal precision and scale"/>
        <definition
                    value="How many total digits (precision) and how many digits to the right of the decimal point (scale) the implementation supports for Decimal values."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="value"/>
          <valueString value="28,8"/>
        </property>
        <property>
          <code value="valueMeaning"/>
          <valueString
                       value="The supported precision and scale of decimal values"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/09-b-cqlreference.html#decimal"/>
        </property>
      </concept>
      <concept>
        <code value="datetime-precision-and-scale"/>
        <display value="Datetime precision and scale"/>
        <definition
                    value="The finest granularity (precision) and smallest increment (scale) supported for date/time values."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/09-b-cqlreference.html#datetime"/>
        </property>
      </concept>
      <concept>
        <code value="ucum-unit-conversion-support"/>
        <display value="UCUM unit conversion support"/>
        <definition
                    value="Whether and how the engine can automatically convert between units of measure using UCUM."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/09-b-cqlreference.html#convertquantity"/>
        </property>
      </concept>
      <concept>
        <code value="regex-dialect"/>
        <display value="Regex dialect"/>
        <definition
                    value="Which flavor of regular expressions the implementation supports."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/09-b-cqlreference.html#matches"/>
        </property>
      </concept>
      <concept>
        <code value="supported-data-models"/>
        <display value="Supported data models"/>
        <definition
                    value="Which external models the engine can evaluate against."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/05-languagesemantics.html#data-model"/>
        </property>
      </concept>
      <concept>
        <code value="expand-operator"/>
        <display value="Expand operator"/>
        <definition value="Expand on ValueSet/Interval."/>
        <property>
          <code value="version"/>
          <valueString value="1.3"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/05-languagesemantics.html#collapse-and-expand-operators"/>
        </property>
      </concept>
      <concept>
        <code value="fhirpath-support"/>
        <display value="FHIRPath Support"/>
        <definition value="Ability to evaluate/translate FHIRPath within CQL."/>
        <property>
          <code value="version"/>
          <valueString value="1.3"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString value="https://cql.hl7.org/16-i-fhirpathtranslation.html"/>
        </property>
      </concept>
      <concept>
        <code value="precision-operators-for-decimal-and-date-time-types"/>
        <display value="Precision operators for Decimal and Date/Time types"/>
        <definition value="Operators that adjust/control precision."/>
        <property>
          <code value="version"/>
          <valueString value="1.4"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/09-b-cqlreference.html#precision"/>
        </property>
      </concept>
      <concept>
        <code value="model-defined-contexts"/>
        <display value="Model-defined contexts"/>
        <definition value="Contexts defined by the data model."/>
        <property>
          <code value="version"/>
          <valueString value="1.4"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/05-languagesemantics.html#context-support"/>
        </property>
      </concept>
      <concept>
        <code value="library-namespaces"/>
        <display value="Library namespaces"/>
        <definition value="Organize libraries into namespaces."/>
        <property>
          <code value="version"/>
          <valueString value="1.4"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/07-physicalrepresentation.html#media-types-and-namespaces"/>
        </property>
      </concept>
      <concept>
        <code value="related-context-retrieves"/>
        <display value="Related-context retrieves"/>
        <definition value="Context-relative retrieve operations."/>
        <property>
          <code value="version"/>
          <valueString value="1.4"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/05-languagesemantics.html#retrieve-paths"/>
        </property>
      </concept>
      <concept>
        <code value="unit-conversion-support"/>
        <display value="Unit conversion support"/>
        <definition value="Convert between compatible UCUM units."/>
        <property>
          <code value="version"/>
          <valueString value="1.4"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/05-languagesemantics.html#conversions"/>
        </property>
      </concept>
      <concept>
        <code value="modular-arithmetic-for-quantities"/>
        <display value="Modular arithmetic for quantities"/>
        <definition value="Modulo/remainder with Quantity."/>
        <property>
          <code value="version"/>
          <valueString value="1.5"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/05-languagesemantics.html#quantity-arithmetic"/>
        </property>
      </concept>
      <concept>
        <code value="expand-a-single-interval"/>
        <display value="Expand a single interval"/>
        <definition value="Expand applied to a single Interval."/>
        <property>
          <code value="version"/>
          <valueString value="1.5"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString value="https://cql.hl7.org/09-b-cqlreference.html#expand"/>
        </property>
      </concept>
      <concept>
        <code value="aggregate-clause"/>
        <display value="Aggregate clause"/>
        <definition value="Query clause for aggregation."/>
        <property>
          <code value="version"/>
          <valueString value="1.5"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/05-languagesemantics.html#aggregate-clause"/>
        </property>
      </concept>
      <concept>
        <code value="include-retrieves"/>
        <display value="Include retrieves"/>
        <definition value="Retrieve that follows model references."/>
        <property>
          <code value="version"/>
          <valueString value="1.5"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/05-languagesemantics.html#retrieve-paths"/>
        </property>
      </concept>
      <concept>
        <code value="searchpath-retrieves"/>
        <display value="Searchpath retrieves"/>
        <definition value="Retrieve using a search path expression."/>
        <property>
          <code value="version"/>
          <valueString value="1.5"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/05-languagesemantics.html#retrieve-paths"/>
        </property>
      </concept>
      <concept>
        <code value="id-retrieves"/>
        <display value="Id retrieves"/>
        <definition value="Retrieve by unique identifier."/>
        <property>
          <code value="version"/>
          <valueString value="1.5"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/05-languagesemantics.html#retrieve-paths"/>
        </property>
      </concept>
      <concept>
        <code value="system-data-types"/>
        <display value="System Data Types"/>
        <definition
                    value="Primitive, structured, and collection types defined by the System namespace."/>
        <property>
          <code value="reference"/>
          <valueString value="https://cql.hl7.org/09-b-cqlreference.html#types"/>
        </property>
        <concept>
          <code value="system.integer"/>
          <display value="System.Integer"/>
          <definition value="Whole numbers with no fractional component."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#integer"/>
          </property>
        </concept>
        <concept>
          <code value="system.long"/>
          <display value="System.Long"/>
          <definition value="64-bit signed integers."/>
          <property>
            <code value="version"/>
            <valueString value="1.5"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#long"/>
          </property>
        </concept>
        <concept>
          <code value="system.decimal"/>
          <display value="System.Decimal"/>
          <definition value="Numbers with fractional precision and scale."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#decimal"/>
          </property>
        </concept>
        <concept>
          <code value="system.string"/>
          <display value="System.String"/>
          <definition value="Sequence of text characters."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#string"/>
          </property>
        </concept>
        <concept>
          <code value="system.boolean"/>
          <display value="System.Boolean"/>
          <definition value="Logical truth values."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#boolean"/>
          </property>
        </concept>
        <concept>
          <code value="system.date"/>
          <display value="System.Date"/>
          <definition value="Calendar date without time."/>
          <property>
            <code value="version"/>
            <valueString value="1.3"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#date"/>
          </property>
        </concept>
        <concept>
          <code value="system.time"/>
          <display value="System.Time"/>
          <definition value="Time of day without date."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#time"/>
          </property>
        </concept>
        <concept>
          <code value="system.datetime"/>
          <display value="System.DateTime"/>
          <definition value="Date and time point (optional offset)."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#datetime"/>
          </property>
        </concept>
        <concept>
          <code value="system.quantity"/>
          <display value="System.Quantity"/>
          <definition value="Numeric value with unit."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#quantity"/>
          </property>
        </concept>
        <concept>
          <code value="system.ratio"/>
          <display value="System.Ratio"/>
          <definition value="Fractional relationship between two Quantities."/>
          <property>
            <code value="version"/>
            <valueString value="1.3"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#ratio"/>
          </property>
        </concept>
        <concept>
          <code value="system.interval"/>
          <display value="System.Interval"/>
          <definition value="Range over an ordered type."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#interval-operators-3"/>
          </property>
        </concept>
        <concept>
          <code value="system.list"/>
          <display value="System.List"/>
          <definition value="Ordered collection of elements of a type."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/63-expressionlanguagesemantics.html#collection-types"/>
          </property>
        </concept>
        <concept>
          <code value="system.tuple"/>
          <display value="System.Tuple"/>
          <definition value="Structured type with named elements."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/63-expressionlanguagesemantics.html#structured-types"/>
          </property>
        </concept>
        <concept>
          <code value="system.choice"/>
          <display value="System.Choice"/>
          <definition value="Value of one among several types."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/63-expressionlanguagesemantics.html#choice-types"/>
          </property>
        </concept>
        <concept>
          <code value="system.codesystem"/>
          <display value="System.CodeSystem"/>
          <definition value="Reference to an external code system."/>
          <property>
            <code value="version"/>
            <valueString value="1.5"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#codesystem"/>
          </property>
        </concept>
        <concept>
          <code value="system.valueset"/>
          <display value="System.ValueSet"/>
          <definition value="Reference to a set of codes."/>
          <property>
            <code value="version"/>
            <valueString value="1.5"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#valueset"/>
          </property>
        </concept>
        <concept>
          <code value="system.vocabulary"/>
          <display value="System.Vocabulary"/>
          <definition value="Base type for vocabulary-related types."/>
          <property>
            <code value="version"/>
            <valueString value="1.5"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#vocabulary"/>
          </property>
        </concept>
      </concept>
      <concept>
        <code value="logical-operators"/>
        <display value="Logical Operators"/>
        <definition value="and, or, not, implies under 3-valued logic."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/09-b-cqlreference.html#logical-operators"/>
        </property>
        <concept>
          <code value="logical-operators.and"/>
          <display value="Logical Operator and"/>
          <definition
                      value="The and operator returns true if both its arguments are true. If either argument is false, the result is false. Otherwise, the result is null."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#and"/>
          </property>
        </concept>
        <concept>
          <code value="logical-operators.or"/>
          <display value="Logical Operator or"/>
          <definition
                      value="The or operator returns true if either of its arguments are true. If both arguments are false, the result is false. Otherwise, the result is null."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#or"/>
          </property>
        </concept>
        <concept>
          <code value="logical-operators.not"/>
          <display value="Logical Operator not"/>
          <definition
                      value="The not operator returns true if the argument is false and false if the argument is true. Otherwise, the result is null."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#not"/>
          </property>
        </concept>
        <concept>
          <code value="logical-operators.xor"/>
          <display value="Logical Operator xor"/>
          <definition
                      value="The xor (exclusive or) operator returns true if one argument is true and the other is false. If both arguments are true or both arguments are false, the result is false. Otherwise, the result is null."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#xor"/>
          </property>
        </concept>
        <concept>
          <code value="logical-operators.implies"/>
          <display value="Logical Operator implies"/>
          <definition
                      value="The implies operator returns the logical implication of its arguments. This means that if the left operand evaluates to true, this operator returns the boolean evaluation of the right operand. If the left operand evaluates to false, this operator returns true. Otherwise, this operator returns true if the right operand evaluates to true, and null otherwise"/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#implies"/>
          </property>
        </concept>
      </concept>
      <concept>
        <code value="type-operators"/>
        <display value="Type Operators"/>
        <definition value="Type inspection and conversion operators."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/09-b-cqlreference.html#type-operators"/>
        </property>
        <concept>
          <code value="type-operators.as"/>
          <display value="Type Operator as"/>
          <definition
                      value="The as operator allows the result of an expression to be cast as a given target type. This allows expressions to be written that are statically typed against the expected run-time type of the argument."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#as"/>
          </property>
        </concept>
        <concept>
          <code value="type-operators.cast-as"/>
          <display value="Type Operator as"/>
          <definition
                      value="(See the as operator in addition) The cast prefix indicates that if the argument is not of the specified type at run-time then an exception is thrown."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#as"/>
          </property>
        </concept>
        <concept>
          <code value="type-operators.is"/>
          <display value="Type Operator is"/>
          <definition
                      value="The is operator allows the type of a result to be tested. If the run-time type of the argument is the same as or derived from the type being tested, the result of the operator is true; otherwise, the result is false."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#is"/>
          </property>
        </concept>
        <concept>
          <code value="type-operators.children"/>
          <display value="Type Operator children"/>
          <definition
                      value="For structured types, the Children operator returns a list of all the values of the elements of the type. List-valued elements are expanded and added to the result individually, rather than as a single list."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#children"/>
          </property>
        </concept>
        <concept>
          <code value="type-operators.descendants"/>
          <display value="Type Operator descendants"/>
          <definition
                      value="or structured types, the Descendants operator returns a list of all the values of the elements of the type, recursively. List-valued elements are expanded and added to the result individually, rather than as a single list."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#descendants"/>
          </property>
        </concept>
        <concept>
          <code value="type-operators.convert-quantity"/>
          <display value="Type Operator convert-quantity"/>
          <definition
                      value="The convert operator converts a value to a specific type. The result of the operator is the value of the argument converted to the target type, if possible. If there is no valid conversion from the actual value to the target type, the result is null."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#convert"/>
          </property>
        </concept>
        <concept>
          <code value="type-operators.to-boolean"/>
          <display value="Type Operator to-boolean"/>
          <definition
                      value="The ToBoolean operator converts the value of its argument to a Boolean value."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#toboolean"/>
          </property>
        </concept>
        <concept>
          <code value="type-operators.to-integer"/>
          <display value="Type Operator to-integer"/>
          <definition
                      value="The ToInteger operator converts the value of its argument to an Integer value."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#tointeger"/>
          </property>
        </concept>
        <concept>
          <code value="type-operators.to-long"/>
          <display value="Type Operator to-long"/>
          <definition
                      value="The ToLong operator converts the value of its argument to a Long value."/>
          <property>
            <code value="version"/>
            <valueString value="1.5"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#tolong"/>
          </property>
        </concept>
        <concept>
          <code value="type-operators.to-decimal"/>
          <display value="Type Operator to-decimal"/>
          <definition
                      value="The ToDecimal operator converts the value of its argument to a Decimal value."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#todecimal"/>
          </property>
        </concept>
        <concept>
          <code value="type-operators.to-quantity"/>
          <display value="Type Operator to-quantity"/>
          <definition
                      value="The ToQuantity operator converts the value of its argument to a Quantity value. The operation does not perform any unit conversion, that capability is supported by the ConvertQuantity operator."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#toquantity"/>
          </property>
        </concept>
        <concept>
          <code value="type-operators.to-ratio"/>
          <display value="Type Operator to-ratio"/>
          <definition
                      value="The ToRatio operator converts the value of its argument to a Ratio value."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#toratio"/>
          </property>
        </concept>
        <concept>
          <code value="type-operators.to-date"/>
          <display value="Type Operator to-date"/>
          <definition
                      value="The ToDate operator converts the value of its argument to a Date value."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#todate"/>
          </property>
        </concept>
        <concept>
          <code value="type-operators.to-datetime"/>
          <display value="Type Operator to-datetime"/>
          <definition
                      value="The ToDateTime operator converts the value of its argument to a DateTime value."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#todatetime"/>
          </property>
        </concept>
        <concept>
          <code value="type-operators.to-time"/>
          <display value="Type Operator to-time"/>
          <definition
                      value="The ToTime operator converts the value of its argument to a Time value. The operator expects the string to be formatted using ISO-8601 time representation."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#totime"/>
          </property>
        </concept>
        <concept>
          <code value="type-operators.to-string"/>
          <display value="Type Operator to-string"/>
          <definition
                      value="The ToString operator converts the value of its argument to a String value."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#tostring"/>
          </property>
        </concept>
        <concept>
          <code value="type-operators.converts-to-boolean"/>
          <display value="Type Operator converts-to-boolean"/>
          <definition
                      value="The ConvertsToBoolean operator returns true if its argument is or can be converted to a Boolean value."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#convertstoboolean"/>
          </property>
        </concept>
        <concept>
          <code value="type-operators.converts-to-integer"/>
          <display value="Type Operator converts-to-integer"/>
          <definition
                      value="The ConvertsToInteger operator returns true if its argument is or can be converted to an Integer value. See the ToInteger operator for a description of the supported conversions."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#convertstointeger"/>
          </property>
        </concept>
        <concept>
          <code value="type-operators.converts-to-long"/>
          <display value="Type Operator converts-to-long"/>
          <definition
                      value="The ConvertsToLong operator returns true if its argument is or can be converted to a Long value."/>
          <property>
            <code value="version"/>
            <valueString value="1.5"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#convertstolong"/>
          </property>
        </concept>
        <concept>
          <code value="type-operators.converts-to-decimal"/>
          <display value="Type Operator converts-to-decimal"/>
          <definition
                      value="The ToDecimal operator returns true if its argument is or can be converted to a Decimal value."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#convertstodecimal"/>
          </property>
        </concept>
        <concept>
          <code value="type-operators.converts-to-quantity"/>
          <display value="Type Operator converts-to-quantity"/>
          <definition
                      value="The ConvertsToQuantity operator returns true if its argument is or can be converted to a Quantity value. See the ToQuantity operator for a description of the supported conversions."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#convertstoquantity"/>
          </property>
        </concept>
        <concept>
          <code value="type-operators.converts-to-ratio"/>
          <display value="Type Operator converts-to-ration"/>
          <definition
                      value="The ConvertsToRatio operator returns true if its argument is or can be converted to a Ratio value"/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#convertstoratio"/>
          </property>
        </concept>
        <concept>
          <code value="type-operators.converts-to-date"/>
          <display value="Type Operator converts-to-date"/>
          <definition
                      value="The ConvertsToDate operator returns true if its argument is or can be converted to a Date value."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#convertstodate"/>
          </property>
        </concept>
        <concept>
          <code value="type-operators.converts-to-datetime"/>
          <display value="Type Operator converts-to-datetime"/>
          <definition
                      value="The ConvertsToDateTime operator returns true if its argument is or can be converted to a DateTime value."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#convertstodatetime"/>
          </property>
        </concept>
        <concept>
          <code value="type-operators.converts-to-time"/>
          <display value="Type Operator converts-to-time"/>
          <definition
                      value="The ConvertsToTime operator returns true if its argument is or can be converted to a Time value."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#convertstotime"/>
          </property>
        </concept>
        <concept>
          <code value="type-operators.converts-to-string"/>
          <display value="Type Operator converts-to-string"/>
          <definition
                      value="The ConvertsToString operator returns true if its argument is or can be converted to a String value."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#convertstostring"/>
          </property>
        </concept>
      </concept>
      <concept>
        <code value="nullological-operators"/>
        <display value="Nullological Operators"/>
        <definition value="Operators dealing with null/missing information."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/09-b-cqlreference.html#nullological-operators"/>
        </property>
        <concept>
          <code value="nullological-operators.coalesce"/>
          <display value="Nullological Operators coalesce"/>
          <definition
                      value="The Coalesce operator returns the first non-null result in a list of arguments. If all arguments evaluate to null, the result is null."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#coalesce"/>
          </property>
        </concept>
        <concept>
          <code value="nullological-operators.is-null"/>
          <display value="Nullological Operators is-null"/>
          <definition
                      value="The is null operator determines whether or not its argument evaluates to null. If the argument evaluates to null, the result is true; otherwise, the result is false."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#isnull"/>
          </property>
        </concept>
        <concept>
          <code value="nullological-operators.is-true"/>
          <display value="Nullological Operators coalesce"/>
          <definition
                      value="The is true operator determines whether or not its argument evaluates to true. If the argument evaluates to true, the result is true; otherwise, the result is false."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#istrue"/>
          </property>
        </concept>
        <concept>
          <code value="nullological-operators.is-false"/>
          <display value="Nullological Operators is-false"/>
          <definition
                      value="The is false operator determines whether or not its argument evaluates to false. If the argument evaluates to false, the result is true; otherwise, the result is false."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#isfalse"/>
          </property>
        </concept>
      </concept>
      <concept>
        <code value="comparison-operators"/>
        <display value="Comparison Operators"/>
        <definition
                    value="Equal, not equal, &lt;, &lt;=, &gt;, &gt;=, in/not in, etc."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/09-b-cqlreference.html#comparison-operators"/>
        </property>
        <concept>
          <code value="comparison-operators.equal"/>
          <display value="Comparison Operators equal"/>
          <definition
                      value="The equal (=) operator returns true if the arguments are equal; false if the arguments are known unequal, and null otherwise. Equality semantics are defined to be value-based."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#equal"/>
          </property>
        </concept>
        <concept>
          <code value="comparison-operators.equivalent"/>
          <display value="Comparison Operators equivalent"/>
          <definition
                      value="The equivalent (~) operator returns true if the arguments are equivalent in value, or if they are both null; and false otherwise."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#equivalent"/>
          </property>
        </concept>
        <concept>
          <code value="comparison-operators.greater"/>
          <display value="Comparison Operators greater"/>
          <definition
                      value="The greater (&gt;) operator returns true if the first argument is greater than the second argument."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#greater"/>
          </property>
        </concept>
        <concept>
          <code value="comparison-operators.greater-or-equal"/>
          <display value="Comparison Operators greater or equal"/>
          <definition
                      value="The greater or equal (&gt;=) operator returns true if the first argument is greater than or equal to the second argument."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#greater-or-equal"/>
          </property>
        </concept>
        <concept>
          <code value="comparison-operators.less"/>
          <display value="Comparison Operators less"/>
          <definition
                      value="The less (&lt;) operator returns true if the first argument is less than the second argument."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#less"/>
          </property>
        </concept>
        <concept>
          <code value="comparison-operators.less-or-equal"/>
          <display value="Comparison Operators less-or-equal"/>
          <definition
                      value="The less or equal (&lt;=) operator returns true if the first argument is less than or equal to the second argument."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#less-or-equal"/>
          </property>
        </concept>
        <concept>
          <code value="comparison-operators.not-equal"/>
          <display value="Comparison Operators not-equal"/>
          <definition
                      value="The not equal (!=) operator returns true if its arguments are not the same value."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#not-equal"/>
          </property>
        </concept>
        <concept>
          <code value="comparison-operators.not-equivalent"/>
          <display value="Comparison Operators not-equivalent"/>
          <definition
                      value="The not equivalent (!~) operator returns true if its arguments are not equivalent."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#not-equivalent"/>
          </property>
        </concept>
        <concept>
          <code value="comparison-operators.between"/>
          <display value="Comparison Operators between"/>
          <definition
                      value="The between operator determines whether the first argument is within a given range, inclusive. If the first argument is greater than or equal to the low argument, and less than or equal to the high argument, the result is true, otherwise, the result is false."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#between"/>
          </property>
        </concept>
      </concept>
      <concept>
        <code value="arithmetic-operators"/>
        <display value="Arithmetic Operators"/>
        <definition value="Add, subtract, multiply, divide, mod, round, etc."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/09-b-cqlreference.html#arithmetic-operators"/>
        </property>
        <concept>
          <code value="arithmetic-operators.abs"/>
          <display value="Arithmetic Operators abs"/>
          <definition
                      value="The Abs operator returns the absolute value of its argument."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#abs"/>
          </property>
        </concept>
        <concept>
          <code value="arithmetic-operators.add"/>
          <display value="Arithmetic Operators add"/>
          <definition
                      value="The add (+) operator performs numeric addition of its arguments."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#add"/>
          </property>
        </concept>
        <concept>
          <code value="arithmetic-operators.ceiling"/>
          <display value="Arithmetic Operators ceiling"/>
          <definition
                      value="The Ceiling operator returns the first integer greater than or equal to the argument."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#ceiling"/>
          </property>
        </concept>
        <concept>
          <code value="arithmetic-operators.divide"/>
          <display value="Arithmetic Operators divide"/>
          <definition
                      value="The divide (/) operator performs numeric division of its arguments. Note that this operator is Decimal division; for Integer division, use the truncated divide (div) operator."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#string-operators"/>
          </property>
        </concept>
        <concept>
          <code value="arithmetic-operators.floor"/>
          <display value="Arithmetic Operators floor"/>
          <definition
                      value="The Floor operator returns the first integer less than or equal to the argument."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#floor"/>
          </property>
        </concept>
        <concept>
          <code value="arithmetic-operators.exp"/>
          <display value="Arithmetic Operators exp"/>
          <definition
                      value="The Exp operator raises e to the power of its argument."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#exp"/>
          </property>
        </concept>
        <concept>
          <code value="arithmetic-operators.highboundary"/>
          <display value="Arithmetic Operators highboundary"/>
          <definition
                      value="The HighBoundary function returns the greatest possible value of the input to the specified precision."/>
          <property>
            <code value="version"/>
            <valueString value="1.5"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#highboundary"/>
          </property>
        </concept>
        <concept>
          <code value="arithmetic-operators.log"/>
          <display value="Arithmetic Operators log"/>
          <definition
                      value="The Log operator computes the logarithm of its first argument, using the second argument as the base."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#log"/>
          </property>
        </concept>
        <concept>
          <code value="arithmetic-operators.lowboundary"/>
          <display value="Arithmetic Operators lowboundary"/>
          <definition
                      value="The LowBoundary function returns the least possible value of the input to the specified precision."/>
          <property>
            <code value="version"/>
            <valueString value="1.5"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#lowboundary"/>
          </property>
        </concept>
        <concept>
          <code value="arithmetic-operators.ln"/>
          <display value="Arithmetic Operators ln"/>
          <definition
                      value="The Ln operator computes the natural logarithm of its argument."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#ln"/>
          </property>
        </concept>
        <concept>
          <code value="arithmetic-operators.maximum"/>
          <display value="Arithmetic Operators maximum"/>
          <definition
                      value="The maximum operator returns the maximum representable value for the given type, defined for the Integer, Long, Decimal, Quantity, Date, DateTime, and Time types."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#maximum"/>
          </property>
        </concept>
        <concept>
          <code value="arithmetic-operators.minimum"/>
          <display value="Arithmetic Operators minimum"/>
          <definition
                      value="The minimum operator returns the minimum representable value for the given type, defined for the Integer, Long, Decimal, Quantity, Date, DateTime, and Time types."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#minimum"/>
          </property>
        </concept>
        <concept>
          <code value="arithmetic-operators.mod"/>
          <display value="Arithmetic Operators mod"/>
          <definition
                      value="The mod operator computes the remainder of the division of its arguments."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#mod"/>
          </property>
        </concept>
        <concept>
          <code value="arithmetic-operators.multiply"/>
          <display value="Arithmetic Operators multiply"/>
          <definition
                      value="The multiply (*) operator performs numeric multiplication of its arguments."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#multiply"/>
          </property>
        </concept>
        <concept>
          <code value="arithmetic-operators.negate"/>
          <display value="Arithmetic Operators negate"/>
          <definition
                      value="The negate (-) operator returns the negative of its argument."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#negate"/>
          </property>
        </concept>
        <concept>
          <code value="arithmetic-operators.precision"/>
          <display value="Arithmetic Operators precision"/>
          <definition
                      value="The Precision function returns the number of digits of precision in the input value."/>
          <property>
            <code value="version"/>
            <valueString value="1.5"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#precision"/>
          </property>
        </concept>
        <concept>
          <code value="arithmetic-operators.predecessor"/>
          <display value="Arithmetic Operators predecessor"/>
          <definition
                      value="The predecessor operator returns the predecessor of the argument. For example, the predecessor of 2 is 1. If the argument is already the minimum value for the type, a null is returned."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#predecessor"/>
          </property>
        </concept>
        <concept>
          <code value="arithmetic-operators.power"/>
          <display value="Arithmetic Operators power"/>
          <definition
                      value="The power (^) operator raises the first argument to the power given by the second argument."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#power"/>
          </property>
        </concept>
        <concept>
          <code value="arithmetic-operators.round"/>
          <display value="Arithmetic Operators round"/>
          <definition
                      value="The Round operator returns the nearest whole number to its argument. The semantics of round are defined as a traditional round (i.e. to the nearest whole number), meaning that a decimal value greater than or equal to 0.5 and less than 1.0 will round to 1, and a decimal value less than or equal to -0.5 and greater than -1.0 will round to -1."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#round"/>
          </property>
        </concept>
        <concept>
          <code value="arithmetic-operators.subtract"/>
          <display value="Arithmetic Operators subtract"/>
          <definition
                      value="The subtract (-) operator performs numeric subtraction of its arguments."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#subtract"/>
          </property>
        </concept>
        <concept>
          <code value="arithmetic-operators.successor"/>
          <display value="Arithmetic Operators successor"/>
          <definition
                      value="The successor operator returns the successor of the argument. For example, the successor of 1 is 2. If the argument is already the maximum value for the type, a null is returned."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#successor"/>
          </property>
        </concept>
        <concept>
          <code value="arithmetic-operators.truncate"/>
          <display value="Arithmetic Operators truncate"/>
          <definition
                      value="The Truncate operator returns the integer component of its argument."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#truncate"/>
          </property>
        </concept>
        <concept>
          <code value="arithmetic-operators.div"/>
          <display value="Arithmetic Operators div"/>
          <definition
                      value="The div operator performs truncated division of its arguments."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#div"/>
          </property>
        </concept>
      </concept>
      <concept>
        <code value="string-operators"/>
        <display value="String Operators"/>
        <definition
                    value="Length, substring, startsWith, endsWith, matches, replaceMatches, etc."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/09-b-cqlreference.html#string-operators"/>
        </property>
        <concept>
          <code value="string-operators.combine"/>
          <display value="String Operators combine"/>
          <definition
                      value="The Combine operator combines a list of strings, optionally separating each string with the given separator."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#combine"/>
          </property>
        </concept>
        <concept>
          <code value="string-operators.concatenate"/>
          <display value="String Operators concatenate"/>
          <definition
                      value="The concatenate (+ or &amp;) operator performs string concatenation of its arguments."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#concatenate"/>
          </property>
        </concept>
        <concept>
          <code value="string-operators.endwith"/>
          <display value="String Operators endwith"/>
          <definition
                      value="The EndsWith operator returns true if the given string ends with the given suffix."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#endwith"/>
          </property>
        </concept>
        <concept>
          <code value="string-operators.indexer"/>
          <display value="String Operators indexer"/>
          <definition
                      value="The indexer ([]) operator returns the character at the indexth position in a string."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#indexer"/>
          </property>
        </concept>
        <concept>
          <code value="string-operators.lastpositionof"/>
          <display value="String Operators lastpositionof"/>
          <definition
                      value="The LastPositionOf operator returns the 0-based index of the last appearance of the given pattern in the given string."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#lastpositionof"/>
          </property>
        </concept>
        <concept>
          <code value="string-operators.length"/>
          <display value="String Operators length"/>
          <definition
                      value="The Length operator returns the number of characters in a string."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#length"/>
          </property>
        </concept>
        <concept>
          <code value="string-operators.lower"/>
          <display value="String Operators lower"/>
          <definition
                      value="The Lower operator returns the given string with all characters converted to their lower case equivalents."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#lower"/>
          </property>
        </concept>
        <concept>
          <code value="string-operators.matches"/>
          <display value="String Operators matches"/>
          <definition
                      value="The Matches operator returns true if the given string matches the given regular expression pattern. Regular expressions should function consistently, regardless of any culture- and locale-specific settings in the environment, should be case-sensitive, use partial matching, use single line mode, and allow Unicode characters. The start/end of line markers ^ and $ can be used to match the entire string."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#matches"/>
          </property>
        </concept>
        <concept>
          <code value="string-operators.positionof"/>
          <display value="String Operators positionof"/>
          <definition
                      value="The PositionOf operator returns the 0-based index of the given pattern in the given string."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#positionof"/>
          </property>
        </concept>
        <concept>
          <code value="string-operators.replacematches"/>
          <display value="String Operators replacematches"/>
          <definition
                      value="The ReplaceMatches operator matches the given string using the given regular expression pattern, replacing each match with the given substitution. The substitution string may refer to identified match groups in the regular expression. Regular expressions should function consistently, regardless of any culture- and locale-specific settings in the environment, should be case-sensitive, use partial matching, use single line mode, and allow Unicode characters. The start and end of line markers ^, $ can be used to match the entire string."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#replacematches"/>
          </property>
        </concept>
        <concept>
          <code value="string-operators.split"/>
          <display value="String Operators split"/>
          <definition
                      value="The Split operator splits a string into a list of strings using a separator."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#split"/>
          </property>
        </concept>
        <concept>
          <code value="string-operators.splitonmatches"/>
          <display value="String Operators splitonmatches"/>
          <definition
                      value="The SplitOnMatches operator splits a string into a list of strings using a separator that is defined by a regular expression pattern."/>
          <property>
            <code value="version"/>
            <valueString value="1.3"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#splitonmatches"/>
          </property>
        </concept>
        <concept>
          <code value="string-operators.startswith"/>
          <display value="String Operators startswith"/>
          <definition
                      value="The StartsWith operator returns true if the given string starts with the given prefix."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#startswith"/>
          </property>
        </concept>
        <concept>
          <code value="string-operators.substring"/>
          <display value="String Operators substring"/>
          <definition
                      value="The Substring operator returns the string within stringToSub, starting at the 0-based index startIndex, and consisting of length characters."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#substring"/>
          </property>
        </concept>
        <concept>
          <code value="string-operators.upper"/>
          <display value="String Operators upper"/>
          <definition
                      value="The Upper operator returns the given string with all characters converted to their upper case equivalents."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#upper"/>
          </property>
        </concept>
      </concept>
      <concept>
        <code value="date-and-time-operators"/>
        <display value="Date and Time Operators"/>
        <definition
                    value="Date/time arithmetic, components, now/today, comparisons, etc."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/09-b-cqlreference.html#date-and-time-operators"/>
        </property>
        <concept>
          <code value="date-and-time-operators.add"/>
          <display value="Date and Time Operators add"/>
          <definition
                      value="The add (+) operator returns the value of the first argument, incremented by the time-valued quantity, respecting variable length periods for calendar years and months."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#add"/>
          </property>
        </concept>
        <concept>
          <code value="date-and-time-operators.after"/>
          <display value="Date and Time Operators after"/>
          <definition
                      value="The after-precision-of operator compares two Date, DateTime, or Time values to the specified precision to determine whether the first argument is the after the second argument. The comparison is performed by considering each precision in order, beginning with years (or hours for time values). If the values are the same, comparison proceeds to the next precision; if the first value is greater than the second, the result is true; if the first value is less than the second, the result is false; if either input has no value for the precision, the comparison stops and the result is null; if the specified precision has been reached, the comparison stops and the result is false."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#after"/>
          </property>
        </concept>
        <concept>
          <code value="date-and-time-operators.before"/>
          <display value="Date and Time Operators before"/>
          <definition
                      value="The before-precision-of operator compares two Date, DateTime, or Time values to the specified precision to determine whether the first argument is the before the second argument. The comparison is performed by considering each precision in order, beginning with years (or hours for time values). If the values are the same, comparison proceeds to the next precision; if the first value is less than the second, the result is true; if the first value is greater than the second, the result is false; if either input has no value for the precision, the comparison stops and the result is null; if the specified precision has been reached, the comparison stops and the result is false."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#before"/>
          </property>
        </concept>
        <concept>
          <code value="date-and-time-operators.date"/>
          <display value="Date and Time Operators date"/>
          <definition
                      value="The Date operator constructs a date value from the given components."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#date"/>
          </property>
        </concept>
        <concept>
          <code value="date-and-time-operators.datetime"/>
          <display value="Date and Time Operators datetime"/>
          <definition
                      value="The DateTime operator constructs a DateTime value from the given components."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#datetime"/>
          </property>
        </concept>
        <concept>
          <code value="date-and-time-operators.from"/>
          <display value="Date and Time Operators from"/>
          <definition
                      value="The component-from operator returns the specified component of the argument."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#from"/>
          </property>
        </concept>
        <concept>
          <code value="date-and-time-operators.difference"/>
          <display value="Date and Time Operators difference"/>
          <definition
                      value="The difference-between operator returns the number of boundaries crossed for the specified precision between the first and second arguments. If the first argument is after the second argument, the result is negative. The result of this operation is always an integer; any fractional boundaries are dropped."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#difference"/>
          </property>
        </concept>
        <concept>
          <code value="date-and-time-operators.duration"/>
          <display value="Date and Time Operators duration"/>
          <definition
                      value="The duration-between operator returns the number of whole calendar periods for the specified precision between the first and second arguments. If the first argument is after the second argument, the result is negative. The result of this operation is always an integer; any fractional periods are dropped."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#duration"/>
          </property>
        </concept>
        <concept>
          <code value="date-and-time-operators.now"/>
          <display value="Date and Time Operators now"/>
          <definition
                      value="The Now operator returns the date and time of the start timestamp associated with the evaluation request."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#now"/>
          </property>
        </concept>
        <concept>
          <code value="date-and-time-operators.on-or-after"/>
          <display value="Date and Time Operators on or after"/>
          <definition
                      value="The on or after operator for Date, DateTime, and Time values is a synonym for the same or after operator and is supported to enable natural phrasing. See the description of the Same Or After (Date, DateTime, or Time) operator."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#on-or-after"/>
          </property>
        </concept>
        <concept>
          <code value="date-and-time-operators.on-or-before"/>
          <display value="Date and Time Operators on or before"/>
          <definition
                      value="The on or before operator for Date, DateTime, and Time values is a synonym for the same or before operator and is supported to enable natural phrasing. See the description of the Same Or Before (Date, DateTime, or Time) operator."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#on-or-before"/>
          </property>
        </concept>
        <concept>
          <code value="date-and-time-operators.same-as"/>
          <display value="Date and Time Operators same as"/>
          <definition
                      value="The same-precision-as operator compares two Date, DateTime, or Time values to the specified precision for equality. The comparison is performed by considering each precision in order, beginning with years (or hours for time values). If the values are the same, comparison proceeds to the next precision; if the values are different, the comparison stops and the result is false; if either input has no value for the precision, the comparison stops and the result is null; if the specified precision has been reached, the comparison stops and the result is true."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#same-as"/>
          </property>
        </concept>
        <concept>
          <code value="date-and-time-operators.same-or-after"/>
          <display value="Date and Time Operators same or after"/>
          <definition
                      value="The same-precision-or after operator compares two Date, DateTime, or Time values to the specified precision to determine whether the first argument is the same or after the second argument. The comparison is performed by considering each precision in order, beginning with years (or hours for time values). If the values are the same, comparison proceeds to the next precision; if the first value is greater than the second, the result is true; if the first value is less than the second, the result is false; if either input has no value for the precision, the comparison stops and the result is null; if the specified precision has been reached, the comparison stops and the result is true."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#same-or-after"/>
          </property>
        </concept>
        <concept>
          <code value="date-and-time-operators.same-or-before"/>
          <display value="Date and Time Operators same or before"/>
          <definition
                      value="The same-precision-or before operator compares two Date, DateTime, or Time values to the specified precision to determine whether the first argument is the same or before the second argument. The comparison is performed by considering each precision in order, beginning with years (or hours for time values). If the values are the same, comparison proceeds to the next precision; if the first value is less than the second, the result is true; if the first value is greater than the second, the result is false; if either input has no value for the precision, the comparison stops and the result is null; if the specified precision has been reached, the comparison stops and the result is true."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#same-or-before"/>
          </property>
        </concept>
        <concept>
          <code value="date-and-time-operators.subtract"/>
          <display value="Date and Time Operators subtract"/>
          <definition
                      value="The subtract (-) operator returns the value of the given Date, DateTime, or Time, decremented by the time-valued quantity, respecting variable length periods for calendar years and months."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#subtract"/>
          </property>
        </concept>
        <concept>
          <code value="date-and-time-operators.time"/>
          <display value="Date and Time Operators time"/>
          <definition
                      value="The Time operator constructs a time value from the given components."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#time"/>
          </property>
        </concept>
        <concept>
          <code value="date-and-time-operators.timeofday"/>
          <display value="Date and Time Operators timeofday"/>
          <definition
                      value="The TimeOfDay operator returns the time of day of the start timestamp associated with the evaluation request. See the Now operator for more information on the rationale for defining the TimeOfDay operator in this way."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#timeofday"/>
          </property>
        </concept>
        <concept>
          <code value="date-and-time-operators.today"/>
          <display value="Date and Time Operators today"/>
          <definition
                      value="The Today operator returns the date of the start timestamp associated with the evaluation request. See the Now operator for more information on the rationale for defining the Today operator in this way."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#today"/>
          </property>
        </concept>
      </concept>
      <concept>
        <code value="interval-operators"/>
        <display value="Interval Operators"/>
        <definition value="contains, in, union, intersect, width, expand, etc."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/09-b-cqlreference.html#interval-operators-3"/>
        </property>
        <concept>
          <code value="interval-operators.after"/>
          <display value="Interval Operators after"/>
          <definition
                      value="The after operator for intervals returns true if the first interval starts after the second one ends. In other words, if the starting point of the first interval is greater than the ending point of the second interval."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#after"/>
          </property>
        </concept>
        <concept>
          <code value="interval-operators.before"/>
          <display value="Interval Operators before"/>
          <definition
                      value="The before operator for intervals returns true if the first interval ends before the second one starts. In other words, if the ending point of the first interval is less than the starting point of the second interval."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#before"/>
          </property>
        </concept>
        <concept>
          <code value="interval-operators.collapse"/>
          <display value="Interval Operators collapse"/>
          <definition
                      value="The collapse operator returns the unique set of intervals that completely covers the ranges present in the given list of intervals. In other words, adjacent intervals within a sorted list are merged if they either overlap or meet."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#collapse"/>
          </property>
        </concept>
        <concept>
          <code value="interval-operators.contains"/>
          <display value="Interval Operators contains"/>
          <definition
                      value="The contains operator for intervals returns true if the given point is equal to the starting or ending point of the interval, or greater than the starting point and less than the ending point. For open interval boundaries, exclusive comparison operators are used. For closed interval boundaries, if the interval boundary is null, the result of the boundary comparison is considered true."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#contains"/>
          </property>
        </concept>
        <concept>
          <code value="interval-operators.end"/>
          <display value="Interval Operators end"/>
          <definition
                      value="The End operator returns the ending point of an interval."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#end"/>
          </property>
        </concept>
        <concept>
          <code value="interval-operators.ends"/>
          <display value="Interval Operators ends"/>
          <definition
                      value="The ends operator returns true if the first interval ends the second. More precisely, if the starting point of the first interval is greater than or equal to the starting point of the second, and the ending point of the first interval is equal to the ending point of the second."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#ends"/>
          </property>
        </concept>
        <concept>
          <code value="interval-operators.equal"/>
          <display value="Interval Operators equal"/>
          <definition
                      value="The equal (=) operator for intervals returns true if and only if the intervals are over the same point type, and they have the same value for the starting and ending points of the intervals as determined by the Start and End operators"/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#"/>
          </property>
        </concept>
        <concept>
          <code value="interval-operators.equivalent"/>
          <display value="Interval Operators equivalent"/>
          <definition
                      value="The equivalent (~) operator for intervals returns true if and only if the intervals are over the same point type, and the starting and ending points of the intervals as determined by the Start and End operators are equivalent."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#equivalent"/>
          </property>
        </concept>
        <concept>
          <code value="interval-operators.except"/>
          <display value="Interval Operators except"/>
          <definition
                      value="The except operator for intervals returns the set difference of two intervals. More precisely, this operator returns the portion of the first interval that does not overlap with the second. Note that to avoid returning an improper interval, if the second argument is properly contained within the first and does not start or end it, this operator returns null."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#except"/>
          </property>
        </concept>
        <concept>
          <code value="interval-operators.expand"/>
          <display value="Interval Operators expand"/>
          <definition
                      value="The expand operator returns the set of intervals of size per for all the intervals in the input, or the list of points covering the range of the given interval, if invoked on a single interval."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#expand"/>
          </property>
        </concept>
        <concept>
          <code value="interval-operators.in"/>
          <display value="Interval Operators in"/>
          <definition
                      value="The in operator (can also be invoked using during) for intervals returns true if the given point is equal to the starting or ending point of the interval, or greater than the starting point and less than the ending point. For open interval boundaries, exclusive comparison operators are used. For closed interval boundaries, if the interval boundary is null, the result of the boundary comparison is considered true."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#in"/>
          </property>
        </concept>
        <concept>
          <code value="interval-operators.includes"/>
          <display value="Interval Operators includes"/>
          <definition
                      value="The includes operator for intervals returns true if the first interval completely includes the second. More precisely, if the starting point of the first interval is less than or equal to the starting point of the second interval, and the ending point of the first interval is greater than or equal to the ending point of the second interval."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#includes"/>
          </property>
        </concept>
        <concept>
          <code value="interval-operators.included-in"/>
          <display value="Interval Operators included in"/>
          <definition
                      value="The included in (or during) operator for intervals returns true if the first interval is completely included in the second. More precisely, if the starting point of the first interval is greater than or equal to the starting point of the second interval, and the ending point of the first interval is less than or equal to the ending point of the second interval."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#included-in"/>
          </property>
        </concept>
        <concept>
          <code value="interval-operators.intersect"/>
          <display value="Interval Operators intersect"/>
          <definition
                      value="The intersect operator for intervals returns the intersection of two intervals. More precisely, the operator returns the interval that defines the overlapping portion of both arguments. If the arguments do not overlap, this operator returns null."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#intersect"/>
          </property>
        </concept>
        <concept>
          <code value="interval-operators.meets"/>
          <display value="Interval Operators meets"/>
          <definition
                      value="The meets operator returns true if the first interval ends immediately before the second interval starts, or if the first interval starts immediately after the second interval ends. In other words, if the ending point of the first interval is equal to the predecessor of the starting point of the second, or if the starting point of the first interval is equal to the successor of the ending point of the second."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#meets"/>
          </property>
        </concept>
        <concept>
          <code value="interval-operators.not-equal"/>
          <display value="Interval Operators not equal"/>
          <definition
                      value="The not equal (!=) operator for intervals returns true if its arguments are not the same value."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#not-equal"/>
          </property>
        </concept>
        <concept>
          <code value="interval-operators.not-equivalent"/>
          <display value="Interval Operators not equivalent"/>
          <definition
                      value="The not equivalent (!~) operator for intervals returns true if its arguments are not equivalent."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#not-equivalent"/>
          </property>
        </concept>
        <concept>
          <code value="interval-operators.on-or-after"/>
          <display value="Interval Operators on or after"/>
          <definition
                      value="The on or after operator for intervals is a synonym for the same or after operator and is supported to enable natural phrasing. See the description of the Same Or After (Intervals) operator."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#on-or-after"/>
          </property>
        </concept>
        <concept>
          <code value="interval-operators.on-or-before"/>
          <display value="Interval Operators on or before"/>
          <definition
                      value="The on or before operator for Date-, DateTime-, or Time-based intervals is a synonym for the same or before operator and is supported to enable natural phrasing. See the description of the Same Or Before (Intervals) operator."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#on-or-before"/>
          </property>
        </concept>
        <concept>
          <code value="interval-operators.overlaps"/>
          <display value="Interval Operators overlaps"/>
          <definition
                      value="The overlaps operator returns true if the first interval overlaps the second. More precisely, if the starting or ending point of either interval is in the other, or if the ending point of the first interval is greater than or equal to the starting point of the second interval, and the starting point of the first interval is less than or equal to the ending point of the second interval."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#overlaps"/>
          </property>
        </concept>
        <concept>
          <code value="interval-operators.point-from"/>
          <display value="Interval Operators point from"/>
          <definition
                      value="The point from operator extracts the single point from a unit interval. If the argument is not a unit interval, a run-time error is thrown."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#point-from"/>
          </property>
        </concept>
        <concept>
          <code value="interval-operators.properly-includes"/>
          <display value="Interval Operators properly includes"/>
          <definition
                      value="The properly includes operator for intervals returns true if the first interval completely includes the second and the first interval is strictly larger than the second. More precisely, if the starting point of the first interval is less than or equal to the starting point of the second interval, and the ending point of the first interval is greater than or equal to the ending point of the second interval, and they are not the same interval."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#properly-includes"/>
          </property>
        </concept>
        <concept>
          <code value="interval-operators.properly-included-in"/>
          <display value="Interval Operators properly included in"/>
          <definition
                      value="The properly included in (or properly during) operator for intervals returns true if the first interval is completely included in the second and the first interval is strictly smaller than the second. More precisely, if the starting point of the first interval is greater than or equal to the starting point of the second interval, and the ending point of the first interval is less than or equal to the ending point of the second interval, and they are not the same interval."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#included-in"/>
          </property>
        </concept>
        <concept>
          <code value="interval-operators.same-as"/>
          <display value="Interval Operators same as"/>
          <definition
                      value="The same-precision-as operator for intervals returns true if the two intervals start and end at the same value, using the semantics described in the Start and End operators to determine interval boundaries, and for Date, DateTime, or Time value, performing the comparisons at the specified precision, as described in the Same As operator for Date, DateTime, or Time values."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#same-as"/>
          </property>
        </concept>
        <concept>
          <code value="interval-operators.same-or-after"/>
          <display value="Interval Operators same or after"/>
          <definition
                      value="The same-precision-or after operator for intervals returns true if the first interval starts on or after the second one ends, using the semantics described in the Start and End operators to determine interval boundaries, and for Date, DateTime, or Time values, performing the comparisons at the specified precision, as described in the Same or After (Date, DateTime, or Time) operator for Date, DateTime, or Time values."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#same-or-after"/>
          </property>
        </concept>
        <concept>
          <code value="interval-operators.same-or-before"/>
          <display value="Interval Operators same or before"/>
          <definition
                      value="The same-precision-or before operator returns true if the first interval ends on or before the second one starts, using the semantics described in the Start and End operators to determine interval boundaries, and for Date, DateTime, or Time values, performing the comparisons at the specified precision, as described in the Same or Before (Date, DateTime, or Time) operator for Date, DateTime, or Time values."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#same-or-before"/>
          </property>
        </concept>
        <concept>
          <code value="interval-operators.size"/>
          <display value="Interval Operators size"/>
          <definition
                      value="The Size operator returns the size of an interval. The result of this operator is equivalent to invoking: (end of argument – start of argument) + point-size, where point-size is determined by successor of minimum T - minimum T."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#size"/>
          </property>
        </concept>
        <concept>
          <code value="interval-operators.start"/>
          <display value="Interval Operators start"/>
          <definition
                      value="The Start operator returns the starting point of an interval."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#start"/>
          </property>
        </concept>
        <concept>
          <code value="interval-operators.starts"/>
          <display value="Interval Operators starts"/>
          <definition
                      value="The starts operator returns true if the first interval starts the second. More precisely, if the starting point of the first is equal to the starting point of the second interval and the ending point of the first interval is less than or equal to the ending point of the second interval."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#starts"/>
          </property>
        </concept>
        <concept>
          <code value="interval-operators.union"/>
          <display value="Interval Operators union"/>
          <definition
                      value="The union operator for intervals returns the union of the intervals. More precisely, the operator returns the interval that starts at the earliest starting point in either argument, and ends at the latest starting point in either argument. If the arguments do not overlap or meet, this operator returns null."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#union"/>
          </property>
        </concept>
        <concept>
          <code value="interval-operators.width"/>
          <display value="Interval Operators width"/>
          <definition
                      value="The width operator returns the width of an interval. The result of this operator is equivalent to invoking: (end of argument – start of argument)."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#width"/>
          </property>
        </concept>
      </concept>
      <concept>
        <code value="list-operators"/>
        <display value="List Operators"/>
        <definition
                    value="size, first/last, contains, union/intersect/except, map/filter/distinct, sort/reverse/zip, etc."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/09-b-cqlreference.html#list-operators"/>
        </property>
        <concept>
          <code value="list-operators.contains"/>
          <display value="List Operators contains"/>
          <definition
                      value="The contains operator for lists returns true if the given element is in the list using equality semantics, with the exception that null elements are considered equal."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#contains"/>
          </property>
        </concept>
        <concept>
          <code value="list-operators.distinct"/>
          <display value="List Operators distinct"/>
          <definition
                      value="The distinct operator returns the given list with duplicates eliminated using equality semantics."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#distinct"/>
          </property>
        </concept>
        <concept>
          <code value="list-operators.equal"/>
          <display value="List Operators equal"/>
          <definition
                      value="The equal (=) operator for lists returns true if and only if the lists have the same element type, and have the same elements by value, in the same order."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#equal"/>
          </property>
        </concept>
        <concept>
          <code value="list-operators.equivalent"/>
          <display value="List Operators equivalent"/>
          <definition
                      value="The equivalent (~) operator for lists returns true if and only if the lists contain elements of the same type, have the same number of elements, and for each element in the lists, in order, the elements are equivalent."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#equivalent"/>
          </property>
        </concept>
        <concept>
          <code value="list-operators.except"/>
          <display value="List Operators except"/>
          <definition
                      value="The except operator returns the set difference of two lists. More precisely, the operator returns a list with the elements that appear in the first operand that do not appear in the second operand."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#except"/>
          </property>
        </concept>
        <concept>
          <code value="list-operators.exists"/>
          <display value="List Operators exists"/>
          <definition
                      value="The exists operator returns true if the list contains any non-null elements."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#exists"/>
          </property>
        </concept>
        <concept>
          <code value="list-operators.flatten"/>
          <display value="List Operators flatten"/>
          <definition
                      value="The flatten operator flattens a list of lists into a single list."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#flatten"/>
          </property>
        </concept>
        <concept>
          <code value="list-operators.first"/>
          <display value="List Operators first"/>
          <definition
                      value="The First operator returns the first element in a list. The operator is equivalent to invoking the indexer with an index of 0."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#first"/>
          </property>
        </concept>
        <concept>
          <code value="list-operators.in"/>
          <display value="List Operators in"/>
          <definition
                      value="The in operator for lists returns true if the given element is in the given list using equality semantics, with the exception that null elements are considered equal."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#in"/>
          </property>
        </concept>
        <concept>
          <code value="list-operators.includes"/>
          <display value="List Operators includes"/>
          <definition
                      value="The includes operator for lists returns true if the first list contains every element of the second list using equality semantics, with the exception that null elements are considered equal."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#includes"/>
          </property>
        </concept>
        <concept>
          <code value="list-operators.included_in"/>
          <display value="List Operators included in"/>
          <definition
                      value="The included in operator for lists returns true if every element of the first list is in the second list using equality semantics."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#included-in"/>
          </property>
        </concept>
        <concept>
          <code value="list-operators.indexer"/>
          <display value="List Operators indexer"/>
          <definition
                      value="The indexer ([]) operator returns the element at the indexth position in a list."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#indexer"/>
          </property>
        </concept>
        <concept>
          <code value="list-operators.indexof"/>
          <display value="List Operators IndexOf"/>
          <definition
                      value="The IndexOf operator returns the 0-based index of the given element in the given source list using equality semantics, with the exception that nulls are considered equal."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#indexof"/>
          </property>
        </concept>
        <concept>
          <code value="list-operators.intersect"/>
          <display value="List Operators intersect"/>
          <definition
                      value="The intersect operator for lists returns the intersection of two lists. More precisely, the operator returns a list containing only the elements that appear in both lists."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#intersect"/>
          </property>
        </concept>
        <concept>
          <code value="list-operators.last"/>
          <display value="List Operators last"/>
          <definition
                      value="The Last operator returns the last element in a list. In a list of length N, the operator is equivalent to invoking the indexer with an index of N - 1"/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#last"/>
          </property>
        </concept>
        <concept>
          <code value="list-operators.length"/>
          <display value="List Operators length"/>
          <definition
                      value="The Length operator returns the number of elements in a list."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#length"/>
          </property>
        </concept>
        <concept>
          <code value="list-operators.not_equal"/>
          <display value="List Operators not equal"/>
          <definition
                      value="The not equal (!=) operator for lists returns true if its arguments are not the same value."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#not_equal"/>
          </property>
        </concept>
        <concept>
          <code value="list-operators.not_equivalent"/>
          <display value="List Operators not equivalent"/>
          <definition
                      value="The not equivalent (!~) operator for lists returns true if its arguments are not equivalent."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#not_equivalent"/>
          </property>
        </concept>
        <concept>
          <code value="list-operators.properly_includes"/>
          <display value="List Operators properly includes"/>
          <definition
                      value="The properly includes operator for lists returns true if the first list contains every element of the second list, and the first list is strictly larger than the second list."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#properly_includes"/>
          </property>
        </concept>
        <concept>
          <code value="list-operators.properly_included_in"/>
          <display value="List Operators properly included in"/>
          <definition
                      value="The properly included in operator for lists returns true if every element of the first list is in the second list and the first list is strictly smaller than the second list."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#properly_included_in"/>
          </property>
        </concept>
        <concept>
          <code value="list-operators.singleton_from"/>
          <display value="List Operators singleton from"/>
          <definition
                      value="The singleton from operator extracts a single element from the source list. If the source list is empty, the result is null. If the source list contains one element, that element is returned. If the list contains more than one element, a run-time error is thrown."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#singleton_from"/>
          </property>
        </concept>
        <concept>
          <code value="list-operators.skip"/>
          <display value="List Operators skip"/>
          <definition
                      value="The Skip operator returns the elements in the list, skipping the first number elements. If the list has less number elements, the result is empty."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#skip"/>
          </property>
        </concept>
        <concept>
          <code value="list-operators.tail"/>
          <display value="List Operators tail"/>
          <definition
                      value="The Tail operator returns all but the first element from the given list. If the list is empty, the result is empty."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#tail"/>
          </property>
        </concept>
        <concept>
          <code value="list-operators.take"/>
          <display value="List Operators take"/>
          <definition
                      value="The Take operator returns the first number elements from the given list. If the list has less than number elements, the result only contains the elements in the list."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#take"/>
          </property>
        </concept>
        <concept>
          <code value="list-operators.union"/>
          <display value="List Operators union"/>
          <definition
                      value="The union operator for lists returns a list with all unique elements from both arguments."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#union"/>
          </property>
        </concept>
      </concept>
      <concept>
        <code value="aggregate-functions"/>
        <display value="Aggregate Functions"/>
        <definition value="count, sum, min, max, average, median, mode, etc."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/09-b-cqlreference.html#aggregate-functions"/>
        </property>
      </concept>
      <concept>
        <code value="clinical-operators"/>
        <display value="Clinical Operators"/>
        <definition
                    value="Retrieve/terminology functions; temporal/duration in clinical context."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/09-b-cqlreference.html#clinical-operators"/>
        </property>
        <concept>
          <code value="clinical-operators.age"/>
          <display value="Clinical Operators age"/>
          <definition
                      value="The Age operators calculate the age of the patient as of the current date in the precision named in the operator."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html#age"/>
          </property>
        </concept>
        <concept>
          <code value="clinical-operators.ageat"/>
          <display value="Clinical Operators age at"/>
          <definition
                      value="The AgeAt operators calculate the age of the patient as of a given date and in the precision named in the operator."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#ageat"/>
          </property>
        </concept>
        <concept>
          <code value="clinical-operators.calculateage"/>
          <display value="Clinical Operators calculate age"/>
          <definition
                      value="The CalculateAge operators calculate the age of a person born on the given birth date, as of the current date, and in the precision named in the operator."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#calculateage"/>
          </property>
        </concept>
        <concept>
          <code value="clinical-operators.calculateageat"/>
          <display value="Clinical Operators Calculate age at"/>
          <definition
                      value="The CalculateAgeAt operators calculate the age of a person born on the given birth date as of the given date, and in the precision named in the operator."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#calculateageat"/>
          </property>
        </concept>
        <concept>
          <code value="clinical-operators.contains_codesystem"/>
          <display value="Clinical Operators contains codesystem"/>
          <definition
                      value="The ~contains (Codesystem) operators determine whether or not a given code, or any of a list of codes, is in a particular codesystem. Note that these operators can only be invoked by referencing a defined codesystem or CodeSystem-valued expression."/>
          <property>
            <code value="version"/>
            <valueString value="2.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#calculateage"/>
          </property>
        </concept>
        <concept>
          <code value="clinical-operators.contains_valueset"/>
          <display value="Clinical Operators contains valueset"/>
          <definition
                      value="The ~contains (Valueset) operators determine whether or not a given code, or any of a list of codes, is in a particular valueset. Note that these operators can only be invoked by referencing a defined valueset or ValueSet-valued expression."/>
          <property>
            <code value="version"/>
            <valueString value="2.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html"/>
          </property>
        </concept>
        <concept>
          <code value="clinical-operators.equal"/>
          <display value="Clinical Operators equal"/>
          <definition
                      value="The equal (=) operator for Codes and Concepts uses tuple equality semantics. This means that the operator will return true if and only if the values for each element by name are equal."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#equal-3"/>
          </property>
        </concept>
        <concept>
          <code value="clinical-operators.equivalent"/>
          <display value="Clinical Operators equivalent"/>
          <definition
                      value="The equivalent (~) operator for Code values returns true if the code and system elements are equivalent. The version and display elements are ignored for the purposes of determining Code equivalence."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#equivalent-3"/>
          </property>
        </concept>
        <concept>
          <code value="clinical-operators.in-codesysterm"/>
          <display value="Clinical Operators in (Codesystem)"/>
          <definition
                      value="The in (Codesystem) operators determine whether or not a given code, or any of a list of codes, is in a particular codesystem. Note that these operators can only be invoked by referencing a defined codesystem."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#in-codesystem"/>
          </property>
        </concept>
        <concept>
          <code value="clinical-operators.expandvalueset"/>
          <display value="Clinical Operators expand valueset"/>
          <definition
                      value="The ExpandValueSet function returns the current expansion for the given value set."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#expandvalueset"/>
          </property>
        </concept>
        <concept>
          <code value="clinical-operators.in_valueset"/>
          <display value="Clinical Operators in valueset"/>
          <definition
                      value="The in (Valueset) operators determine whether or not a given code, or any of a list of codes, is in a particular valueset. Note that these operators can only be invoked by referencing a defined valueset."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString value="https://cql.hl7.org/09-b-cqlreference.html"/>
          </property>
        </concept>
      </concept>
      <concept>
        <code value="diagnostic-operators"/>
        <display value="Diagnostic Operators"/>
        <definition value="Errors and messaging functions."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/09-b-cqlreference.html#errors-and-messaging"/>
        </property>
        <concept>
          <code value="diagnostic-operators.message"/>
          <display value="Diagnostic Operators message"/>
          <definition
                      value="The Message operator provides a run-time mechanism for returning messages, warnings, traces, and errors to the calling environment."/>
          <property>
            <code value="version"/>
            <valueString value="1.0"/>
          </property>
          <property>
            <code value="reference"/>
            <valueString
                         value="https://cql.hl7.org/09-b-cqlreference.html#message"/>
          </property>
        </concept>
      </concept>
      <concept>
        <code value="single-source-query"/>
        <display value="Single source query"/>
        <definition value="Query over one source."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/74-queryevaluation.html#evaluate-sources"/>
        </property>
      </concept>
      <concept>
        <code value="relationships-query"/>
        <display value="Relationships query"/>
        <definition value="Query involving two or more sources."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/74-queryevaluation.html#evaluate-sources"/>
        </property>
      </concept>
      <concept>
        <code value="let-clause-query"/>
        <display value="Let clause query"/>
        <definition value="Introduce local bindings."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/74-queryevaluation.html#let-clause"/>
        </property>
      </concept>
      <concept>
        <code value="where-clause-query"/>
        <display value="Where clause query"/>
        <definition value="Filter using Boolean conditions."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/74-queryevaluation.html#where-clause"/>
        </property>
      </concept>
      <concept>
        <code value="return-clause-query"/>
        <display value="Return clause query"/>
        <definition value="Specify the shape/content of returned rows."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/74-queryevaluation.html#return-clause"/>
        </property>
      </concept>
      <concept>
        <code value="aggregate-clause-query"/>
        <display value="Aggregate clause query"/>
        <definition value="Reduce rows to a summary value."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/74-queryevaluation.html#aggregate-clause"/>
        </property>
      </concept>
      <concept>
        <code value="multi-source-query"/>
        <display value="Multi source query"/>
        <definition value="Query using two or more sources."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/74-queryevaluation.html#evaluate-sources"/>
        </property>
      </concept>
      <concept>
        <code value="unfiltered-context-retrieve"/>
        <display value="Unfiltered context retrieve"/>
        <definition value="All data of a type in the current context."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/05-languagesemantics.html#language-capabilities"/>
        </property>
      </concept>
      <concept>
        <code value="terminology-based-retrieve"/>
        <display value="Terminology-based retrieve"/>
        <definition value="Retrieve filtered by ValueSet/CodeSystem/Code."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/05-languagesemantics.html#retrieve-paths"/>
        </property>
      </concept>
      <concept>
        <code value="valueset-terminology-target-retrieve"/>
        <display value="Valueset terminology target retrieve"/>
        <definition value="Retrieve filtered by a ValueSet reference."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/05-languagesemantics.html#retrieve-paths"/>
        </property>
      </concept>
      <concept>
        <code value="codesystem-terminology-target-retrieve"/>
        <display value="CodeSystem terminology target retrieve"/>
        <definition value="Retrieve filtered by a CodeSystem."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/05-languagesemantics.html#retrieve-paths"/>
        </property>
      </concept>
      <concept>
        <code value="code-terminology-target-retrieve"/>
        <display value="Code terminology target retrieve"/>
        <definition value="Retrieve filtered by a single Code."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/05-languagesemantics.html#retrieve-paths"/>
        </property>
      </concept>
      <concept>
        <code value="searchpath-retrieve"/>
        <display value="Searchpath retrieve"/>
        <definition value="Retrieve using a search path expression."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/05-languagesemantics.html#retrieve-paths"/>
        </property>
      </concept>
      <concept>
        <code value="include-retrieve"/>
        <display value="Include retrieve"/>
        <definition
                    value="Retrieve that includes related records via references."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/05-languagesemantics.html#retrieve-paths"/>
        </property>
      </concept>
      <concept>
        <code value="related-context-retrieve"/>
        <display value="Related-context retrieve"/>
        <definition value="Retrieve scoped to a related context entity."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/05-languagesemantics.html#retrieve-paths"/>
        </property>
      </concept>
      <concept>
        <code value="profile-based-retrieve"/>
        <display value="Profile-based retrieve"/>
        <definition value="Retrieve constrained to a profile."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/42-conformancelevels.html#strict-conformance"/>
        </property>
      </concept>
      <concept>
        <code value="tuple"/>
        <display value="Tuple"/>
        <definition value="Structured type with named elements."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/63-expressionlanguagesemantics.html#structured-types"/>
        </property>
      </concept>
      <concept>
        <code value="choice"/>
        <display value="Choice"/>
        <definition value="Value that may be one of several specified types."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/63-expressionlanguagesemantics.html#choice-types"/>
        </property>
      </concept>
      <concept>
        <code value="list&lt;T&gt;"/>
        <display value="List&lt;T&gt;"/>
        <definition value="Ordered collection of elements of type T."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/63-expressionlanguagesemantics.html#collection-types"/>
        </property>
      </concept>
      <concept>
        <code value="interval&lt;T&gt;"/>
        <display value="Interval&lt;T&gt;"/>
        <definition value="Range of values of type T."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/09-b-cqlreference.html#interval-operators-3"/>
        </property>
      </concept>
      <concept>
        <code value="interval&lt;integer&gt;"/>
        <display value="Interval&lt;Integer&gt;"/>
        <definition value="Range of integers."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/09-b-cqlreference.html#interval-operators-3"/>
        </property>
      </concept>
      <concept>
        <code value="interval&lt;decimal&gt;"/>
        <display value="Interval&lt;Decimal&gt;"/>
        <definition value="Range of decimal numbers."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/09-b-cqlreference.html#interval-operators-3"/>
        </property>
      </concept>
      <concept>
        <code value="interval&lt;date&gt;"/>
        <display value="Interval&lt;Date&gt;"/>
        <definition value="Range of dates (no time)."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/09-b-cqlreference.html#interval-operators-3"/>
        </property>
      </concept>
      <concept>
        <code value="interval&lt;time&gt;"/>
        <display value="Interval&lt;Time&gt;"/>
        <definition value="Range of times of day (no date)."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/09-b-cqlreference.html#interval-operators-3"/>
        </property>
      </concept>
      <concept>
        <code value="interval&lt;datetime&gt;"/>
        <display value="Interval&lt;DateTime&gt;"/>
        <definition value="Range of full date/times."/>
        <property>
          <code value="version"/>
          <valueString value="1.0"/>
        </property>
        <property>
          <code value="reference"/>
          <valueString
                       value="https://cql.hl7.org/09-b-cqlreference.html#interval-operators-3"/>
        </property>
      </concept>
    </CodeSystem>