Projection
A projection follows the JSON syntax closely, it's basically a key-value pair. Except that FQL has several alternatives to acquire the value.
fieldname ':' value
FHIRpath expression
A value can be a FhirPath expression. Which means it can also be a string literal.
If the FHIRPath expression can lead to multiple values, you will get repeated fields in your selection. If the FHirPath expression has nested structures , then your selection will have those nested structures too.
Example:
from Patient
select
namedata: name
Group
A projection value can also be a group { ... }. This will however result in a json-like nested structure that is not usable for tabular output.
Titles
Usually the fieldname ends up in the header of a table. The syntax therefore now also allows a FHirPath string:
fhirpath-string ':' value
Example:
'Title with Capitals and spaces' : value
Types
A field normally keeps the type of the value specified, but in some cases, it's valuable to specify what field it should be. this can be valuable when requiring specific the output formats.
fieldname '[' type ']' ':' value
Example:
description [markdown] : meta.div