Smile CDR v2024.08.PRE
On this page:
   46.25    Cluster Level Security 46.27    Credentials   

46.26.1CQL

 

The CQL configuration category includes the following configurable options:

  • Data Analysis

  • Collapse Data Analysis

  • CQL Language Level

  • Default Model Info

  • Disable List Demotion

  • Disable List Promotion

  • Disable List Traversal

  • Disable Method Invocation

  • Annotations

  • Date Range Optimization

  • Detailed Errors

  • Enable Interval Demotion

  • Enable Interval Promotion

  • Locators

  • Results Type

  • Error Level

  • Require From Keyword

  • Signature Level

  • Format for ELM

  • Validate units

  • Semantic Analysis

  • Profile Mode

  • Search Filter Mode

  • Terminology Filter Mode

  • Debug Logging

  • Enable Expression Caching

  • Enable Validation

  • ValueSet Code Lookup Mode

  • ValueSet Expansion Mode

  • ValueSet Membership Mode

  • ValueSet Pre-Expansion Mode

  • Use Embedded Libraries

46.26.2Property: Data Analysis

 
Property Name Data Analysis
Property Key
Property Type BOOLEAN
Description Determines whether the CQL compiler should do detailed data-requirements analysis when compiling CQL.
Applies to Modules
  • CQL
Default Value false
Example Property
module.[MODULE_ID].config.compiler.analyze_data_requirements = false

46.26.3Property: Collapse Data Analysis

 
Property Name Collapse Data Analysis
Property Key
Property Type BOOLEAN
Description Determines whether the CQL compiler should "collapse" (i.e. optimize) data-requirements when they are generated.
Applies to Modules
  • CQL
Default Value false
Example Property
module.[MODULE_ID].config.compiler.collapse_data_requirements = false

46.26.4Property: CQL Language Level

 
Property Name CQL Language Level
Property Key
Property Type STRING
Description This setting controls the language-level that the CQL compiler should run in. Most DSTU3 content uses CQL version 1.3, while newer content uses CQL version 1.5. If you experience compilation errors please verify the CQL language level being used in the expressions.
Applies to Modules
  • CQL
Default Value 1.5
Example Property
module.[MODULE_ID].config.compiler.compatibility_level = 1.5

46.26.5Property: Default Model Info

 
Property Name Default Model Info
Property Key
Property Type BOOLEAN
Description Indicates to include default model information.
Applies to Modules
  • CQL
Default Value false
Example Property
module.[MODULE_ID].config.compiler.disable_default_model_info_load = false

46.26.6Property: Disable List Demotion

 
Property Name Disable List Demotion
Property Key
Property Type BOOLEAN
Description Disables demotion of list-valued expressions to singletons.
Applies to Modules
  • CQL
Default Value false
Example Property
module.[MODULE_ID].config.compiler.disable_list_demotion = false

46.26.7Property: Disable List Promotion

 
Property Name Disable List Promotion
Property Key
Property Type BOOLEAN
Description Disables promotion of singletons to list-valued expressions.
Applies to Modules
  • CQL
Default Value false
Example Property
module.[MODULE_ID].config.compiler.disable_list_promotion = false

46.26.8Property: Disable List Traversal

 
Property Name Disable List Traversal
Property Key
Property Type BOOLEAN
Description Disables traversal of paths on list-valued expressions.
Applies to Modules
  • CQL
Default Value false
Example Property
module.[MODULE_ID].config.compiler.disable_list_traversal = false

46.26.9Property: Disable Method Invocation

 
Property Name Disable Method Invocation
Property Key
Property Type BOOLEAN
Description Disables method-style invocation support.
Applies to Modules
  • CQL
Default Value false
Example Property
module.[MODULE_ID].config.compiler.disable_method_invocation = false

46.26.10Property: Annotations

 
Property Name Annotations
Property Key
Property Type BOOLEAN
Description Indicates that the translator should produce source code annotations as part of the output.
Applies to Modules
  • CQL
Default Value false
Example Property
module.[MODULE_ID].config.compiler.enable_annotations = false

46.26.11Property: Date Range Optimization

 
Property Name Date Range Optimization
Property Key
Property Type BOOLEAN
Description Indicates that the translator should perform date range optimization of retrieves where possible.
Applies to Modules
  • CQL
Default Value false
Example Property
module.[MODULE_ID].config.compiler.enable_date_range_optimization = false

46.26.12Property: Detailed Errors

 
Property Name Detailed Errors
Property Key
Property Type BOOLEAN
Description Indicates that the translator should produce detailed errors.
Applies to Modules
  • CQL
