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.

Repeat Clauses

Multiple repetitions of the same HDSI path result in logic as described below.

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.

Last updated