Changes

Jump to navigation Jump to search
35 bytes added ,  14:32, 16 May 2012
m
no edit summary
Since the logical flow of the text is not interrupted by the child elements, you will typically want to search across elements, so that the above paragraph would match a search for “real text”. For more examples, see [http://www.w3.org/TR/xpath-full-text-10-use-cases/#Across XQuery and XPath Full Text 1.0 Use Cases].
To enable this kind of searches, ''whitespace chopping'' must be turned off when importing XML documents by setting the option <code>[[Options#CHOP|CHOP]]</code> to <code>OFF</code> (default: <code>SET CHOP ON</code>). In the GUI, you find this option in Database → New… → Parsing → Chop Whitespaces.  A query such as <code>//p[. contains text 'real text']</code> will then match the example paragraph above.
Note that the node structure is completely ignored by the full-text tokenizer: The {{Mono|contains text}} expression applies all full-text operations to the ''string value'' of its left operand. As a consequence, the <code>ft:mark</code> and <code>ft:extract</code> functions (see [[Full-Text Module|Full-Text Functions]]) will only yield useful results if they are applied to single text nodes, as the following example demonstrates:
For more examples, see [http://www.w3.org/TR/xpath-full-text-10-use-cases/#Ignore XQuery and XPath Full Text 1.0 Use Cases].
As BaseX does not support the ignore option, it raises error [[XQuery_Errors#Full-Text_Errors|FTST0007]] when it encounters a <code>without content</code> in a full-text <code>contains</code> expression.
==Functions==
editor, reviewer
10

edits

Navigation menu