Default Value false
Example Property
module.[MODULE_ID].config.compiler.enable_detailed_errors = false

46.26.13Property: Enable Interval Demotion

 
Property Name Enable Interval Demotion
Property Key
Property Type BOOLEAN
Description Enables demotion of interval-valued expressions to points.
Applies to Modules
  • CQL
Default Value false
Example Property
module.[MODULE_ID].config.compiler.enable_interval_demotion = false

46.26.14Property: Enable Interval Promotion

 
Property Name Enable Interval Promotion
Property Key
Property Type BOOLEAN
Description Enables promotion of point-valued expressions to intervals.
Applies to Modules
  • CQL
Default Value false
Example Property
module.[MODULE_ID].config.compiler.enable_interval_promotion = false

46.26.15Property: Locators

 
Property Name Locators
Property Key
Property Type BOOLEAN
Description Indicates that the translator should include source code locators within output ELM.
Applies to Modules
  • CQL
Default Value false
Example Property
module.[MODULE_ID].config.compiler.enable_locators = false

46.26.16Property: Results Type

 
Property Name Results Type
Property Key
Property Type BOOLEAN
Description Indicates that the translator should include result types in the output ELM.
Applies to Modules
  • CQL
Default Value false
Example Property
module.[MODULE_ID].config.compiler.enable_results_type = false

46.26.17Property: Error Level

 
Property Name Error Level
Property Key
Property Type ENUM
Values
  • Info
  • Warning
  • Error
Description Determines the level of severity required for the CQL compiler to report an issue. Info enables all messages, while Error enables only Error messages
Applies to Modules
  • CQL
Default Value Info
Example Property
module.[MODULE_ID].config.compiler.error_level = Info

46.26.18Property: Require From Keyword

 
Property Name Require From Keyword
Property Key
Property Type BOOLEAN
Description Indicates that all queries will be required to start with a from keyword.
Applies to Modules
  • CQL
Default Value false
Example Property
module.[MODULE_ID].config.compiler.require_from_keyword = false

46.26.19Property: Signature Level

 
Property Name Signature Level
Property Key
Property Type ENUM
Values
  • None
  • Differing
  • Overloads
  • All
Description Determines the level of detail to output to compiled CQL for signature resolution. This should generally not be changed.
Applies to Modules
  • CQL
Default Value All
Example Property
module.[MODULE_ID].config.compiler.signature_level = All

46.26.20Property: Format for ELM

 
Property Name Format for ELM
Property Key
Property Type ENUM
Values
  • XML
  • JSON
  • COFFEE
Description The target format for the output
Applies to Modules
  • CQL
Default Value JSON
Example Property
module.[MODULE_ID].config.compiler.translator_format = JSON

46.26.21Property: Validate units

 
Property Name Validate units
Property Key
Property Type BOOLEAN
Description This flag controls whether the CQL compiler validates unit quantities for conversion
Applies to Modules
  • CQL
Default Value true
Example Property
module.[MODULE_ID].config.compiler.validate_units = true

46.26.22Property: Semantic Analysis

 
Property Name Semantic Analysis
Property Key
Property Type BOOLEAN
Description This flag controls whether the CQL compiler should emit compiled CQL or simply run semantic analysis.
Applies to Modules
  • CQL
Default Value false
Example Property
module.[MODULE_ID].config.compiler.verify_only = false

46.26.23Property: Profile Mode

 
Property Name Profile Mode
Property Key
Property Type ENUM
Values
  • ENFORCED
  • DECLARED
  • OPTIONAL
  • TRUST
  • OFF
Description Profiles are completely unsupported for now, default to OFF until supported. Options: ENFORCED, OPTIONAL, DECLARED, TRUST, OFF
Applies to Modules
  • CQL
Default Value OFF
Example Property
module.[MODULE_ID].config.retrieve.retrieve_settings_profile_mode = OFF

46.26.24Property: Search Filter Mode

 
Property Name Search Filter Mode
Property Key
Property Type ENUM
Values
  • AUTO
  • USE_SEARCH_PARAMETERS
  • FILTER_IN_MEMORY
Description Applies to all search parameters, EXCEPT terminology search parameters, which are controlled by terminology settings. Options: AUTO, USE_SEARCH_PARAMETERS, FILTER_IN_MEMORY
Applies to Modules
  • CQL
Default Value USE_SEARCH_PARAMETERS
Example Property
module.[MODULE_ID].config.retrieve.retrieve_settings_search_filter_mode = USE_SEARCH_PARAMETERS

46.26.25Property: Terminology Filter Mode

 
Property Name Terminology Filter Mode
Property Key
Property Type ENUM
Values
  • AUTO
  • USE_VALUE_SET_URL
  • USE_INLINE_CODES
  • FILTER_IN_MEMORY
