In order to work with EQL, you need to understand the following
concepts.
Attribute: An
attribute is the basic unit of a record schema. Attributes describe records in
the Endeca Server.
Single-assign
attribute: An attribute for which a record may have only one value. For
example, because a book has only one price, the Price attribute would be
single-assign. Single-assign attributes are of the atomic data type (such as
mdex:string and
mdex:double).
Multi-assign
attribute: An attribute for which a record may have more than one value.
For example, because a book may have more than one author, the Author attribute
would be multi-assign. Multi-assign attributes are of the set data type (such
as
mdex:string-set and
mdex:double-set). They are represented in EQL by
sets (see
Sets and Multi-assign Data).
Managed
attribute: An attribute for which a hierarchy of attribute values is
attached. Managed attributes are used to support hierarchical navigation.
Standard
attribute: An attribute whose value is not included in an enumerated list
or hierarchy.
Record: The
fundamental unit of data in the Endeca Server. Records are assigned attribute
values. An assignment indicates that a record has a value for an attribute. A
record typically has assignments from multiple attributes. Records in the
corpus can include multiple assignments to the same attribute, as can records
in EQL results.
Corpus: The full body
of Endeca Server records. Endeca Server data is corpus–based rather than
table–based. By default, the source of records for an EQL statement is the
result of the containing search and navigation query. However, you can also
include the
FROM syntax in your statement to specify a different
record source, such as from the corpus, from a previously-defined statement, or
from a named state. Two names identify a corpus-based source:
AllBaseRecords:
Every record that passed the security filter.
NavStateRecords:
Every record that passed all previous filters.
The omission of the
FROM clause implies
FROMNavStateRecords. This implicit
FROM is equivalent to using a
WHERE clause that expresses the filters currently
applied.
Statement: A unit of
EQL that computes related or independent analytics results. In EQL, a statement
starts with
DEFINE or
RETURN and ends with a semi-colon if it is between
statements (the semi-colon is optional on the last statement). The statement
also includes a mandatory
SELECT clause and, optionally, some other clause(s).
Result: Query results
are a collection of statement results; statement results are a collection of
records.
Intermediate
results: Results from
RETURN statements can also be used as intermediate
results for further processing by other statements.
Returned results:
Set of matching values returned by the query or statement.
Query: A request sent
to the Endeca Server. In general, a query consists of multiple statements.