Smile CDR v2024.05.PRE
On this page:
   45.60    FHIR REST Endpoint 45.62    Custom Resource Types   

45.61.1FHIR Search

 

The FHIR Search configuration category includes the following configurable options:

  • Always use Offset Searches

  • Allow :contains Searches

  • Maximum number of codes to expand

  • Fetch Size (Default Maximum)

  • Index Contained Resources

  • Index Contained Resources Recursively

  • Index Uplifted Refchains

  • Legacy Date Index Mode

  • Max Includes per Page

  • Use ordinal date values for day precision searches.

  • Filter Search Parameter Enabled

  • GraphQL Enabled

  • Index Identifier.type (:of-type modifier) Enabled

  • Language Search Parameter Enabled

  • Custom names file

  • Normalized Unit Searching

  • Page Size (Default)

  • Page Size (Maximum)

  • Nickname enabled

  • Phonetic Encoder

  • Infinispan Cache Name

  • Infinispan Hot Rod Protocol Version

  • Infinispan Servers

  • Search Cache Storage

  • Stale Search Cleanup Interval (seconds)

  • Suppress String Indexing In Tokens

45.61.2Property: Always use Offset Searches

 
Property Name Always use Offset Searches
Property Key
Property Type BOOLEAN
Description In this mode, the Query Cache is completely disabled, and all searches will be executed synchronously as offset searches. Despite the lack of a query cache, this mode may yield better performance under heavy load because it avoids any database writes being performed as a part of a search. Note: Setting this property to true will prevent pagination from working with the $everything operation
Applies to Modules
  • FHIR Storage (DSTU2 RDBMS)
  • FHIR Storage (R3 RDBMS)
  • FHIR Storage (R4 RDBMS)
  • FHIR Storage (R5 RDBMS)
Default Value false
Example Property
module.[MODULE_ID].config.always_use_offset_searches = false

45.61.3Property: Allow :contains Searches

 
Property Name Allow :contains Searches
Property Key
Property Type BOOLEAN
Description If set to true, clients will be permitted to use the :contains modifier on String searches. This is a potentially slow operation so enable with caution.
Applies to Modules
  • FHIR Storage (DSTU2 RDBMS)
  • FHIR Storage (R3 RDBMS)
  • FHIR Storage (R4 RDBMS)
  • FHIR Storage (R5 RDBMS)
Default Value false
Example Property
module.[MODULE_ID].config.dao_config.allow_contains_searches = false

45.61.4Property: Maximum number of codes to expand

 
Property Name Maximum number of codes to expand
Property Key
Property Type POSITIVE_INTEGER
Description Maximum number of codes that will be added to an in-memory valueset expansion. Values beyond this limit will be silently ignored.
Applies to Modules
  • FHIR Storage (DSTU2 RDBMS)
  • FHIR Storage (R3 RDBMS)
  • FHIR Storage (R4 RDBMS)
  • FHIR Storage (R5 RDBMS)
Default Value 1000
Example Property
module.[MODULE_ID].config.dao_config.expansion.maximum_size = 1000

45.61.5Property: Fetch Size (Default Maximum)

 
Property Name Fetch Size (Default Maximum)
Property Key
Property Type POSITIVE_INTEGER
Description If set, this value determines the maximum number of results that may be returned by any single database query. Do not set this value unless you wish to truncate search results.
Applies to Modules
  • FHIR Storage (DSTU2 RDBMS)
  • FHIR Storage (R3 RDBMS)
  • FHIR Storage (R4 RDBMS)
  • FHIR Storage (R5 RDBMS)
Default Value (no default)
Example Property
module.[MODULE_ID].config.dao_config.fetch_size.default_maximum = 

45.61.6Property: Index Contained Resources

 
Property Name Index Contained Resources
Property Key
Property Type ENUM
Values
  • DISABLED
  • ENABLED
Description If enabled, the server will generate appropriate indexes to allow chained searches to descend automatically into contained resources. See Index Contained Resources for more information.
Applies to Modules
  • FHIR Storage (DSTU2 RDBMS)
  • FHIR Storage (R3 RDBMS)
  • FHIR Storage (R4 RDBMS)
  • FHIR Storage (R5 RDBMS)
Default Value DISABLED
Example Property
module.[MODULE_ID].config.dao_config.index_contained_resources = DISABLED

45.61.7Property: Index Contained Resources Recursively

 
Property Name Index Contained Resources Recursively
Property Key
Property Type ENUM
Values
  • DISABLED
  • ENABLED