Description How to do a filter, if and when we need a filter. e.g. Observation O where O.code ~ "ValueSet". Options: AUTO, USE_VALUE_SET_URL, USE_INLINE_CODES, FILTER_IN_MEMORY
Applies to Modules
  • CQL
Default Value FILTER_IN_MEMORY
Example Property
module.[MODULE_ID].config.retrieve.retrieve_settings_terminology_filter_mode = FILTER_IN_MEMORY

46.26.26Property: Debug Logging

 
Property Name Debug Logging
Property Key
Property Type BOOLEAN
Description Enabling debug logging will cause the SmileCDR server to output detailed evaluation logs for CQL. This can be useful for debug purposes. Debug logging has a significant performance impact.
Applies to Modules
  • CQL
Default Value false
Example Property
module.[MODULE_ID].config.runtime.debug_logging_enabled = false

46.26.27Property: Enable Expression Caching

 
Property Name Enable Expression Caching
Property Key
Property Type BOOLEAN
Description Enable expression caching allows to CQL engine to optimize expression reuse during evaluation, improving performance.
Applies to Modules
  • CQL
Default Value true
Example Property
module.[MODULE_ID].config.runtime.enable_expression_caching = true

46.26.28Property: Enable Validation

 
Property Name Enable Validation
Property Key
Property Type BOOLEAN
Description Enable validation checks compiled CQL prior to execution.
Applies to Modules
  • CQL
Default Value false
Example Property
module.[MODULE_ID].config.runtime.enable_validation = false

46.26.29Property: ValueSet Code Lookup Mode

 
Property Name ValueSet Code Lookup Mode
Property Key
Property Type ENUM
Values
  • AUTO
  • USE_VALIDATE_CODE_OPERATION
  • USE_CODESYSTEM_URL
Description How to do Code Lookups. Options: AUTO, USE_VALIDATE_CODE_OPERATION, USE_CODESYSTEM_URL
Applies to Modules
  • CQL
Default Value USE_CODESYSTEM_URL
Example Property
module.[MODULE_ID].config.terminology.terminology_settings_code_lookup_mode = USE_CODESYSTEM_URL

46.26.30Property: ValueSet Expansion Mode

 
Property Name ValueSet Expansion Mode
Property Key
Property Type ENUM
Values
  • AUTO
  • USE_EXPAND_OPERATION
  • PERFORM_NAIVE_EXPANSION
Description How to do Expansions. Options: AUTO, USE_EXPAND_OPERATION, PERFORM_NAIVE_EXPANSION
Applies to Modules
  • CQL
Default Value PERFORM_NAIVE_EXPANSION
Example Property
module.[MODULE_ID].config.terminology.terminology_settings_valueset_expansion_mode = PERFORM_NAIVE_EXPANSION

46.26.31Property: ValueSet Membership Mode

 
Property Name ValueSet Membership Mode
Property Key
Property Type ENUM
Values
  • AUTO
  • USE_VALIDATE_CODE_OPERATION
  • USE_EXPANSION
Description How to do ValueSet Code MemberShip. Options: AUTO, USE_VALIDATE_CODE_OPERATION, USE_EXPANSION
Applies to Modules
  • CQL
Default Value USE_EXPANSION
Example Property
module.[MODULE_ID].config.terminology.terminology_settings_valueset_membership_mode = USE_EXPANSION

46.26.32Property: ValueSet Pre-Expansion Mode

 
Property Name ValueSet Pre-Expansion Mode
Property Key
Property Type ENUM
Values
  • REQUIRE
  • USE_IF_PRESENT
  • IGNORE
Description How to treat pre-expanded value sets. If a value set is not pre-expanded, fall back to the expansion behavior. Defined by the expansion Mode. Options: REQUIRE, USE_IF_PRESENT, IGNORE
Applies to Modules
  • CQL
Default Value USE_IF_PRESENT
Example Property
module.[MODULE_ID].config.terminology.terminology_settings_valueset_pre_expansion_mode = USE_IF_PRESENT

46.26.33Property: Use Embedded Libraries

 
Property Name Use Embedded Libraries
Property Key
Property Type BOOLEAN
Description SmileCDR ships with embedded versions of some commonly used CQL libraries, specifically FHIRHelpers. This switch determines whether or not the cql engine will use those embedded libraries.In the case you want to supply your our version of FHIRHelpers, you should set this to false
Applies to Modules
  • CQL
Default Value true
Example Property
module.[MODULE_ID].config.use_embedded_libraries = true
   46.25    Cluster Level Security 46.27    Credentials