Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Finding archives and/or participants based on alternative names.

  • Finding Aksesjons/Tilveksts using the mottat Mottat-fra values.

  • Finding archives that have a Serie/Mappe with a particular name.

  • Finding archives and/or their descendants based on their creator values.

...

Note

Althogh it is possible to change the search settings any time, even after project inilization, it will no be in effect immediately. Project search data has to be re-indexed after any settings change. Otherwise the sarch might be broken or not work as expected. Changing these settings might also break the existing saved searches.

Searching

Tree Search

The tree search has been updated with the following changes

...

We now have a combined basic and advanced search with support for a seamless transition between them. It is possible to work on any mode switch to another mode then come back to the previous mode. Both modes support the same set of fields so the basic search is also quite powerful and can be used to make AND queries. For, more control like OR queries, grouping queries, sorting, and various other kinds of queries the advanced search can be used. For details about the advanced search see Advance/Query Builder Search.

Free Text Search

Just like the tree search, there is a text field here as well for doing a cross-project free text search. This free text search supports the same functionalities as the tree search. The difference is that this will be searching on all the entities not just the root entities.

...

...

Project and Entities Select

There is a dropdown to select a project and a multi-select to select entities within that project to narrow down the scope of the search. All the initialized projects that the user has access to will be shown in the project dropdown. Then upon selecting a project all the searchable entities (based on preference) of that project will appear on the entities multi-select.

Search Fields

...

After selecting a project and one or more entities the search fields will be populated with all the fields (including nested entity fields) of the selected entities based on the preference. Clicking the Search Fields button will toggle a tree-like structure with all the fields. It is possible to select/unselect multiple fields from this tree to further filter the search. After selecting the needed fields hide the tree-select to get a filter like below with the selected fields.

...

Based on the selected field type a particular type of query/operator would be selected, although there can be other operators available for that field type as well which can be found in the advanced mode. The basic mode will do an AND query. There are many more options available in the advanced mode.

Take a look at Search Examples for some example searches.

Preference

It is also possible to further control which entities and fields to use for search using preference. Only the selected entities and their fields in preference will appear in the search filters. The order of entities and their fields can also be configured in the preference by using drag-drop.

...

Note

Changing these preferences might break the existing saved searches.

Things To Do

  • Need to handle orphan members and system relations during sync.

  • More control over which member to include, like Serie should be included with Arkiv but not with Arkivdel.

  • Control which field is searchable and/or searchable as a member. This should make the field limitations unnecessary. If not then need to make the field limitations configurable instead of hard-coding.

  • Include member’s/descendant's related system entities?

  • Although there are limitations on the number of nested members, they are not applied during syncing at the moment. Need to fix this.

  • Need to use Asta7 models and properties in Essync instead of duplicating them.

  • Multi-level nesting makes the search quite complex and might not be needed for all the projects. Should we consider adding support for flat nesting as well?

  • Add support for doing a level-agnostic search using descendant entities.