Description If enabled, the server will generate additional indexes to allow chained searches to traverse relations from contained resources to other contained resources within the same parent resource. This has no effect unless Index Contained Resources is also enabled. See Index Contained Resources for more information.
Applies to Modules
  • FHIR Storage (DSTU2 RDBMS)
  • FHIR Storage (R3 RDBMS)
  • FHIR Storage (R4 RDBMS)
  • FHIR Storage (R5 RDBMS)
Default Value DISABLED
Example Property
module.[MODULE_ID].config.dao_config.index_contained_resources_recursively = DISABLED

45.61.8Property: Index Uplifted Refchains

 
Property Name Index Uplifted Refchains
Property Key
Property Type BOOLEAN
Description If enabled, Search Parameters containined Uplifted Refchains will be indexed.
Applies to Modules
  • FHIR Storage (DSTU2 RDBMS)
  • FHIR Storage (R3 RDBMS)
  • FHIR Storage (R4 RDBMS)
  • FHIR Storage (R5 RDBMS)
Default Value false
Example Property
module.[MODULE_ID].config.dao_config.index_uplifted_refchains.enabled = false

45.61.9Property: Legacy Date Index Mode

 
Property Name Legacy Date Index Mode
Property Key
Property Type BOOLEAN
Description Since Smile CDR 2020.11, the date index tables will not contain null values. Enable this setting if you have existing data stored that has nulls in this table.
Applies to Modules
  • FHIR Storage (DSTU2 RDBMS)
  • FHIR Storage (R3 RDBMS)
  • FHIR Storage (R4 RDBMS)
  • FHIR Storage (R5 RDBMS)
Default Value false
Example Property
module.[MODULE_ID].config.dao_config.legacy_202105_date_index_mode = false

45.61.10Property: Max Includes per Page

 
Property Name Max Includes per Page
Property Key
Property Type POSITIVE_INTEGER
Description If set, this setting controls the maximum number of _include and _revinclude results that will be added to any individual FHIR search result page.
Applies to Modules
  • FHIR Storage (DSTU2 RDBMS)
  • FHIR Storage (R3 RDBMS)
  • FHIR Storage (R4 RDBMS)
  • FHIR Storage (R5 RDBMS)
Default Value (no default)
Example Property
module.[MODULE_ID].config.dao_config.max_includes_to_load_per_page = 

45.61.11Property: Use ordinal date values for day precision searches.

 
Property Name Use ordinal date values for day precision searches.
Property Key
Property Type BOOLEAN
Description If enabled, causes date search params with DAY precision to rely on the ordinal versions of the dates.
Applies to Modules
  • FHIR Storage (DSTU2 RDBMS)
  • FHIR Storage (R3 RDBMS)
  • FHIR Storage (R4 RDBMS)
  • FHIR Storage (R5 RDBMS)
Default Value true
Example Property
module.[MODULE_ID].config.dao_config.use_ordinal_dates_for_day_precision_searches = true

45.61.12Property: Filter Search Parameter Enabled

 
Property Name Filter Search Parameter Enabled
Property Key
Property Type BOOLEAN
Description This setting enables the _filter search parameter. Filter is a standard FHIR search parameter that can be used to narrow down the scope of a search.
Applies to Modules
  • FHIR Storage (DSTU2 RDBMS)
  • FHIR Storage (R3 RDBMS)
  • FHIR Storage (R4 RDBMS)
  • FHIR Storage (R5 RDBMS)
Default Value false
Example Property
module.[MODULE_ID].config.filter_search.enabled = false

45.61.13Property: GraphQL Enabled

 
Property Name GraphQL Enabled
Property Key
Property Type BOOLEAN
Description If enabled, endpoints configured against this storage module will support GraphQL Queries.
Applies to Modules
  • FHIR Storage (DSTU2 RDBMS)
  • FHIR Storage (MongoDB)
  • FHIR Storage (R3 RDBMS)
  • FHIR Storage (R4 RDBMS)
  • FHIR Storage (R5 RDBMS)
Default Value true
Example Property
module.[MODULE_ID].config.graphql.enabled = true

45.61.14Property: Index Identifier.type (:of-type modifier) Enabled

 
Property Name Index Identifier.type (:of-type modifier) Enabled
Property Key
Property Type BOOLEAN
Description This setting enabled the token search parameter modifier :of-type. This is most commonly used to search for identifiers with a given type (as opposed to a given system). Enabling this will consume a small additional amount of index space, so it should only be enabled if it will be used.
Applies to Modules
  • FHIR Storage (DSTU2 RDBMS)
  • FHIR Storage (MongoDB)
  • FHIR Storage (R3 RDBMS)
  • FHIR Storage (R4 RDBMS)
  • FHIR Storage (R5 RDBMS)
Default Value false
Example Property
module.[MODULE_ID].config.identifier_of_type.enabled = false

