lucene-java-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From mikemcc...@apache.org
Subject svn commit: r787424 [6/11] - in /lucene/java/trunk: ./ contrib/ contrib/analyzers/ contrib/analyzers/src/java/org/apache/lucene/analysis/br/ contrib/analyzers/src/java/org/apache/lucene/analysis/cjk/ contrib/analyzers/src/java/org/apache/lucene/analysi...
Date Mon, 22 Jun 2009 22:19:02 GMT
Modified: lucene/java/trunk/contrib/xml-query-parser/docs/LuceneCoreQuery.dtd.html
URL: http://svn.apache.org/viewvc/lucene/java/trunk/contrib/xml-query-parser/docs/LuceneCoreQuery.dtd.html?rev=787424&r1=787423&r2=787424&view=diff
==============================================================================
--- lucene/java/trunk/contrib/xml-query-parser/docs/LuceneCoreQuery.dtd.html (original)
+++ lucene/java/trunk/contrib/xml-query-parser/docs/LuceneCoreQuery.dtd.html Mon Jun 22 22:18:56 2009
@@ -1,719 +1,719 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html><head>
-<meta http-equiv='CONTENT-TYPE' content='text/html; charset=UTF-8' />
-<link rel='StyleSheet' href='DTDDocStyle.css' type='text/css' media='screen' />
-<title>Core Lucene</title>
-</head><body>
-<p class='DTDSource'><b><code>LuceneCoreQuery.dtd</code></b>: <a href='LuceneCoreQuery.dtd.html'>Elements</a> - <a href='LuceneCoreQuery.dtd.entities.html'>Entities</a> - <a href='LuceneCoreQuery.dtd.org.html'>Source</a> | <a href='intro.html'>Intro</a> - <a href='elementsIndex.html'>Index</a><br /><a href='index.html' target='_top'>FRAMES</a>&nbsp;/&nbsp;<a href='LuceneCoreQuery.dtd.html' target='_top'>NO FRAMES</a></p><h1>Core Lucene</h1>
-<p><h3>Background</h3>
-This DTD describes the XML syntax used to perform advanced searches using the core Lucene search engine. The motivation behind the XML query syntax is:
-<ol>
-<li>To open up Lucene functionality to clients other than Java</li>
-<li>To offer a form of expressing queries that can easily be
-<ul>
-<li>Persisted for logging/auditing purposes</li>
-<li>Changed by editing text query templates (XSLT) without requiring a recompile/redeploy of applications</li>
-<li>Serialized across networks (without requiring Java bytecode for Query logic deployed on clients)</li>
-</ul>
-</li>
-<li>To provide a shorthand way of expressing query logic which echos the logical tree structure of query objects more closely than reading procedural Java query construction code</li>
-<li>To bridge the growing gap between Lucene query/filtering functionality and the set of functionality accessible throught the standard Lucene QueryParser syntax</li>
-<li>To provide a simply extensible syntax that does not require complex parser skills such as knowledge of JavaCC syntax</li>
-</ol></p><p><h3>Syntax overview</h3>
-Search syntax consists of two types of elements:
-<ul>
-<li><i>Queries</i></li>
-<li><i>Filters</i></li>
-</ul></p><p><h4>Queries</h4>
-The root of any XML search must be a <i>Query</i> type element used to select content.
-Queries typically score matches on documents using a number of different factors in order to provide relevant results first.
-One common example of a query tag is the <a href="#UserQuery">UserQuery</a> element which uses the standard
-Lucene QueryParser to parse Google-style search syntax provided by end users.</p><p><h4>Filters</h4>
-Unlike Queries, <i>Filters</i> are not used to select or score content - they are simply used to filter <i>Query</i> output (see <a href="#FilteredQuery">FilteredQuery</a> for an example use of query filtering).
-Because Filters simply offer a yes/no decision for each document in the index their output can be efficiently cached in memory as a <a href="http://java.sun.com/j2se/1.4.2/docs/api/java/util/BitSet.html">Bitset</a> for
-subsequent reuse (see <a href="#CachedFilter">CachedFilter</a> tag).</p><p><h4>Nesting elements</h4>
-Many of the the elements can nest other elements to produce queries/filters of an arbitrary depth and complexity.
-The <a href="#BooleanQuery">BooleanQuery</a> element is one such example which provides a means for combining other queries (including other BooleanQueries) using Boolean
-logic to determine mandatory or optional elements.</p><p><h3>Advanced topics</h3>
-<h4>Advanced positional testing - span queries</h4>
-The <i>SpanQuery</i> class of queries allow for complex positional tests which not only look for certain combinations of words but in particular
-positions in relation to each other and the documents containing them.</p><p>CoreParser.java is the Java class that encapsulates this parser behaviour.</p><br />
-<a name='BooleanQuery'></a>
-<br /><table class='elementTitle' summary="BooleanQuery"><tr><td class='leftElementTitle'>
-&lt;BooleanQuery&gt;</td><td class='rightElementTitle'>
-Child of <a href='#Clause'>Clause</a>, <a href='#CachedFilter'>CachedFilter</a>, <a href='#Query'>Query</a>
-</td></tr></table>
-<p>BooleanQuerys implement Boolean logic which controls how multiple Clauses should be interpreted.
-Some clauses may represent optional Query criteria while others represent mandatory criteria.</p><p><span class='inTextTitle'>Example:</span> <em>Find articles about banks, preferably talking about mergers but nothing to do with "sumitomo"</em>
-</p><pre>	          
-            &lt;BooleanQuery fieldName="contents"&gt;
-	             &lt;Clause occurs="should"&gt;
-		              &lt;TermQuery&gt;merger&lt;/TermQuery&gt;
-	             &lt;/Clause&gt;
-	             &lt;Clause occurs="mustnot"&gt;
-		              &lt;TermQuery&gt;sumitomo&lt;/TermQuery&gt;
-	             &lt;/Clause&gt;
-	             &lt;Clause occurs="must"&gt;
-		              &lt;TermQuery&gt;bank&lt;/TermQuery&gt;
-	             &lt;/Clause&gt;
-            &lt;/BooleanQuery&gt;
-
-	         </pre><p></p><blockquote><table summary='element info'><tr>
-<td class='construct'><table summary="&lt;BooleanQuery&gt;'s children">
-<thead>
-<tr><th class='title' colspan='2'>&lt;BooleanQuery&gt;'s children</th></tr>
-<tr><th colspan='2' height='1' class='ruler'></th></tr>
-<tr><th class='subtitle'>Name</th><th class='subtitle'>Cardinality</th></tr>
-<tr><th colspan='2' height='1' class='ruler'></th></tr>
-</thead>
-<tbody><tr><td><a href='#Clause'>Clause</a></td><td>At least one</td></tr>
-</tbody></table></td><td class='construct'><table  summary="&lt;BooleanQuery&gt;'s attributes"><tr>
-<th class='title' colspan='3'>&lt;BooleanQuery&gt;'s attributes</th>
-</tr>
-<tr><th colspan='3' height='1' class='ruler'></th></tr>
-<tr>
-<th class='subtitle'>Name</th><th class='subtitle'>Values</th><th class='subtitle'>Default</th></tr>
-<tr><th colspan='3' height='1' class='ruler'></th></tr>
-<tr><td><a href='#BooleanQuery_boost'>boost</a></td><td></td><td>1.0</td></tr><tr><td><a href='#BooleanQuery_disableCoord'>disableCoord</a></td><td>true, false</td><td>false</td></tr><tr><td><a href='#BooleanQuery_fieldName'>fieldName</a></td><td></td><td></td></tr><tr><td><a href='#BooleanQuery_minimumNumberShouldMatch'>minimumNumberShouldMatch</a></td><td></td><td>0</td></tr></table></td></tr></table></blockquote>
-<span class='inTextTitle'>Element's model:</span><p class='model'>(<a href='#Clause'>Clause</a>)+</p><a name='BooleanQuery_boost'></a>
-<br /><table class='attributeTitle' summary="boost"><tr><td class='leftAttributeTitle'>
-@boost</td><td class='rightAttributeTitle'>
-Attribute of <a href='#BooleanQuery'>BooleanQuery</a>
-</td></tr></table>
-<p>Optional boost for matches on this query. Values > 1</p><p><span class='inTextTitle'>Default value</span>: 1.0</p><a name='BooleanQuery_fieldName'></a>
-<br /><table class='attributeTitle' summary="fieldName"><tr><td class='leftAttributeTitle'>
-@fieldName</td><td class='rightAttributeTitle'>
-Attribute of <a href='#BooleanQuery'>BooleanQuery</a>
-</td></tr></table>
-<p>fieldName can optionally be defined here as a default attribute used by all child elements</p><a name='BooleanQuery_disableCoord'></a>
-<br /><table class='attributeTitle' summary="disableCoord"><tr><td class='leftAttributeTitle'>
-@disableCoord</td><td class='rightAttributeTitle'>
-Attribute of <a href='#BooleanQuery'>BooleanQuery</a>
-</td></tr></table>
-<p>The "Coordination factor" rewards documents that contain more of the optional clauses in this list. This flag can be used to turn off this factor.</p><p><span class='inTextTitle'>Possible values</span>: true, false - <span class='inTextTitle'>Default value</span>: false</p><a name='BooleanQuery_minimumNumberShouldMatch'></a>
-<br /><table class='attributeTitle' summary="minimumNumberShouldMatch"><tr><td class='leftAttributeTitle'>
-@minimumNumberShouldMatch</td><td class='rightAttributeTitle'>
-Attribute of <a href='#BooleanQuery'>BooleanQuery</a>
-</td></tr></table>
-<p>The minimum number of optional clauses that should be present in any one document before it is considered to be a match.</p><p><span class='inTextTitle'>Default value</span>: 0</p><a name='Clause'></a>
-<br /><table class='elementTitle' summary="Clause"><tr><td class='leftElementTitle'>
-&lt;Clause&gt;</td><td class='rightElementTitle'>
-Child of <a href='#BooleanQuery'>BooleanQuery</a>
-</td></tr></table>
-<p>NOTE: "Clause" tag has 2 modes of use - inside &lt;BooleanQuery> in which case only "query" types can be
-child elements - while in a &lt;BooleanFilter> clause only "filter" types can be contained.</p><blockquote><table summary='element info'><tr>
-<td class='construct'><table summary="&lt;Clause&gt;'s children">
-<thead>
-<tr><th class='title' colspan='2'>&lt;Clause&gt;'s children</th></tr>
-<tr><th colspan='2' height='1' class='ruler'></th></tr>
-<tr><th class='subtitle'>Name</th><th class='subtitle'>Cardinality</th></tr>
-<tr><th colspan='2' height='1' class='ruler'></th></tr>
-</thead>
-<tbody><tr><td><a href='#BooleanQuery'>BooleanQuery</a></td><td>One or none</td></tr>
-<tr><td><a href='#CachedFilter'>CachedFilter</a></td><td>One or none</td></tr>
-<tr><td><a href='#ConstantScoreQuery'>ConstantScoreQuery</a></td><td>One or none</td></tr>
-<tr><td><a href='#FilteredQuery'>FilteredQuery</a></td><td>One or none</td></tr>
-<tr><td><a href='#MatchAllDocsQuery'>MatchAllDocsQuery</a></td><td>One or none</td></tr>
-<tr><td><a href='#RangeFilter'>RangeFilter</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanFirst'>SpanFirst</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanNear'>SpanNear</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanNot'>SpanNot</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanOr'>SpanOr</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanOrTerms'>SpanOrTerms</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanTerm'>SpanTerm</a></td><td>One or none</td></tr>
-<tr><td><a href='#TermQuery'>TermQuery</a></td><td>One or none</td></tr>
-<tr><td><a href='#TermsQuery'>TermsQuery</a></td><td>One or none</td></tr>
-<tr><td><a href='#UserQuery'>UserQuery</a></td><td>One or none</td></tr>
-</tbody></table></td><td class='construct'><table  summary="&lt;Clause&gt;'s attributes"><tr>
-<th class='title' colspan='3'>&lt;Clause&gt;'s attributes</th>
-</tr>
-<tr><th colspan='3' height='1' class='ruler'></th></tr>
-<tr>
-<th class='subtitle'>Name</th><th class='subtitle'>Values</th><th class='subtitle'>Default</th></tr>
-<tr><th colspan='3' height='1' class='ruler'></th></tr>
-<tr><td><a href='#Clause_occurs'>occurs</a></td><td>should, must, mustnot</td><td>should</td></tr></table></td></tr></table></blockquote>
-<span class='inTextTitle'>Element's model:</span><p class='model'>(<a href='#BooleanQuery'>BooleanQuery</a> | <a href='#UserQuery'>UserQuery</a> | <a href='#FilteredQuery'>FilteredQuery</a> | <a href='#TermQuery'>TermQuery</a> | <a href='#TermsQuery'>TermsQuery</a> | <a href='#MatchAllDocsQuery'>MatchAllDocsQuery</a> | <a href='#ConstantScoreQuery'>ConstantScoreQuery</a> | <a href='#SpanOr'>SpanOr</a> | <a href='#SpanNear'>SpanNear</a> | <a href='#SpanOrTerms'>SpanOrTerms</a> | <a href='#SpanFirst'>SpanFirst</a> | <a href='#SpanNot'>SpanNot</a> | <a href='#SpanTerm'>SpanTerm</a> | <a href='#RangeFilter'>RangeFilter</a> | <a href='#CachedFilter'>CachedFilter</a>)</p><a name='Clause_occurs'></a>
-<br /><table class='attributeTitle' summary="occurs"><tr><td class='leftAttributeTitle'>
-@occurs</td><td class='rightAttributeTitle'>
-Attribute of <a href='#Clause'>Clause</a>
-</td></tr></table>
-<p>Controls if the clause is optional (should), mandatory (must) or unacceptable (mustNot)</p><p><span class='inTextTitle'>Possible values</span>: should, must, mustnot - <span class='inTextTitle'>Default value</span>: should</p><a name='CachedFilter'></a>
-<br /><table class='elementTitle' summary="CachedFilter"><tr><td class='leftElementTitle'>
-&lt;CachedFilter&gt;</td><td class='rightElementTitle'>
-Child of <a href='#ConstantScoreQuery'>ConstantScoreQuery</a>, <a href='#Clause'>Clause</a>, <a href='#Filter'>Filter</a>
-</td></tr></table>
-<p>Caches any nested query or filter in an LRU (Least recently used) Cache. Cached queries, like filters, are turned into
-Bitsets at a cost of 1 bit per document in the index. The memory cost of a cached query/filter is therefore numberOfDocsinIndex/8 bytes.
-Queries that are cached as filters obviously retain none of the scoring information associated with results - they retain just
-a Boolean yes/no record of which documents matched.</p><p><span class='inTextTitle'>Example:</span> <em>Search for documents about banks from the last 10 years - caching the commonly-used "last 10 year" filter as a BitSet in
-RAM to eliminate the cost of building this filter from disk for every query</em>
-</p><pre>	          
-            &lt;FilteredQuery&gt;
-               &lt;Query&gt;
-                  &lt;UserQuery&gt;bank&lt;/UserQuery&gt;
-               &lt;/Query&gt;	
-               &lt;Filter&gt;
-                  &lt;CachedFilter&gt;
-                     &lt;RangeFilter fieldName="date" lowerTerm="19970101" upperTerm="20070101"/&gt;
-                  &lt;/CachedFilter&gt;
-               &lt;/Filter&gt;	
-            &lt;/FilteredQuery&gt;
-	         </pre><p></p><blockquote><table summary='element info'><tr>
-<td class='construct'><table summary="&lt;CachedFilter&gt;'s children">
-<thead>
-<tr><th class='title' colspan='2'>&lt;CachedFilter&gt;'s children</th></tr>
-<tr><th colspan='2' height='1' class='ruler'></th></tr>
-<tr><th class='subtitle'>Name</th><th class='subtitle'>Cardinality</th></tr>
-<tr><th colspan='2' height='1' class='ruler'></th></tr>
-</thead>
-<tbody><tr><td><a href='#BooleanQuery'>BooleanQuery</a></td><td>One or none</td></tr>
-<tr><td><a href='#CachedFilter'>CachedFilter</a></td><td>One or none</td></tr>
-<tr><td><a href='#ConstantScoreQuery'>ConstantScoreQuery</a></td><td>One or none</td></tr>
-<tr><td><a href='#FilteredQuery'>FilteredQuery</a></td><td>One or none</td></tr>
-<tr><td><a href='#MatchAllDocsQuery'>MatchAllDocsQuery</a></td><td>One or none</td></tr>
-<tr><td><a href='#RangeFilter'>RangeFilter</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanFirst'>SpanFirst</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanNear'>SpanNear</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanNot'>SpanNot</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanOr'>SpanOr</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanOrTerms'>SpanOrTerms</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanTerm'>SpanTerm</a></td><td>One or none</td></tr>
-<tr><td><a href='#TermQuery'>TermQuery</a></td><td>One or none</td></tr>
-<tr><td><a href='#TermsQuery'>TermsQuery</a></td><td>One or none</td></tr>
-<tr><td><a href='#UserQuery'>UserQuery</a></td><td>One or none</td></tr>
-</tbody></table></td></tr></table></blockquote>
-<span class='inTextTitle'>Element's model:</span><p class='model'>(<a href='#BooleanQuery'>BooleanQuery</a> | <a href='#UserQuery'>UserQuery</a> | <a href='#FilteredQuery'>FilteredQuery</a> | <a href='#TermQuery'>TermQuery</a> | <a href='#TermsQuery'>TermsQuery</a> | <a href='#MatchAllDocsQuery'>MatchAllDocsQuery</a> | <a href='#ConstantScoreQuery'>ConstantScoreQuery</a> | <a href='#SpanOr'>SpanOr</a> | <a href='#SpanNear'>SpanNear</a> | <a href='#SpanOrTerms'>SpanOrTerms</a> | <a href='#SpanFirst'>SpanFirst</a> | <a href='#SpanNot'>SpanNot</a> | <a href='#SpanTerm'>SpanTerm</a> | <a href='#RangeFilter'>RangeFilter</a> | <a href='#CachedFilter'>CachedFilter</a>)</p><a name='UserQuery'></a>
-<br /><table class='elementTitle' summary="UserQuery"><tr><td class='leftElementTitle'>
-&lt;UserQuery&gt;</td><td class='rightElementTitle'>
-Child of <a href='#Clause'>Clause</a>, <a href='#CachedFilter'>CachedFilter</a>, <a href='#Query'>Query</a>
-</td></tr></table>
-<p>Passes content directly through to the standard LuceneQuery parser see "Lucene Query Syntax"</p><p><span class='inTextTitle'>Example:</span> <em>Search for documents about John Smith or John Doe using standard LuceneQuerySyntax</em>
-</p><pre>	          
-               &lt;UserQuery&gt;"John Smith" OR "John Doe"&lt;/UserQuery&gt;
-	         </pre><p></p><blockquote><table summary='element info'><tr>
-<td class='construct'><table  summary="&lt;UserQuery&gt;'s attributes"><tr>
-<th class='title' colspan='3'>&lt;UserQuery&gt;'s attributes</th>
-</tr>
-<tr><th colspan='3' height='1' class='ruler'></th></tr>
-<tr>
-<th class='subtitle'>Name</th><th class='subtitle'>Values</th><th class='subtitle'>Default</th></tr>
-<tr><th colspan='3' height='1' class='ruler'></th></tr>
-<tr><td><a href='#UserQuery_boost'>boost</a></td><td></td><td>1.0</td></tr><tr><td><a href='#UserQuery_fieldName'>fieldName</a></td><td></td><td></td></tr></table></td></tr></table></blockquote>
-<a name='UserQuery_boost'></a>
-<br /><table class='attributeTitle' summary="boost"><tr><td class='leftAttributeTitle'>
-@boost</td><td class='rightAttributeTitle'>
-Attribute of <a href='#UserQuery'>UserQuery</a>
-</td></tr></table>
-<p>Optional boost for matches on this query. Values > 1</p><p><span class='inTextTitle'>Default value</span>: 1.0</p><a name='UserQuery_fieldName'></a>
-<br /><table class='attributeTitle' summary="fieldName"><tr><td class='leftAttributeTitle'>
-@fieldName</td><td class='rightAttributeTitle'>
-Attribute of <a href='#UserQuery'>UserQuery</a>
-</td></tr></table>
-<p>fieldName can optionally be defined here to change the default field used in the QueryParser</p><a name='MatchAllDocsQuery'></a>
-<br /><table class='elementTitle' summary="MatchAllDocsQuery"><tr><td class='leftElementTitle'>
-&lt;MatchAllDocsQuery/&gt;</td><td class='rightElementTitle'>
-Child of <a href='#Clause'>Clause</a>, <a href='#CachedFilter'>CachedFilter</a>, <a href='#Query'>Query</a>
-</td></tr></table>
-<p>A query which is used to match all documents. This has a couple of uses:
-<ol>
-<li> as a Clause in a BooleanQuery who's only other clause
-is a "mustNot" match (Lucene requires at least one positive clause) and..</li>
-<li> in a FilteredQuery where a Filter tag is effectively being
-used to select content rather than it's usual role of filtering the results of a query.</li>
-</ol></p><p><span class='inTextTitle'>Example:</span> <em>Effectively use a Filter as a query </em>
-</p><pre>	          
-               &lt;FilteredQuery&gt;
-                 &lt;Query&gt;
-                    &lt;MatchAllDocsQuery/&gt;
-                 &lt;/Query&gt;
-                 &lt;Filter&gt;
-                     &lt;RangeFilter fieldName="date" lowerTerm="19870409" upperTerm="19870412"/&gt;
-                 &lt;/Filter&gt;	
-               &lt;/FilteredQuery&gt;	         
-	       </pre><p></p><p class='emptyTagNote'>This element is always empty.</p><a name='TermQuery'></a>
-<br /><table class='elementTitle' summary="TermQuery"><tr><td class='leftElementTitle'>
-&lt;TermQuery&gt;</td><td class='rightElementTitle'>
-Child of <a href='#Clause'>Clause</a>, <a href='#CachedFilter'>CachedFilter</a>, <a href='#Query'>Query</a>
-</td></tr></table>
-<p>a single term query - no analysis is done of the child text</p><p><span class='inTextTitle'>Example:</span> <em>Match on a primary key</em>
-</p><pre>	          
-               &lt;TermQuery fieldName="primaryKey"&gt;13424&lt;/TermQuery&gt;
-	       </pre><p></p><blockquote><table summary='element info'><tr>
-<td class='construct'><table  summary="&lt;TermQuery&gt;'s attributes"><tr>
-<th class='title' colspan='3'>&lt;TermQuery&gt;'s attributes</th>
-</tr>
-<tr><th colspan='3' height='1' class='ruler'></th></tr>
-<tr>
-<th class='subtitle'>Name</th><th class='subtitle'>Values</th><th class='subtitle'>Default</th></tr>
-<tr><th colspan='3' height='1' class='ruler'></th></tr>
-<tr><td><a href='#TermQuery_boost'>boost</a></td><td></td><td>1.0</td></tr><tr><td><a href='#TermQuery_fieldName'>fieldName</a></td><td></td><td></td></tr></table></td></tr></table></blockquote>
-<a name='TermQuery_boost'></a>
-<br /><table class='attributeTitle' summary="boost"><tr><td class='leftAttributeTitle'>
-@boost</td><td class='rightAttributeTitle'>
-Attribute of <a href='#TermQuery'>TermQuery</a>
-</td></tr></table>
-<p>Optional boost for matches on this query. Values > 1</p><p><span class='inTextTitle'>Default value</span>: 1.0</p><a name='TermQuery_fieldName'></a>
-<br /><table class='attributeTitle' summary="fieldName"><tr><td class='leftAttributeTitle'>
-@fieldName</td><td class='rightAttributeTitle'>
-Attribute of <a href='#TermQuery'>TermQuery</a>
-</td></tr></table>
-<p>fieldName must be defined here or is taken from the most immediate parent XML element that defines a "fieldName" attribute</p><a name='TermsQuery'></a>
-<br /><table class='elementTitle' summary="TermsQuery"><tr><td class='leftElementTitle'>
-&lt;TermsQuery&gt;</td><td class='rightElementTitle'>
-Child of <a href='#Clause'>Clause</a>, <a href='#CachedFilter'>CachedFilter</a>, <a href='#Query'>Query</a>
-</td></tr></table>
-<p>The equivalent of a BooleanQuery with multiple optional TermQuery clauses.
-Child text is analyzed using a field-specific choice of Analyzer to produce a set of terms that are ORed together in Boolean logic.
-Unlike UserQuery element, this does not parse any special characters to control fuzzy/phrase/boolean logic and as such is incapable
-of producing a Query parse error given any user input</p><p><span class='inTextTitle'>Example:</span> <em>Match on text from a database description (which may contain characters that
-are illegal characters in the standard Lucene Query syntax used in the UserQuery tag</em>
-</p><pre>	          
-               &lt;TermsQuery fieldName="description"&gt;Smith & Sons (Ltd) : incorporated 1982&lt;/TermsQuery&gt;
-	       </pre><p></p><blockquote><table summary='element info'><tr>
-<td class='construct'><table  summary="&lt;TermsQuery&gt;'s attributes"><tr>
-<th class='title' colspan='3'>&lt;TermsQuery&gt;'s attributes</th>
-</tr>
-<tr><th colspan='3' height='1' class='ruler'></th></tr>
-<tr>
-<th class='subtitle'>Name</th><th class='subtitle'>Values</th><th class='subtitle'>Default</th></tr>
-<tr><th colspan='3' height='1' class='ruler'></th></tr>
-<tr><td><a href='#TermsQuery_boost'>boost</a></td><td></td><td>1.0</td></tr><tr><td><a href='#TermsQuery_disableCoord'>disableCoord</a></td><td>true, false</td><td>false</td></tr><tr><td><a href='#TermsQuery_fieldName'>fieldName</a></td><td></td><td></td></tr><tr><td><a href='#TermsQuery_minimumNumberShouldMatch'>minimumNumberShouldMatch</a></td><td></td><td>0</td></tr></table></td></tr></table></blockquote>
-<a name='TermsQuery_boost'></a>
-<br /><table class='attributeTitle' summary="boost"><tr><td class='leftAttributeTitle'>
-@boost</td><td class='rightAttributeTitle'>
-Attribute of <a href='#TermsQuery'>TermsQuery</a>
-</td></tr></table>
-<p>Optional boost for matches on this query. Values > 1</p><p><span class='inTextTitle'>Default value</span>: 1.0</p><a name='TermsQuery_fieldName'></a>
-<br /><table class='attributeTitle' summary="fieldName"><tr><td class='leftAttributeTitle'>
-@fieldName</td><td class='rightAttributeTitle'>
-Attribute of <a href='#TermsQuery'>TermsQuery</a>
-</td></tr></table>
-<p>fieldName must be defined here or is taken from the most immediate parent XML element that defines a "fieldName" attribute</p><a name='TermsQuery_disableCoord'></a>
-<br /><table class='attributeTitle' summary="disableCoord"><tr><td class='leftAttributeTitle'>
-@disableCoord</td><td class='rightAttributeTitle'>
-Attribute of <a href='#TermsQuery'>TermsQuery</a>
-</td></tr></table>
-<p>The "Coordination factor" rewards documents that contain more of the terms in this list. This flag can be used to turn off this factor.</p><p><span class='inTextTitle'>Possible values</span>: true, false - <span class='inTextTitle'>Default value</span>: false</p><a name='TermsQuery_minimumNumberShouldMatch'></a>
-<br /><table class='attributeTitle' summary="minimumNumberShouldMatch"><tr><td class='leftAttributeTitle'>
-@minimumNumberShouldMatch</td><td class='rightAttributeTitle'>
-Attribute of <a href='#TermsQuery'>TermsQuery</a>
-</td></tr></table>
-<p>The minimum number of terms that should be present in any one document before it is considered to be a match.</p><p><span class='inTextTitle'>Default value</span>: 0</p><a name='FilteredQuery'></a>
-<br /><table class='elementTitle' summary="FilteredQuery"><tr><td class='leftElementTitle'>
-&lt;FilteredQuery&gt;</td><td class='rightElementTitle'>
-Child of <a href='#Clause'>Clause</a>, <a href='#CachedFilter'>CachedFilter</a>, <a href='#Query'>Query</a>
-</td></tr></table>
-<p>Runs a Query and filters results to only those query matches that also match the Filter element.</p><p><span class='inTextTitle'>Example:</span> <em>Find all documents about Lucene that have a status of "published"</em>
-</p><pre>	          
-               &lt;FilteredQuery&gt;
-                 &lt;Query&gt;
-                    &lt;UserQuery&gt;Lucene&lt;/UserQuery&gt;
-                 &lt;/Query&gt;
-                 &lt;Filter&gt;
-                     &lt;TermsFilter fieldName="status"&gt;published&lt;/TermsFilter&gt;
-                 &lt;/Filter&gt;	
-               &lt;/FilteredQuery&gt;	         
-	       </pre><p></p><blockquote><table summary='element info'><tr>
-<td class='construct'><table summary="&lt;FilteredQuery&gt;'s children">
-<thead>
-<tr><th class='title' colspan='2'>&lt;FilteredQuery&gt;'s children</th></tr>
-<tr><th colspan='2' height='1' class='ruler'></th></tr>
-<tr><th class='subtitle'>Name</th><th class='subtitle'>Cardinality</th></tr>
-<tr><th colspan='2' height='1' class='ruler'></th></tr>
-</thead>
-<tbody><tr><td><a href='#Filter'>Filter</a></td><td>Only one</td></tr>
-<tr><td><a href='#Query'>Query</a></td><td>Only one</td></tr>
-</tbody></table></td><td class='construct'><table  summary="&lt;FilteredQuery&gt;'s attributes"><tr>
-<th class='title' colspan='3'>&lt;FilteredQuery&gt;'s attributes</th>
-</tr>
-<tr><th colspan='3' height='1' class='ruler'></th></tr>
-<tr>
-<th class='subtitle'>Name</th><th class='subtitle'>Values</th><th class='subtitle'>Default</th></tr>
-<tr><th colspan='3' height='1' class='ruler'></th></tr>
-<tr><td><a href='#FilteredQuery_boost'>boost</a></td><td></td><td>1.0</td></tr></table></td></tr></table></blockquote>
-<span class='inTextTitle'>Element's model:</span><p class='model'>(<a href='#Query'>Query</a>, <a href='#Filter'>Filter</a>)</p><a name='FilteredQuery_boost'></a>
-<br /><table class='attributeTitle' summary="boost"><tr><td class='leftAttributeTitle'>
-@boost</td><td class='rightAttributeTitle'>
-Attribute of <a href='#FilteredQuery'>FilteredQuery</a>
-</td></tr></table>
-<p>Optional boost for matches on this query. Values > 1</p><p><span class='inTextTitle'>Default value</span>: 1.0</p><a name='Query'></a>
-<br /><table class='elementTitle' summary="Query"><tr><td class='leftElementTitle'>
-&lt;Query&gt;</td><td class='rightElementTitle'>
-Child of <a href='#FilteredQuery'>FilteredQuery</a>
-</td></tr></table>
-<p>Used to identify a nested Query element inside another container element. NOT a top-level query tag</p><blockquote><table summary='element info'><tr>
-<td class='construct'><table summary="&lt;Query&gt;'s children">
-<thead>
-<tr><th class='title' colspan='2'>&lt;Query&gt;'s children</th></tr>
-<tr><th colspan='2' height='1' class='ruler'></th></tr>
-<tr><th class='subtitle'>Name</th><th class='subtitle'>Cardinality</th></tr>
-<tr><th colspan='2' height='1' class='ruler'></th></tr>
-</thead>
-<tbody><tr><td><a href='#BooleanQuery'>BooleanQuery</a></td><td>One or none</td></tr>
-<tr><td><a href='#ConstantScoreQuery'>ConstantScoreQuery</a></td><td>One or none</td></tr>
-<tr><td><a href='#FilteredQuery'>FilteredQuery</a></td><td>One or none</td></tr>
-<tr><td><a href='#MatchAllDocsQuery'>MatchAllDocsQuery</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanFirst'>SpanFirst</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanNear'>SpanNear</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanNot'>SpanNot</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanOr'>SpanOr</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanOrTerms'>SpanOrTerms</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanTerm'>SpanTerm</a></td><td>One or none</td></tr>
-<tr><td><a href='#TermQuery'>TermQuery</a></td><td>One or none</td></tr>
-<tr><td><a href='#TermsQuery'>TermsQuery</a></td><td>One or none</td></tr>
-<tr><td><a href='#UserQuery'>UserQuery</a></td><td>One or none</td></tr>
-</tbody></table></td></tr></table></blockquote>
-<span class='inTextTitle'>Element's model:</span><p class='model'>(<a href='#BooleanQuery'>BooleanQuery</a> | <a href='#UserQuery'>UserQuery</a> | <a href='#FilteredQuery'>FilteredQuery</a> | <a href='#TermQuery'>TermQuery</a> | <a href='#TermsQuery'>TermsQuery</a> | <a href='#MatchAllDocsQuery'>MatchAllDocsQuery</a> | <a href='#ConstantScoreQuery'>ConstantScoreQuery</a> | <a href='#SpanOr'>SpanOr</a> | <a href='#SpanNear'>SpanNear</a> | <a href='#SpanOrTerms'>SpanOrTerms</a> | <a href='#SpanFirst'>SpanFirst</a> | <a href='#SpanNot'>SpanNot</a> | <a href='#SpanTerm'>SpanTerm</a>)</p><a name='Filter'></a>
-<br /><table class='elementTitle' summary="Filter"><tr><td class='leftElementTitle'>
-&lt;Filter&gt;</td><td class='rightElementTitle'>
-Child of <a href='#FilteredQuery'>FilteredQuery</a>
-</td></tr></table>
-<p>The choice of Filter that MUST also be matched</p><blockquote><table summary='element info'><tr>
-<td class='construct'><table summary="&lt;Filter&gt;'s children">
-<thead>
-<tr><th class='title' colspan='2'>&lt;Filter&gt;'s children</th></tr>
-<tr><th colspan='2' height='1' class='ruler'></th></tr>
-<tr><th class='subtitle'>Name</th><th class='subtitle'>Cardinality</th></tr>
-<tr><th colspan='2' height='1' class='ruler'></th></tr>
-</thead>
-<tbody><tr><td><a href='#CachedFilter'>CachedFilter</a></td><td>One or none</td></tr>
-<tr><td><a href='#RangeFilter'>RangeFilter</a></td><td>One or none</td></tr>
-</tbody></table></td></tr></table></blockquote>
-<span class='inTextTitle'>Element's model:</span><p class='model'>(<a href='#RangeFilter'>RangeFilter</a> | <a href='#CachedFilter'>CachedFilter</a>)</p><a name='RangeFilter'></a>
-<br /><table class='elementTitle' summary="RangeFilter"><tr><td class='leftElementTitle'>
-&lt;RangeFilter/&gt;</td><td class='rightElementTitle'>
-Child of <a href='#ConstantScoreQuery'>ConstantScoreQuery</a>, <a href='#Clause'>Clause</a>, <a href='#CachedFilter'>CachedFilter</a>, <a href='#Filter'>Filter</a>
-</td></tr></table>
-<p>Filter used to limit query results to documents matching a range of field values</p><p><span class='inTextTitle'>Example:</span> <em>Search for documents about banks from the last 10 years</em>
-</p><pre>	          
-            &lt;FilteredQuery&gt;
-               &lt;Query&gt;
-                  &lt;UserQuery&gt;bank&lt;/UserQuery&gt;
-               &lt;/Query&gt;	
-               &lt;Filter&gt;
-                     &lt;RangeFilter fieldName="date" lowerTerm="19970101" upperTerm="20070101"/&gt;
-               &lt;/Filter&gt;	
-            &lt;/FilteredQuery&gt;
-	         </pre><p></p><blockquote>
-<table  summary="&lt;RangeFilter&gt;'s attributes"><tr>
-<th class='title' colspan='3'>&lt;RangeFilter&gt;'s attributes</th>
-</tr>
-<tr><th colspan='3' height='1' class='ruler'></th></tr>
-<tr>
-<th class='subtitle'>Name</th><th class='subtitle'>Values</th><th class='subtitle'>Default</th></tr>
-<tr><th colspan='3' height='1' class='ruler'></th></tr>
-<tr><td><a href='#RangeFilter_fieldName'>fieldName</a></td><td></td><td></td></tr><tr><td><a href='#RangeFilter_includeLower'>includeLower</a></td><td>true, false</td><td>true</td></tr><tr><td><a href='#RangeFilter_includeUpper'>includeUpper</a></td><td>true, false</td><td>true</td></tr><tr><td><a href='#RangeFilter_lowerTerm'>lowerTerm</a></td><td></td><td></td></tr><tr><td><a href='#RangeFilter_upperTerm'>upperTerm</a></td><td></td><td></td></tr></table></blockquote>
-<p class='emptyTagNote'>This element is always empty.</p><a name='RangeFilter_fieldName'></a>
-<br /><table class='attributeTitle' summary="fieldName"><tr><td class='leftAttributeTitle'>
-@fieldName</td><td class='rightAttributeTitle'>
-Attribute of <a href='#RangeFilter'>RangeFilter</a>
-</td></tr></table>
-<p>fieldName must be defined here or is taken from the most immediate parent XML element that defines a "fieldName" attribute</p><a name='RangeFilter_lowerTerm'></a>
-<br /><table class='attributeTitle' summary="lowerTerm"><tr><td class='leftAttributeTitle'>
-@lowerTerm</td><td class='rightAttributeTitle'>
-Attribute of <a href='#RangeFilter'>RangeFilter</a>
-</td></tr></table>
-<p>The lower-most term value for this field (must be &lt;= upperTerm)</p><p><span class='inTextTitle'>Required</span></p><a name='RangeFilter_upperTerm'></a>
-<br /><table class='attributeTitle' summary="upperTerm"><tr><td class='leftAttributeTitle'>
-@upperTerm</td><td class='rightAttributeTitle'>
-Attribute of <a href='#RangeFilter'>RangeFilter</a>
-</td></tr></table>
-<p>The upper-most term value for this field (must be >= lowerTerm)</p><p><span class='inTextTitle'>Required</span></p><a name='RangeFilter_includeLower'></a>
-<br /><table class='attributeTitle' summary="includeLower"><tr><td class='leftAttributeTitle'>
-@includeLower</td><td class='rightAttributeTitle'>
-Attribute of <a href='#RangeFilter'>RangeFilter</a>
-</td></tr></table>
-<p>Controls if the lowerTerm in the range is part of the allowed set of values</p><p><span class='inTextTitle'>Possible values</span>: true, false - <span class='inTextTitle'>Default value</span>: true</p><a name='RangeFilter_includeUpper'></a>
-<br /><table class='attributeTitle' summary="includeUpper"><tr><td class='leftAttributeTitle'>
-@includeUpper</td><td class='rightAttributeTitle'>
-Attribute of <a href='#RangeFilter'>RangeFilter</a>
-</td></tr></table>
-<p>Controls if the upperTerm in the range is part of the allowed set of values</p><p><span class='inTextTitle'>Possible values</span>: true, false - <span class='inTextTitle'>Default value</span>: true</p><a name='SpanTerm'></a>
-<br /><table class='elementTitle' summary="SpanTerm"><tr><td class='leftElementTitle'>
-&lt;SpanTerm&gt;</td><td class='rightElementTitle'>
-Child of <a href='#SpanOr'>SpanOr</a>, <a href='#SpanFirst'>SpanFirst</a>, <a href='#Exclude'>Exclude</a>, <a href='#Clause'>Clause</a>, <a href='#Include'>Include</a>, <a href='#CachedFilter'>CachedFilter</a>, <a href='#SpanNear'>SpanNear</a>, <a href='#Query'>Query</a>
-</td></tr></table>
-<p>A single term used in a SpanQuery. These clauses are the building blocks for more complex "span" queries which test word proximity</p><p><span class='inTextTitle'>Example:</span> <em>Find documents using terms close to each other about mining and accidents</em>
-</p><pre>
-	      &lt;SpanNear slop="8" inOrder="false" fieldName="text"&gt;		
-			&lt;SpanOr&gt;
-				&lt;SpanTerm&gt;killed&lt;/SpanTerm&gt;
-				&lt;SpanTerm&gt;died&lt;/SpanTerm&gt;
-				&lt;SpanTerm&gt;dead&lt;/SpanTerm&gt;
-			&lt;/SpanOr&gt;
-			&lt;SpanOr&gt;
-				&lt;SpanTerm&gt;miner&lt;/SpanTerm&gt;
-				&lt;SpanTerm&gt;mining&lt;/SpanTerm&gt;
-				&lt;SpanTerm&gt;miners&lt;/SpanTerm&gt;
-			&lt;/SpanOr&gt;
-	      &lt;/SpanNear&gt;
-	      </pre><p></p><blockquote><table summary='element info'><tr>
-<td class='construct'><table  summary="&lt;SpanTerm&gt;'s attributes"><tr>
-<th class='title' colspan='3'>&lt;SpanTerm&gt;'s attributes</th>
-</tr>
-<tr><th colspan='3' height='1' class='ruler'></th></tr>
-<tr>
-<th class='subtitle'>Name</th><th class='subtitle'>Values</th><th class='subtitle'>Default</th></tr>
-<tr><th colspan='3' height='1' class='ruler'></th></tr>
-<tr><td><a href='#SpanTerm_fieldName'>fieldName</a></td><td></td><td></td></tr></table></td></tr></table></blockquote>
-<a name='SpanTerm_fieldName'></a>
-<br /><table class='attributeTitle' summary="fieldName"><tr><td class='leftAttributeTitle'>
-@fieldName</td><td class='rightAttributeTitle'>
-Attribute of <a href='#SpanTerm'>SpanTerm</a>
-</td></tr></table>
-<p>fieldName must be defined here or is taken from the most immediate parent XML element that defines a "fieldName" attribute</p><p><span class='inTextTitle'>Required</span></p><a name='SpanOrTerms'></a>
-<br /><table class='elementTitle' summary="SpanOrTerms"><tr><td class='leftElementTitle'>
-&lt;SpanOrTerms&gt;</td><td class='rightElementTitle'>
-Child of <a href='#SpanOr'>SpanOr</a>, <a href='#SpanFirst'>SpanFirst</a>, <a href='#Exclude'>Exclude</a>, <a href='#Clause'>Clause</a>, <a href='#Include'>Include</a>, <a href='#CachedFilter'>CachedFilter</a>, <a href='#SpanNear'>SpanNear</a>, <a href='#Query'>Query</a>
-</td></tr></table>
-<p>A field-specific analyzer is used here to parse the child text provided in this tag. The SpanTerms produced are ORed in terms of Boolean logic</p><p><span class='inTextTitle'>Example:</span> <em>Use SpanOrTerms as a more convenient/succinct way of expressing multiple choices of SpanTerms. This example looks for reports
-using words describing a fatality near to references to miners</em>
-</p><pre>
-	      &lt;SpanNear slop="8" inOrder="false" fieldName="text"&gt;		
-			&lt;SpanOrTerms&gt;killed died death dead deaths&lt;/SpanOrTerms&gt;
-			&lt;SpanOrTerms&gt;miner mining miners&lt;/SpanOrTerms&gt;
-	      &lt;/SpanNear&gt;
-	      </pre><p></p><blockquote><table summary='element info'><tr>
-<td class='construct'><table  summary="&lt;SpanOrTerms&gt;'s attributes"><tr>
-<th class='title' colspan='3'>&lt;SpanOrTerms&gt;'s attributes</th>
-</tr>
-<tr><th colspan='3' height='1' class='ruler'></th></tr>
-<tr>
-<th class='subtitle'>Name</th><th class='subtitle'>Values</th><th class='subtitle'>Default</th></tr>
-<tr><th colspan='3' height='1' class='ruler'></th></tr>
-<tr><td><a href='#SpanOrTerms_fieldName'>fieldName</a></td><td></td><td></td></tr></table></td></tr></table></blockquote>
-<a name='SpanOrTerms_fieldName'></a>
-<br /><table class='attributeTitle' summary="fieldName"><tr><td class='leftAttributeTitle'>
-@fieldName</td><td class='rightAttributeTitle'>
-Attribute of <a href='#SpanOrTerms'>SpanOrTerms</a>
-</td></tr></table>
-<p>fieldName must be defined here or is taken from the most immediate parent XML element that defines a "fieldName" attribute</p><p><span class='inTextTitle'>Required</span></p><a name='SpanOr'></a>
-<br /><table class='elementTitle' summary="SpanOr"><tr><td class='leftElementTitle'>
-&lt;SpanOr&gt;</td><td class='rightElementTitle'>
-Child of <a href='#SpanFirst'>SpanFirst</a>, <a href='#Exclude'>Exclude</a>, <a href='#Clause'>Clause</a>, <a href='#Include'>Include</a>, <a href='#CachedFilter'>CachedFilter</a>, <a href='#SpanNear'>SpanNear</a>, <a href='#Query'>Query</a>
-</td></tr></table>
-<p>Takes any number of child queries from the Span family</p><p><span class='inTextTitle'>Example:</span> <em>Find documents using terms close to each other about mining and accidents</em>
-</p><pre>
-	      &lt;SpanNear slop="8" inOrder="false" fieldName="text"&gt;		
-			&lt;SpanOr&gt;
-				&lt;SpanTerm&gt;killed&lt;/SpanTerm&gt;
-				&lt;SpanTerm&gt;died&lt;/SpanTerm&gt;
-				&lt;SpanTerm&gt;dead&lt;/SpanTerm&gt;
-			&lt;/SpanOr&gt;
-			&lt;SpanOr&gt;
-				&lt;SpanTerm&gt;miner&lt;/SpanTerm&gt;
-				&lt;SpanTerm&gt;mining&lt;/SpanTerm&gt;
-				&lt;SpanTerm&gt;miners&lt;/SpanTerm&gt;
-			&lt;/SpanOr&gt;
-	      &lt;/SpanNear&gt;
-	      </pre><p></p><blockquote><table summary='element info'><tr>
-<td class='construct'><table summary="&lt;SpanOr&gt;'s children">
-<thead>
-<tr><th class='title' colspan='2'>&lt;SpanOr&gt;'s children</th></tr>
-<tr><th colspan='2' height='1' class='ruler'></th></tr>
-<tr><th class='subtitle'>Name</th><th class='subtitle'>Cardinality</th></tr>
-<tr><th colspan='2' height='1' class='ruler'></th></tr>
-</thead>
-<tbody><tr><td><a href='#SpanFirst'>SpanFirst</a></td><td>Any number</td></tr>
-<tr><td><a href='#SpanNear'>SpanNear</a></td><td>Any number</td></tr>
-<tr><td><a href='#SpanNot'>SpanNot</a></td><td>Any number</td></tr>
-<tr><td><a href='#SpanOr'>SpanOr</a></td><td>Any number</td></tr>
-<tr><td><a href='#SpanOrTerms'>SpanOrTerms</a></td><td>Any number</td></tr>
-<tr><td><a href='#SpanTerm'>SpanTerm</a></td><td>Any number</td></tr>
-</tbody></table></td></tr></table></blockquote>
-<span class='inTextTitle'>Element's model:</span><p class='model'>(<a href='#SpanOr'>SpanOr</a> | <a href='#SpanNear'>SpanNear</a> | <a href='#SpanOrTerms'>SpanOrTerms</a> | <a href='#SpanFirst'>SpanFirst</a> | <a href='#SpanNot'>SpanNot</a> | <a href='#SpanTerm'>SpanTerm</a>)*</p><a name='SpanNear'></a>
-<br /><table class='elementTitle' summary="SpanNear"><tr><td class='leftElementTitle'>
-&lt;SpanNear&gt;</td><td class='rightElementTitle'>
-Child of <a href='#SpanOr'>SpanOr</a>, <a href='#SpanFirst'>SpanFirst</a>, <a href='#Exclude'>Exclude</a>, <a href='#Clause'>Clause</a>, <a href='#Include'>Include</a>, <a href='#CachedFilter'>CachedFilter</a>, <a href='#Query'>Query</a>
-</td></tr></table>
-<p>Takes any number of child queries from the Span family and tests for proximity</p><blockquote><table summary='element info'><tr>
-<td class='construct'><table summary="&lt;SpanNear&gt;'s children">
-<thead>
-<tr><th class='title' colspan='2'>&lt;SpanNear&gt;'s children</th></tr>
-<tr><th colspan='2' height='1' class='ruler'></th></tr>
-<tr><th class='subtitle'>Name</th><th class='subtitle'>Cardinality</th></tr>
-<tr><th colspan='2' height='1' class='ruler'></th></tr>
-</thead>
-<tbody><tr><td><a href='#SpanFirst'>SpanFirst</a></td><td>Any number</td></tr>
-<tr><td><a href='#SpanNear'>SpanNear</a></td><td>Any number</td></tr>
-<tr><td><a href='#SpanNot'>SpanNot</a></td><td>Any number</td></tr>
-<tr><td><a href='#SpanOr'>SpanOr</a></td><td>Any number</td></tr>
-<tr><td><a href='#SpanOrTerms'>SpanOrTerms</a></td><td>Any number</td></tr>
-<tr><td><a href='#SpanTerm'>SpanTerm</a></td><td>Any number</td></tr>
-</tbody></table></td><td class='construct'><table  summary="&lt;SpanNear&gt;'s attributes"><tr>
-<th class='title' colspan='3'>&lt;SpanNear&gt;'s attributes</th>
-</tr>
-<tr><th colspan='3' height='1' class='ruler'></th></tr>
-<tr>
-<th class='subtitle'>Name</th><th class='subtitle'>Values</th><th class='subtitle'>Default</th></tr>
-<tr><th colspan='3' height='1' class='ruler'></th></tr>
-<tr><td><a href='#SpanNear_inOrder'>inOrder</a></td><td>true, false</td><td>true</td></tr><tr><td><a href='#SpanNear_slop'>slop</a></td><td></td><td></td></tr></table></td></tr></table></blockquote>
-<span class='inTextTitle'>Element's model:</span><p class='model'>(<a href='#SpanOr'>SpanOr</a> | <a href='#SpanNear'>SpanNear</a> | <a href='#SpanOrTerms'>SpanOrTerms</a> | <a href='#SpanFirst'>SpanFirst</a> | <a href='#SpanNot'>SpanNot</a> | <a href='#SpanTerm'>SpanTerm</a>)*</p><a name='SpanNear_slop'></a>
-<br /><table class='attributeTitle' summary="slop"><tr><td class='leftAttributeTitle'>
-@slop</td><td class='rightAttributeTitle'>
-Attribute of <a href='#SpanNear'>SpanNear</a>
-</td></tr></table>
-<p>defines the maximum distance between Span elements where distance is expressed as word number, not byte offset</p><p><span class='inTextTitle'>Example:</span> <em>Find documents using terms within 8 words of each other talking about mining and accidents</em>
-</p><pre>
-	      &lt;SpanNear slop="8" inOrder="false" fieldName="text"&gt;		
-			&lt;SpanOr&gt;
-				&lt;SpanTerm&gt;killed&lt;/SpanTerm&gt;
-				&lt;SpanTerm&gt;died&lt;/SpanTerm&gt;
-				&lt;SpanTerm&gt;dead&lt;/SpanTerm&gt;
-			&lt;/SpanOr&gt;
-			&lt;SpanOr&gt;
-				&lt;SpanTerm&gt;miner&lt;/SpanTerm&gt;
-				&lt;SpanTerm&gt;mining&lt;/SpanTerm&gt;
-				&lt;SpanTerm&gt;miners&lt;/SpanTerm&gt;
-			&lt;/SpanOr&gt;
-	      &lt;/SpanNear&gt;
-	      </pre><p></p><p><span class='inTextTitle'>Required</span></p><a name='SpanNear_inOrder'></a>
-<br /><table class='attributeTitle' summary="inOrder"><tr><td class='leftAttributeTitle'>
-@inOrder</td><td class='rightAttributeTitle'>
-Attribute of <a href='#SpanNear'>SpanNear</a>
-</td></tr></table>
-<p>Controls if matching terms have to appear in the order listed or can be reversed</p><p><span class='inTextTitle'>Possible values</span>: true, false - <span class='inTextTitle'>Default value</span>: true</p><a name='SpanFirst'></a>
-<br /><table class='elementTitle' summary="SpanFirst"><tr><td class='leftElementTitle'>
-&lt;SpanFirst&gt;</td><td class='rightElementTitle'>
-Child of <a href='#SpanOr'>SpanOr</a>, <a href='#Exclude'>Exclude</a>, <a href='#Clause'>Clause</a>, <a href='#Include'>Include</a>, <a href='#CachedFilter'>CachedFilter</a>, <a href='#SpanNear'>SpanNear</a>, <a href='#Query'>Query</a>
-</td></tr></table>
-<p>Looks for a SpanQuery match occuring near the beginning of a document</p><p><span class='inTextTitle'>Example:</span> <em>Find letters where the first 50 words talk about a resignation:</em>
-</p><pre>	          
-	         &lt;SpanFirst end="50"&gt;
-	               &lt;SpanOrTerms fieldName="text"&gt;resigning resign leave&lt;/SpanOrTerms&gt;
-	         &lt;/SpanFirst&gt;
-	         </pre><p></p><blockquote><table summary='element info'><tr>
-<td class='construct'><table summary="&lt;SpanFirst&gt;'s children">
-<thead>
-<tr><th class='title' colspan='2'>&lt;SpanFirst&gt;'s children</th></tr>
-<tr><th colspan='2' height='1' class='ruler'></th></tr>
-<tr><th class='subtitle'>Name</th><th class='subtitle'>Cardinality</th></tr>
-<tr><th colspan='2' height='1' class='ruler'></th></tr>
-</thead>
-<tbody><tr><td><a href='#SpanFirst'>SpanFirst</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanNear'>SpanNear</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanNot'>SpanNot</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanOr'>SpanOr</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanOrTerms'>SpanOrTerms</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanTerm'>SpanTerm</a></td><td>One or none</td></tr>
-</tbody></table></td><td class='construct'><table  summary="&lt;SpanFirst&gt;'s attributes"><tr>
-<th class='title' colspan='3'>&lt;SpanFirst&gt;'s attributes</th>
-</tr>
-<tr><th colspan='3' height='1' class='ruler'></th></tr>
-<tr>
-<th class='subtitle'>Name</th><th class='subtitle'>Values</th><th class='subtitle'>Default</th></tr>
-<tr><th colspan='3' height='1' class='ruler'></th></tr>
-<tr><td><a href='#SpanFirst_boost'>boost</a></td><td></td><td>1.0</td></tr><tr><td><a href='#SpanFirst_end'>end</a></td><td></td><td></td></tr></table></td></tr></table></blockquote>
-<span class='inTextTitle'>Element's model:</span><p class='model'>(<a href='#SpanOr'>SpanOr</a> | <a href='#SpanNear'>SpanNear</a> | <a href='#SpanOrTerms'>SpanOrTerms</a> | <a href='#SpanFirst'>SpanFirst</a> | <a href='#SpanNot'>SpanNot</a> | <a href='#SpanTerm'>SpanTerm</a>)</p><a name='SpanFirst_end'></a>
-<br /><table class='attributeTitle' summary="end"><tr><td class='leftAttributeTitle'>
-@end</td><td class='rightAttributeTitle'>
-Attribute of <a href='#SpanFirst'>SpanFirst</a>
-</td></tr></table>
-<p>Controls the end of the region considered in a document's field (expressed in word number, not byte offset)</p><p><span class='inTextTitle'>Required</span></p><a name='SpanFirst_boost'></a>
-<br /><table class='attributeTitle' summary="boost"><tr><td class='leftAttributeTitle'>
-@boost</td><td class='rightAttributeTitle'>
-Attribute of <a href='#SpanFirst'>SpanFirst</a>
-</td></tr></table>
-<p>Optional boost for matches on this query. Values > 1</p><p><span class='inTextTitle'>Default value</span>: 1.0</p><a name='SpanNot'></a>
-<br /><table class='elementTitle' summary="SpanNot"><tr><td class='leftElementTitle'>
-&lt;SpanNot&gt;</td><td class='rightElementTitle'>
-Child of <a href='#SpanOr'>SpanOr</a>, <a href='#SpanFirst'>SpanFirst</a>, <a href='#Exclude'>Exclude</a>, <a href='#Clause'>Clause</a>, <a href='#Include'>Include</a>, <a href='#CachedFilter'>CachedFilter</a>, <a href='#SpanNear'>SpanNear</a>, <a href='#Query'>Query</a>
-</td></tr></table>
-<p>Finds documents matching a SpanQuery but not if matching another SpanQuery</p><p><span class='inTextTitle'>Example:</span> <em>Find documents talking about social services but not containing the word "public"</em>
-</p><pre>
-          &lt;SpanNot fieldName="text"&gt;
-             &lt;Include&gt;
-                &lt;SpanNear slop="2" inOrder="true"&gt;		
-                     &lt;SpanTerm&gt;social&lt;/SpanTerm&gt;
-                     &lt;SpanTerm&gt;services&lt;/SpanTerm&gt;
-                &lt;/SpanNear&gt;				
-             &lt;/Include&gt;
-             &lt;Exclude&gt;
-                &lt;SpanTerm&gt;public&lt;/SpanTerm&gt;
-             &lt;/Exclude&gt;
-          &lt;/SpanNot&gt;
-	      </pre><p></p><blockquote><table summary='element info'><tr>
-<td class='construct'><table summary="&lt;SpanNot&gt;'s children">
-<thead>
-<tr><th class='title' colspan='2'>&lt;SpanNot&gt;'s children</th></tr>
-<tr><th colspan='2' height='1' class='ruler'></th></tr>
-<tr><th class='subtitle'>Name</th><th class='subtitle'>Cardinality</th></tr>
-<tr><th colspan='2' height='1' class='ruler'></th></tr>
-</thead>
-<tbody><tr><td><a href='#Exclude'>Exclude</a></td><td>Only one</td></tr>
-<tr><td><a href='#Include'>Include</a></td><td>Only one</td></tr>
-</tbody></table></td></tr></table></blockquote>
-<span class='inTextTitle'>Element's model:</span><p class='model'>(<a href='#Include'>Include</a>, <a href='#Exclude'>Exclude</a>)</p><a name='Include'></a>
-<br /><table class='elementTitle' summary="Include"><tr><td class='leftElementTitle'>
-&lt;Include&gt;</td><td class='rightElementTitle'>
-Child of <a href='#SpanNot'>SpanNot</a>
-</td></tr></table>
-<p>The SpanQuery to find</p><blockquote><table summary='element info'><tr>
-<td class='construct'><table summary="&lt;Include&gt;'s children">
-<thead>
-<tr><th class='title' colspan='2'>&lt;Include&gt;'s children</th></tr>
-<tr><th colspan='2' height='1' class='ruler'></th></tr>
-<tr><th class='subtitle'>Name</th><th class='subtitle'>Cardinality</th></tr>
-<tr><th colspan='2' height='1' class='ruler'></th></tr>
-</thead>
-<tbody><tr><td><a href='#SpanFirst'>SpanFirst</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanNear'>SpanNear</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanNot'>SpanNot</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanOr'>SpanOr</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanOrTerms'>SpanOrTerms</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanTerm'>SpanTerm</a></td><td>One or none</td></tr>
-</tbody></table></td></tr></table></blockquote>
-<span class='inTextTitle'>Element's model:</span><p class='model'>(<a href='#SpanOr'>SpanOr</a> | <a href='#SpanNear'>SpanNear</a> | <a href='#SpanOrTerms'>SpanOrTerms</a> | <a href='#SpanFirst'>SpanFirst</a> | <a href='#SpanNot'>SpanNot</a> | <a href='#SpanTerm'>SpanTerm</a>)</p><a name='Exclude'></a>
-<br /><table class='elementTitle' summary="Exclude"><tr><td class='leftElementTitle'>
-&lt;Exclude&gt;</td><td class='rightElementTitle'>
-Child of <a href='#SpanNot'>SpanNot</a>
-</td></tr></table>
-<p>The SpanQuery to be avoided</p><blockquote><table summary='element info'><tr>
-<td class='construct'><table summary="&lt;Exclude&gt;'s children">
-<thead>
-<tr><th class='title' colspan='2'>&lt;Exclude&gt;'s children</th></tr>
-<tr><th colspan='2' height='1' class='ruler'></th></tr>
-<tr><th class='subtitle'>Name</th><th class='subtitle'>Cardinality</th></tr>
-<tr><th colspan='2' height='1' class='ruler'></th></tr>
-</thead>
-<tbody><tr><td><a href='#SpanFirst'>SpanFirst</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanNear'>SpanNear</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanNot'>SpanNot</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanOr'>SpanOr</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanOrTerms'>SpanOrTerms</a></td><td>One or none</td></tr>
-<tr><td><a href='#SpanTerm'>SpanTerm</a></td><td>One or none</td></tr>
-</tbody></table></td></tr></table></blockquote>
-<span class='inTextTitle'>Element's model:</span><p class='model'>(<a href='#SpanOr'>SpanOr</a> | <a href='#SpanNear'>SpanNear</a> | <a href='#SpanOrTerms'>SpanOrTerms</a> | <a href='#SpanFirst'>SpanFirst</a> | <a href='#SpanNot'>SpanNot</a> | <a href='#SpanTerm'>SpanTerm</a>)</p><a name='ConstantScoreQuery'></a>
-<br /><table class='elementTitle' summary="ConstantScoreQuery"><tr><td class='leftElementTitle'>
-&lt;ConstantScoreQuery&gt;</td><td class='rightElementTitle'>
-Child of <a href='#Clause'>Clause</a>, <a href='#CachedFilter'>CachedFilter</a>, <a href='#Query'>Query</a>
-</td></tr></table>
-<p>a utility tag to wrap any filter as a query</p><p><span class='inTextTitle'>Example:</span> <em> Find all documents from the last 10 years </em>
-</p><pre>
-     &lt;ConstantScoreQuery&gt;
-           &lt;RangeFilter fieldName="date" lowerTerm="19970101" upperTerm="20070101"/&gt;
-     &lt;/ConstantScoreQuery&gt;	
-	</pre><p></p><blockquote><table summary='element info'><tr>
-<td class='construct'><table summary="&lt;ConstantScoreQuery&gt;'s children">
-<thead>
-<tr><th class='title' colspan='2'>&lt;ConstantScoreQuery&gt;'s children</th></tr>
-<tr><th colspan='2' height='1' class='ruler'></th></tr>
-<tr><th class='subtitle'>Name</th><th class='subtitle'>Cardinality</th></tr>
-<tr><th colspan='2' height='1' class='ruler'></th></tr>
-</thead>
-<tbody><tr><td><a href='#CachedFilter'>CachedFilter</a></td><td>Any number</td></tr>
-<tr><td><a href='#RangeFilter'>RangeFilter</a></td><td>Any number</td></tr>
-</tbody></table></td><td class='construct'><table  summary="&lt;ConstantScoreQuery&gt;'s attributes"><tr>
-<th class='title' colspan='3'>&lt;ConstantScoreQuery&gt;'s attributes</th>
-</tr>
-<tr><th colspan='3' height='1' class='ruler'></th></tr>
-<tr>
-<th class='subtitle'>Name</th><th class='subtitle'>Values</th><th class='subtitle'>Default</th></tr>
-<tr><th colspan='3' height='1' class='ruler'></th></tr>
-<tr><td><a href='#ConstantScoreQuery_boost'>boost</a></td><td></td><td>1.0</td></tr></table></td></tr></table></blockquote>
-<span class='inTextTitle'>Element's model:</span><p class='model'>(<a href='#RangeFilter'>RangeFilter</a> | <a href='#CachedFilter'>CachedFilter</a>)*</p><a name='ConstantScoreQuery_boost'></a>
-<br /><table class='attributeTitle' summary="boost"><tr><td class='leftAttributeTitle'>
-@boost</td><td class='rightAttributeTitle'>
-Attribute of <a href='#ConstantScoreQuery'>ConstantScoreQuery</a>
-</td></tr></table>
-<p>Optional boost for matches on this query. Values > 1</p><p><span class='inTextTitle'>Default value</span>: 1.0</p></body></html>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head>
+<meta http-equiv='CONTENT-TYPE' content='text/html; charset=UTF-8' />
+<link rel='StyleSheet' href='DTDDocStyle.css' type='text/css' media='screen' />
+<title>Core Lucene</title>
+</head><body>
+<p class='DTDSource'><b><code>LuceneCoreQuery.dtd</code></b>: <a href='LuceneCoreQuery.dtd.html'>Elements</a> - <a href='LuceneCoreQuery.dtd.entities.html'>Entities</a> - <a href='LuceneCoreQuery.dtd.org.html'>Source</a> | <a href='intro.html'>Intro</a> - <a href='elementsIndex.html'>Index</a><br /><a href='index.html' target='_top'>FRAMES</a>&nbsp;/&nbsp;<a href='LuceneCoreQuery.dtd.html' target='_top'>NO FRAMES</a></p><h1>Core Lucene</h1>
+<p><h3>Background</h3>
+This DTD describes the XML syntax used to perform advanced searches using the core Lucene search engine. The motivation behind the XML query syntax is:
+<ol>
+<li>To open up Lucene functionality to clients other than Java</li>
+<li>To offer a form of expressing queries that can easily be
+<ul>
+<li>Persisted for logging/auditing purposes</li>
+<li>Changed by editing text query templates (XSLT) without requiring a recompile/redeploy of applications</li>
+<li>Serialized across networks (without requiring Java bytecode for Query logic deployed on clients)</li>
+</ul>
+</li>
+<li>To provide a shorthand way of expressing query logic which echos the logical tree structure of query objects more closely than reading procedural Java query construction code</li>
+<li>To bridge the growing gap between Lucene query/filtering functionality and the set of functionality accessible throught the standard Lucene QueryParser syntax</li>
+<li>To provide a simply extensible syntax that does not require complex parser skills such as knowledge of JavaCC syntax</li>
+</ol></p><p><h3>Syntax overview</h3>
+Search syntax consists of two types of elements:
+<ul>
+<li><i>Queries</i></li>
+<li><i>Filters</i></li>
+</ul></p><p><h4>Queries</h4>
+The root of any XML search must be a <i>Query</i> type element used to select content.
+Queries typically score matches on documents using a number of different factors in order to provide relevant results first.
+One common example of a query tag is the <a href="#UserQuery">UserQuery</a> element which uses the standard
+Lucene QueryParser to parse Google-style search syntax provided by end users.</p><p><h4>Filters</h4>
+Unlike Queries, <i>Filters</i> are not used to select or score content - they are simply used to filter <i>Query</i> output (see <a href="#FilteredQuery">FilteredQuery</a> for an example use of query filtering).
+Because Filters simply offer a yes/no decision for each document in the index their output can be efficiently cached in memory as a <a href="http://java.sun.com/j2se/1.4.2/docs/api/java/util/BitSet.html">Bitset</a> for
+subsequent reuse (see <a href="#CachedFilter">CachedFilter</a> tag).</p><p><h4>Nesting elements</h4>
+Many of the the elements can nest other elements to produce queries/filters of an arbitrary depth and complexity.
+The <a href="#BooleanQuery">BooleanQuery</a> element is one such example which provides a means for combining other queries (including other BooleanQueries) using Boolean
+logic to determine mandatory or optional elements.</p><p><h3>Advanced topics</h3>
+<h4>Advanced positional testing - span queries</h4>
+The <i>SpanQuery</i> class of queries allow for complex positional tests which not only look for certain combinations of words but in particular
+positions in relation to each other and the documents containing them.</p><p>CoreParser.java is the Java class that encapsulates this parser behaviour.</p><br />
+<a name='BooleanQuery'></a>
+<br /><table class='elementTitle' summary="BooleanQuery"><tr><td class='leftElementTitle'>
+&lt;BooleanQuery&gt;</td><td class='rightElementTitle'>
+Child of <a href='#Clause'>Clause</a>, <a href='#CachedFilter'>CachedFilter</a>, <a href='#Query'>Query</a>
+</td></tr></table>
+<p>BooleanQuerys implement Boolean logic which controls how multiple Clauses should be interpreted.
+Some clauses may represent optional Query criteria while others represent mandatory criteria.</p><p><span class='inTextTitle'>Example:</span> <em>Find articles about banks, preferably talking about mergers but nothing to do with "sumitomo"</em>
+</p><pre>	          
+            &lt;BooleanQuery fieldName="contents"&gt;
+	             &lt;Clause occurs="should"&gt;
+		              &lt;TermQuery&gt;merger&lt;/TermQuery&gt;
+	             &lt;/Clause&gt;
+	             &lt;Clause occurs="mustnot"&gt;
+		              &lt;TermQuery&gt;sumitomo&lt;/TermQuery&gt;
+	             &lt;/Clause&gt;
+	             &lt;Clause occurs="must"&gt;
+		              &lt;TermQuery&gt;bank&lt;/TermQuery&gt;
+	             &lt;/Clause&gt;
+            &lt;/BooleanQuery&gt;
+
+	         </pre><p></p><blockquote><table summary='element info'><tr>
+<td class='construct'><table summary="&lt;BooleanQuery&gt;'s children">
+<thead>
+<tr><th class='title' colspan='2'>&lt;BooleanQuery&gt;'s children</th></tr>
+<tr><th colspan='2' height='1' class='ruler'></th></tr>
+<tr><th class='subtitle'>Name</th><th class='subtitle'>Cardinality</th></tr>
+<tr><th colspan='2' height='1' class='ruler'></th></tr>
+</thead>
+<tbody><tr><td><a href='#Clause'>Clause</a></td><td>At least one</td></tr>
+</tbody></table></td><td class='construct'><table  summary="&lt;BooleanQuery&gt;'s attributes"><tr>
+<th class='title' colspan='3'>&lt;BooleanQuery&gt;'s attributes</th>
+</tr>
+<tr><th colspan='3' height='1' class='ruler'></th></tr>
+<tr>
+<th class='subtitle'>Name</th><th class='subtitle'>Values</th><th class='subtitle'>Default</th></tr>
+<tr><th colspan='3' height='1' class='ruler'></th></tr>
+<tr><td><a href='#BooleanQuery_boost'>boost</a></td><td></td><td>1.0</td></tr><tr><td><a href='#BooleanQuery_disableCoord'>disableCoord</a></td><td>true, false</td><td>false</td></tr><tr><td><a href='#BooleanQuery_fieldName'>fieldName</a></td><td></td><td></td></tr><tr><td><a href='#BooleanQuery_minimumNumberShouldMatch'>minimumNumberShouldMatch</a></td><td></td><td>0</td></tr></table></td></tr></table></blockquote>
+<span class='inTextTitle'>Element's model:</span><p class='model'>(<a href='#Clause'>Clause</a>)+</p><a name='BooleanQuery_boost'></a>
+<br /><table class='attributeTitle' summary="boost"><tr><td class='leftAttributeTitle'>
+@boost</td><td class='rightAttributeTitle'>
+Attribute of <a href='#BooleanQuery'>BooleanQuery</a>
+</td></tr></table>
+<p>Optional boost for matches on this query. Values > 1</p><p><span class='inTextTitle'>Default value</span>: 1.0</p><a name='BooleanQuery_fieldName'></a>
+<br /><table class='attributeTitle' summary="fieldName"><tr><td class='leftAttributeTitle'>
+@fieldName</td><td class='rightAttributeTitle'>
+Attribute of <a href='#BooleanQuery'>BooleanQuery</a>
+</td></tr></table>
+<p>fieldName can optionally be defined here as a default attribute used by all child elements</p><a name='BooleanQuery_disableCoord'></a>
+<br /><table class='attributeTitle' summary="disableCoord"><tr><td class='leftAttributeTitle'>
+@disableCoord</td><td class='rightAttributeTitle'>
+Attribute of <a href='#BooleanQuery'>BooleanQuery</a>
+</td></tr></table>
+<p>The "Coordination factor" rewards documents that contain more of the optional clauses in this list. This flag can be used to turn off this factor.</p><p><span class='inTextTitle'>Possible values</span>: true, false - <span class='inTextTitle'>Default value</span>: false</p><a name='BooleanQuery_minimumNumberShouldMatch'></a>
+<br /><table class='attributeTitle' summary="minimumNumberShouldMatch"><tr><td class='leftAttributeTitle'>
+@minimumNumberShouldMatch</td><td class='rightAttributeTitle'>
+Attribute of <a href='#BooleanQuery'>BooleanQuery</a>
+</td></tr></table>
+<p>The minimum number of optional clauses that should be present in any one document before it is considered to be a match.</p><p><span class='inTextTitle'>Default value</span>: 0</p><a name='Clause'></a>
+<br /><table class='elementTitle' summary="Clause"><tr><td class='leftElementTitle'>
+&lt;Clause&gt;</td><td class='rightElementTitle'>
+Child of <a href='#BooleanQuery'>BooleanQuery</a>
+</td></tr></table>
+<p>NOTE: "Clause" tag has 2 modes of use - inside &lt;BooleanQuery> in which case only "query" types can be
+child elements - while in a &lt;BooleanFilter> clause only "filter" types can be contained.</p><blockquote><table summary='element info'><tr>
+<td class='construct'><table summary="&lt;Clause&gt;'s children">
+<thead>
+<tr><th class='title' colspan='2'>&lt;Clause&gt;'s children</th></tr>
+<tr><th colspan='2' height='1' class='ruler'></th></tr>
+<tr><th class='subtitle'>Name</th><th class='subtitle'>Cardinality</th></tr>
+<tr><th colspan='2' height='1' class='ruler'></th></tr>
+</thead>
+<tbody><tr><td><a href='#BooleanQuery'>BooleanQuery</a></td><td>One or none</td></tr>
+<tr><td><a href='#CachedFilter'>CachedFilter</a></td><td>One or none</td></tr>
+<tr><td><a href='#ConstantScoreQuery'>ConstantScoreQuery</a></td><td>One or none</td></tr>
+<tr><td><a href='#FilteredQuery'>FilteredQuery</a></td><td>One or none</td></tr>
+<tr><td><a href='#MatchAllDocsQuery'>MatchAllDocsQuery</a></td><td>One or none</td></tr>
+<tr><td><a href='#RangeFilter'>RangeFilter</a></td><td>One or none</td></tr>
+<tr><td><a href='#SpanFirst'>SpanFirst</a></td><td>One or none</td></tr>
+<tr><td><a href='#SpanNear'>SpanNear</a></td><td>One or none</td></tr>
+<tr><td><a href='#SpanNot'>SpanNot</a></td><td>One or none</td></tr>
+<tr><td><a href='#SpanOr'>SpanOr</a></td><td>One or none</td></tr>
+<tr><td><a href='#SpanOrTerms'>SpanOrTerms</a></td><td>One or none</td></tr>
+<tr><td><a href='#SpanTerm'>SpanTerm</a></td><td>One or none</td></tr>
+<tr><td><a href='#TermQuery'>TermQuery</a></td><td>One or none</td></tr>
+<tr><td><a href='#TermsQuery'>TermsQuery</a></td><td>One or none</td></tr>
+<tr><td><a href='#UserQuery'>UserQuery</a></td><td>One or none</td></tr>
+</tbody></table></td><td class='construct'><table  summary="&lt;Clause&gt;'s attributes"><tr>
+<th class='title' colspan='3'>&lt;Clause&gt;'s attributes</th>
+</tr>
+<tr><th colspan='3' height='1' class='ruler'></th></tr>
+<tr>
+<th class='subtitle'>Name</th><th class='subtitle'>Values</th><th class='subtitle'>Default</th></tr>
+<tr><th colspan='3' height='1' class='ruler'></th></tr>
+<tr><td><a href='#Clause_occurs'>occurs</a></td><td>should, must, mustnot</td><td>should</td></tr></table></td></tr></table></blockquote>
+<span class='inTextTitle'>Element's model:</span><p class='model'>(<a href='#BooleanQuery'>BooleanQuery</a> | <a href='#UserQuery'>UserQuery</a> | <a href='#FilteredQuery'>FilteredQuery</a> | <a href='#TermQuery'>TermQuery</a> | <a href='#TermsQuery'>TermsQuery</a> | <a href='#MatchAllDocsQuery'>MatchAllDocsQuery</a> | <a href='#ConstantScoreQuery'>ConstantScoreQuery</a> | <a href='#SpanOr'>SpanOr</a> | <a href='#SpanNear'>SpanNear</a> | <a href='#SpanOrTerms'>SpanOrTerms</a> | <a href='#SpanFirst'>SpanFirst</a> | <a href='#SpanNot'>SpanNot</a> | <a href='#SpanTerm'>SpanTerm</a> | <a href='#RangeFilter'>RangeFilter</a> | <a href='#CachedFilter'>CachedFilter</a>)</p><a name='Clause_occurs'></a>
+<br /><table class='attributeTitle' summary="occurs"><tr><td class='leftAttributeTitle'>
+@occurs</td><td class='rightAttributeTitle'>
+Attribute of <a href='#Clause'>Clause</a>
+</td></tr></table>
+<p>Controls if the clause is optional (should), mandatory (must) or unacceptable (mustNot)</p><p><span class='inTextTitle'>Possible values</span>: should, must, mustnot - <span class='inTextTitle'>Default value</span>: should</p><a name='CachedFilter'></a>
+<br /><table class='elementTitle' summary="CachedFilter"><tr><td class='leftElementTitle'>
+&lt;CachedFilter&gt;</td><td class='rightElementTitle'>
+Child of <a href='#ConstantScoreQuery'>ConstantScoreQuery</a>, <a href='#Clause'>Clause</a>, <a href='#Filter'>Filter</a>
+</td></tr></table>
+<p>Caches any nested query or filter in an LRU (Least recently used) Cache. Cached queries, like filters, are turned into
+Bitsets at a cost of 1 bit per document in the index. The memory cost of a cached query/filter is therefore numberOfDocsinIndex/8 bytes.
+Queries that are cached as filters obviously retain none of the scoring information associated with results - they retain just
+a Boolean yes/no record of which documents matched.</p><p><span class='inTextTitle'>Example:</span> <em>Search for documents about banks from the last 10 years - caching the commonly-used "last 10 year" filter as a BitSet in
+RAM to eliminate the cost of building this filter from disk for every query</em>
+</p><pre>	          
+            &lt;FilteredQuery&gt;
+               &lt;Query&gt;
+                  &lt;UserQuery&gt;bank&lt;/UserQuery&gt;
+               &lt;/Query&gt;	
+               &lt;Filter&gt;
+                  &lt;CachedFilter&gt;
+                     &lt;RangeFilter fieldName="date" lowerTerm="19970101" upperTerm="20070101"/&gt;
+                  &lt;/CachedFilter&gt;
+               &lt;/Filter&gt;	
+            &lt;/FilteredQuery&gt;
+	         </pre><p></p><blockquote><table summary='element info'><tr>
+<td class='construct'><table summary="&lt;CachedFilter&gt;'s children">
+<thead>
+<tr><th class='title' colspan='2'>&lt;CachedFilter&gt;'s children</th></tr>
+<tr><th colspan='2' height='1' class='ruler'></th></tr>
+<tr><th class='subtitle'>Name</th><th class='subtitle'>Cardinality</th></tr>
+<tr><th colspan='2' height='1' class='ruler'></th></tr>
+</thead>
+<tbody><tr><td><a href='#BooleanQuery'>BooleanQuery</a></td><td>One or none</td></tr>
+<tr><td><a href='#CachedFilter'>CachedFilter</a></td><td>One or none</td></tr>
+<tr><td><a href='#ConstantScoreQuery'>ConstantScoreQuery</a></td><td>One or none</td></tr>
+<tr><td><a href='#FilteredQuery'>FilteredQuery</a></td><td>One or none</td></tr>
+<tr><td><a href='#MatchAllDocsQuery'>MatchAllDocsQuery</a></td><td>One or none</td></tr>
+<tr><td><a href='#RangeFilter'>RangeFilter</a></td><td>One or none</td></tr>
+<tr><td><a href='#SpanFirst'>SpanFirst</a></td><td>One or none</td></tr>
+<tr><td><a href='#SpanNear'>SpanNear</a></td><td>One or none</td></tr>
+<tr><td><a href='#SpanNot'>SpanNot</a></td><td>One or none</td></tr>
+<tr><td><a href='#SpanOr'>SpanOr</a></td><td>One or none</td></tr>
+<tr><td><a href='#SpanOrTerms'>SpanOrTerms</a></td><td>One or none</td></tr>
+<tr><td><a href='#SpanTerm'>SpanTerm</a></td><td>One or none</td></tr>
+<tr><td><a href='#TermQuery'>TermQuery</a></td><td>One or none</td></tr>
+<tr><td><a href='#TermsQuery'>TermsQuery</a></td><td>One or none</td></tr>
+<tr><td><a href='#UserQuery'>UserQuery</a></td><td>One or none</td></tr>
+</tbody></table></td></tr></table></blockquote>
+<span class='inTextTitle'>Element's model:</span><p class='model'>(<a href='#BooleanQuery'>BooleanQuery</a> | <a href='#UserQuery'>UserQuery</a> | <a href='#FilteredQuery'>FilteredQuery</a> | <a href='#TermQuery'>TermQuery</a> | <a href='#TermsQuery'>TermsQuery</a> | <a href='#MatchAllDocsQuery'>MatchAllDocsQuery</a> | <a href='#ConstantScoreQuery'>ConstantScoreQuery</a> | <a href='#SpanOr'>SpanOr</a> | <a href='#SpanNear'>SpanNear</a> | <a href='#SpanOrTerms'>SpanOrTerms</a> | <a href='#SpanFirst'>SpanFirst</a> | <a href='#SpanNot'>SpanNot</a> | <a href='#SpanTerm'>SpanTerm</a> | <a href='#RangeFilter'>RangeFilter</a> | <a href='#CachedFilter'>CachedFilter</a>)</p><a name='UserQuery'></a>
+<br /><table class='elementTitle' summary="UserQuery"><tr><td class='leftElementTitle'>
+&lt;UserQuery&gt;</td><td class='rightElementTitle'>
+Child of <a href='#Clause'>Clause</a>, <a href='#CachedFilter'>CachedFilter</a>, <a href='#Query'>Query</a>
+</td></tr></table>
+<p>Passes content directly through to the standard LuceneQuery parser see "Lucene Query Syntax"</p><p><span class='inTextTitle'>Example:</span> <em>Search for documents about John Smith or John Doe using standard LuceneQuerySyntax</em>
+</p><pre>	          
+               &lt;UserQuery&gt;"John Smith" OR "John Doe"&lt;/UserQuery&gt;
+	         </pre><p></p><blockquote><table summary='element info'><tr>
+<td class='construct'><table  summary="&lt;UserQuery&gt;'s attributes"><tr>
+<th class='title' colspan='3'>&lt;UserQuery&gt;'s attributes</th>
+</tr>
+<tr><th colspan='3' height='1' class='ruler'></th></tr>
+<tr>
+<th class='subtitle'>Name</th><th class='subtitle'>Values</th><th class='subtitle'>Default</th></tr>
+<tr><th colspan='3' height='1' class='ruler'></th></tr>
+<tr><td><a href='#UserQuery_boost'>boost</a></td><td></td><td>1.0</td></tr><tr><td><a href='#UserQuery_fieldName'>fieldName</a></td><td></td><td></td></tr></table></td></tr></table></blockquote>
+<a name='UserQuery_boost'></a>
+<br /><table class='attributeTitle' summary="boost"><tr><td class='leftAttributeTitle'>
+@boost</td><td class='rightAttributeTitle'>
+Attribute of <a href='#UserQuery'>UserQuery</a>
+</td></tr></table>
+<p>Optional boost for matches on this query. Values > 1</p><p><span class='inTextTitle'>Default value</span>: 1.0</p><a name='UserQuery_fieldName'></a>
+<br /><table class='attributeTitle' summary="fieldName"><tr><td class='leftAttributeTitle'>
+@fieldName</td><td class='rightAttributeTitle'>
+Attribute of <a href='#UserQuery'>UserQuery</a>
+</td></tr></table>
+<p>fieldName can optionally be defined here to change the default field used in the QueryParser</p><a name='MatchAllDocsQuery'></a>
+<br /><table class='elementTitle' summary="MatchAllDocsQuery"><tr><td class='leftElementTitle'>
+&lt;MatchAllDocsQuery/&gt;</td><td class='rightElementTitle'>
+Child of <a href='#Clause'>Clause</a>, <a href='#CachedFilter'>CachedFilter</a>, <a href='#Query'>Query</a>
+</td></tr></table>
+<p>A query which is used to match all documents. This has a couple of uses:
+<ol>
+<li> as a Clause in a BooleanQuery who's only other clause
+is a "mustNot" match (Lucene requires at least one positive clause) and..</li>
+<li> in a FilteredQuery where a Filter tag is effectively being
+used to select content rather than it's usual role of filtering the results of a query.</li>
+</ol></p><p><span class='inTextTitle'>Example:</span> <em>Effectively use a Filter as a query </em>
+</p><pre>	          
+               &lt;FilteredQuery&gt;
+                 &lt;Query&gt;
+                    &lt;MatchAllDocsQuery/&gt;
+                 &lt;/Query&gt;
+                 &lt;Filter&gt;
+                     &lt;RangeFilter fieldName="date" lowerTerm="19870409" upperTerm="19870412"/&gt;
+                 &lt;/Filter&gt;	
+               &lt;/FilteredQuery&gt;	         
+	       </pre><p></p><p class='emptyTagNote'>This element is always empty.</p><a name='TermQuery'></a>
+<br /><table class='elementTitle' summary="TermQuery"><tr><td class='leftElementTitle'>
+&lt;TermQuery&gt;</td><td class='rightElementTitle'>
+Child of <a href='#Clause'>Clause</a>, <a href='#CachedFilter'>CachedFilter</a>, <a href='#Query'>Query</a>
+</td></tr></table>
+<p>a single term query - no analysis is done of the child text</p><p><span class='inTextTitle'>Example:</span> <em>Match on a primary key</em>
+</p><pre>	          
+               &lt;TermQuery fieldName="primaryKey"&gt;13424&lt;/TermQuery&gt;
+	       </pre><p></p><blockquote><table summary='element info'><tr>
+<td class='construct'><table  summary="&lt;TermQuery&gt;'s attributes"><tr>
+<th class='title' colspan='3'>&lt;TermQuery&gt;'s attributes</th>
+</tr>
+<tr><th colspan='3' height='1' class='ruler'></th></tr>
+<tr>
+<th class='subtitle'>Name</th><th class='subtitle'>Values</th><th class='subtitle'>Default</th></tr>
+<tr><th colspan='3' height='1' class='ruler'></th></tr>
+<tr><td><a href='#TermQuery_boost'>boost</a></td><td></td><td>1.0</td></tr><tr><td><a href='#TermQuery_fieldName'>fieldName</a></td><td></td><td></td></tr></table></td></tr></table></blockquote>
+<a name='TermQuery_boost'></a>
+<br /><table class='attributeTitle' summary="boost"><tr><td class='leftAttributeTitle'>
+@boost</td><td class='rightAttributeTitle'>
+Attribute of <a href='#TermQuery'>TermQuery</a>
+</td></tr></table>
+<p>Optional boost for matches on this query. Values > 1</p><p><span class='inTextTitle'>Default value</span>: 1.0</p><a name='TermQuery_fieldName'></a>
+<br /><table class='attributeTitle' summary="fieldName"><tr><td class='leftAttributeTitle'>
+@fieldName</td><td class='rightAttributeTitle'>
+Attribute of <a href='#TermQuery'>TermQuery</a>
+</td></tr></table>
+<p>fieldName must be defined here or is taken from the most immediate parent XML element that defines a "fieldName" attribute</p><a name='TermsQuery'></a>
+<br /><table class='elementTitle' summary="TermsQuery"><tr><td class='leftElementTitle'>
+&lt;TermsQuery&gt;</td><td class='rightElementTitle'>
+Child of <a href='#Clause'>Clause</a>, <a href='#CachedFilter'>CachedFilter</a>, <a href='#Query'>Query</a>
+</td></tr></table>
+<p>The equivalent of a BooleanQuery with multiple optional TermQuery clauses.
+Child text is analyzed using a field-specific choice of Analyzer to produce a set of terms that are ORed together in Boolean logic.
+Unlike UserQuery element, this does not parse any special characters to control fuzzy/phrase/boolean logic and as such is incapable
+of producing a Query parse error given any user input</p><p><span class='inTextTitle'>Example:</span> <em>Match on text from a database description (which may contain characters that
+are illegal characters in the standard Lucene Query syntax used in the UserQuery tag</em>
+</p><pre>	          
+               &lt;TermsQuery fieldName="description"&gt;Smith & Sons (Ltd) : incorporated 1982&lt;/TermsQuery&gt;
+	       </pre><p></p><blockquote><table summary='element info'><tr>
+<td class='construct'><table  summary="&lt;TermsQuery&gt;'s attributes"><tr>
+<th class='title' colspan='3'>&lt;TermsQuery&gt;'s attributes</th>
+</tr>
+<tr><th colspan='3' height='1' class='ruler'></th></tr>
+<tr>
+<th class='subtitle'>Name</th><th class='subtitle'>Values</th><th class='subtitle'>Default</th></tr>
+<tr><th colspan='3' height='1' class='ruler'></th></tr>
+<tr><td><a href='#TermsQuery_boost'>boost</a></td><td></td><td>1.0</td></tr><tr><td><a href='#TermsQuery_disableCoord'>disableCoord</a></td><td>true, false</td><td>false</td></tr><tr><td><a href='#TermsQuery_fieldName'>fieldName</a></td><td></td><td></td></tr><tr><td><a href='#TermsQuery_minimumNumberShouldMatch'>minimumNumberShouldMatch</a></td><td></td><td>0</td></tr></table></td></tr></table></blockquote>
+<a name='TermsQuery_boost'></a>
+<br /><table class='attributeTitle' summary="boost"><tr><td class='leftAttributeTitle'>
+@boost</td><td class='rightAttributeTitle'>
+Attribute of <a href='#TermsQuery'>TermsQuery</a>
+</td></tr></table>
+<p>Optional boost for matches on this query. Values > 1</p><p><span class='inTextTitle'>Default value</span>: 1.0</p><a name='TermsQuery_fieldName'></a>
+<br /><table class='attributeTitle' summary="fieldName"><tr><td class='leftAttributeTitle'>
+@fieldName</td><td class='rightAttributeTitle'>
+Attribute of <a href='#TermsQuery'>TermsQuery</a>
+</td></tr></table>
+<p>fieldName must be defined here or is taken from the most immediate parent XML element that defines a "fieldName" attribute</p><a name='TermsQuery_disableCoord'></a>
+<br /><table class='attributeTitle' summary="disableCoord"><tr><td class='leftAttributeTitle'>
+@disableCoord</td><td class='rightAttributeTitle'>
+Attribute of <a href='#TermsQuery'>TermsQuery</a>
+</td></tr></table>
+<p>The "Coordination factor" rewards documents that contain more of the terms in this list. This flag can be used to turn off this factor.</p><p><span class='inTextTitle'>Possible values</span>: true, false - <span class='inTextTitle'>Default value</span>: false</p><a name='TermsQuery_minimumNumberShouldMatch'></a>
+<br /><table class='attributeTitle' summary="minimumNumberShouldMatch"><tr><td class='leftAttributeTitle'>
+@minimumNumberShouldMatch</td><td class='rightAttributeTitle'>
+Attribute of <a href='#TermsQuery'>TermsQuery</a>
+</td></tr></table>
+<p>The minimum number of terms that should be present in any one document before it is considered to be a match.</p><p><span class='inTextTitle'>Default value</span>: 0</p><a name='FilteredQuery'></a>
+<br /><table class='elementTitle' summary="FilteredQuery"><tr><td class='leftElementTitle'>
+&lt;FilteredQuery&gt;</td><td class='rightElementTitle'>
+Child of <a href='#Clause'>Clause</a>, <a href='#CachedFilter'>CachedFilter</a>, <a href='#Query'>Query</a>
+</td></tr></table>
+<p>Runs a Query and filters results to only those query matches that also match the Filter element.</p><p><span class='inTextTitle'>Example:</span> <em>Find all documents about Lucene that have a status of "published"</em>
+</p><pre>	          
+               &lt;FilteredQuery&gt;
+                 &lt;Query&gt;
+                    &lt;UserQuery&gt;Lucene&lt;/UserQuery&gt;
+                 &lt;/Query&gt;
+                 &lt;Filter&gt;
+                     &lt;TermsFilter fieldName="status"&gt;published&lt;/TermsFilter&gt;
+                 &lt;/Filter&gt;	
+               &lt;/FilteredQuery&gt;	         
+	       </pre><p></p><blockquote><table summary='element info'><tr>
+<td class='construct'><table summary="&lt;FilteredQuery&gt;'s children">
+<thead>
+<tr><th class='title' colspan='2'>&lt;FilteredQuery&gt;'s children</th></tr>
+<tr><th colspan='2' height='1' class='ruler'></th></tr>
+<tr><th class='subtitle'>Name</th><th class='subtitle'>Cardinality</th></tr>
+<tr><th colspan='2' height='1' class='ruler'></th></tr>
+</thead>
+<tbody><tr><td><a href='#Filter'>Filter</a></td><td>Only one</td></tr>
+<tr><td><a href='#Query'>Query</a></td><td>Only one</td></tr>
+</tbody></table></td><td class='construct'><table  summary="&lt;FilteredQuery&gt;'s attributes"><tr>
+<th class='title' colspan='3'>&lt;FilteredQuery&gt;'s attributes</th>
+</tr>
+<tr><th colspan='3' height='1' class='ruler'></th></tr>
+<tr>
+<th class='subtitle'>Name</th><th class='subtitle'>Values</th><th class='subtitle'>Default</th></tr>
+<tr><th colspan='3' height='1' class='ruler'></th></tr>
+<tr><td><a href='#FilteredQuery_boost'>boost</a></td><td></td><td>1.0</td></tr></table></td></tr></table></blockquote>
+<span class='inTextTitle'>Element's model:</span><p class='model'>(<a href='#Query'>Query</a>, <a href='#Filter'>Filter</a>)</p><a name='FilteredQuery_boost'></a>
+<br /><table class='attributeTitle' summary="boost"><tr><td class='leftAttributeTitle'>
+@boost</td><td class='rightAttributeTitle'>
+Attribute of <a href='#FilteredQuery'>FilteredQuery</a>
+</td></tr></table>
+<p>Optional boost for matches on this query. Values > 1</p><p><span class='inTextTitle'>Default value</span>: 1.0</p><a name='Query'></a>
+<br /><table class='elementTitle' summary="Query"><tr><td class='leftElementTitle'>
+&lt;Query&gt;</td><td class='rightElementTitle'>
+Child of <a href='#FilteredQuery'>FilteredQuery</a>
+</td></tr></table>
+<p>Used to identify a nested Query element inside another container element. NOT a top-level query tag</p><blockquote><table summary='element info'><tr>
+<td class='construct'><table summary="&lt;Query&gt;'s children">
+<thead>
+<tr><th class='title' colspan='2'>&lt;Query&gt;'s children</th></tr>
+<tr><th colspan='2' height='1' class='ruler'></th></tr>
+<tr><th class='subtitle'>Name</th><th class='subtitle'>Cardinality</th></tr>
+<tr><th colspan='2' height='1' class='ruler'></th></tr>
+</thead>
+<tbody><tr><td><a href='#BooleanQuery'>BooleanQuery</a></td><td>One or none</td></tr>
+<tr><td><a href='#ConstantScoreQuery'>ConstantScoreQuery</a></td><td>One or none</td></tr>
+<tr><td><a href='#FilteredQuery'>FilteredQuery</a></td><td>One or none</td></tr>
+<tr><td><a href='#MatchAllDocsQuery'>MatchAllDocsQuery</a></td><td>One or none</td></tr>
+<tr><td><a href='#SpanFirst'>SpanFirst</a></td><td>One or none</td></tr>
+<tr><td><a href='#SpanNear'>SpanNear</a></td><td>One or none</td></tr>
+<tr><td><a href='#SpanNot'>SpanNot</a></td><td>One or none</td></tr>
+<tr><td><a href='#SpanOr'>SpanOr</a></td><td>One or none</td></tr>
+<tr><td><a href='#SpanOrTerms'>SpanOrTerms</a></td><td>One or none</td></tr>
+<tr><td><a href='#SpanTerm'>SpanTerm</a></td><td>One or none</td></tr>
+<tr><td><a href='#TermQuery'>TermQuery</a></td><td>One or none</td></tr>
+<tr><td><a href='#TermsQuery'>TermsQuery</a></td><td>One or none</td></tr>
+<tr><td><a href='#UserQuery'>UserQuery</a></td><td>One or none</td></tr>
+</tbody></table></td></tr></table></blockquote>
+<span class='inTextTitle'>Element's model:</span><p class='model'>(<a href='#BooleanQuery'>BooleanQuery</a> | <a href='#UserQuery'>UserQuery</a> | <a href='#FilteredQuery'>FilteredQuery</a> | <a href='#TermQuery'>TermQuery</a> | <a href='#TermsQuery'>TermsQuery</a> | <a href='#MatchAllDocsQuery'>MatchAllDocsQuery</a> | <a href='#ConstantScoreQuery'>ConstantScoreQuery</a> | <a href='#SpanOr'>SpanOr</a> | <a href='#SpanNear'>SpanNear</a> | <a href='#SpanOrTerms'>SpanOrTerms</a> | <a href='#SpanFirst'>SpanFirst</a> | <a href='#SpanNot'>SpanNot</a> | <a href='#SpanTerm'>SpanTerm</a>)</p><a name='Filter'></a>
+<br /><table class='elementTitle' summary="Filter"><tr><td class='leftElementTitle'>
+&lt;Filter&gt;</td><td class='rightElementTitle'>
+Child of <a href='#FilteredQuery'>FilteredQuery</a>
+</td></tr></table>
+<p>The choice of Filter that MUST also be matched</p><blockquote><table summary='element info'><tr>
+<td class='construct'><table summary="&lt;Filter&gt;'s children">
+<thead>
+<tr><th class='title' colspan='2'>&lt;Filter&gt;'s children</th></tr>
+<tr><th colspan='2' height='1' class='ruler'></th></tr>
+<tr><th class='subtitle'>Name</th><th class='subtitle'>Cardinality</th></tr>
+<tr><th colspan='2' height='1' class='ruler'></th></tr>
+</thead>
+<tbody><tr><td><a href='#CachedFilter'>CachedFilter</a></td><td>One or none</td></tr>
+<tr><td><a href='#RangeFilter'>RangeFilter</a></td><td>One or none</td></tr>
+</tbody></table></td></tr></table></blockquote>
+<span class='inTextTitle'>Element's model:</span><p class='model'>(<a href='#RangeFilter'>RangeFilter</a> | <a href='#CachedFilter'>CachedFilter</a>)</p><a name='RangeFilter'></a>
+<br /><table class='elementTitle' summary="RangeFilter"><tr><td class='leftElementTitle'>
+&lt;RangeFilter/&gt;</td><td class='rightElementTitle'>
+Child of <a href='#ConstantScoreQuery'>ConstantScoreQuery</a>, <a href='#Clause'>Clause</a>, <a href='#CachedFilter'>CachedFilter</a>, <a href='#Filter'>Filter</a>
+</td></tr></table>
+<p>Filter used to limit query results to documents matching a range of field values</p><p><span class='inTextTitle'>Example:</span> <em>Search for documents about banks from the last 10 years</em>
+</p><pre>	          
+            &lt;FilteredQuery&gt;
+               &lt;Query&gt;
+                  &lt;UserQuery&gt;bank&lt;/UserQuery&gt;
+               &lt;/Query&gt;	
+               &lt;Filter&gt;
+                     &lt;RangeFilter fieldName="date" lowerTerm="19970101" upperTerm="20070101"/&gt;
+               &lt;/Filter&gt;	
+            &lt;/FilteredQuery&gt;
+	         </pre><p></p><blockquote>
+<table  summary="&lt;RangeFilter&gt;'s attributes"><tr>
+<th class='title' colspan='3'>&lt;RangeFilter&gt;'s attributes</th>
+</tr>
+<tr><th colspan='3' height='1' class='ruler'></th></tr>
+<tr>
+<th class='subtitle'>Name</th><th class='subtitle'>Values</th><th class='subtitle'>Default</th></tr>
+<tr><th colspan='3' height='1' class='ruler'></th></tr>
+<tr><td><a href='#RangeFilter_fieldName'>fieldName</a></td><td></td><td></td></tr><tr><td><a href='#RangeFilter_includeLower'>includeLower</a></td><td>true, false</td><td>true</td></tr><tr><td><a href='#RangeFilter_includeUpper'>includeUpper</a></td><td>true, false</td><td>true</td></tr><tr><td><a href='#RangeFilter_lowerTerm'>lowerTerm</a></td><td></td><td></td></tr><tr><td><a href='#RangeFilter_upperTerm'>upperTerm</a></td><td></td><td></td></tr></table></blockquote>
+<p class='emptyTagNote'>This element is always empty.</p><a name='RangeFilter_fieldName'></a>
+<br /><table class='attributeTitle' summary="fieldName"><tr><td class='leftAttributeTitle'>
+@fieldName</td><td class='rightAttributeTitle'>
+Attribute of <a href='#RangeFilter'>RangeFilter</a>
+</td></tr></table>
+<p>fieldName must be defined here or is taken from the most immediate parent XML element that defines a "fieldName" attribute</p><a name='RangeFilter_lowerTerm'></a>
+<br /><table class='attributeTitle' summary="lowerTerm"><tr><td class='leftAttributeTitle'>
+@lowerTerm</td><td class='rightAttributeTitle'>
+Attribute of <a href='#RangeFilter'>RangeFilter</a>
+</td></tr></table>
+<p>The lower-most term value for this field (must be &lt;= upperTerm)</p><p><span class='inTextTitle'>Required</span></p><a name='RangeFilter_upperTerm'></a>
+<br /><table class='attributeTitle' summary="upperTerm"><tr><td class='leftAttributeTitle'>
+@upperTerm</td><td class='rightAttributeTitle'>
+Attribute of <a href='#RangeFilter'>RangeFilter</a>
+</td></tr></table>
+<p>The upper-most term value for this field (must be >= lowerTerm)</p><p><span class='inTextTitle'>Required</span></p><a name='RangeFilter_includeLower'></a>
+<br /><table class='attributeTitle' summary="includeLower"><tr><td class='leftAttributeTitle'>
+@includeLower</td><td class='rightAttributeTitle'>
+Attribute of <a href='#RangeFilter'>RangeFilter</a>
+</td></tr></table>
+<p>Controls if the lowerTerm in the range is part of the allowed set of values</p><p><span class='inTextTitle'>Possible values</span>: true, false - <span class='inTextTitle'>Default value</span>: true</p><a name='RangeFilter_includeUpper'></a>
+<br /><table class='attributeTitle' summary="includeUpper"><tr><td class='leftAttributeTitle'>
+@includeUpper</td><td class='rightAttributeTitle'>
+Attribute of <a href='#RangeFilter'>RangeFilter</a>
+</td></tr></table>

[... 290 lines stripped ...]


Mime
View raw message