You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "David Smiley (JIRA)" <ji...@apache.org> on 2018/06/08 20:30:00 UTC

[jira] [Commented] (LUCENE-7619) Add WordDelimiterGraphFilter

    [ https://issues.apache.org/jira/browse/LUCENE-7619?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16506535#comment-16506535 ] 

David Smiley commented on LUCENE-7619:
--------------------------------------

RE TokenStreamToAutomaton and finalOffsetGapAsHole, shouldn't this be ignored when preservePositionIncrements==false?  In other words, I think finalOffsetGapAsHole should only have an effect when preservePositionIncrements.

> Add WordDelimiterGraphFilter
> ----------------------------
>
>                 Key: LUCENE-7619
>                 URL: https://issues.apache.org/jira/browse/LUCENE-7619
>             Project: Lucene - Core
>          Issue Type: Improvement
>            Reporter: Michael McCandless
>            Assignee: Michael McCandless
>            Priority: Major
>             Fix For: 6.5, 7.0
>
>         Attachments: LUCENE-7619.patch, LUCENE-7619.patch, LUCENE-7619.patch, after.png, before.png
>
>
> Currently, {{WordDelimiterFilter}} doesn't try to set the {{posLen}} attribute and so it creates graphs like this:
> !before.png!
> but with this patch (still a work in progress) it creates this graph instead:
> !after.png!
> This means (today) positional queries when using WDF at search time are buggy, but since we fixed LUCENE-7603, with this change here you should be able to use positional queries with WDGF.
> I'm also trying to produce holes properly (removes logic from the current WDF that swallows a hole when whole token is just delimiters).
> Surprisingly, it's actually quite easy to tweak WDF to create a graph (unlike e.g. {{SynonymGraphFilter}}) because it's already creating the necessary new positions, and its output graph never has side paths, except for single tokens that skip nodes because they have {{posLen > 1}}.  I.e. the only fix to make, I think, is to set {{posLen}} properly.  And it really helps that it does its own "new token buffering + sorting" already.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org