. expressions

Search by arbitrary elements of resources

This is non-FHIR extension, incompatible with other FHIR servers

With parameters started with . you can provide the exact path for the element, optionally provide coercing after :: using PostgreSQL types and the operator after $.

GET /Patient?.name.0.family=Johnson
=> WHERE resource#>>'{name,0,family}' = 'Jonhnson'

GET /Patient?.name.0.family$contains=Joh
=> WHERE resource#>>'{name,0,family}' ilike '%John%'

GET /Encounter?.start::timestamptz$gt=2015-01-01
=> WHERE (resource#>>'{start}')::timestamptz > '2015-01-01'

GET /Patient?.contact$isnull=true
=> WHERE resource#>>'{contact}' IS NULL

expressions with typecast require user input to be correct by PostgreSQL syntax.

e.g.: for timestamptz values must be formatted as specified in PostgreSQL date/time input doc

Last updated

#2416:

Change request updated