Hi Lars,
I guess it was due to the internal XQFT representation of match positions that adjacent matches are marked one by one, and it's probably difficult to change this without too much additional effort.
However, you can use XQuery for transforming your result; see e.g. the attached XQuery code. I must confess I didn't spend too much time on it (right now, it's simply too hot around here...), so I'm looking for revised versions ;)
Christian
On Thu, Jul 2, 2015 at 6:13 PM, Lars Johnsen yoonsen@gmail.com wrote:
The full text function ft:mark() puts a mark around each of the words that occur in a match, starting from the first matching word to the last, including stop words, except for punctuation characters. Is it possible to check for the kind of characters (or strings) that ft:mark() will skip when marking matches? Or, would it be possible to ask ft:mark() to put one marker for the whole match?
The case I am using it for is to get the sequence of matching words within a match, and sometimes, for long strings, there may be several sequences. A contiguous sequence of marked elements maybe assumed to make up a match, while non contiguous do not. One marker around the match solves the problem, as would detecting characters that are never marked.
Regards Lars G Johnsen National Library of Norway