API Documentation

Zend/Search/Lucene/Search/Query/Fuzzy.php

Show: inherited
Table of Contents

Zend Framework

LICENSE

This source file is subject to the new BSD license that is bundled with this package in the file LICENSE.txt. It is also available through the world-wide-web at this URL: http://framework.zend.com/license/new-bsd If you did not receive a copy of the license and are unable to obtain it through the world-wide-web, please send an email to license@zend.com so we can send you a copy immediately.

Category
Zend  
Copyright
Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)  
License
New BSD License  
Package
Zend_Search_Lucene  
Subpackage
Search  
Version
$Id: Fuzzy.php 24594 2012-01-05 21:27:01Z matthew $  

\Zend_Search_Lucene_Search_Query_Fuzzy

Package: Zend\Search\Lucene\Search

Parent(s)
\Zend_Search_Lucene_Search_Query
Category
Zend  
Copyright
Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)  
License
New BSD License  

Constants

Constant  DEFAULT_MIN_SIMILARITY = 0.5

Default minimum similarity

Constant  MAX_CLAUSE_COUNT = 1024

Maximum number of matched terms.

Apache Lucene defines this limitation as boolean query maximum number of clauses: org.apache.lucene.search.BooleanQuery.getMaxClauseCount()

Properties

Propertyprivateinteger  $_defaultPrefixLength= '3'
static

Default non-fuzzy prefix length

Default value3Details
Type
integer
Propertyprivatearray  $_matches= 'null'

Matched terms.

Matched terms list. It's filled during the search (rewrite operation) and may be used for search result post-processing

Array of Zend_Search_Lucene_Index_Term objects

Default valuenullDetails
Type
array
Propertyprivate  $_maxDistances= 'array()'

Array of precalculated max distances

keys are integers representing a word size

Default valuearray()Details
Type
Propertyprivatefloat  $_minimumSimilarity= ''

A value between 0 and 1 to set the required similarity between the query term and the matching terms. For example, for a _minimumSimilarity of 0.5 a term of the same length as the query term is considered similar to the query term if the edit distance between both terms is less than length(term)*0.5

Details
Type
float
Propertyprivateinteger  $_prefixLength= ''

The length of common (non-fuzzy) prefix

Details
Type
integer
Propertyprivatearray  $_scores= 'null'

Matched terms scores

Default valuenullDetails
Type
array
Propertyprivate\Zend_Search_Lucene_Index_Term  $_term= ''

Base searching term.

Propertyprivatearray  $_termKeys= 'null'

Array of the term keys.

Used to sort terms in alphabetical order if terms have the same socres

Default valuenullDetails
Type
array

Methods

methodpublic__construct( \Zend_Search_Lucene_Index_Term $term, float $minimumSimilarity = self::DEFAULT_MIN_SIMILARITY, integer $prefixLength = null ) : void

Zend_Search_Lucene_Search_Query_Wildcard constructor.

Parameters
Name Type Description
$term \Zend_Search_Lucene_Index_Term
$minimumSimilarity float
$prefixLength integer
Throws
Exception Description
\Zend_Search_Lucene_Exception
methodpublic__toString( ) : string

Print a query

Returns
Type Description
string
methodprivate_calculateMaxDistance( integer $prefixLength, integer $termLength, integer $length ) : integer

Calculate maximum distance for specified word length

Parameters
Name Type Description
$prefixLength integer
$termLength integer
$length integer
Returns
Type Description
integer
methodprotected_highlightMatches( \Zend_Search_Lucene_Search_Highlighter_Interface $highlighter ) : void

Query specific matches highlighting

Parameters
Name Type Description
$highlighter \Zend_Search_Lucene_Search_Highlighter_Interface

Highlighter object (also contains doc for highlighting)

methodpubliccreateWeight( \Zend_Search_Lucene_Interface $reader ) : \Zend_Search_Lucene_Search_Weight

Constructs an appropriate Weight implementation for this query.

Parameters
Name Type Description
$reader \Zend_Search_Lucene_Interface
Returns
Type Description
\Zend_Search_Lucene_Search_Weight
Throws
Exception Description
\Zend_Search_Lucene_Exception
methodpublicexecute( \Zend_Search_Lucene_Interface $reader, \Zend_Search_Lucene_Index_DocsFilter|null $docsFilter = null ) : void

Execute query in context of index reader It also initializes necessary internal structures

Parameters
Name Type Description
$reader \Zend_Search_Lucene_Interface
$docsFilter \Zend_Search_Lucene_Index_DocsFilter|null
Throws
Exception Description
\Zend_Search_Lucene_Exception
methodpublicgetDefaultPrefixLength( ) : integer
static

Get default non-fuzzy prefix length

Returns
Type Description
integer
methodpublicgetQueryTerms( ) : array

Return query terms

Returns
Type Description
array
Throws
Exception Description
\Zend_Search_Lucene_Exception
methodpublicmatchedDocs( ) : array

Get document ids likely matching the query

It's an array with document ids as keys (performance considerations)

Returns
Type Description
array
Throws
Exception Description
\Zend_Search_Lucene_Exception
methodpublicoptimize( \Zend_Search_Lucene_Interface $index ) : \Zend_Search_Lucene_Search_Query

Optimize query in the context of specified index

Parameters
Name Type Description
$index \Zend_Search_Lucene_Interface
Returns
Type Description
\Zend_Search_Lucene_Search_Query
methodpublicrewrite( \Zend_Search_Lucene_Interface $index ) : \Zend_Search_Lucene_Search_Query

Re-write query into primitive queries in the context of specified index

Parameters
Name Type Description
$index \Zend_Search_Lucene_Interface
Returns
Type Description
\Zend_Search_Lucene_Search_Query
Throws
Exception Description
\Zend_Search_Lucene_Exception
methodpublicscore( integer $docId, \Zend_Search_Lucene_Interface $reader ) : float

Score specified document

Parameters
Name Type Description
$docId integer
$reader \Zend_Search_Lucene_Interface
Returns
Type Description
float
Throws
Exception Description
\Zend_Search_Lucene_Exception
methodpublicsetDefaultPrefixLength( integer $defaultPrefixLength ) : void
static

Set default non-fuzzy prefix length

Parameters
Name Type Description
$defaultPrefixLength integer
Documentation was generated by DocBlox 0.15.1.