## org.apache.lucene.queryparser.flexible.core.nodes
Class SlopQueryNode

    java.lang.Object
      org.apache.lucene.queryparser.flexible.core.nodes.QueryNodeImpl
          org.apache.lucene.queryparser.flexible.core.nodes.SlopQueryNode

All Implemented Interfaces:
  Cloneable, FieldableNode, QueryNode

    public class SlopQueryNode

extends QueryNodeImpl
implements FieldableNode

A `SlopQueryNode` represents phrase query with a slop. From Lucene FAQ: Is there a way to use a proximity operator (like near or within) with Lucene? There is a variable called slop that allows you to perform NEAR/WITHIN-like queries. By default, slop is set to 0 so that only exact phrases will match. When using TextParser you can use this syntax to specify the slop: "doug cutting"~2 will find documents that contain "doug cutting" as well as ones that contain "cutting doug".

Field Summary

Fields inherited from class org.apache.lucene.queryparser.flexible.core.nodes.QueryNodeImpl
`PLAINTEXT_FIELD_NAME, toQueryStringIgnoreFields`

Constructor Summary
`SlopQueryNode(QueryNode query, int value)`

Method Summary
`QueryNode` `cloneTree()` Recursive clone the QueryNode tree The tags are not copied to the new tree when you call the cloneTree() method
`QueryNode` `getChild()`
`CharSequence` `getField()` Returns the field associated to the node and every node under it.
`int` `getValue()`
`void` `setField(CharSequence fieldName)` Associates the node to a field.
`CharSequence` `toQueryString(EscapeQuerySyntax escapeSyntaxParser)` convert to a query string understood by the query parser
`String` `toString()` Every implementation of this class should return pseudo xml like this: For FieldQueryNode: <field start='1' end='2' field='subject' text='foo'/>

Methods inherited from class org.apache.lucene.queryparser.flexible.core.nodes.QueryNodeImpl
`add, add, allocate, clone, containsTag, getChildren, getParent, getTag, getTagMap, isDefaultField, isLeaf, isRoot, set, setLeaf, setTag, unsetTag`

Methods inherited from class java.lang.Object
`equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Methods inherited from interface org.apache.lucene.queryparser.flexible.core.nodes.QueryNode
`add, add, containsTag, getChildren, getParent, getTag, getTagMap, isLeaf, set, setTag, unsetTag`

Constructor Detail

### SlopQueryNode

    public SlopQueryNode(QueryNode query,
                         int value)

Parameters:
  `query` - - QueryNode Tree with the phrase
  `value` - - slop value

Method Detail

### getChild

    public QueryNode getChild()

### getValue

    public int getValue()

### toString

    public String toString()

  Description copied from class: `QueryNodeImpl`
  Every implementation of this class should return pseudo xml like this: For FieldQueryNode: <field start='1' end='2' field='subject' text='foo'/>

  Specified by:
    `toString` in interface `QueryNode`
  Overrides:
    `toString` in class `QueryNodeImpl`
  See Also:
    `QueryNode.toString()`

### toQueryString

    public CharSequence toQueryString(EscapeQuerySyntax escapeSyntaxParser)

  Description copied from interface: `QueryNode`
  convert to a query string understood by the query parser

  Specified by:
    `toQueryString` in interface `QueryNode`

### cloneTree

    public QueryNode cloneTree()
                        throws CloneNotSupportedException

  Description copied from interface: `QueryNode`
  Recursive clone the QueryNode tree The tags are not copied to the new tree when you call the cloneTree() method

  Specified by:
    `cloneTree` in interface `QueryNode`
  Overrides:
    `cloneTree` in class `QueryNodeImpl`
  Returns:
    the cloned tree
  Throws:
    `CloneNotSupportedException`

### getField

    public CharSequence getField()

  Description copied from interface: `FieldableNode`
  Returns the field associated to the node and every node under it.

  Specified by:
    `getField` in interface `FieldableNode`
  Returns:
    the field name

### setField

    public void setField(CharSequence fieldName)

  Description copied from interface: `FieldableNode`
  Associates the node to a field.

  Specified by:
    `setField` in interface `FieldableNode`
  Parameters:
    `fieldName` - the field name

Copyright © 2000-2013 Apache Software Foundation. All Rights Reserved.