Почему два последних правила перезаписи в примере из документации Oracle не работают?
Источник http://docs.oracle.com/cd/B28359_01/text.111/b28303/query.htm#i1007557
Приложения запросов иногда анализируют запросы конечных пользователей, интерпретируя строку запроса одним или несколькими способами с использованием различных комбинаций операторов. Например, если пользователь вводит запрос ореха кукуй, ваше приложение может ввести запросы {орех кукуй} и {кусок или орех}, чтобы увеличить отзыв.
Функция перезаписи запроса позволяет отправить один запрос, который расширяет исходный запрос до переписанных версий. Результаты возвращаются без дублирования.
Вы указываете свои последовательности перезаписи с помощью функции шаблона запроса. Переписанные версии запроса эффективно выполняются с помощью одного вызова CONTAINS или CATSEARCH.
Следующий шаблон определяет последовательность перезаписи запроса. Запрос {kukui nut} переписывается следующим образом:
{кукуй} {орех}
{кукуи} ; {орех}
{кукуй} И {орех}
{кукуй} АККУМ {орех}
Шаблон перезаписи запроса для этих преобразований выглядит следующим образом:
select id from docs where CONTAINS (text, '<query> <textquery lang="ENGLISH" grammar="CONTEXT"> kukui nut <progression> <seq><rewrite>transform((TOKENS, "{", "}", " "))</rewrite></seq> <seq><rewrite>transform((TOKENS, "{", "}", " ; "))</rewrite></seq> <seq><rewrite>transform((TOKENS, "{", "}", "AND"))</rewrite></seq> <seq><rewrite>transform((TOKENS, "{", "}", "ACCUM"))</rewrite></seq> </progression> </textquery> <score datatype="INTEGER" algorithm="COUNT"/> </query>')>0;