Smile CDR v2023.05.PRE
On this page:
   41.49    FHIR REST Endpoint 41.51    Custom Resource Types   

41.50FHIR 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

  • Page Size (Default)

  • Page Size (Maximum)

  • Nickname enabled

  • Phonetic Encoder

  • Infinispan Cache Name

  • Infinispan Hot Rod Protocol Version

  • Infinispan Servers

  • Search Cache Storage

  • Suppress String Indexing In Tokens

41.50.1Property: 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.
Applies to Modules
  • FHIR Storage (DSTU2 Relational)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value false
Example Property
module.[MODULE_ID].config.always_use_offset_searches = false

41.50.2Property: 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 Relational)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value false
Example Property
module.[MODULE_ID].config.dao_config.allow_contains_searches = false

41.50.3Property: 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 Relational)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value 1000
Example Property
module.[MODULE_ID].config.dao_config.expansion.maximum_size = 1000

41.50.4Property: 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 a single search. Setting this value to a sensible value for the anticipated usage of the CDR can help to prevent careless queries that exhaust resources on the server.
Applies to Modules
  • FHIR Storage (DSTU2 Relational)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value (no default)
Example Property
module.[MODULE_ID].config.dao_config.fetch_size.default_maximum = 

41.50.5Property: 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 Relational)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value DISABLED
Example Property
module.[MODULE_ID].config.dao_config.index_contained_resources = DISABLED

41.50.6Property: 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 Relational)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value DISABLED
Example Property
module.[MODULE_ID].config.dao_config.index_contained_resources_recursively = DISABLED

41.50.7Property: 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 Relational)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value false
Example Property
module.[MODULE_ID].config.dao_config.index_uplifted_refchains.enabled = false

41.50.8Property: 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 Relational)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value false
Example Property
module.[MODULE_ID].config.dao_config.legacy_202105_date_index_mode = false

41.50.9Property: 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 Relational)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value (no default)
Example Property
module.[MODULE_ID].config.dao_config.max_includes_to_load_per_page = 

41.50.10Property: 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 Relational)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value true
Example Property
module.[MODULE_ID].config.dao_config.use_ordinal_dates_for_day_precision_searches = true

41.50.11Property: 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 Relational)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value false
Example Property
module.[MODULE_ID].config.filter_search.enabled = false

41.50.12Property: 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 Relational)
  • FHIR Storage (MongoDB)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value true
Example Property
module.[MODULE_ID].config.graphql.enabled = true

41.50.13Property: 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 Relational)
  • FHIR Storage (MongoDB)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value false
Example Property
module.[MODULE_ID].config.identifier_of_type.enabled = false

41.50.14Property: 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 Relational)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value 50
Example Property
module.[MODULE_ID].config.page_size.default = 50

41.50.15Property: 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 Relational)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value 250
Example Property
module.[MODULE_ID].config.page_size.maximum = 250

41.50.16Property: 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 Relational)
  • FHIR Storage (MongoDB)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value (no default)
Example Property
module.[MODULE_ID].config.search.nickname_enabled = 

41.50.17Property: 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 Relational)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value METAPHONE
Example Property
module.[MODULE_ID].config.search.phonetic_encoder = METAPHONE

41.50.18Property: 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 Relational)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value (no default)
Example Property
module.[MODULE_ID].config.searchcache.infinispan.cache.name = 

41.50.19Property: 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_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 customer_lib directory of your installation.
Applies to Modules
  • FHIR Storage (DSTU2 Relational)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value PROTOCOL_VERSION_23
Example Property
module.[MODULE_ID].config.searchcache.infinispan.protocol_version = PROTOCOL_VERSION_23

41.50.20Property: 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 Relational)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value (no default)
Example Property
module.[MODULE_ID].config.searchcache.infinispan.servers = 

41.50.21Property: 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 Relational)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value DATABASE
Example Property
module.[MODULE_ID].config.searchcache.type = DATABASE

41.50.22Property: 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 Relational)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value false
Example Property
module.[MODULE_ID].config.suppress_string_indexing_in_tokens = false
   41.49    FHIR REST Endpoint 41.51    Custom Resource Types