45.61.15Property: Language Search Parameter Enabled

 
Property Name Language Search Parameter Enabled
Property Key
Property Type BOOLEAN
Description This setting enables indexing and use of the _language special search parameter, which indexes the Resource.language element in all resources.
Applies to Modules
  • FHIR Storage (DSTU2 RDBMS)
  • FHIR Storage (MongoDB)
  • FHIR Storage (R3 RDBMS)
  • FHIR Storage (R4 RDBMS)
  • FHIR Storage (R5 RDBMS)
Default Value false
Example Property
module.[MODULE_ID].config.language_search_parameter.enabled = false

45.61.16Property: Custom names file

 
Property Name Custom names file
Property Key
Property Type Resource Path
Description A path to a csv file that specifies, per row, comma separated names that are similar or alike for matching algorithms. Values should be prefaced with file: or classpath:
Applies to Modules
  • FHIR Storage (DSTU2 RDBMS)
  • FHIR Storage (MongoDB)
  • FHIR Storage (R3 RDBMS)
  • FHIR Storage (R4 RDBMS)
  • FHIR Storage (R5 RDBMS)
Default Value (no default)
Example Property
module.[MODULE_ID].config.nickname_file = 

45.61.17Property: Normalized Unit Searching

 
Property Name Normalized Unit Searching
Property Key
Property Type ENUM
Values
  • NORMALIZED_QUANTITY_SEARCH_NOT_SUPPORTED
  • NORMALIZED_QUANTITY_STORAGE_SUPPORTED
  • NORMALIZED_QUANTITY_SEARCH_SUPPORTED
Description Specifies how Quantity searches support value normalization when using valid UCUM coded values.
Applies to Modules
  • FHIR Storage (DSTU2 RDBMS)
  • FHIR Storage (MongoDB)
  • FHIR Storage (R3 RDBMS)
  • FHIR Storage (R4 RDBMS)
  • FHIR Storage (R5 RDBMS)
Default Value NORMALIZED_QUANTITY_SEARCH_NOT_SUPPORTED
Example Property
module.[MODULE_ID].config.normalized_quantity_search_level_mode = NORMALIZED_QUANTITY_SEARCH_NOT_SUPPORTED

45.61.18Property: Page Size (Default)

 
Property Name Page Size (Default)
Property Key
Property Type POSITIVE_INTEGER
Description This value sets the default page size for Bundle results of search and history operations.
Applies to Modules
  • FHIR Storage (DSTU2 RDBMS)
  • FHIR Storage (R3 RDBMS)
  • FHIR Storage (R4 RDBMS)
  • FHIR Storage (R5 RDBMS)
Default Value 50
Example Property
module.[MODULE_ID].config.page_size.default = 50

45.61.19Property: Page Size (Maximum)

 
Property Name Page Size (Maximum)
Property Key
Property Type POSITIVE_INTEGER
Description This value sets the maximum page size for Bundle results of search and history operations. Client requests for values larger than this will be automatically overridden by the server to use this value.
Applies to Modules
  • FHIR Storage (DSTU2 RDBMS)
  • FHIR Storage (R3 RDBMS)
  • FHIR Storage (R4 RDBMS)
  • FHIR Storage (R5 RDBMS)
Default Value 250
Example Property
module.[MODULE_ID].config.page_size.maximum = 250

45.61.20Property: Nickname enabled

 
Property Name Nickname enabled
Property Key
Property Type BOOLEAN
Description Search for matching nicknames using name:nickname or given:nickname e.g. Patient?given:nickname=Robert will match a Patient with first name "Bob".
Applies to Modules
  • FHIR Storage (DSTU2 RDBMS)
  • FHIR Storage (MongoDB)
  • FHIR Storage (R3 RDBMS)
  • FHIR Storage (R4 RDBMS)
  • FHIR Storage (R5 RDBMS)
Default Value (no default)
Example Property
module.[MODULE_ID].config.search.nickname_enabled = 

45.61.21Property: Phonetic Encoder

 
Property Name Phonetic Encoder
Property Key
Property Type ENUM
Values
  • CAVERPHONE1
  • CAVERPHONE2
  • COLOGNE
  • DOUBLE_METAPHONE
  • MATCH_RATING_APPROACH
  • METAPHONE
  • NYSIIS
  • NYSIIS_LONG
  • REFINED_SOUNDEX
  • SOUNDEX
  • NUMERIC
Description The encoder used for predefined FHIR Search Parameters named "phonetic" (e.g. the one on Patient). See Phonetic Search Parameters for more information.
Applies to Modules
  • FHIR Storage (DSTU2 RDBMS)
  • FHIR Storage (R3 RDBMS)
  • FHIR Storage (R4 RDBMS)
  • FHIR Storage (R5 RDBMS)
