Oracle® Beehive RESTful Web Services API Reference Release 2 (2.0.1.7) E16658-04 |
Rules specifying what constitutes a match can be specified in the
matchType
member.
How the clause relates to terms (e.g. matches/does not match) can also
be specified in the enforcement
member.
If clauses generated from one or more Terms supplied in Boolean expressions or "quoted phrases", the clauses extracted will match the expression supplied. For example, if "systems analyst" is supplied, the ExpertiseSearchClause extracted is "systems analyst". If the Boolean expression database AND Oracle is supplied, the ExpertiseSearchClause will match this expression.
Note that two or more words supplied in a search string without a Boolean operator are interpreted as a Boolean "OR" expression. For example, if Thai restaurant is entered, the resulting Boolean ExpertiseSearchClause will be Thai OR restaurant.
However, if a block of text is supplied as search text, such as one or more complete sentences, a number of terms are extracted. Different types of clauses are then created based on the relationship between these terms. These types of clauses include Phrase-match clauses, Associated Word Clauses, and Single Word clauses.
Consider the following block of text below submitted for a search. The extracted terms are underlined:
Recently, BioCorp and PharmaCorp?s CropScience division settled lawsuits and a patent dispute related to genetically improved cotton. The companies also reached agreement on other cotton transformation patents.
Clauses that closely resemble word combinations within the text are generated from the top multi-word terms extracted. The strongest nouns within each clause are used to create a clause.
For example, this term: other cotton transformation patents
Yields this Boolean clause: cotton AND transformation AND patents
Nouns that are used together within multiple terms are also grouped into clauses. These allow search to "widen the net" by looking at how key words are used together within the text supplied, resulting in a much richer search. These clauses take the form of key1 (key2 OR key3 OR key4). The commonly-occurring noun is key1; the next strongest associated words are the subsequent keys.
For example, these terms:
other cotton transformation patents
PharmaCorp's SynthoLycra cotton
Would generate this ExpertiseSearchClause, formatted as a Boolean expression:
cotton AND (SynthoLycra OR PharmaCorp OR patents)
Notice that cotton is the commonly-occurring word within these terms. PharmaCorp and SynthoLycra are also regarded as strong words because they occur frequently within the source text.
The top single-word terms within the text are also considered as ExpertiseSearchClauses, such as BioCorp, PharmaCorp, cotton and patents.
You can specify which clauses should be included in each band, and put a cap on how much these clauses contribute to the search. This gives you tremendous flexibility in specifying how much different types of clauses contribute to the search, regardless of weight.
Note that words with clauses can be "stemmed" or reduced to their roots
before submission. This makes search more inclusive by finding terms
containing any variation of a word. Use the stem
parameter
to enable stemming.
Name | Type | Required | Description |
---|---|---|---|
asStemIds |
Whether the words within the expression are represented as stem ids. | ||
boolexprLanguage |
The bit-masked Language(s) of the search expression. Values are:
|
||
enforcement |
The match enforcement to apply to matches. Values are: | ||
expression |
The string representation of the expression | ||
matchLanguage |
Language that matching profiles must use. | ||
matchType |
The requirements for a profile to match this clause. Values are: | ||
stem |
If true, words within a term are "stemmed" or reduced to their roots before the clause is used to perform a search. Stemming makes the search more inclusive. If false, the search is more restrictive. Default is false. | ||
weight |
Weighting to apply to this clause, as compared to the weight of other clauses included in the search request. |
<xs:complexType name="expertiseSearchClause"> <xs:sequence> <xs:element name="asStemIds" type="xs:boolean"/> <xs:element name="boolexprLanguage" type="xs:int"/> <xs:element name="enforcement" type="xs:int"/> <xs:element minOccurs="0" name="expression" type="xs:string"/> <xs:element name="matchLanguage" type="xs:int"/> <xs:element name="matchType" type="xs:int"/> <xs:element name="stem" type="xs:boolean"/> <xs:element name="weight" type="xs:float"/> </xs:sequence> </xs:complexType>
Copyright © 2008, 2012, Oracle and/or its affiliates. All rights reserved.
Legal Notices