FieldText operations are filters that you can use to further restrict the results set generated from the text part of the query.

You can use FieldText as a post-filter to results sets during the operations of querying or hyperlinking. Filters act on the values of fields in a document, and use a wide variety of criteria, such as numeric or string values, geographical coordinates, or bitwise operations.

From a Boolean perspective, FieldText is always combined with an AND operator with the Text part of the query (that is, a query must always match both the query text and FieldText). You can combine FieldText operations with Boolean operators in the usual way.

Optimize FieldText Performance

With the exception of the BITSET operator, you can query with all FieldText operators on any field stored by the IDOL index, irrespective of configuration. However, for most of the operators there is a matching optimal field configuration that reduces the impact of the operation on the duration of the query.

In general, configuring fields for optimal performance results in an increase in memory usage, while greatly reducing the amount of disk usage during a query and reducing the query time. In addition indexing time may increase slightly.

The correct configuration for a field that you want to match using FieldText depends on exactly what operators you want to use. The following table shows the field types that are optimized for a given FieldText operator. For example, the EQUAL operation is fastest when performed against a numeric field (that is, a field configured with the NumericType property).

The following table describes the field properties that are optimized for a particular field operator.

Operator # M N P S B NC MC R Example
ARANGE 2               ARANGE{aardvark,azure}:DRETITLE
BIAS 3               BIAS{100,50,10}:Price
BIASDATE 3               BIASDATE{1/12/2010,86400,10}:MyDate
BIASVAL 2             BIASVAL{UK,10}:Country
BITAND 1               BITAND{128}:BitField
BITANDHEX 1                 BITANDHEX{0a0010000}:BitField
BITANDOFFHEX 2                 BITANDOFFHEX{01,0a001}:BitField
BITSET -               BITSET{0,5,12}:BitField
BOOLEANFIELD 1                 BOOLEANFIELD{The cat sat on the mat.}:BoolField
DISTSPHERICAL 3               DISTSPHERICAL{52.2,-0.1,10}:LAT:LONG
EMPTY 0               EMPTY{}:MyField:MyField2
EQUAL -               EQUAL{10,20}:PAGES
EQUALALL -               EQUALALL{10,20}:PAGES
EQUALCOVER -               EQUALCOVER{2,4,6,8}:VALS
EXISTS 0               EXISTS{}:MyField:MyField2
FUZZY -                 FUZZY{Bisiness News,Arkive}:FIELD
GREATER 1               GREATER{105.5}:SCORE
GTNOW 0               GTNOW{}:MYDATE
LENGTH 2                 LENGTH{10,20}:FIELD
LESS 1               LESS{100}:PRICE
LTNOW 0               LTNOW{}:MYDATE
MATCH -             MATCH{Archive,News}:DB
MATCHALL -             MATCHALL{Archive,News}:DB
MATCHCOVER -               MATCHCOVER{Tom,Dick,Harry,Bill}:NAME
NOTEQUAL -               NOTEQUAL{1,2}:PAGES
NOTMATCH -             NOTMATCH{dog,cat}:ANIMAL
NOTWILD -             NOTWILD{d*,c?t}:ANIMAL
NRANGE 2               NRANGE{10,100}:COST
POLYGON -               POLYGON{1,1,-1,1,0,-2,1,-1}:XPOS:YPOS
RANGE 2               RANGE{1/12/99,31/12/00}:DATE
STRING -             STRING{giraf,lephant}:ANIMAL
STRINGALL -               STRINGALL{giraf,lephant}:ANIMAL
SUBSTRING -                 SUBSTRING{Telecommunications,Technology}:SEC
TERM -                 TERM{shopping,centres}:DRETITLE
TERMALL -                 TERMALL{shopping,centres}:DRETITLE
TERMEXACT -                 TERMEXACT{helped,helpi*}:DRECONTENT
TERMEXACTALL -                 TERMEXACTALL{shopping,centres}:DRECONTENT
TERMEXACTPHRASE 1                 TERMEXACTPHRASE{Batman! And Robins}:FILM
TERMPHRASE 1                 TERMPHRASE{Batman! And Robins}:FILM
WILD -             WILD{*.html,*.htm}:URL


# The number of values that the operator takes. A dash indicates that the operator can take a variable number.
M The operator is optimized by configuring the fields as MatchType.
N The operator is optimized by configuring the fields as NumericType.
P The operator is optimized by configuring the fields as ParametricType with ParametricNumericMapping set to True.
S The operator is optimized by configuring the fields as SortType.
B The operator is optimized by configuring the fields as BitfieldType.
NC The operator is optimized by configuring the fields as NumericType AND CountType.
MC The operator is optimized by configuring the fields as MatchType AND CountType.
R The operator is optimized by configuring the fields as ReferenceMemoryMappedType.

You cannot optimize all field operators by appropriate field configuration. Micro Focus recommends that you use these operators only occasionally for diagnostic or administrative purposes, and not against a production system.

Notes on FieldText usage

The following section has some additional notes about FieldText values.

Case Sensitivity

See AlsoCase-Sensitive Search

All string matching in FieldText is case independent. You can configure the matching of the field name to be case dependent by setting CaseSensitiveFieldNames to True in the configuration file. You can override this behavior in most cases with the CaseSensitive action parameter in the Query action.

An exception occurs when you are using MatchType fields or ParametricType fields. By default these fields have all their values stored as upper case and so must be matched accordingly. To override this behavior, use the configuration settings CaseSensitiveMatchValues and CaseSensitiveParametricValues respectively.

Special Characters

You can match any character as a value. However the comma (,) and the closing brace (}) must be percent-encoded in values to distinguish them from the separator and value terminator.


If your entire Query action is automatically percent-encoded when you send it, you might need to percent-encode those characters twice. The rule is that after the entire Query action is unecoded once by IDOL, those characters must still be percent-encoded to distinguish them from the separator and value terminator.

FieldText Length

There is no maximum length of a value that can be put into a FieldText operator, other than the overall configured value MaxInputString. The maximum length of a field name is 512 characters.

Metadata Fields

You can perform FieldText operations against the document metadata date, database, and language type, by specifying the autn_date, autn_database, or autn_langtype as the field.

These fields are automatically optimized for matching. However, in general queries on these fields do not perform as quickly as for an equivalent MatchType or NumericType field.