Шаблон
Шаблон (лексический шаблон) — выражение, аналогичное regular expression, но с многими дополнительными особенностями, в частности, вложенные шаблоны, контекст, словоизменение, значения (см. далее). Шаблон принадлежит некоторому классу. Понятие класса шаблона полностью аналогичен классу в объектно-ориентированной парадигме, т.е. класс имеет набор типизированных атрибутов, классы могут наследоваться.
Обработка текста
При анализе текста выделяются фрагменты, покрываемые шаблонами, и образуются лексические объекты тех классов, которым принадлежат шаблоны. Объект имеет начальную и конечную позицию в тексте. При создании лексического объекта значения его свойств могут принимать некоторые значения, которые могут зависеть от параметров покрываемого фрагмента текста и свойств вложенных шаблонов. Таким образом, результатом анализа является множество лексических объектов.
Банк шаблонов
Банк шаблонов — множество шаблонов, сохраняемых вместе, в одном файле. Банк шаблонов содержит спецификацию классов, распространяющуюся на весь банк, а также сами шаблоны, которые могут группироваться в папки, аналогично файловой системе.
Условия
В состав шаблонов могут входить слова и другие шаблоны, а также условия. Условия могут быть заданы в виде контекстных фрагментов, т.е. не входящих в данный шаблон, но обусловливающих актуализацию шаблонов. Также есть условия на значения свойств вложенных шаблонов.
Методы и значения
В состав шаблонов могут входить не только условия создания лексических объектов, но и действия, выполняемые при создании этих объектов — методы. Среди методов — занесение в свойства объекта фрагментов шаблона, называемых значениями. Этот тип методов позволяет использовать Алекс для структурирования и нормализации исходных текстов: из текстовых фрагментов выделяются части, которые содержат только необходимую информацию, с возможной заменой нормализованными значениями, и далее эти значения могут быть записаны в некоторый структурированный источник данных.