Zen Search Parameters will be ignored if Aidbox operates with the FHIR Schema validator engine. Please contact us if you need assistance migrating to FHIR Search Parameters.
Most of the Search Parameters from IG work with Zen by default, also you can make a new one.
Assuming you already know how to use configuration projects, let's learn how to create zen search parameter by example:
{ns mainimport #{aidbox.search-parameter.v1 aidbox aidbox.repository.v1} zen-config {...} my-parameter {:zen/tags #{aidbox.search-parameter.v1/search-parameter}:name"brthdt":type:date:resource {:resourceType"Entity":id"Patient"}:expression [["birthDate"]]} patient-repository {:zen/tags #{aidbox.repository.v1/repository}:resourceType"Patient":extra-parameter-sources:all; allow to use SearchParameters from outside of repo:search-parameters #{my-parameter}} repositories {:zen/tags #{aidbox/service}:engine aidbox.repository.v1/engine:repositories #{patient-repository}:load-defaulttrue} box {:zen/tags #{aidbox/system}:config zen-config:services {:repositories repositories}}}
First we import aidbox.search-parameter.v1 and aidbox.repository.v1 namespaces from edn files. These are zen-namespaces we need to make an aidbox/service which name is repositories.
This service is our concept of wrapping resourceType-specific entities, as search parameters, indexes, and more, into one entity, called repository. We will add indexes for search parameters soon.
We have one repository for Patient resourceType: patient-repository. It contains :search-parameters key with new SearchParameter my-parameter.