Default Value METAPHONE
Example Property
module.[MODULE_ID].config.search.phonetic_encoder = METAPHONE

45.61.22Property: Infinispan Cache Name

 
Property Name Infinispan Cache Name
Property Key
Property Type STRING
Description The name of the Infinispan Cache
Applies to Modules
  • FHIR Storage (DSTU2 RDBMS)
  • FHIR Storage (R3 RDBMS)
  • FHIR Storage (R4 RDBMS)
  • FHIR Storage (R5 RDBMS)
Default Value (no default)
Example Property
module.[MODULE_ID].config.searchcache.infinispan.cache.name = 

45.61.23Property: Infinispan Hot Rod Protocol Version

 
Property Name Infinispan Hot Rod Protocol Version
Property Key
Property Type ENUM
Values
  • PROTOCOL_VERSION_10
  • PROTOCOL_VERSION_11
  • PROTOCOL_VERSION_12
  • PROTOCOL_VERSION_13
  • PROTOCOL_VERSION_20
  • PROTOCOL_VERSION_21
  • PROTOCOL_VERSION_22
  • PROTOCOL_VERSION_23
  • PROTOCOL_VERSION_24
  • PROTOCOL_VERSION_25
  • PROTOCOL_VERSION_26
  • PROTOCOL_VERSION_27
  • PROTOCOL_VERSION_28
  • PROTOCOL_VERSION_29
  • PROTOCOL_VERSION_30
  • PROTOCOL_VERSION_31
  • PROTOCOL_VERSION_40
  • PROTOCOL_VERSION_AUTO
Description The Hot Rod Protocol Version required by your Infinispan server. Note that you will need to include an appropriate driver client JAR in the customerlib directory of your installation.
Applies to Modules
  • FHIR Storage (DSTU2 RDBMS)
  • FHIR Storage (R3 RDBMS)
  • FHIR Storage (R4 RDBMS)
  • FHIR Storage (R5 RDBMS)
Default Value PROTOCOL_VERSION_23
Example Property
module.[MODULE_ID].config.searchcache.infinispan.protocol_version = PROTOCOL_VERSION_23

45.61.24Property: Infinispan Servers

 
Property Name Infinispan Servers
Property Key
Property Type STRING
Description A list of semicolon separated infinispan URLS. E.g. "localhost:11223;localhost:11224"
Applies to Modules
  • FHIR Storage (DSTU2 RDBMS)
  • FHIR Storage (R3 RDBMS)
  • FHIR Storage (R4 RDBMS)
  • FHIR Storage (R5 RDBMS)
Default Value (no default)
Example Property
module.[MODULE_ID].config.searchcache.infinispan.servers = 

45.61.25Property: Search Cache Storage

 
Property Name Search Cache Storage
Property Key
Property Type ENUM
Values
  • DATABASE
  • INFINISPAN
Description The default DATABASE maintains the fhir search result cache in the DATABASE. INFINISPAN stores the search results in an infinispan instance.
Applies to Modules
  • FHIR Storage (DSTU2 RDBMS)
  • FHIR Storage (R3 RDBMS)
  • FHIR Storage (R4 RDBMS)
  • FHIR Storage (R5 RDBMS)
Default Value DATABASE
Example Property
module.[MODULE_ID].config.searchcache.type = DATABASE

45.61.26Property: Stale Search Cleanup Interval (seconds)

 
Property Name Stale Search Cleanup Interval (seconds)
Property Key
Property Type POSITIVE_INTEGER
Description This setting specifies the frequency in seconds for the polling and deletion of stale searches in the query cache.
Applies to Modules
  • FHIR Storage (DSTU2 RDBMS)
  • FHIR Storage (R3 RDBMS)
  • FHIR Storage (R4 RDBMS)
  • FHIR Storage (R5 RDBMS)
Default Value 60
Example Property
module.[MODULE_ID].config.stale_search_cleanup.interval.seconds = 60

45.61.27Property: Suppress String Indexing In Tokens

 
Property Name Suppress String Indexing In Tokens
Property Key
Property Type BOOLEAN
Description This setting globally disables the indexing of the :text modifier for token search parameters. Disabling this setting can free up a lot of index space on some systems. See Index Text on Tokens for more information.
Applies to Modules
  • FHIR Storage (DSTU2 RDBMS)
  • FHIR Storage (R3 RDBMS)
  • FHIR Storage (R4 RDBMS)
  • FHIR Storage (R5 RDBMS)
Default Value false
Example Property
module.[MODULE_ID].config.suppress_string_indexing_in_tokens = false
   45.60    FHIR REST Endpoint 45.62    Custom Resource Types