ATG Search represents index item metadata as properties stored with the index item. During a query, ATG Search can restrict its search to items with certain property values. Numeric property values can be tested for equality, less-than, and greater-than. String property values can test for sub-string matches, and both types can be tested for range matches. The XML representation for these constraints is:
<prop type="type
" name="name
" op="str_op|num_op
" case="true|false">value
</prop>
<strprop name="name
" op="str_op
" case="true|false">value
</strprop>
<numprop name="name
" op="num_op
" >value
</numprop>
The constraints are:
type is one of six possible property types,
enum
,string
,float
,integer
,boolean
anddate
. Thestrprop
constraint is equivalent to the type values ofenum
andstring
, and thenumprop
constraint is equivalent to the other four type values.name
is the name of the property.value
is the operand value for the constraint.The
op
attribute contains the comparative operator for the constraint, which defaults toequal
.
All constraints allow the following operators:
equal – the index item must have a property value equal to the operand
greater – the index item must have a property value greater than the operand
greatereq – the index item must have a property value greater than or equal the operand
less -- the index item must have a property value less than the operand
lesseq -- the index item must have a property value less than or equal the operand
between – the index item must have a property value between the operand range values exclusively, expressed as initial-final.
within – the index item must have a property value between the operand range values inclusively, expressed as initial-final.
For string
and enum
property constraints, the comparisons are character byte comparisons. In addition, the enum
and string
property constraints allow three more operators:
contains – the index item must have a property value that contains the operand
starts – the index item must have a property value that starts with the operand
ends – the index item must have a property value that ends with the operand
For string
property constraints, the additional case
attribute controls whether the operator should be case-sensitive (true
) or case-insensitive (false
). If the operator is a range operator, then the value
is a range of values expressed as initial-final.