Advanced search¶
In addition to AtoM’s general search box (located in the AtoM header bar), AtoM also includes a robust advanced search interface that allows user to build complex queries via the user interface. A number of filters have been included to narrow the search parameters, while complex boolean search queries using AND, OR, and NOT statements can be built with the addition of search fields. The advanced search interface is available to all users - i.e. you do not have to be logged in to the application to access it. Note that it is designed to be used to search for archival descriptions - please see the sections on AtoM’s dedicated search boxes and Typeahead and faceted search box results for information on searching for different entity or record types.
This section will instruct you how to use AtoM’s advanced search interface; additionally, it will outline methods that are available in the general search box to perform advanced searches, using boolean search operators and special characters.
Important
At this time, the Advanced search interface can only be used to search for archival descriptions. To search for other entity types in AtoM (e.g. authority records, etc.), please use the Dedicated search boxes provided in the relevant page - for more information, see: Dedicated search boxes.
The Advanced search interface¶
This section will outline how to use AtoM’s advanced search interface. The advanced search interface is used to find descriptions in AtoM that contain text matching a search query. The advanced search hyperlink can be accessed in the drop-down menu that appears when a user places the cursor in the search box located in the AtoM header bar. In the advanced search page, a user can select “and, or, not” operators, and search specific archival description fields, to create a powerful search query. The option to apply filters to limit or narrow the search are also provided in a friendly user interface.
To search for archival descriptions using the advanced search interface:
- Place your cursor in the search box located in the AtoM header bar. A drop-down menu will appear below the search box - to access the advanced search interface, click on the “Advanced search” link in the drop-down menu.
Important
The advanced search options described here apply only to searches for archival descriptions - the advanced search interface returns archival description results by default. To search for other entity or record types, see the sections on Typeahead and faceted search box results and on the Dedicated search boxes available in the Search section.
- AtoM will redirect you to the advanced search screen:
- To begin searching, enter a search term into the search field in the central column of the page.
- Use the drop-down menu to limit your search query to a specific
field in the archival description templates. The default
setting is to search any field. Options include:
- Title
- Archival history
- Scope and content
- Extent and medium
- Subject access points
- Name access points
- Place access points
- Identifier
Note
The labels in the field drop-down menu available in the advanced search interface are based on the labels used in the International Council on Archives (ICA) ISAD(G) standard. For more information on ISAD(G), see: General International Standard Archival Description (ISAD(G)). In other edit templates, labels may appear differently - for example, “Archival history” is known as “Custodial history” in the RAD edit template, while “Extent and medium” is simply called “Extent” in the DACS. However, search results for each field will be returned regardless of the template used for display.
- Use the “Add new criteria” button to build multi-part queries with Boolean search operators via the user interface - by using these operators, you can narrow your search, combine terms, or exclude terms. AtoM will add a new set of fields below, into which you can enter your terms - repeat steps 3-5 as necessary.
- Use AND to combine search terms to narrow your search: e.g. search vancouver AND “city hall” to return only descriptions that contain both search terms
- Use OR to to combine search terms to broaden your search: e.g. search vancouver OR “city hall” to return descriptions that contain either search term
- Use AND NOT to exclude terms: e.g. search vancouver AND NOT “city hall” to return descriptions that include vancouver but do not contain the phrase “city hall”
- You can also add filters to your search to limit the results returned to specific parameters. The functions of each search filter are outlined below:
- Repository: Limit the search to the holdings of a specific archival institution. The drop-down menu will be populated by all of the archival institution records in AtoM.
- Top-level descriptions: This is an auto-complete field that will populate with all of the top-level descriptions held in AtoM (generally, fonds and collections, but if a series or another level is set as the top level of a descriptive hierarchy, it will be available in the list). Begin typing the title of a top-level description, and the auto-complete will populate the drop-down menu with matching selections. Click on one to select it - search results will be limited to archival descriptions found within the chosen top-level description’s descendants - i.e. children.
- General material designation: This is a filter that is particular to a controlled field found within the RAD template for archival descriptions - it is a controlled vocabulary drawn directly from the Canadian Rules for Archival Description, and managed in one of AtoM’s taxnomies and used to define the type of material found within an archival unit. Select a GMD term from the drop-down menu to limit search results to descriptions that have been been marked with the matching GMD value.
- Media type: Used to search for a particular type of digital object. Values include: Audio, Image, Other, Text, or Video. Selecting a Media type term from the drop-down menu to limit search results to include only those descriptions with linked digital objects that match the selected media type.
- Digital object available: Use this filter to determine if a the search results returned include digital objects (e.g. images, audio or video files, text documents, etc.), or by selecting “No”, include only results without digital objects.
- Level of description: This filter will limit the returned search results to a specific level of description.
- Copyright status: AtoM archival description templates include a “Rights” information area that is drawn from elements of the PREMIS (Preservation Medata: Impmlementation Strategies) metadata standard maintained by the U.S. Library of Congress. Through this module, a user can add a copyright status to an archival description (with values including Public Domain, Under copyright, or Unknown). This filter will limit search results to those descriptions where a PREMIS Rights copyright status has been added matching the selection in the filter’s drop-down menu.
- Click “Search” in the button block to view the results of your search query. Results will appear in order of relevance below the button block. If there are more than 10 results, a pager will be included at the bottom of the results page.
- Click on the blue titles to navigate to that result’s specific page. Navigating back will bring you back to your original list of results; however, navigating to the “Advanced search” page from the search box will require you to restart your search from the beginning
- Your search can be modified at any time and the results refrehsed accordingly by simply changing the required search terms and fields and clicking “Search” once again. You can also restart your search at any time; simply click the “Reset” button in the button block.
Advanced search using the AtoM Search box¶
AtoM implements Elasticsearch, a distributed search server based on Apache Lucene, which acts as the application’s search and analytic engine. Elasticsearch is not integrated directly into AtoM code as a library, but as a service deployed in the same network which AtoM interacts with through a REST ful API.
This provides a number of options for advanced searching from within the search box. What follows is a list of the most commonly used tools available in the AtoM search box.
Phrases¶
By default in AtoM, the Boolean search settings of AtoM are set to use OR as the default operator when multiple search terms are entered. This means that by default, a search for city hall will return results that include “city” OR “hall”.
To search for a phrase in AtoM, use double quotes to contain the terms you wish to search. For example, search “city hall” to return results that contain both “city” and “hall” in that exact order.
Boolean operators¶
In AtoM, Boolean search operators are supported in the search box and in the Adanced search menu. Boolean searching is a particular application of what is known as Boolean logic, a subset of algebra used for creating true/false statements. Since computers operate in binary (using ones and zeroes), computer logic can often be expressed in boolen terms (true/false). Boolean expressions use a number of operators, the most common of which are AND, OR, and NOT - using Boolean operators in terms of search queries (i.e. Boolean search) allows a user to limit, widen, or otherwise define a search in granular terms - for example, searching “fonds OR collection” would widen a search to include results that have either term in their title.
Using the Boolean operators available in AtoM allows users to build complex queries from anywhere in AtoM using the general search box located in the AtoM header bar, without having to navigate to the Advanced search interface.
Using Boolean operators in the AtoM search box:
- Use AND to combine search terms to narrow your search: e.g. search vancouver AND “city hall” to return only descriptions that contain both search terms
- Use OR to to combine search terms to broaden your search: e.g. search vancouver OR “city hall” to return descriptions that contain either search term
- Use AND NOT to exclude terms: e.g. search vancouver AND NOT “city hall” to return descriptions that include vancouver but do not contain the phrase “city hall”
Important
Boolean operators can be combined, but there is a default precedence built into how Elasticsearch handles them - NOT takes precedence over AND, which takes precedence over OR. If you wish to combine Boolean operators, you may want to use parentheses ( ) to group clauses. See the table below for more details on grouping, and other operators available.
Other Boolean operators available in AtoM:
Symbol | Use |
---|---|
“ | Term enclosed in quotes must appear exactly as provided. Example: “towel” will find towel, but not towels. |
+ | Term after “+” must be in the result. Example: +tea cricket requires that results that must contain the term tea in them, and may have the term cricket. |
- | Term after “-” must not be in the result. Example: -tea cricket requires that results that must not contain the term tea in them, and may have the term cricket. |
? | Single character wildcard. Example: p?per will find paper and piper, but not pepper. |
* | Multiple character wildcard. Example: galax* will find galaxy and galaxies, but not galactic. |
~ | Fuzzy search. Will return results with words similar to the term. Example: fjord~ will find fjord, fjords, ford, form, fonds, etc. |
&& | Boolean operator. Can be used in place of AND. Will cause an error if combined with spelled-out operators. Example: Arthur && Ford AND Zaphod will fail; Arthur && Ford && Zaphod will succeed. |
! | Boolean operator. Can be used in place of NOT. Will cause an error if combined with spelled-out operators. |
^ | Boost relevance. Multiplies the relevance of the preceding term by the number following the symbol, affecting the sorting of the search results. Example: paranoid android^5 gives results containing the term “android” 5x the relevance as results containing only the word “paranoid”, and will sort them closer to the start of the search results. |
\ |
Escapes the immediately following character, so that it is
treated as text, rather than as a special character. For example,
to search for “(1+1):2”, use the following: \(1\+1\)\:2 |
( ) | Used to group search clauses. This can be useful if you want to control the precedence of boolean operators for a query, e.g. (coffee NOT tea) OR cream will return different results than coffee NOT (tea OR cream). Without grouping, by default in Elasticsearch, NOT takes precedence over AND, which takes precedence over OR. |
[ ] | Closed interval range search. Example: [“Frogstar” TO “Magrathea”] will return results in the alphabetic range between “Frogstar” and “Magrathea”, including”Frogstar” and “Magrathea”. |
{ } | Open interval range search. Example: {“Frogstar” TO “Magrathea”} will return all results in the alphabetic range between “Frogstar” and “Magrathea”, excluding”Frogstar” and “Magrathea”. |
For further examples of the use of these Boolean operators, users can consult the Zend Lucene search documentation as Elasticsearch is built on the same Apache Lucene base as the Zend framework. Developers interested in fine-tuning these settings, or technical users interested in how Elasticsearch operates may wish to consult the query string query Elasticsearch reference documentation for more information on Elasticsearch’s default behaviors, and possible configurations.