SanteMPI Power Search
The SanteMPI power search allows power users to perform in-depth searches of the SanteMPI's underlying CDR using the HDSI Query Syntax. This allows data administrators to find specific records based on any criteria which is stored in the SanteMPI database.
Some SanteMPI servers impose minimum search criteria and/or restricted search criteria on their databases. Depending on the data privacy configuration of the deployed software and the user's access level, certain fields may be restricted.
When a user visits the power search screen, they are presented with an empty search input area.

Creating Search Criteria

To begin, enter the HDSI query expression clause. The software will provide suggestions for property clause paths which match the Patient resource. Users can select the property they wish to filter on.
Users may use keyboard shortcuts to navigate the suggestions:
  • Up / Down - Select the previous or next suggestion
  • Tab - Auto-fill the selected suggestion
Depending on the search type of the current path, the user should select the appropriate operator for the search clause.
equal
The value in the database at the property path must exactly match the value specified
All Types
not-equal
The value in the database must not match the value specified
All Types
less-than
The value in the database must be less than the value provided.
DateTime, Int32, Int64
less-than-or-equal
The value in the database must be less than or equal to the value provided
DateTime, Int32, Int64
greater-than
The value in the database must be greater than the value provided
DateTime, Int32, Int64
greater-than-or-equal
The value in the database must be greater than or equal to the value specified.
DateTime, Int32, Int64
approx
The value must match the pattern of the value provided
String

Repeat Clauses

Multiple repetitions of the same HDSI path result in logic as described below.
less-than, less-than-equal, greater-than, greater-than-equal
  • LOGICAL OR when same operator applied
  • LOGICAL AND when different operators applied
not-equal
  • LOGICAL AND
equal, approx
  • LOGICAL OR
For example, the following expression results in patients who were born between 1980-01-01 and 1980-12-31
Conversely, the following expression results in patients named Donny or Don

Concept Fields

Whenever the HDSI expression is a filter on a property of type Concept the value will be a search, of concepts.

Entity Fields

Whenever the HDSI expression is a filter on a property of type Entity or when of its derivatives, the search box will be a drop down of entities. For example, searching by citizen results in a search of entities (since .target is bound to Entity) .
Using the cast operator @ the input can be filtered to places only.

Deep Linking Queries

If the SanteDB instance is collecting data other than patient registrations (such as vaccinations), the properties of patient can be linked deeply. For example, if we wanted to filter on patients who have received a vaccination of a particular product.

Related Topics