Can you explain the Boolean logic used in the bid match search profiles?
All search terms in your search profile will be prefaced with the select command. Following the select command you will see the keyword(s) being used to search all the daily bid abstracts as processed by OutreachSystems.
When you review your search profile, you will notice that there are various symbols used between your keywords. The language and symbols used in your search profile are written in what?s known as "Boolean Logic." Boolean operators include AND, OR, and NOT and Outreach additionally offers a proximity operator.
If a search line says select fire<2u>hydrant, that coding is designed to look for any bid opportunity containing the words fire and hydrant, in any order (u=unordered), with no more than two words separating them. If <3u> appears, then no more than three words could separate the two key words. If the coding line contains no number between the <>, like select fire<>hydrant, then only bids containing the exact phrase "fire hydrant" will be identified.
OperatorsIf a search line consists of more than one word, then it will be the "Operator" that combines the words. The OutreachSystems search engine supports four different operators:
|Operator||Description||Example||Example Matches On|
|The and operator between two search terms requires the bid abstract to include both terms in order to match.|| |
hose and fire
|Any solicitation containing the word "hose" and the word "fire."|
|The not operator can be combined with the "and" operator to exclude bid abstracts that contain a particular word.|| |
hose and not fire
|Any solicitation containing the word "hose" that does not also contain the word "fire."|
|or||The or operator between two search terms requires the bid abstract to include at least one of the terms in order to match.||fire or flame or blaze||Any solicitation containing one or more of these words.|
|A numeric value enclosed in angle brackets between two terms requires the bid abstract to include both terms, in that order, with no more than the specified number of words between them in order to match.||fire<3>alarm||Any solicitation containing "fire" and "alarm," in that order, with no more than three words between them (e.g. "fire, smoke and burglar alarm")|
|A numeric value and letter "u" enclosed in angle brackets between two terms requires the bid abstract to include both terms (regardless of order - i.e. unordered) with no more than the specified number of words between them in order to match.||fire<2u>alarm||Any solicitation containing "fire" and "alarm," in any order, with no more than two words between them (e.g. "alarm, burglar and fire")|
When entering multiple words as a search phrase, you will commonly see the proximity operator "<>" space between search terms. You can also combine multiple operators on the same select statement. For example, to search for all "fire extinguisher" solicitations that do not reference "halon gas," you can use the following search expression:
fire<>extinguisher and not halon<>gas
You can use the * (asterisk) wildcard character to substitute for any combination of characters at the end of a term in your keyword or agency search string, letting you search for variations of a particular word without searching for each variation separately. For example, the search term "extinguish*" would match on extinguish, extinguishing, extinguisher, and so on.
You can also use the ? (question mark) wildcard to substitute for any single character at the end of a term. For example, the search term "fold?" would match on "fold" and "folds" but not "folding" or "folder."
Note: You may see the * or ? wildcard at the end of any keyword that has at least 3 characters or more. You cannot, however, use a wildcard in front of or in the middle of a word.
Your advanced search expressions can also contain special index terms, which are used to search for specific types of data such as geographic state information. You may see the index term: "state!" followed by the two letter state abbreviation.
state!ky or state!tn
An index term searches for more than what is shown. In the case of the "state!" index term, the OutreachSystems search engine will search not only for the state abbreviations (eg. KY or TN) but it will also search for common geographic locations within those states. For example, for the state of Kentucky, we will also match on "Fort Knox" and for the state of Tennessee, we will also match on "Memphis" or "Tennessee", even if the actual state name or abbreviation is not used.
There are several index terms that you may see in the search profiles:
|Index Term||Description||Example||Example Matches On|
|The nsn! index term is used to search for NSN numbers which sometimes include dashes, and which sometimes do not include dashes.|| |
|Any solicitation containing the NSN number 1560012332175 or 1560-01-233-2175.|
|The pn! index term is used to search for part numbers which sometimes include dashes, and which sometimes do not include dashes.|| |
|Any solicitation containing the part number 937E500207 or 937E-5002-07.|
|The state! index term is used to search (or restrict the profile) for certain geographic states.The actual state name does not have to be spelled out in the bid, The OutreachSystems search engine will also use its intelligence to determine where a bid takes place.|| |
|Any solicitation that references Hawaii, HI or even Pearl Harbor or Honolulu.|
You may see complex, multilevel search expressions in the Keywords or Agency field, but these separate entities within each expression will always be placed in parentheses, as in the following examples:
computer<2>training and (state!ky or state!tn or state!mi)
juice?<2u>(apple? or orange? or grapefruit or tomato*)
The above juice example will match on:
grapfruit or lemon juice
juices such as tomato
The word "juice" combined with any keyword listed in the parentheses will cause a match to occur. And the words can even be unordered, where the word "juice" comes within two words either before or after the name of the fruit.
By default the OutreachSystems search engine is case insensitive. However, by adding an exclamation point (!) in front of a key-term it forces the word to match exactly as written. For example,
- select !GIS
With most acronyms, you do not need to force the system to match on capital letters only because they are not commonly used words (e.g. "gis" or "sbir"). In fact, by forcing acronym searches to be case sensitive, you risk eliminating bid opportunities that your clients may be interested in simply because an acronym is spelled in lowercase rather than uppercase letters.
However, for acronyms such as IS (information system) or IT (information technology) that represent commonly used words when spelled in lowercase letters, an exclamation point must be used to force the term to match only when it is printed in all capital letters.
Want more? Browse our extensive list of Neoserra FAQs.