VITAL Repository 3.4.3
Advanced Search
Command Query performs searches using the "Lucene " search engine syntax. With this syntax you can utilize the following searching techniques and search modification functions:
Search terms are either in the form of single words or groups of words (phrases) in double quotation marks (where the text exactly as it appears between the quotation marks is treated as a single search term). The searching techniques and search modification functions are used with search terms to generate queries.
NOTE: Keyword searching by default: If search terms (either single words or phrases) are searched for in an "Expert Query" search without a specific data field being specified and without other query syntax being utilized it will be treated as a simple keyword search , in which all fields are searched and terms indexed from full text documents are also searched. (This is equivalent to the keyword search which is available on any page in the Research Repository).
Data fields and Data field specification
Data fields which may be searched specifically in Command Query are the following:
title (for the title of the item)
creator (for the name of an author or of an organisation involved with the publication of the item, such as a school or department)
rights (for information about the copyright status of the item and use and reproduction policies of publishers)
description
relation (for the title of a journal in which an article appears, or the title of a book in which a chapter appears)
publisher (for the name of a publisher of place of publication)
type (for the broad type of the item, such as a conference paper, journal article, book chapter, or book)
date (for the year of publication)
How to searching using Data field specification
To search for text within specific Data fields , enter the field name, then a colon, and then the term to be searched. For example:
creator:smith should find records with the text smith in the creator field.
rights:green should find records with the text green in the rights field.
NOTE: Scope of Data field specification: A field specified for searching will only apply to the search term that comes directly after it. This query, title:"effect of rainfall patterns" will search for effect of rainfall patterns as a whole phrase in the title index (the quotation marks make the phrase into a single search term), whereas this query, title:effect of rainfall patterns will search for only effect as a term in the title index and will search for of , rainfall , and patterns individually as separate keyword terms.
Boolean Operator searches
Boolean Operator searches are used in Command Query to combine multiple searching operations into a more complex query operation. The Boolean Operators are the following:
AND (must be in upper case), looks for records which meet the requirements of both of the search operations that it is joining. For example, to look for records containing the term smith in the creator field that also contain the term elephant in the title field, the following search could be used:
creator:smith AND title:elephant
Or this search would look for records containing the term smith in any field, that also contain the term elephant in any field:
smith AND elephant
And this search would look for records containing the term smith in the creator field that also contain the term elephant anywhere in any field:
creator:smith AND elephant
&& can be used exactly as AND (above) is used.
NOT (must be in upper case), excludes records containing a specified term. For example, to look for records containing the term smith in the creator field but not containing the term elephant in the title field, the following search could be used:
creator:smith NOT title:elephant
This search would look for records containing the term smith anywhere in any field which do not contain the term elephant in any field:
smith NOT elephant
(NOTE: the NOT operator cannot be used alone with just one search term as a complete Boolean Operator search (i.e. to retrieve all of the records which do not contain a specified term). It must be used in conjunction with a search for at least one other term which is not being used with the NOT operator.)
! can be used exactly as NOT (above) is used.
OR (must be in upper case), looks for records which meet the requirements of either or both of the search operations that it is joining. For example, to look for records containing the term smith in the creator field or containing the term elephant in the title field (or containing both), the following search could be used:
creator:smith OR title:elephant
This search would look for records containing the term smith in any field and also for records containing the term elephant in any field:
smith OR elephant
Wildcards
"Wildcards" are used in Command Query for single and multiple character wildcard searches within single terms (not within phrase queries).
To perform a single character wildcard search use the " ? " symbol. (A single character wildcard search looks for terms that match with the single character replaced. For example, to search for any of the terms "hole ", "home ", "hone " or "hose " you can use the search: " ho?e " (but note that this search would not find the term "hoe "))
To perform a multiple character wildcard search use the " * " symbol. (A multiple character wildcard search looks for terms that match with any number of characters replaced, from 0 upwards. For example, to search for any of the terms "train ", "trains ", "trained ", or "training " you can use the search: " train* " )
(Note that neither the " * " symbol nor the " ? " symbol can be used as the first character of a search term, but both can be used in the middle of a search term or at the end of a search term)
Fuzzy searching
Proximity searching
Range searching
Query Grouping
Query grouping in Command Query is performed using parentheses to define sub queries within larger queries. This can be used to control (or make explicit) the boolean logic for a query without having to be concerned about the order of precedence between Boolean operators.