Skip to content

Update CQL mapping structure #219

@paulolaup

Description

@paulolaup

The current CQL mapping data model does not support complex pre-filtering. Its new structure should look as follows:

class Attribute:
  key: Coding 1..1
  composition: ContextGroup | AttributeComponent 1..1

class ContextGroup:
  path: str 1..1
  components: ContextGroup | AttributeComponent 1..*

# Not really usable ATM since references are handled as linked criteria
# class ReferenceGroup(ContextGroup):    
#  type: RetrievableType 1..1 # Type that is retrievable in CQL, e.g. all (retrievable) FHIR Types as defined by the ELM FHIR model info

class AttributeComponent:
  type: str 1..1
  path: str 1..1 # Relative path to criterion value
  cardinality: LiteralStr["single", "many"] 1..1
  operator: str 1..1
  valueType: str 0..1
  values: Any 0..* # Similar to polymorphic types in FHIR. Is empty if the values are user input

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions