Specification of attribute conditions
Attributes, entity, tag, or query can be divided up in several ways.
- What type of values does the attribute have? Attributes can have
values of number, string, enumeration, boolean,
or date. An enumeration attribute is an attribute
that has a limited set of possible values, which are shown in a list.
When an attribute is a compound attribute, each of its subattributes also has a value type: string, enumeration, boolean, or date. The subattributes can also be either sparse or dense. Currently, all subattributes are single-valued. Compound attributes can also be sparse or dense. (Currently all compound attributes are sparse.)
- Do all objects have a value for this attribute? If the objects all have a value, it is known as a dense attribute. If the objects do not have a value, it is known as a sparse attribute. All objects have an Object name value, so Object name is a dense attribute. Only some objects have a CC attribute value, so CC is a sparse attribute.
- Can an attribute have multiple values within one object? Each object has one name, so Object name is a single-valued attribute. There might be multiple To values on an email, so To is a multivalued attribute. Compound attributes can be single-valued or multivalued. A compound attribute never exists where all of its subattribute values are missing.
These condition operators are applicable to each attribute category.
Note: For illustration purposes, some operators are shown in uppercase,
and some are shown in lowercase. The parser recognizes operators in
either uppercase or lowercase.