- From: Sihem Amer-Yahia <sihem@research.att.com>
- Date: Thu, 3 Mar 2005 11:34:11 -0500 (EST)
- To: andrew.cao@cisra.canon.com.au
- Cc: public-qt-comments@w3.org, member-query-fttf@w3.org
Dear Andrew, Thank you for your interest in the full-text draft. > > >Dear editors, > >Could someone provide further clarification of FTIgnoreOption? The >following expression: >(nodeA ftcontains "some phrase" without content nodeB) >Shall we ignore all the subtree rooted from nodeB or ignore only the >children text nodes that immediately contained by nodeB i.e. do we need >to promote the children element nodes of nodeB one level up? The expression above returns all nodeA's that (i) contain "some phrase" as a phrase (in a regular sense) or (ii) contains "... some <nodeB> ... </nodeB> phrase ..." where nodeB could contain any subtree after the word "phrase" or (iii) contains <nodeB> "some" <nodeB> ... </nodeB> "phrase" ... </nodeB> or contains <nodeC> "some" <nodeB> ... </nodeB> "phrase" ... </nodeC>. The last case is the trickiest to explain but the intuition is that if "some phrase" appears inside nodeA, even if it is in an ignored node nodeB and even if it requires to ignore some other nodeB, it should be treated as a match. So, even if the phrase appears inside an ignored nodeB, it should be considered as a match. In simpler words, "some phrase" is considered a match if it appears as is (which is the regular, traditional sense) or if it requires to ignore a nodeB no matter whether "some phrase" appears inside an ignored nodeB or not as long as the phrase is in the scope (subtree) of nodeA. So, this is done recursively and not just at the children level. >Can this detail be implementation-dependant? > No, the semantics of FTIgnoreOption should be the same across all implementations. >Also in FT specification 3.2.8, the example is: >/book[@number="1"] ftcontains "Testing" without content .//title >What does the context path "." mean? Should it be: >/book[@number="1" and . ftcontains "Testing" without content .//title] > >Or the previous example is correct and there is something special with >semantics of "... ftcontains ... without content ..."? > The two queries (ours and yours) are equivalent. Our qexample above is correct and that has to do with the semantics of ftcontains and not of FTIgnoreOption. /book[@number="1"] is an XQuery expression that returns all books that satify the predicate @number="1". Those books are then used by the subsequent ftcontains expression. >Thanks, > > Thanks, Sihem > >
Received on Thursday, 3 March 2005 16:34:12 UTC