How to use advanced filter to create specific views of your model data
- Last Updated: May 13, 2026
- 7 minute read
- Semaphore
- Documentation
Background
The advanced filter allows you to search for specific concepts in your model using filters, string matching, and regex (regular expressions). You can also save your results as a custom report that you can run at any time.
The advanced filter panel is accessed by clicking the search icon at the top of the left hand tree view panel (see below).
There are two parts to the Advanced search:
- The “any text” search box at the top
- The added filter section
Both allow “free text” search and/or the use of regular expressions (regex).
Regardless of your search, the results are always a list of concepts that meet the criteria. For example, if you search a metadata property, the result will be a list of concepts that meet the criteria, not a list of the metadata property values that match.
When using the “any text” search, the following data is searched:
- Pref labels
- Alt labels
- Metadata property values
When using the “any text” search:
- The search is a “contains” search – i.e. the string of characters you search for can be within a string
- The search is case insensitive
- An asterisk ‘*’ can be used as a wildcard when regex is ‘off’
- If combined with filters, it is an AND search with those filters
When using a filter’s search:
- The search is a “starts with” search (this is different than the “any text” search)
- The search is case insensitive
- An asterisk ‘*’ can be used as a wildcard when regex is ‘off’
- When additional filters are added, or used with the “any text box”, it is an AND search
Filtering by Language
The “any text” box and most of the filters allow you to also filter by a specific language.
In Semaphore version 5.4 and above, if you’ve added locale type languages to your model (e.g. “fr-ca”) searching on the ‘parent’ code (e.g. “fr”) will return results for the ‘child’ code. But searching on the child code will not return results for the parent code.
Note: prior to Semaphore version 5.4, searching by specific languages did not work properly – these issues were fixed in 5.4.
Using Regex
The use of regex is allowed on string values and is activated when the regex toggle is ‘on’.
Regex help is displayed when mousing over the entry box.
Tip: to quickly test your regex, use a publicly available regex tester, such as: www.regextester.com.
There are different “flavors” of regex (i.e. different syntax). So, if you already know regex, you may need to adjust the syntax to work in KMM.
Assumptions
- You have an existing model.
- You have any of these roles for the model: MANAGER, EDITOR, CONTRIBUTOR, REVIEWER
Examples
The advanced filter offers numerous possibilities for filtering and searching your model. The rest of this article gives examples of how to access and use the advanced filter:
- Find all concepts that belong to a specific class.
- Find all concepts with preferred labels that match a specific string pattern.
- Find all concepts that have a specific associative relationship.
- Regex Examples
These examples use the Space Missions model. To begin, open the model, and click Edit Master or open a task.
Find all concepts that belong to a specific class
To begin, expand the People concept scheme. Expand a few of the child concepts. Notice that names of people appear in many different locations in the model, so you cannot see them all in one view. You also cannot see without clicking on each one if that person is an astronaut. Your goal is to create one list of all people who are astronauts (specifically, of the class “Astronaut”).
- Click the Open advanced filter icon (magnifying glass with a + inside of it).

- In the “Filter Model” pane, click Add filter, and then click Class filter.

- In the Concept Class field, type the letter “A”. The field will autocomplete with the possible classes. Click Astronaut.

- At the bottom on the screen, click Submit.

- The concept navigation area will update to become “Filter Results” (#1 in image). In this pane you will see the results of your search, namely, a list of all concepts that are of class Astronaut (#2 in image). You can click and navigate within this list the same way you do the main view (#3 in image).

- Click the X in the Filter Model pane to close it and get more space on the screen.

- To return to the regular concept navigation, click the X in the Filter results area.

Find all concepts with preferred labels that match a specific string pattern
You can perform this filter by itself, but to illustrate the features of the advanced filter, this example will build upon the last one. Previously, you created a list with all astronauts. This time, your goal is to filter that list to include only names that start with the letter “A”.
- Click the Open advanced filter icon (magnifying glass with a + inside of it). Notice that the previous filter you built is still available for use. Leave everything the same, and click Submit.
- Your Filter Results list now shows all astronauts. Click Add Filter, and then click Preferred label (this will limit the filter to the preferred label only).

- In the Preferred Label dialog, find the Filter any text field and type the letter “A”. Then, click Submit

- Examine the Filter Results list. Scroll down and notice that all of the results begin with the letter “A”. (To filter the results further, enter more letters, or use the Regex search toggle switch to use regular expression patterns.)

- Click the X in the Filter Model pane to close it and get more space on the screen.

- To return to the regular concept navigation, click the X in the Filter results area.

Find all concepts that have a specific associative relationship The goal of this exercise is to find all spacecraft that were launched from Kennedy Space Center Launch Complex 39. Specifically, the goal is to filter all concepts that have a relationship “launched from” with the object of “Kennedy Space Center Launch Complex 39”.
- Click the Open advanced filter icon (magnifying glass with a + inside of it). Notice that the previous filter you built is still available for use. Click the X on each dialog to dismiss it, leaving only the Add filter option.

- Click Add Filter, and then click Relationship filter.

- Click Add Relationship filter, and choose the associative relationship launched from.

- In the “Search for related concept” field, start typing and select Kennedy Space Center Launch Complex 39. Then, click Submit.

- Click the X in the Filter Model pane to close it and get more space on the screen.

- Navigate the concepts listed in the Filter Results pane. Note that all them have the relationship “launched from > Kennedy Space Center Launch Complex 39”.

- To return to the regular concept navigation, click the X in the Filter results area.

Regex Examples
Regex Example 1 This example searches for all pref labels that begin with the letter ‘z’, case insensitive, all languages.
The regex value is: ^(?i)z
Note that it gets a hit on the Spanish pref label.

Regex Example 2 This example searches all pref labels, alt labels, and metadata properties that end with the letters ‘oman’.
The regex value is: oman$
Note that it gets a hit on an alt label in the “Astronauts” concept.

Regex Example 3 This example searches all pref labels that contain either the letters ‘mer’ OR the letters ‘sand’.
The regex value is: mer|sand

Regex Example 4 This example searches for all the English pref labels that start with capital ‘S’, then any lowercase a-z characters, then a space, then case insensitive a-z characters, then ends with ‘a’.
The regex value is: ^S[a-z]*\s(?i)[a-z]*a$

Outcome
There are numerous ways to apply the advanced filter. Take some time to try out the possibilities.