On 06.12.2012, at 16:43, Robert Haycock <[email protected]> wrote:
> That explains it. I thought the analyzer was also used for indexing, from my > Lucene days. The analyzer is used both for indexing the full text index *and* for parsing the terms in the jcr:contains() of the query (otherwise things like stemming or lower-casing in the analyzer wouldn't work in all cases). The "full text index" is aggregated on the node by default and all properties (incl. text extracted from binary properties) contribute to it. Individual properties however, are indexed separately as fixed strings, and this is where @prop = "foo", jcr:like() and the fn:lower/upperCase() functions come into play. You can also do jcr:contains(@property, "...."), I am not exactly sure what happens in this case (if there is also a full text index for the invidual properties). Cheers, Alex
