Hi,
>I want to treat following two differently
>
>1. FulltextExpression created out of simple string term passed to a
>single jcr:contains in a query
>2. FulltextExpression by combining multiple jcr:contains
>
>For #1 it would be better to get access to raw string and pass it to
>Lucene analyzer for tokenization. For #2 it would be preferable to get
>the FullTextExpression AST such that it can be mapped to required
>Lucene query
The AST should have the same information as the raw string, so that you
should be able to easily generate the raw string form the AST.
>That can be done but then how can I distinguish from a
>FulltextExpression created out of "mountain is big" and
>_jcr:contains("title","mountain is big")_So if fulltext expression can
>provide some hint from what it was constructed from that might help
Do you mean jcr:contains(@title, 'mountain is big')? The
FullTextExpression AST for this is:
FullTextAnd(
FullTextTerm(propertyName="title", text="mountain"),
FullTextTerm(propertyName="title", text="is"),
FullTextTerm(propertyName="title", text="big")
)
and toString is:
title:"mountain" title:"is" title:"big"
Is this the correct representation?
Regards,
Thomas