Author: buildbot
Date: Fri Feb 26 12:52:42 2016
New Revision: 981208

Log:
Staging update by buildbot for lucy

Added:
    websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/Inversion.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/Token.html
    
websites/staging/lucy/trunk/content/docs/test/Lucy/Docs/Tutorial/AnalysisTutorial.html
    
websites/staging/lucy/trunk/content/docs/test/Lucy/Docs/Tutorial/BeyondSimpleTutorial.html
    
websites/staging/lucy/trunk/content/docs/test/Lucy/Docs/Tutorial/FieldTypeTutorial.html
    
websites/staging/lucy/trunk/content/docs/test/Lucy/Docs/Tutorial/HighlighterTutorial.html
    
websites/staging/lucy/trunk/content/docs/test/Lucy/Docs/Tutorial/QueryObjectsTutorial.html
    
websites/staging/lucy/trunk/content/docs/test/Lucy/Docs/Tutorial/SimpleTutorial.html
    websites/staging/lucy/trunk/content/docs/test/index.html
Removed:
    
websites/staging/lucy/trunk/content/docs/test/Lucy/Docs/Tutorial/Analysis.html
    
websites/staging/lucy/trunk/content/docs/test/Lucy/Docs/Tutorial/BeyondSimple.html
    
websites/staging/lucy/trunk/content/docs/test/Lucy/Docs/Tutorial/FieldType.html
    
websites/staging/lucy/trunk/content/docs/test/Lucy/Docs/Tutorial/Highlighter.html
    
websites/staging/lucy/trunk/content/docs/test/Lucy/Docs/Tutorial/QueryObjects.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Docs/Tutorial/Simple.html
Modified:
    websites/staging/lucy/trunk/content/   (props changed)
    websites/staging/lucy/trunk/content/docs/test/Lucy.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/Analyzer.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/CaseFolder.html
    
websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/EasyAnalyzer.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/Normalizer.html
    
websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/PolyAnalyzer.html
    
websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/RegexTokenizer.html
    
websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/SnowballStemmer.html
    
websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/SnowballStopFilter.html
    
websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/StandardTokenizer.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Docs/Cookbook.html
    
websites/staging/lucy/trunk/content/docs/test/Lucy/Docs/Cookbook/CustomQuery.html
    
websites/staging/lucy/trunk/content/docs/test/Lucy/Docs/Cookbook/CustomQueryParser.html
    
websites/staging/lucy/trunk/content/docs/test/Lucy/Docs/Cookbook/FastUpdates.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Docs/DevGuide.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Docs/DocIDs.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Docs/FileFormat.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Docs/FileLocking.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Docs/IRTheory.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Docs/Tutorial.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Document/Doc.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Document/HitDoc.html
    
websites/staging/lucy/trunk/content/docs/test/Lucy/Highlight/Highlighter.html
    
websites/staging/lucy/trunk/content/docs/test/Lucy/Index/BackgroundMerger.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Index/DataReader.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Index/DataWriter.html
    
websites/staging/lucy/trunk/content/docs/test/Lucy/Index/DeletionsWriter.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Index/DocReader.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Index/IndexManager.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Index/IndexReader.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Index/Indexer.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Index/Lexicon.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Index/LexiconReader.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Index/PolyReader.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Index/PostingList.html
    
websites/staging/lucy/trunk/content/docs/test/Lucy/Index/PostingListReader.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Index/SegReader.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Index/SegWriter.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Index/Segment.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Index/Similarity.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Index/Snapshot.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Object/BitVector.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Object/Obj.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Plan/Architecture.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Plan/BlobType.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Plan/FieldType.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Plan/FullTextType.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Plan/Schema.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Plan/StringType.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Search/ANDQuery.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Search/Collector.html
    
websites/staging/lucy/trunk/content/docs/test/Lucy/Search/Collector/BitCollector.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Search/Compiler.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Search/Hits.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Search/IndexSearcher.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Search/LeafQuery.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Search/MatchAllQuery.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Search/Matcher.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Search/NOTQuery.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Search/NoMatchQuery.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Search/ORQuery.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Search/PhraseQuery.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Search/PolyQuery.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Search/PolySearcher.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Search/Query.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Search/QueryParser.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Search/RangeQuery.html
    
websites/staging/lucy/trunk/content/docs/test/Lucy/Search/RequiredOptionalQuery.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Search/Searcher.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Search/SortRule.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Search/SortSpec.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Search/Span.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Search/TermQuery.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Simple.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Store/FSFolder.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Store/Folder.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Store/Lock.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Store/LockErr.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Store/LockFactory.html
    websites/staging/lucy/trunk/content/docs/test/Lucy/Store/RAMFolder.html
    
websites/staging/lucy/trunk/content/docs/test/LucyX/Index/ByteBufDocReader.html
    
websites/staging/lucy/trunk/content/docs/test/LucyX/Index/ByteBufDocWriter.html
    websites/staging/lucy/trunk/content/docs/test/LucyX/Index/LongFieldSim.html
    websites/staging/lucy/trunk/content/docs/test/LucyX/Index/ZlibDocReader.html
    websites/staging/lucy/trunk/content/docs/test/LucyX/Index/ZlibDocWriter.html
    
websites/staging/lucy/trunk/content/docs/test/LucyX/Remote/ClusterSearcher.html
    websites/staging/lucy/trunk/content/docs/test/LucyX/Remote/SearchClient.html
    websites/staging/lucy/trunk/content/docs/test/LucyX/Remote/SearchServer.html
    websites/staging/lucy/trunk/content/docs/test/LucyX/Search/Filter.html
    websites/staging/lucy/trunk/content/docs/test/LucyX/Search/MockMatcher.html
    
websites/staging/lucy/trunk/content/docs/test/LucyX/Search/ProximityQuery.html

Propchange: websites/staging/lucy/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Fri Feb 26 12:52:42 2016
@@ -1 +1 @@
-1730822
+1732471

Modified: websites/staging/lucy/trunk/content/docs/test/Lucy.html
==============================================================================
--- websites/staging/lucy/trunk/content/docs/test/Lucy.html (original)
+++ websites/staging/lucy/trunk/content/docs/test/Lucy.html Fri Feb 26 12:52:42 
2016
@@ -71,21 +71,21 @@
           <div>
 <a name='___top' class='dummyTopAnchor' ></a>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="NAME"
->NAME</a></h1>
+>NAME</a></h2>
 
 <p>Lucy - Apache Lucy search engine library.</p>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="VERSION"
->VERSION</a></h1>
+>VERSION</a></h2>
 
-<p>0.3.0</p>
+<p>0.4.0</p>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="SYNOPSIS"
->SYNOPSIS</a></h1>
+>SYNOPSIS</a></h2>
 
 <p>First,
 plan out your index structure,
@@ -138,15 +138,15 @@ and add documents:</p>
         print &#34;$hit-&#62;{title}\n&#34;;
     }</pre>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="DESCRIPTION"
->DESCRIPTION</a></h1>
+>DESCRIPTION</a></h2>
 
 <p>The Apache Lucy search engine library delivers high-performance, modular 
full-text search.</p>
 
-<h2><a class='u' href='#___top' title='click to go to top of document'
+<h3><a class='u'
 name="Features"
->Features</a></h2>
+>Features</a></h3>
 
 <ul>
 <li>Extremely fast. A single machine can handle millions of documents.</li>
@@ -174,9 +174,9 @@ name="Features"
 <li>Stoplists.</li>
 </ul>
 
-<h2><a class='u' href='#___top' title='click to go to top of document'
+<h3><a class='u'
 name="Getting_Started"
->Getting Started</a></h2>
+>Getting Started</a></h3>
 
 <p><a href="./Lucy/Simple.html" class="podlinkpod"
 >Lucy::Simple</a> provides a stripped down API which may suffice for many 
 >tasks.</p>
@@ -203,9 +203,9 @@ name="Getting_Started"
 >Lucy::Analysis::EasyAnalyzer</a> - A one-size-fits-all parser/tokenizer.</li>
 </ul>
 
-<h2><a class='u' href='#___top' title='click to go to top of document'
+<h3><a class='u'
 name="Delving_Deeper"
->Delving Deeper</a></h2>
+>Delving Deeper</a></h3>
 
 <p><a href="./Lucy/Docs/Cookbook.html" class="podlinkpod"
 >Lucy::Docs::Cookbook</a> augments the tutorial with more advanced recipes.</p>
@@ -227,39 +227,39 @@ name="Delving_Deeper"
 >LucyX::Remote::SearchClient</a>, and <a 
 >href="./LucyX/Remote/ClusterSearcher.html" class="podlinkpod"
 >LucyX::Remote::ClusterSearcher</a>.</p>
 
-<h2><a class='u' href='#___top' title='click to go to top of document'
+<h3><a class='u'
 name="Backwards_Compatibility_Policy"
->Backwards Compatibility Policy</a></h2>
+>Backwards Compatibility Policy</a></h3>
 
 <p>Lucy will spin off stable forks into new namespaces periodically. The first 
will be named &#34;Lucy1&#34;. Users who require strong backwards compatibility 
should use a stable fork.</p>
 
 <p>The main namespace, &#34;Lucy&#34;, is an API-unstable development branch 
(as hinted at by its 0.x.x version number). Superficial interface changes 
happen frequently. Hard file format compatibility breaks which require 
reindexing are rare, as we generally try to provide continuity across multiple 
releases, but we reserve the right to make such changes.</p>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="CLASS_METHODS"
->CLASS METHODS</a></h1>
+>CLASS METHODS</a></h2>
 
 <p>The Lucy module itself does not have a large interface, providing only a 
single public class method.</p>
 
-<h2><a class='u' href='#___top' title='click to go to top of document'
+<h3><a class='u'
 name="error"
->error</a></h2>
+>error</a></h3>
 
 <pre>    my $instream = $folder-&#62;open_in( file =&#62; &#39;foo&#39; ) or 
die Clownfish-&#62;error;</pre>
 
 <p>Access a shared variable which is set by some routines on failure. It will 
always be either a <a href="./Clownfish/Err.html" class="podlinkpod"
 >Clownfish::Err</a> object or undef.</p>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="SUPPORT"
->SUPPORT</a></h1>
+>SUPPORT</a></h2>
 
 <p>The Apache Lucy homepage, where you&#39;ll find links to our mailing lists 
and so on, is <a href="http://lucy.apache.org"; class="podlinkurl"
 >http://lucy.apache.org</a>. Please direct support questions to the Lucy users 
 >mailing list.</p>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="BUGS"
->BUGS</a></h1>
+>BUGS</a></h2>
 
 <p>Not thread-safe.</p>
 
@@ -268,9 +268,9 @@ name="BUGS"
 <p>If you find a bug, please inquire on the Lucy users mailing list about it, 
then report it on the Lucy issue tracker once it has been confirmed: <a 
href="https://issues.apache.org/jira/browse/LUCY"; class="podlinkurl"
 >https://issues.apache.org/jira/browse/LUCY</a>.</p>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="COPYRIGHT"
->COPYRIGHT</a></h1>
+>COPYRIGHT</a></h2>
 
 <p>Apache Lucy is distributed under the Apache License, Version 2.0, as 
described in the file <code>LICENSE</code> included with the distribution.</p>
 

Modified: 
websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/Analyzer.html
==============================================================================
--- websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/Analyzer.html 
(original)
+++ websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/Analyzer.html 
Fri Feb 26 12:52:42 2016
@@ -71,29 +71,127 @@
           <div>
 <a name='___top' class='dummyTopAnchor' ></a>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="NAME"
->NAME</a></h1>
+>NAME</a></h2>
 
 <p>Lucy::Analysis::Analyzer - Tokenize/modify/filter text.</p>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="SYNOPSIS"
->SYNOPSIS</a></h1>
+>SYNOPSIS</a></h2>
 
 <pre>    # Abstract base class.</pre>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="DESCRIPTION"
->DESCRIPTION</a></h1>
+>DESCRIPTION</a></h2>
 
 <p>An Analyzer is a filter which processes text, transforming it from one form 
into another. For instance, an analyzer might break up a long text into smaller 
pieces (<a href="../../Lucy/Analysis/RegexTokenizer.html" class="podlinkpod"
 >RegexTokenizer</a>), or it might perform case folding to facilitate 
 >case-insensitive search (<a href="../../Lucy/Analysis/Normalizer.html" 
 >class="podlinkpod"
 >Normalizer</a>).</p>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
+name="CONSTRUCTORS"
+>CONSTRUCTORS</a></h2>
+
+<h3><a class='u'
+name="new"
+>new</a></h3>
+
+<pre>    package MyAnalyzer;
+    use base qw( Lucy::Analysis::Analyzer );
+    our %foo;
+    sub new {
+        my $self = shift-&#62;SUPER::new;
+        my %args = @_;
+        $foo{$$self} = $args{foo};
+        return $self;
+    }</pre>
+
+<p>Abstract constructor. Takes no arguments.</p>
+
+<h2><a class='u'
+name="ABSTRACT_METHODS"
+>ABSTRACT METHODS</a></h2>
+
+<h3><a class='u'
+name="transform"
+>transform</a></h3>
+
+<pre>    my $retval = $analyzer-&#62;transform($inversion);</pre>
+
+<p>Take a single <a href="../../Lucy/Analysis/Inversion.html" 
class="podlinkpod"
+>Inversion</a> as input and returns an Inversion, either the same one 
(presumably transformed in some way), or a new one.</p>
+
+<ul>
+<li><b>inversion</b> - An inversion.</li>
+</ul>
+
+<h2><a class='u'
+name="METHODS"
+>METHODS</a></h2>
+
+<h3><a class='u'
+name="transform_text"
+>transform_text</a></h3>
+
+<pre>    my $retval = $analyzer-&#62;transform_text($text);</pre>
+
+<p>Kick off an analysis chain, creating an Inversion from string input. The 
default implementation simply creates an initial Inversion with a single Token, 
then calls <a href="#transform" class="podlinkpod"
+>transform()</a>, but occasionally subclasses will provide an optimized 
implementation which minimizes string copies.</p>
+
+<ul>
+<li><b>text</b> - A string.</li>
+</ul>
+
+<h3><a class='u'
+name="split"
+>split</a></h3>
+
+<pre>    my $retval = $analyzer-&#62;split($text);</pre>
+
+<p>Analyze text and return an array of token texts.</p>
+
+<ul>
+<li><b>text</b> - A string.</li>
+</ul>
+
+<h3><a class='u'
+name="dump"
+>dump</a></h3>
+
+<pre>    my $retval = $analyzer-&#62;dump();</pre>
+
+<p>Dump the analyzer as hash.</p>
+
+<p>Subclasses should call <a href="#dump" class="podlinkpod"
+>dump()</a> on the superclass. The returned object is a hash which should be 
populated with parameters of the analyzer.</p>
+
+<p>Returns: A hash containing a description of the analyzer.</p>
+
+<h3><a class='u'
+name="load"
+>load</a></h3>
+
+<pre>    my $retval = $analyzer-&#62;load($dump);</pre>
+
+<p>Reconstruct an analyzer from a dump.</p>
+
+<p>Subclasses should first call <a href="#load" class="podlinkpod"
+>load()</a> on the superclass. The returned object is an analyzer which should 
be reconstructed by setting the dumped parameters from the hash contained in 
<code>dump</code>.</p>
+
+<p>Note that the invocant analyzer is unused.</p>
+
+<ul>
+<li><b>dump</b> - A hash.</li>
+</ul>
+
+<p>Returns: An analyzer.</p>
+
+<h2><a class='u'
 name="INHERITANCE"
->INHERITANCE</a></h1>
+>INHERITANCE</a></h2>
 
 <p>Lucy::Analysis::Analyzer isa Clownfish::Obj.</p>
 

Modified: 
websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/CaseFolder.html
==============================================================================
--- websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/CaseFolder.html 
(original)
+++ websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/CaseFolder.html 
Fri Feb 26 12:52:42 2016
@@ -71,16 +71,16 @@
           <div>
 <a name='___top' class='dummyTopAnchor' ></a>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="NAME"
->NAME</a></h1>
+>NAME</a></h2>
 
 <p>Lucy::Analysis::CaseFolder - Normalize case,
 facilitating case-insensitive search.</p>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="SYNOPSIS"
->SYNOPSIS</a></h1>
+>SYNOPSIS</a></h2>
 
 <pre>    my $case_folder = Lucy::Analysis::CaseFolder-&#62;new;
 
@@ -88,30 +88,47 @@ name="SYNOPSIS"
         analyzers =&#62; [ $tokenizer, $case_folder, $stemmer ],
     );</pre>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="DESCRIPTION"
->DESCRIPTION</a></h1>
+>DESCRIPTION</a></h2>
 
 <p>CaseFolder is DEPRECATED. Use <a href="../../Lucy/Analysis/Normalizer.html" 
class="podlinkpod"
 >Normalizer</a> instead.</p>
 
 <p>CaseFolder normalizes text according to Unicode case-folding rules, so that 
searches will be case-insensitive.</p>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="CONSTRUCTORS"
->CONSTRUCTORS</a></h1>
+>CONSTRUCTORS</a></h2>
 
-<h2><a class='u' href='#___top' title='click to go to top of document'
-name="new()"
->new()</a></h2>
+<h3><a class='u'
+name="new"
+>new</a></h3>
 
 <pre>    my $case_folder = Lucy::Analysis::CaseFolder-&#62;new;</pre>
 
 <p>Constructor. Takes no arguments.</p>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
+name="METHODS"
+>METHODS</a></h2>
+
+<h3><a class='u'
+name="transform"
+>transform</a></h3>
+
+<pre>    my $retval = $case_folder-&#62;transform($inversion);</pre>
+
+<p>Take a single <a href="../../Lucy/Analysis/Inversion.html" 
class="podlinkpod"
+>Inversion</a> as input and returns an Inversion, either the same one 
(presumably transformed in some way), or a new one.</p>
+
+<ul>
+<li><b>inversion</b> - An inversion.</li>
+</ul>
+
+<h2><a class='u'
 name="INHERITANCE"
->INHERITANCE</a></h1>
+>INHERITANCE</a></h2>
 
 <p>Lucy::Analysis::CaseFolder isa <a href="../../Lucy/Analysis/Analyzer.html" 
class="podlinkpod"
 >Lucy::Analysis::Analyzer</a> isa Clownfish::Obj.</p>

Modified: 
websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/EasyAnalyzer.html
==============================================================================
--- 
websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/EasyAnalyzer.html 
(original)
+++ 
websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/EasyAnalyzer.html 
Fri Feb 26 12:52:42 2016
@@ -71,15 +71,15 @@
           <div>
 <a name='___top' class='dummyTopAnchor' ></a>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="NAME"
->NAME</a></h1>
+>NAME</a></h2>
 
 <p>Lucy::Analysis::EasyAnalyzer - A simple analyzer chain.</p>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="SYNOPSIS"
->SYNOPSIS</a></h1>
+>SYNOPSIS</a></h2>
 
 <pre>    my $schema = Lucy::Plan::Schema-&#62;new;
     my $analyzer = Lucy::Analysis::EasyAnalyzer-&#62;new(
@@ -91,9 +91,9 @@ name="SYNOPSIS"
     $schema-&#62;spec_field( name =&#62; &#39;title&#39;,   type =&#62; $type 
);
     $schema-&#62;spec_field( name =&#62; &#39;content&#39;, type =&#62; $type 
);</pre>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="DESCRIPTION"
->DESCRIPTION</a></h1>
+>DESCRIPTION</a></h2>
 
 <p>EasyAnalyzer is an analyzer chain consisting of a <a 
href="../../Lucy/Analysis/StandardTokenizer.html" class="podlinkpod"
 >StandardTokenizer</a>, a <a href="../../Lucy/Analysis/Normalizer.html" 
 >class="podlinkpod"
@@ -118,25 +118,44 @@ name="DESCRIPTION"
     sv =&#62; Swedish,
     tr =&#62; Turkish,</pre>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="CONSTRUCTORS"
->CONSTRUCTORS</a></h1>
+>CONSTRUCTORS</a></h2>
 
-<h2><a class='u' href='#___top' title='click to go to top of document'
-name="new(_[labeled_params]_)"
->new( <i>[labeled params]</i> )</a></h2>
+<h3><a class='u'
+name="new"
+>new</a></h3>
 
 <pre>    my $analyzer = Lucy::Analysis::EasyAnalyzer-&#62;new(
         language  =&#62; &#39;es&#39;,
     );</pre>
 
+<p>Create a new EasyAnalyzer.</p>
+
 <ul>
 <li><b>language</b> - An ISO code from the list of supported languages.</li>
 </ul>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
+name="METHODS"
+>METHODS</a></h2>
+
+<h3><a class='u'
+name="transform"
+>transform</a></h3>
+
+<pre>    my $retval = $easy_analyzer-&#62;transform($inversion);</pre>
+
+<p>Take a single <a href="../../Lucy/Analysis/Inversion.html" 
class="podlinkpod"
+>Inversion</a> as input and returns an Inversion, either the same one 
(presumably transformed in some way), or a new one.</p>
+
+<ul>
+<li><b>inversion</b> - An inversion.</li>
+</ul>
+
+<h2><a class='u'
 name="INHERITANCE"
->INHERITANCE</a></h1>
+>INHERITANCE</a></h2>
 
 <p>Lucy::Analysis::EasyAnalyzer isa <a 
href="../../Lucy/Analysis/Analyzer.html" class="podlinkpod"
 >Lucy::Analysis::Analyzer</a> isa Clownfish::Obj.</p>

Added: 
websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/Inversion.html
==============================================================================
--- websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/Inversion.html 
(added)
+++ websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/Inversion.html 
Fri Feb 26 12:52:42 2016
@@ -0,0 +1,172 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html lang="en">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+    <title>Lucy::Analysis::Inversion - Apache Lucy Documentation</title>
+    <link rel="stylesheet" type="text/css" media="screen" 
href="http://lucy.apache.org/css/lucy.css";>
+  </head>
+
+  <body>
+
+    <div id="lucy-rigid_wrapper">
+
+      <div id="lucy-top" class="container_16 lucy-white_box_3d">
+
+        <div id="lucy-logo_box" class="grid_8">
+          <a href="/"><img 
src="http://lucy.apache.org/images/lucy_logo_150x100.png"; alt="Apache 
Lucy™"></a>
+        </div> <!-- lucy-logo_box -->
+
+        <div #id="lucy-top_nav_box" class="grid_8">
+          <div id="lucy-top_nav_bar" class="container_8">
+            <ul>
+              <li><a href="http://www.apache.org/"; title="Apache Software 
Foundation">Apache Software Foundation</a></li>
+              <li><a href="http://www.apache.org/licenses/"; 
title="License">License</a></li>
+              <li><a href="http://www.apache.org/foundation/sponsorship.html"; 
title="Sponsorship">Sponsorship</a></li>
+              <li><a href="http://www.apache.org/foundation/thanks.html"; 
title="Thanks">Thanks</a></li>
+              <li><a href="http://www.apache.org/security/ " 
title="Security">Security</a></li>
+            </ul>
+          </div> <!-- lucy-top_nav_bar -->
+          <p><a href="http://www.apache.org/";>Apache</a>&nbsp;&raquo&nbsp;<a 
href="/">Lucy</a>&nbsp;&raquo&nbsp;<a 
href="/docs/">Docs</a>&nbsp;&raquo&nbsp;<a 
href="/docs/test/">Test</a>&nbsp;&raquo&nbsp;<a 
href="/docs/test/Lucy/">Lucy</a>&nbsp;&raquo&nbsp;<a 
href="/docs/test/Lucy/Analysis/">Analysis</a></p>
+          <form name="lucy-top_search_box" id="lucy-top_search_box" 
action="http://www.google.com/search"; method="get">
+            <input value="*.apache.org" name="sitesearch" type="hidden"/>
+            <input type="text" name="q" id="query" style="width:85%">
+            <input type="submit" id="submit" value="Search">
+          </form>
+        </div> <!-- lucy-top_nav_box -->
+
+        <div class="clear"></div>
+
+      </div> <!-- lucy-top -->
+
+      <div id="lucy-main_content" class="container_16 lucy-white_box_3d">
+
+        <div class="grid_4" id="lucy-left_nav_box">
+          <h6>About</h6>
+            <ul>
+              <li><a href="/">Welcome</a></li>
+              <li><a href="/clownfish.html">Clownfish</a></li>
+              <li><a href="/faq.html">FAQ</a></li>
+              <li><a href="/people.html">People</a></li>
+            </ul>
+          <h6>Resources</h6>
+            <ul>
+              <li><a href="/download.html">Download</a></li>
+              <li><a href="/mailing_lists.html">Mailing Lists</a></li>
+              <li><a href="/docs/perl/">Documentation</a></li>
+              <li><a href="http://wiki.apache.org/lucy/";>Wiki</a></li>
+              <li><a href="https://issues.apache.org/jira/browse/LUCY";>Issue 
Tracker</a></li>
+              <li><a href="/version_control.html">Version Control</a></li>
+            </ul>
+          <h6>Related Projects</h6>
+            <ul>
+              <li><a href="http://lucene.apache.org/java/";>Lucene</a></li>
+              <li><a href="http://lucene.apache.org/solr/";>Solr</a></li>
+              <li><a 
href="http://incubator.apache.org/lucene.net/";>Lucene.NET</a></li>
+              <li><a 
href="http://lucene.apache.org/pylucene/";>PyLucene</a></li>
+              <li><a href="http://lucene.apache.org/openrelevance/";>Open 
Relevance</a></li>
+            </ul>
+        </div> <!-- lucy-left_nav_box -->
+
+        <div id="lucy-main_content_box" class="grid_9">
+          <div>
+<a name='___top' class='dummyTopAnchor' ></a>
+
+<h2><a class='u'
+name="NAME"
+>NAME</a></h2>
+
+<p>Lucy::Analysis::Inversion - A collection of Tokens.</p>
+
+<h2><a class='u'
+name="SYNOPSIS"
+>SYNOPSIS</a></h2>
+
+<pre>    my $result = Lucy::Analysis::Inversion-&#62;new;
+
+    while (my $token = $inversion-&#62;next) {
+        $result-&#62;append($token);
+    }</pre>
+
+<h2><a class='u'
+name="DESCRIPTION"
+>DESCRIPTION</a></h2>
+
+<p>An Inversion is a collection of Token objects which you can add to, then 
iterate over.</p>
+
+<h2><a class='u'
+name="CONSTRUCTORS"
+>CONSTRUCTORS</a></h2>
+
+<h3><a class='u'
+name="new"
+>new</a></h3>
+
+<pre>    my $inversion = Lucy::Analysis::Inversion-&#62;new(
+        $seed,  # optional
+    );</pre>
+
+<p>Create a new Inversion.</p>
+
+<ul>
+<li><b>seed</b> - An initial Token to start things off, which may be 
undef.</li>
+</ul>
+
+<h2><a class='u'
+name="METHODS"
+>METHODS</a></h2>
+
+<h3><a class='u'
+name="append"
+>append</a></h3>
+
+<pre>    $inversion-&#62;append($token);</pre>
+
+<p>Tack a token onto the end of the Inversion.</p>
+
+<ul>
+<li><b>token</b> - A Token.</li>
+</ul>
+
+<h3><a class='u'
+name="next"
+>next</a></h3>
+
+<pre>    my $retval = $inversion-&#62;next();</pre>
+
+<p>Return the next token in the Inversion until out of tokens.</p>
+
+<h3><a class='u'
+name="reset"
+>reset</a></h3>
+
+<pre>    $inversion-&#62;reset();</pre>
+
+<p>Reset the Inversion&#8217;s iterator, so that the next call to next() 
returns the first Token in the inversion.</p>
+
+<h2><a class='u'
+name="INHERITANCE"
+>INHERITANCE</a></h2>
+
+<p>Lucy::Analysis::Inversion isa Clownfish::Obj.</p>
+
+</div>
+
+        </div> <!-- lucy-main_content_box --> 
+        <div class="clear"></div>
+
+      </div> <!-- lucy-main_content -->
+
+      <div id="lucy-copyright" class="container_16">
+        <p>Copyright &#169; 2010-2015 The Apache Software Foundation, Licensed 
under the 
+           <a href="http://www.apache.org/licenses/LICENSE-2.0";>Apache 
License, Version 2.0</a>.
+           <br/>
+           Apache Lucy, Lucy, Apache, the Apache feather logo, and the Apache 
Lucy project logo are trademarks of The
+           Apache Software Foundation.  All other marks mentioned may be 
trademarks or registered trademarks of their
+           respective owners.
+        </p>
+      </div> <!-- lucy-copyright -->
+
+    </div> <!-- lucy-rigid_wrapper -->
+
+  </body>
+</html>

Modified: 
websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/Normalizer.html
==============================================================================
--- websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/Normalizer.html 
(original)
+++ websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/Normalizer.html 
Fri Feb 26 12:52:42 2016
@@ -71,16 +71,16 @@
           <div>
 <a name='___top' class='dummyTopAnchor' ></a>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="NAME"
->NAME</a></h1>
+>NAME</a></h2>
 
 <p>Lucy::Analysis::Normalizer - Unicode normalization,
 case folding and accent stripping.</p>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="SYNOPSIS"
->SYNOPSIS</a></h1>
+>SYNOPSIS</a></h2>
 
 <pre>    my $normalizer = Lucy::Analysis::Normalizer-&#62;new;
 
@@ -88,22 +88,22 @@ name="SYNOPSIS"
         analyzers =&#62; [ $tokenizer, $normalizer, $stemmer ],
     );</pre>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="DESCRIPTION"
->DESCRIPTION</a></h1>
+>DESCRIPTION</a></h2>
 
 <p>Normalizer is an <a href="../../Lucy/Analysis/Analyzer.html" 
class="podlinkpod"
 >Analyzer</a> which normalizes tokens to one of the Unicode normalization 
 >forms. Optionally, it performs Unicode case folding and converts accented 
 >characters to their base character.</p>
 
 <p>If you use highlighting, Normalizer should be run after tokenization 
because it might add or remove characters.</p>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="CONSTRUCTORS"
->CONSTRUCTORS</a></h1>
+>CONSTRUCTORS</a></h2>
 
-<h2><a class='u' href='#___top' title='click to go to top of document'
-name="new(_[labeled_params]_)"
->new( <i>[labeled params]</i> )</a></h2>
+<h3><a class='u'
+name="new"
+>new</a></h3>
 
 <pre>    my $normalizer = Lucy::Analysis::Normalizer-&#62;new(
         normalization_form =&#62; &#39;NFKC&#39;,
@@ -111,17 +111,36 @@ name="new(_[labeled_params]_)"
         strip_accents      =&#62; 0,
     );</pre>
 
+<p>Create a new Normalizer.</p>
+
 <ul>
-<li><b>normalization_form</b> - Unicode normalization form, can be one of 
&#39;NFC&#39;, &#39;NFKC&#39;, &#39;NFD&#39;, &#39;NFKD&#39;. Defaults to 
&#39;NFKC&#39;.</li>
+<li><b>normalization_form</b> - Unicode normalization form, can be one of 
&#8216;NFC&#8217;, &#8216;NFKC&#8217;, &#8216;NFD&#8217;, &#8216;NFKD&#8217;. 
Defaults to &#8216;NFKC&#8217;.</li>
 
 <li><b>case_fold</b> - Perform case folding, default is true.</li>
 
 <li><b>strip_accents</b> - Strip accents, default is false.</li>
 </ul>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
+name="METHODS"
+>METHODS</a></h2>
+
+<h3><a class='u'
+name="transform"
+>transform</a></h3>
+
+<pre>    my $retval = $normalizer-&#62;transform($inversion);</pre>
+
+<p>Take a single <a href="../../Lucy/Analysis/Inversion.html" 
class="podlinkpod"
+>Inversion</a> as input and returns an Inversion, either the same one 
(presumably transformed in some way), or a new one.</p>
+
+<ul>
+<li><b>inversion</b> - An inversion.</li>
+</ul>
+
+<h2><a class='u'
 name="INHERITANCE"
->INHERITANCE</a></h1>
+>INHERITANCE</a></h2>
 
 <p>Lucy::Analysis::Normalizer isa <a href="../../Lucy/Analysis/Analyzer.html" 
class="podlinkpod"
 >Lucy::Analysis::Analyzer</a> isa Clownfish::Obj.</p>

Modified: 
websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/PolyAnalyzer.html
==============================================================================
--- 
websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/PolyAnalyzer.html 
(original)
+++ 
websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/PolyAnalyzer.html 
Fri Feb 26 12:52:42 2016
@@ -71,15 +71,15 @@
           <div>
 <a name='___top' class='dummyTopAnchor' ></a>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="NAME"
->NAME</a></h1>
+>NAME</a></h2>
 
 <p>Lucy::Analysis::PolyAnalyzer - Multiple Analyzers in series.</p>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="SYNOPSIS"
->SYNOPSIS</a></h1>
+>SYNOPSIS</a></h2>
 
 <pre>    my $schema = Lucy::Plan::Schema-&#62;new;
     my $polyanalyzer = Lucy::Analysis::PolyAnalyzer-&#62;new( 
@@ -91,12 +91,12 @@ name="SYNOPSIS"
     $schema-&#62;spec_field( name =&#62; &#39;title&#39;,   type =&#62; $type 
);
     $schema-&#62;spec_field( name =&#62; &#39;content&#39;, type =&#62; $type 
);</pre>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="DESCRIPTION"
->DESCRIPTION</a></h1>
+>DESCRIPTION</a></h2>
 
 <p>A PolyAnalyzer is a series of <a href="../../Lucy/Analysis/Analyzer.html" 
class="podlinkpod"
->Analyzers</a>, each of which will be called upon to &#34;analyze&#34; text in 
turn. You can either provide the Analyzers yourself, or you can specify a 
supported language, in which case a PolyAnalyzer consisting of a <a 
href="../../Lucy/Analysis/CaseFolder.html" class="podlinkpod"
+>Analyzers</a>, each of which will be called upon to &#8220;analyze&#8221; 
text in turn. You can either provide the Analyzers yourself, or you can specify 
a supported language, in which case a PolyAnalyzer consisting of a <a 
href="../../Lucy/Analysis/CaseFolder.html" class="podlinkpod"
 >CaseFolder</a>, a <a href="../../Lucy/Analysis/RegexTokenizer.html" 
 >class="podlinkpod"
 >RegexTokenizer</a>, and a <a href="../../Lucy/Analysis/SnowballStemmer.html" 
 >class="podlinkpod"
 >SnowballStemmer</a> will be generated for you.</p>
@@ -122,13 +122,13 @@ name="DESCRIPTION"
     sv =&#62; Swedish,
     tr =&#62; Turkish,</pre>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="CONSTRUCTORS"
->CONSTRUCTORS</a></h1>
+>CONSTRUCTORS</a></h2>
 
-<h2><a class='u' href='#___top' title='click to go to top of document'
-name="new(_[labeled_params]_)"
->new( <i>[labeled params]</i> )</a></h2>
+<h3><a class='u'
+name="new"
+>new</a></h3>
 
 <pre>    my $tokenizer    = Lucy::Analysis::StandardTokenizer-&#62;new;
     my $normalizer   = Lucy::Analysis::Normalizer-&#62;new;
@@ -136,26 +136,43 @@ name="new(_[labeled_params]_)"
     my $polyanalyzer = Lucy::Analysis::PolyAnalyzer-&#62;new(
         analyzers =&#62; [ $tokenizer, $normalizer, $stemmer, ], );</pre>
 
+<p>Create a new PolyAnalyzer.</p>
+
 <ul>
 <li><b>language</b> - An ISO code from the list of supported languages. 
DEPRECATED, use <a href="../../Lucy/Analysis/EasyAnalyzer.html" 
class="podlinkpod"
 >EasyAnalyzer</a> instead.</li>
 
-<li><b>analyzers</b> - An array of Analyzers. The order of the analyzers 
matters. Don&#39;t put a SnowballStemmer before a RegexTokenizer (can&#39;t 
stem whole documents or paragraphs -- just individual words), or a 
SnowballStopFilter after a SnowballStemmer (stemmed words, e.g. 
&#34;themselv&#34;, will not appear in a stoplist). In general, the sequence 
should be: tokenize, normalize, stopalize, stem.</li>
+<li><b>analyzers</b> - An array of Analyzers. The order of the analyzers 
matters. Don&#8217;t put a SnowballStemmer before a RegexTokenizer (can&#8217;t 
stem whole documents or paragraphs &#8211; just individual words), or a 
SnowballStopFilter after a SnowballStemmer (stemmed words, e.g. 
&#8220;themselv&#8221;, will not appear in a stoplist). In general, the 
sequence should be: tokenize, normalize, stopalize, stem.</li>
 </ul>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="METHODS"
->METHODS</a></h1>
+>METHODS</a></h2>
+
+<h3><a class='u'
+name="get_analyzers"
+>get_analyzers</a></h3>
+
+<pre>    my $retval = $poly_analyzer-&#62;get_analyzers();</pre>
+
+<p>Getter for &#8220;analyzers&#8221; member.</p>
 
-<h2><a class='u' href='#___top' title='click to go to top of document'
-name="get_analyzers()"
->get_analyzers()</a></h2>
+<h3><a class='u'
+name="transform"
+>transform</a></h3>
 
-<p>Getter for &#34;analyzers&#34; member.</p>
+<pre>    my $retval = $poly_analyzer-&#62;transform($inversion);</pre>
+
+<p>Take a single <a href="../../Lucy/Analysis/Inversion.html" 
class="podlinkpod"
+>Inversion</a> as input and returns an Inversion, either the same one 
(presumably transformed in some way), or a new one.</p>
+
+<ul>
+<li><b>inversion</b> - An inversion.</li>
+</ul>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="INHERITANCE"
->INHERITANCE</a></h1>
+>INHERITANCE</a></h2>
 
 <p>Lucy::Analysis::PolyAnalyzer isa <a 
href="../../Lucy/Analysis/Analyzer.html" class="podlinkpod"
 >Lucy::Analysis::Analyzer</a> isa Clownfish::Obj.</p>

Modified: 
websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/RegexTokenizer.html
==============================================================================
--- 
websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/RegexTokenizer.html 
(original)
+++ 
websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/RegexTokenizer.html 
Fri Feb 26 12:52:42 2016
@@ -71,15 +71,15 @@
           <div>
 <a name='___top' class='dummyTopAnchor' ></a>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="NAME"
->NAME</a></h1>
+>NAME</a></h2>
 
 <p>Lucy::Analysis::RegexTokenizer - Split a string into tokens.</p>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="SYNOPSIS"
->SYNOPSIS</a></h1>
+>SYNOPSIS</a></h2>
 
 <pre>    my $whitespace_tokenizer
         = Lucy::Analysis::RegexTokenizer-&#62;new( pattern =&#62; 
&#39;\S+&#39; );
@@ -95,51 +95,70 @@ name="SYNOPSIS"
     my $polyanalyzer = Lucy::Analysis::PolyAnalyzer-&#62;new(
         analyzers =&#62; [ $word_char_tokenizer, $normalizer, $stemmer ], 
);</pre>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="DESCRIPTION"
->DESCRIPTION</a></h1>
+>DESCRIPTION</a></h2>
 
-<p>Generically, &#34;tokenizing&#34; is a process of breaking up a string into 
an array of &#34;tokens&#34;. For instance, the string &#34;three blind 
mice&#34; might be tokenized into &#34;three&#34;, &#34;blind&#34;, 
&#34;mice&#34;.</p>
+<p>Generically, &#8220;tokenizing&#8221; is a process of breaking up a string 
into an array of &#8220;tokens&#8221;. For instance, the string &#8220;three 
blind mice&#8221; might be tokenized into &#8220;three&#8221;, 
&#8220;blind&#8221;, &#8220;mice&#8221;.</p>
 
-<p>Lucy::Analysis::RegexTokenizer decides where it should break up the text 
based on a regular expression compiled from a supplied <code>pattern</code> 
matching one token. If our source string is...</p>
+<p>Lucy::Analysis::RegexTokenizer decides where it should break up the text 
based on a regular expression compiled from a supplied <code>pattern</code> 
matching one token. If our source string is&#8230;</p>
 
 <pre>    &#34;Eats, Shoots and Leaves.&#34;</pre>
 
-<p>... then a &#34;whitespace tokenizer&#34; with a <code>pattern</code> of 
<code>&#34;\\S+&#34;</code> produces...</p>
+<p>&#8230; then a &#8220;whitespace tokenizer&#8221; with a 
<code>pattern</code> of <code>&#34;\\S+&#34;</code> produces&#8230;</p>
 
 <pre>    Eats,
     Shoots
     and
     Leaves.</pre>
 
-<p>... while a &#34;word character tokenizer&#34; with a <code>pattern</code> 
of <code>&#34;\\w+&#34;</code> produces...</p>
+<p>&#8230; while a &#8220;word character tokenizer&#8221; with a 
<code>pattern</code> of <code>&#34;\\w+&#34;</code> produces&#8230;</p>
 
 <pre>    Eats
     Shoots
     and
     Leaves</pre>
 
-<p>... the difference being that the word character tokenizer skips over 
punctuation as well as whitespace when determining token boundaries.</p>
+<p>&#8230; the difference being that the word character tokenizer skips over 
punctuation as well as whitespace when determining token boundaries.</p>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="CONSTRUCTORS"
->CONSTRUCTORS</a></h1>
+>CONSTRUCTORS</a></h2>
 
-<h2><a class='u' href='#___top' title='click to go to top of document'
-name="new(_[labeled_params]_)"
->new( <i>[labeled params]</i> )</a></h2>
+<h3><a class='u'
+name="new"
+>new</a></h3>
 
 <pre>    my $word_char_tokenizer = Lucy::Analysis::RegexTokenizer-&#62;new(
         pattern =&#62; &#39;\w+&#39;,    # required
     );</pre>
 
+<p>Create a new RegexTokenizer.</p>
+
+<ul>
+<li><b>pattern</b> - A string specifying a Perl-syntax regular expression 
which should match one token. The default value is 
<code>\w+(?:[\x{2019}&#39;]\w+)*</code>, which matches &#8220;it&#8217;s&#8221; 
as well as &#8220;it&#8221; and &#8220;O&#8217;Henry&#8217;s&#8221; as well as 
&#8220;Henry&#8221;.</li>
+</ul>
+
+<h2><a class='u'
+name="METHODS"
+>METHODS</a></h2>
+
+<h3><a class='u'
+name="transform"
+>transform</a></h3>
+
+<pre>    my $retval = $regex_tokenizer-&#62;transform($inversion);</pre>
+
+<p>Take a single <a href="../../Lucy/Analysis/Inversion.html" 
class="podlinkpod"
+>Inversion</a> as input and returns an Inversion, either the same one 
(presumably transformed in some way), or a new one.</p>
+
 <ul>
-<li><b>pattern</b> - A string specifying a Perl-syntax regular expression 
which should match one token. The default value is 
<code>\w+(?:[\x{2019}&#39;]\w+)*</code>, which matches &#34;it&#39;s&#34; as 
well as &#34;it&#34; and &#34;O&#39;Henry&#39;s&#34; as well as 
&#34;Henry&#34;.</li>
+<li><b>inversion</b> - An inversion.</li>
 </ul>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="INHERITANCE"
->INHERITANCE</a></h1>
+>INHERITANCE</a></h2>
 
 <p>Lucy::Analysis::RegexTokenizer isa <a 
href="../../Lucy/Analysis/Analyzer.html" class="podlinkpod"
 >Lucy::Analysis::Analyzer</a> isa Clownfish::Obj.</p>

Modified: 
websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/SnowballStemmer.html
==============================================================================
--- 
websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/SnowballStemmer.html
 (original)
+++ 
websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/SnowballStemmer.html
 Fri Feb 26 12:52:42 2016
@@ -71,15 +71,15 @@
           <div>
 <a name='___top' class='dummyTopAnchor' ></a>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="NAME"
->NAME</a></h1>
+>NAME</a></h2>
 
 <p>Lucy::Analysis::SnowballStemmer - Reduce related words to a shared root.</p>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="SYNOPSIS"
->SYNOPSIS</a></h1>
+>SYNOPSIS</a></h2>
 
 <pre>    my $stemmer = Lucy::Analysis::SnowballStemmer-&#62;new( language 
=&#62; &#39;es&#39; );
 
@@ -89,30 +89,49 @@ name="SYNOPSIS"
 
 <p>This class is a wrapper around the Snowball stemming library, so it 
supports the same languages.</p>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="DESCRIPTION"
->DESCRIPTION</a></h1>
+>DESCRIPTION</a></h2>
 
 <p>SnowballStemmer is an <a href="../../Lucy/Analysis/Analyzer.html" 
class="podlinkpod"
->Analyzer</a> which reduces related words to a root form (using the 
&#34;Snowball&#34; stemming library). For instance, &#34;horse&#34;, 
&#34;horses&#34;, and &#34;horsing&#34; all become &#34;hors&#34; -- so that a 
search for &#39;horse&#39; will also match documents containing 
&#39;horses&#39; and &#39;horsing&#39;.</p>
+>Analyzer</a> which reduces related words to a root form (using the 
&#8220;Snowball&#8221; stemming library). For instance, &#8220;horse&#8221;, 
&#8220;horses&#8221;, and &#8220;horsing&#8221; all become &#8220;hors&#8221; 
&#8211; so that a search for &#8216;horse&#8217; will also match documents 
containing &#8216;horses&#8217; and &#8216;horsing&#8217;.</p>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="CONSTRUCTORS"
->CONSTRUCTORS</a></h1>
+>CONSTRUCTORS</a></h2>
 
-<h2><a class='u' href='#___top' title='click to go to top of document'
-name="new(_[labeled_params]_)"
->new( <i>[labeled params]</i> )</a></h2>
+<h3><a class='u'
+name="new"
+>new</a></h3>
 
 <pre>    my $stemmer = Lucy::Analysis::SnowballStemmer-&#62;new( language 
=&#62; &#39;es&#39; );</pre>
 
+<p>Create a new SnowballStemmer.</p>
+
 <ul>
 <li><b>language</b> - A two-letter ISO code identifying a language supported 
by Snowball.</li>
 </ul>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
+name="METHODS"
+>METHODS</a></h2>
+
+<h3><a class='u'
+name="transform"
+>transform</a></h3>
+
+<pre>    my $retval = $snowball_stemmer-&#62;transform($inversion);</pre>
+
+<p>Take a single <a href="../../Lucy/Analysis/Inversion.html" 
class="podlinkpod"
+>Inversion</a> as input and returns an Inversion, either the same one 
(presumably transformed in some way), or a new one.</p>
+
+<ul>
+<li><b>inversion</b> - An inversion.</li>
+</ul>
+
+<h2><a class='u'
 name="INHERITANCE"
->INHERITANCE</a></h1>
+>INHERITANCE</a></h2>
 
 <p>Lucy::Analysis::SnowballStemmer isa <a 
href="../../Lucy/Analysis/Analyzer.html" class="podlinkpod"
 >Lucy::Analysis::Analyzer</a> isa Clownfish::Obj.</p>

Modified: 
websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/SnowballStopFilter.html
==============================================================================
--- 
websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/SnowballStopFilter.html
 (original)
+++ 
websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/SnowballStopFilter.html
 Fri Feb 26 12:52:42 2016
@@ -71,15 +71,15 @@
           <div>
 <a name='___top' class='dummyTopAnchor' ></a>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="NAME"
->NAME</a></h1>
+>NAME</a></h2>
 
-<p>Lucy::Analysis::SnowballStopFilter - Suppress a &#34;stoplist&#34; of 
common words.</p>
+<p>Lucy::Analysis::SnowballStopFilter - Suppress a &#8220;stoplist&#8221; of 
common words.</p>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="SYNOPSIS"
->SYNOPSIS</a></h1>
+>SYNOPSIS</a></h2>
 
 <pre>    my $stopfilter = Lucy::Analysis::SnowballStopFilter-&#62;new(
         language =&#62; &#39;fr&#39;,
@@ -88,11 +88,11 @@ name="SYNOPSIS"
         analyzers =&#62; [ $tokenizer, $normalizer, $stopfilter, $stemmer ],
     );</pre>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="DESCRIPTION"
->DESCRIPTION</a></h1>
+>DESCRIPTION</a></h2>
 
-<p>A &#34;stoplist&#34; is collection of &#34;stopwords&#34;: words which are 
common enough to be of little value when determining search results. For 
example, so many documents in English contain &#34;the&#34;, &#34;if&#34;, and 
&#34;maybe&#34; that it may improve both performance and relevance to block 
them.</p>
+<p>A &#8220;stoplist&#8221; is collection of &#8220;stopwords&#8221;: words 
which are common enough to be of little value when determining search results. 
For example, so many documents in English contain &#8220;the&#8221;, 
&#8220;if&#8221;, and &#8220;maybe&#8221; that it may improve both performance 
and relevance to block them.</p>
 
 <p>Before filtering stopwords:</p>
 
@@ -102,7 +102,8 @@ name="DESCRIPTION"
 
 <pre>    (&#34;walrus&#34;)</pre>
 
-<p>SnowballStopFilter provides default stoplists for several languages, 
courtesy of the Snowball project (&#60;http://snowball.tartarus.org&#62;), or 
you may supply your own.</p>
+<p>SnowballStopFilter provides default stoplists for several languages, 
courtesy of the <a href="http://snowball.tartarus.org"; class="podlinkurl"
+>Snowball project</a>, or you may supply your own.</p>
 
 <pre>    |-----------------------|
     | ISO CODE | LANGUAGE   |
@@ -122,13 +123,13 @@ name="DESCRIPTION"
     | ru       | Russian    |
     |-----------------------|</pre>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="CONSTRUCTORS"
->CONSTRUCTORS</a></h1>
+>CONSTRUCTORS</a></h2>
 
-<h2><a class='u' href='#___top' title='click to go to top of document'
-name="new(_[labeled_params]_)"
->new( <i>[labeled params]</i> )</a></h2>
+<h3><a class='u'
+name="new"
+>new</a></h3>
 
 <pre>    my $stopfilter = Lucy::Analysis::SnowballStopFilter-&#62;new(
         language =&#62; &#39;de&#39;,
@@ -139,15 +140,34 @@ name="new(_[labeled_params]_)"
         stoplist =&#62; \%stoplist,
     );</pre>
 
+<p>Create a new SnowballStopFilter.</p>
+
 <ul>
 <li><b>stoplist</b> - A hash with stopwords as the keys.</li>
 
 <li><b>language</b> - The ISO code for a supported language.</li>
 </ul>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
+name="METHODS"
+>METHODS</a></h2>
+
+<h3><a class='u'
+name="transform"
+>transform</a></h3>
+
+<pre>    my $retval = $snowball_stop_filter-&#62;transform($inversion);</pre>
+
+<p>Take a single <a href="../../Lucy/Analysis/Inversion.html" 
class="podlinkpod"
+>Inversion</a> as input and returns an Inversion, either the same one 
(presumably transformed in some way), or a new one.</p>
+
+<ul>
+<li><b>inversion</b> - An inversion.</li>
+</ul>
+
+<h2><a class='u'
 name="INHERITANCE"
->INHERITANCE</a></h1>
+>INHERITANCE</a></h2>
 
 <p>Lucy::Analysis::SnowballStopFilter isa <a 
href="../../Lucy/Analysis/Analyzer.html" class="podlinkpod"
 >Lucy::Analysis::Analyzer</a> isa Clownfish::Obj.</p>

Modified: 
websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/StandardTokenizer.html
==============================================================================
--- 
websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/StandardTokenizer.html
 (original)
+++ 
websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/StandardTokenizer.html
 Fri Feb 26 12:52:42 2016
@@ -71,15 +71,15 @@
           <div>
 <a name='___top' class='dummyTopAnchor' ></a>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="NAME"
->NAME</a></h1>
+>NAME</a></h2>
 
 <p>Lucy::Analysis::StandardTokenizer - Split a string into tokens.</p>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="SYNOPSIS"
->SYNOPSIS</a></h1>
+>SYNOPSIS</a></h2>
 
 <pre>    my $tokenizer = Lucy::Analysis::StandardTokenizer-&#62;new;
 
@@ -87,29 +87,46 @@ name="SYNOPSIS"
     my $polyanalyzer = Lucy::Analysis::PolyAnalyzer-&#62;new(
         analyzers =&#62; [ $tokenizer, $normalizer, $stemmer ], );</pre>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="DESCRIPTION"
->DESCRIPTION</a></h1>
+>DESCRIPTION</a></h2>
 
-<p>Generically, &#34;tokenizing&#34; is a process of breaking up a string into 
an array of &#34;tokens&#34;. For instance, the string &#34;three blind 
mice&#34; might be tokenized into &#34;three&#34;, &#34;blind&#34;, 
&#34;mice&#34;.</p>
+<p>Generically, &#8220;tokenizing&#8221; is a process of breaking up a string 
into an array of &#8220;tokens&#8221;. For instance, the string &#8220;three 
blind mice&#8221; might be tokenized into &#8220;three&#8221;, 
&#8220;blind&#8221;, &#8220;mice&#8221;.</p>
 
-<p>Lucy::Analysis::StandardTokenizer breaks up the text at the word boundaries 
defined in Unicode Standard Annex #29. It then returns those words that start 
with an alphabetic or numeric character.</p>
+<p>Lucy::Analysis::StandardTokenizer breaks up the text at the word boundaries 
defined in Unicode Standard Annex #29. It then returns those words that contain 
alphabetic or numeric characters.</p>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="CONSTRUCTORS"
->CONSTRUCTORS</a></h1>
+>CONSTRUCTORS</a></h2>
 
-<h2><a class='u' href='#___top' title='click to go to top of document'
-name="new()"
->new()</a></h2>
+<h3><a class='u'
+name="new"
+>new</a></h3>
 
 <pre>    my $tokenizer = Lucy::Analysis::StandardTokenizer-&#62;new;</pre>
 
 <p>Constructor. Takes no arguments.</p>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
+name="METHODS"
+>METHODS</a></h2>
+
+<h3><a class='u'
+name="transform"
+>transform</a></h3>
+
+<pre>    my $retval = $standard_tokenizer-&#62;transform($inversion);</pre>
+
+<p>Take a single <a href="../../Lucy/Analysis/Inversion.html" 
class="podlinkpod"
+>Inversion</a> as input and returns an Inversion, either the same one 
(presumably transformed in some way), or a new one.</p>
+
+<ul>
+<li><b>inversion</b> - An inversion.</li>
+</ul>
+
+<h2><a class='u'
 name="INHERITANCE"
->INHERITANCE</a></h1>
+>INHERITANCE</a></h2>
 
 <p>Lucy::Analysis::StandardTokenizer isa <a 
href="../../Lucy/Analysis/Analyzer.html" class="podlinkpod"
 >Lucy::Analysis::Analyzer</a> isa Clownfish::Obj.</p>

Added: websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/Token.html
==============================================================================
--- websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/Token.html 
(added)
+++ websites/staging/lucy/trunk/content/docs/test/Lucy/Analysis/Token.html Fri 
Feb 26 12:52:42 2016
@@ -0,0 +1,210 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html lang="en">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+    <title>Lucy::Analysis::Token - Apache Lucy Documentation</title>
+    <link rel="stylesheet" type="text/css" media="screen" 
href="http://lucy.apache.org/css/lucy.css";>
+  </head>
+
+  <body>
+
+    <div id="lucy-rigid_wrapper">
+
+      <div id="lucy-top" class="container_16 lucy-white_box_3d">
+
+        <div id="lucy-logo_box" class="grid_8">
+          <a href="/"><img 
src="http://lucy.apache.org/images/lucy_logo_150x100.png"; alt="Apache 
Lucy™"></a>
+        </div> <!-- lucy-logo_box -->
+
+        <div #id="lucy-top_nav_box" class="grid_8">
+          <div id="lucy-top_nav_bar" class="container_8">
+            <ul>
+              <li><a href="http://www.apache.org/"; title="Apache Software 
Foundation">Apache Software Foundation</a></li>
+              <li><a href="http://www.apache.org/licenses/"; 
title="License">License</a></li>
+              <li><a href="http://www.apache.org/foundation/sponsorship.html"; 
title="Sponsorship">Sponsorship</a></li>
+              <li><a href="http://www.apache.org/foundation/thanks.html"; 
title="Thanks">Thanks</a></li>
+              <li><a href="http://www.apache.org/security/ " 
title="Security">Security</a></li>
+            </ul>
+          </div> <!-- lucy-top_nav_bar -->
+          <p><a href="http://www.apache.org/";>Apache</a>&nbsp;&raquo&nbsp;<a 
href="/">Lucy</a>&nbsp;&raquo&nbsp;<a 
href="/docs/">Docs</a>&nbsp;&raquo&nbsp;<a 
href="/docs/test/">Test</a>&nbsp;&raquo&nbsp;<a 
href="/docs/test/Lucy/">Lucy</a>&nbsp;&raquo&nbsp;<a 
href="/docs/test/Lucy/Analysis/">Analysis</a></p>
+          <form name="lucy-top_search_box" id="lucy-top_search_box" 
action="http://www.google.com/search"; method="get">
+            <input value="*.apache.org" name="sitesearch" type="hidden"/>
+            <input type="text" name="q" id="query" style="width:85%">
+            <input type="submit" id="submit" value="Search">
+          </form>
+        </div> <!-- lucy-top_nav_box -->
+
+        <div class="clear"></div>
+
+      </div> <!-- lucy-top -->
+
+      <div id="lucy-main_content" class="container_16 lucy-white_box_3d">
+
+        <div class="grid_4" id="lucy-left_nav_box">
+          <h6>About</h6>
+            <ul>
+              <li><a href="/">Welcome</a></li>
+              <li><a href="/clownfish.html">Clownfish</a></li>
+              <li><a href="/faq.html">FAQ</a></li>
+              <li><a href="/people.html">People</a></li>
+            </ul>
+          <h6>Resources</h6>
+            <ul>
+              <li><a href="/download.html">Download</a></li>
+              <li><a href="/mailing_lists.html">Mailing Lists</a></li>
+              <li><a href="/docs/perl/">Documentation</a></li>
+              <li><a href="http://wiki.apache.org/lucy/";>Wiki</a></li>
+              <li><a href="https://issues.apache.org/jira/browse/LUCY";>Issue 
Tracker</a></li>
+              <li><a href="/version_control.html">Version Control</a></li>
+            </ul>
+          <h6>Related Projects</h6>
+            <ul>
+              <li><a href="http://lucene.apache.org/java/";>Lucene</a></li>
+              <li><a href="http://lucene.apache.org/solr/";>Solr</a></li>
+              <li><a 
href="http://incubator.apache.org/lucene.net/";>Lucene.NET</a></li>
+              <li><a 
href="http://lucene.apache.org/pylucene/";>PyLucene</a></li>
+              <li><a href="http://lucene.apache.org/openrelevance/";>Open 
Relevance</a></li>
+            </ul>
+        </div> <!-- lucy-left_nav_box -->
+
+        <div id="lucy-main_content_box" class="grid_9">
+          <div>
+<a name='___top' class='dummyTopAnchor' ></a>
+
+<h2><a class='u'
+name="NAME"
+>NAME</a></h2>
+
+<p>Lucy::Analysis::Token - Unit of text.</p>
+
+<h2><a class='u'
+name="SYNOPSIS"
+>SYNOPSIS</a></h2>
+
+<pre>        my $token = Lucy::Analysis::Token-&#62;new(
+            text         =&#62; &#39;blind&#39;,
+            start_offset =&#62; 8,
+            end_offset   =&#62; 13,
+        );
+
+        $token-&#62;set_text(&#39;mice&#39;);</pre>
+
+<h2><a class='u'
+name="DESCRIPTION"
+>DESCRIPTION</a></h2>
+
+<p>Token is the fundamental unit used by Apache Lucy&#8217;s Analyzer 
subclasses. Each Token has 5 attributes: <code>text</code>, 
<code>start_offset</code>, <code>end_offset</code>, <code>boost</code>, and 
<code>pos_inc</code>.</p>
+
+<p>The <code>text</code> attribute is a Unicode string encoded as UTF-8.</p>
+
+<p><code>start_offset</code> is the start point of the token text, measured in 
Unicode code points from the top of the stored field; <code>end_offset</code> 
delimits the corresponding closing boundary. <code>start_offset</code> and 
<code>end_offset</code> locate the Token within a larger context, even if the 
Token&#8217;s text attribute gets modified &#8211; by stemming, for instance. 
The Token for &#8220;beating&#8221; in the text &#8220;beating a dead 
horse&#8221; begins life with a start_offset of 0 and an end_offset of 7; after 
stemming, the text is &#8220;beat&#8221;, but the start_offset is still 0 and 
the end_offset is still 7. This allows &#8220;beating&#8221; to be highlighted 
correctly after a search matches &#8220;beat&#8221;.</p>
+
+<p><code>boost</code> is a per-token weight. Use this when you want to assign 
more or less importance to a particular token, as you might for emboldened text 
within an HTML document, for example. (Note: The field this token belongs to 
must be spec&#8217;d to use a posting of type RichPosting.)</p>
+
+<p><code>pos_inc</code> is the POSition INCrement, measured in Tokens. This 
attribute, which defaults to 1, is a an advanced tool for manipulating phrase 
matching. Ordinarily, Tokens are assigned consecutive position numbers: 0, 1, 
and 2 for <code>&#34;three blind mice&#34;</code>. However, if you set the 
position increment for &#8220;blind&#8221; to, say, 1000, then the three tokens 
will end up assigned to positions 0, 1, and 1001 &#8211; and will no longer 
produce a phrase match for the query <code>&#34;three blind 
mice&#34;</code>.</p>
+
+<h2><a class='u'
+name="CONSTRUCTORS"
+>CONSTRUCTORS</a></h2>
+
+<h3><a class='u'
+name="new"
+>new</a></h3>
+
+<pre>    my $token = Lucy::Analysis::Token-&#62;new(
+        text         =&#62; $text,          # required
+        start_offset =&#62; $start_offset,  # required
+        end_offset   =&#62; $end_offset,    # required
+        boost        =&#62; 1.0,            # optional
+        pos_inc      =&#62; 1,              # optional
+    );</pre>
+
+<ul>
+<li><b>text</b> - A string.</li>
+
+<li><b>start_offset</b> - Start offset into the original document in Unicode 
code points.</li>
+
+<li><b>start_offset</b> - End offset into the original document in Unicode 
code points.</li>
+
+<li><b>boost</b> - Per-token weight.</li>
+
+<li><b>pos_inc</b> - Position increment for phrase matching.</li>
+</ul>
+
+<h2><a class='u'
+name="METHODS"
+>METHODS</a></h2>
+
+<h3><a class='u'
+name="get_text"
+>get_text</a></h3>
+
+<pre>    my $text = $token-&#62;get_text;</pre>
+
+<p>Get the token&#39;s text.</p>
+
+<h3><a class='u'
+name="set_text"
+>set_text</a></h3>
+
+<pre>    $token-&#62;set_text($text);</pre>
+
+<p>Set the token&#39;s text.</p>
+
+<h3><a class='u'
+name="get_start_offset"
+>get_start_offset</a></h3>
+
+<pre>    my $retval = $token-&#62;get_start_offset();</pre>
+
+<h3><a class='u'
+name="get_end_offset"
+>get_end_offset</a></h3>
+
+<pre>    my $retval = $token-&#62;get_end_offset();</pre>
+
+<h3><a class='u'
+name="get_boost"
+>get_boost</a></h3>
+
+<pre>    my $retval = $token-&#62;get_boost();</pre>
+
+<h3><a class='u'
+name="get_pos_inc"
+>get_pos_inc</a></h3>
+
+<pre>    my $retval = $token-&#62;get_pos_inc();</pre>
+
+<h3><a class='u'
+name="get_len"
+>get_len</a></h3>
+
+<pre>    my $retval = $token-&#62;get_len();</pre>
+
+<h2><a class='u'
+name="INHERITANCE"
+>INHERITANCE</a></h2>
+
+<p>Lucy::Analysis::Token isa Clownfish::Obj.</p>
+
+</div>
+
+        </div> <!-- lucy-main_content_box --> 
+        <div class="clear"></div>
+
+      </div> <!-- lucy-main_content -->
+
+      <div id="lucy-copyright" class="container_16">
+        <p>Copyright &#169; 2010-2015 The Apache Software Foundation, Licensed 
under the 
+           <a href="http://www.apache.org/licenses/LICENSE-2.0";>Apache 
License, Version 2.0</a>.
+           <br/>
+           Apache Lucy, Lucy, Apache, the Apache feather logo, and the Apache 
Lucy project logo are trademarks of The
+           Apache Software Foundation.  All other marks mentioned may be 
trademarks or registered trademarks of their
+           respective owners.
+        </p>
+      </div> <!-- lucy-copyright -->
+
+    </div> <!-- lucy-rigid_wrapper -->
+
+  </body>
+</html>

Modified: websites/staging/lucy/trunk/content/docs/test/Lucy/Docs/Cookbook.html
==============================================================================
--- websites/staging/lucy/trunk/content/docs/test/Lucy/Docs/Cookbook.html 
(original)
+++ websites/staging/lucy/trunk/content/docs/test/Lucy/Docs/Cookbook.html Fri 
Feb 26 12:52:42 2016
@@ -71,43 +71,43 @@
           <div>
 <a name='___top' class='dummyTopAnchor' ></a>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="NAME"
->NAME</a></h1>
+>NAME</a></h2>
 
-<p>Lucy::Docs::Cookbook - Apache Lucy recipes.</p>
+<p>Lucy::Docs::Cookbook - Apache Lucy recipes</p>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="DESCRIPTION"
->DESCRIPTION</a></h1>
+>DESCRIPTION</a></h2>
 
-<p>The Cookbook provides thematic documentation covering some of Apache 
Lucy&#39;s more sophisticated features.
+<p>The Cookbook provides thematic documentation covering some of Apache 
Lucy&#8217;s more sophisticated features.
 For a step-by-step introduction to Lucy,
 see <a href="../../Lucy/Docs/Tutorial.html" class="podlinkpod"
->Lucy::Docs::Tutorial</a>.</p>
+>Tutorial</a>.</p>
 
-<h2><a class='u' href='#___top' title='click to go to top of document'
+<h3><a class='u'
 name="Chapters"
->Chapters</a></h2>
+>Chapters</a></h3>
 
 <ul>
 <li><a href="../../Lucy/Docs/Cookbook/FastUpdates.html" class="podlinkpod"
->Lucy::Docs::Cookbook::FastUpdates</a> - While index updates are fast on 
average,
+>FastUpdates</a> - While index updates are fast on average,
 worst-case update performance may be significantly slower.
 To make index updates consistently quick,
 we must manually intervene to control the process of index segment 
consolidation.</li>
 
 <li><a href="../../Lucy/Docs/Cookbook/CustomQuery.html" class="podlinkpod"
->Lucy::Docs::Cookbook::CustomQuery</a> - Explore Lucy&#39;s support for custom 
query types by creating a &#34;PrefixQuery&#34; class to handle trailing 
wildcards.</li>
+>CustomQuery</a> - Explore Lucy&#8217;s support for custom query types by 
creating a &#8220;PrefixQuery&#8221; class to handle trailing wildcards.</li>
 
 <li><a href="../../Lucy/Docs/Cookbook/CustomQueryParser.html" 
class="podlinkpod"
->Lucy::Docs::Cookbook::CustomQueryParser</a> - Define your own custom search 
query syntax using Lucy::Search::QueryParser and <a 
href="../../Parse/RecDescent.html" class="podlinkpod"
->Parse::RecDescent</a>.</li>
+>CustomQueryParser</a> - Define your own custom search query syntax using <a 
href="../../Lucy/Search/QueryParser.html" class="podlinkpod"
+>QueryParser</a> and Parse::RecDescent.</li>
 </ul>
 
-<h2><a class='u' href='#___top' title='click to go to top of document'
+<h3><a class='u'
 name="Materials"
->Materials</a></h2>
+>Materials</a></h3>
 
 <p>Some of the recipes in the Cookbook reference the completed <a 
href="../../Lucy/Docs/Tutorial.html" class="podlinkpod"
 >Tutorial</a> application.

Modified: 
websites/staging/lucy/trunk/content/docs/test/Lucy/Docs/Cookbook/CustomQuery.html
==============================================================================
--- 
websites/staging/lucy/trunk/content/docs/test/Lucy/Docs/Cookbook/CustomQuery.html
 (original)
+++ 
websites/staging/lucy/trunk/content/docs/test/Lucy/Docs/Cookbook/CustomQuery.html
 Fri Feb 26 12:52:42 2016
@@ -71,17 +71,17 @@
           <div>
 <a name='___top' class='dummyTopAnchor' ></a>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="NAME"
->NAME</a></h1>
+>NAME</a></h2>
 
-<p>Lucy::Docs::Cookbook::CustomQuery - Sample subclass of Query.</p>
+<p>Lucy::Docs::Cookbook::CustomQuery - Sample subclass of Query</p>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
-name="ABSTRACT"
->ABSTRACT</a></h1>
+<h2><a class='u'
+name="DESCRIPTION"
+>DESCRIPTION</a></h2>
 
-<p>Explore Apache Lucy&#39;s support for custom query types by creating a 
&#34;PrefixQuery&#34; class to handle trailing wildcards.</p>
+<p>Explore Apache Lucy&#8217;s support for custom query types by creating a 
&#8220;PrefixQuery&#8221; class to handle trailing wildcards.</p>
 
 <pre>    my $prefix_query = PrefixQuery-&#62;new(
         field        =&#62; &#39;content&#39;,
@@ -90,30 +90,33 @@ name="ABSTRACT"
     my $hits = $searcher-&#62;hits( query =&#62; $prefix_query );
     ...</pre>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h3><a class='u'
 name="Query,_Compiler,_and_Matcher"
->Query, Compiler, and Matcher</a></h1>
+>Query, Compiler, and Matcher</a></h3>
 
 <p>To add support for a new query type, we need three classes: a Query, a 
Compiler, and a Matcher.</p>
 
 <ul>
 <li>PrefixQuery - a subclass of <a href="../../../Lucy/Search/Query.html" 
class="podlinkpod"
->Lucy::Search::Query</a>, and the only class that client code will deal with 
directly.</li>
+>Query</a>, and the only class that client code will deal with directly.</li>
 
 <li>PrefixCompiler - a subclass of <a 
href="../../../Lucy/Search/Compiler.html" class="podlinkpod"
->Lucy::Search::Compiler</a>, whose primary role is to compile a PrefixQuery to 
a PrefixMatcher.</li>
+>Compiler</a>, whose primary role is to compile a PrefixQuery to a 
PrefixMatcher.</li>
 
 <li>PrefixMatcher - a subclass of <a href="../../../Lucy/Search/Matcher.html" 
class="podlinkpod"
->Lucy::Search::Matcher</a>, which does the heavy lifting: it applies the query 
to individual documents and assigns a score to each match.</li>
+>Matcher</a>, which does the heavy lifting: it applies the query to individual 
documents and assigns a score to each match.</li>
 </ul>
 
-<p>The PrefixQuery class on its own isn&#39;t enough because a Query 
object&#39;s role is limited to expressing an abstract specification for the 
search. A Query is basically nothing but metadata; execution is left to the 
Query&#39;s companion Compiler and Matcher.</p>
+<p>The PrefixQuery class on its own isn&#8217;t enough because a Query 
object&#8217;s role is limited to expressing an abstract specification for the 
search. A Query is basically nothing but metadata; execution is left to the 
Query&#8217;s companion Compiler and Matcher.</p>
 
-<p>Here&#39;s a simplified sketch illustrating how a Searcher&#39;s hits() 
method ties together the three classes.</p>
+<p>Here&#8217;s a simplified sketch illustrating how a Searcher&#8217;s hits() 
method ties together the three classes.</p>
 
 <pre>    sub hits {
         my ( $self, $query ) = @_;
-        my $compiler = $query-&#62;make_compiler( searcher =&#62; $self );
+        my $compiler = $query-&#62;make_compiler(
+            searcher =&#62; $self,
+            boost    =&#62; $query-&#62;get_boost,
+        );
         my $matcher = $compiler-&#62;make_matcher(
             reader     =&#62; $self-&#62;get_reader,
             need_score =&#62; 1,
@@ -122,9 +125,9 @@ name="Query,_Compiler,_and_Matcher"
         return \@hits;
     }</pre>
 
-<h2><a class='u' href='#___top' title='click to go to top of document'
+<h4><a class='u'
 name="PrefixQuery"
->PrefixQuery</a></h2>
+>PrefixQuery</a></h4>
 
 <p>Our PrefixQuery class will have two attributes: a query string and a field 
name.</p>
 
@@ -139,7 +142,7 @@ name="PrefixQuery"
     sub get_query_string { my $self = shift; return $query_string{$$self} }
     sub get_field        { my $self = shift; return $field{$$self} }</pre>
 
-<p>PrefixQuery&#39;s constructor collects and validates the attributes.</p>
+<p>PrefixQuery&#8217;s constructor collects and validates the attributes.</p>
 
 <pre>    sub new {
         my ( $class, %args ) = @_;
@@ -157,7 +160,7 @@ name="PrefixQuery"
         return $self;
     }</pre>
 
-<p>Since this is an inside-out class, we&#39;ll need a destructor:</p>
+<p>Since this is an inside-out class, we&#8217;ll need a destructor:</p>
 
 <pre>    sub DESTROY {
         my $self = shift;
@@ -177,7 +180,7 @@ name="PrefixQuery"
         return 1;
     }</pre>
 
-<p>The last thing we&#39;ll need is a make_compiler() factory method which 
kicks out a subclass of <a href="../../../Lucy/Search/Compiler.html" 
class="podlinkpod"
+<p>The last thing we&#8217;ll need is a make_compiler() factory method which 
kicks out a subclass of <a href="../../../Lucy/Search/Compiler.html" 
class="podlinkpod"
 >Compiler</a>.</p>
 
 <pre>    sub make_compiler {
@@ -188,31 +191,30 @@ name="PrefixQuery"
         return $compiler;
     }</pre>
 
-<h2><a class='u' href='#___top' title='click to go to top of document'
+<h4><a class='u'
 name="PrefixCompiler"
->PrefixCompiler</a></h2>
+>PrefixCompiler</a></h4>
 
-<p>PrefixQuery&#39;s make_compiler() method will be called internally at 
search-time by objects which subclass <a 
href="../../../Lucy/Search/Searcher.html" class="podlinkpod"
->Lucy::Search::Searcher</a> -- such as <a 
href="../../../Lucy/Search/IndexSearcher.html" class="podlinkpod"
+<p>PrefixQuery&#8217;s make_compiler() method will be called internally at 
search-time by objects which subclass <a 
href="../../../Lucy/Search/Searcher.html" class="podlinkpod"
+>Searcher</a> &#8211; such as <a 
href="../../../Lucy/Search/IndexSearcher.html" class="podlinkpod"
 >IndexSearchers</a>.</p>
 
-<p>A Searcher is associated with a particular collection of documents. These 
documents may all reside in one index, as with IndexSearcher, or they may be 
spread out across multiple indexes on one or more machines, as with <a 
href="../../../LucyX/Remote/ClusterSearcher.html" class="podlinkpod"
->LucyX::Remote::ClusterSearcher</a>.</p>
+<p>A Searcher is associated with a particular collection of documents. These 
documents may all reside in one index, as with IndexSearcher, or they may be 
spread out across multiple indexes on one or more machines, as with 
LucyX::Remote::ClusterSearcher.</p>
 
-<p>Searcher objects have access to certain statistical information about the 
collections they represent; for instance, a Searcher can tell you how many 
documents are in the collection...</p>
+<p>Searcher objects have access to certain statistical information about the 
collections they represent; for instance, a Searcher can tell you how many 
documents are in the collection&#8230;</p>
 
 <pre>    my $maximum_number_of_docs_in_collection = 
$searcher-&#62;doc_max;</pre>
 
-<p>... or how many documents a specific term appears in:</p>
+<p>&#8230; or how many documents a specific term appears in:</p>
 
 <pre>    my $term_appears_in_this_many_docs = $searcher-&#62;doc_freq(
         field =&#62; &#39;content&#39;,
         term  =&#62; &#39;foo&#39;,
     );</pre>
 
-<p>Such information can be used by sophisticated Compiler implementations to 
assign more or less heft to individual queries or sub-queries. However, 
we&#39;re not going to bother with weighting for this demo; we&#39;ll just 
assign a fixed score of 1.0 to each matching document.</p>
+<p>Such information can be used by sophisticated Compiler implementations to 
assign more or less heft to individual queries or sub-queries. However, 
we&#8217;re not going to bother with weighting for this demo; we&#8217;ll just 
assign a fixed score of 1.0 to each matching document.</p>
 
-<p>We don&#39;t need to write a constructor, as it will suffice to inherit 
new() from Lucy::Search::Compiler. The only method we need to implement for 
PrefixCompiler is make_matcher().</p>
+<p>We don&#8217;t need to write a constructor, as it will suffice to inherit 
new() from Lucy::Search::Compiler. The only method we need to implement for 
PrefixCompiler is make_matcher().</p>
 
 <pre>    package PrefixCompiler;
     use base qw( Lucy::Search::Compiler );
@@ -257,14 +259,14 @@ name="PrefixCompiler"
 >SegReader</a> object when make_matcher() gets called. From the SegReader and 
 >its sub-components <a href="../../../Lucy/Index/LexiconReader.html" 
 >class="podlinkpod"
 >LexiconReader</a> and <a href="../../../Lucy/Index/PostingListReader.html" 
 >class="podlinkpod"
 >PostingListReader</a>, we acquire a <a 
 >href="../../../Lucy/Index/Lexicon.html" class="podlinkpod"
->Lexicon</a>, scan through the Lexicon&#39;s unique terms, and acquire a <a 
href="../../../Lucy/Index/PostingList.html" class="podlinkpod"
+>Lexicon</a>, scan through the Lexicon&#8217;s unique terms, and acquire a <a 
href="../../../Lucy/Index/PostingList.html" class="podlinkpod"
 >PostingList</a> for each term that matches our prefix.</p>
 
 <p>Each of these PostingList objects represents a set of documents which match 
the query.</p>
 
-<h2><a class='u' href='#___top' title='click to go to top of document'
+<h4><a class='u'
 name="PrefixMatcher"
->PrefixMatcher</a></h2>
+>PrefixMatcher</a></h4>
 
 <p>The Matcher subclass is the most involved.</p>
 
@@ -327,21 +329,21 @@ name="PrefixMatcher"
         return $tick &#60; scalar @$doc_ids ? $doc_ids-&#62;[$tick] : 0;
     }</pre>
 
-<p>score() conveys the relevance score of the current match. We&#39;ll just 
return a fixed score of 1.0:</p>
+<p>score() conveys the relevance score of the current match. We&#8217;ll just 
return a fixed score of 1.0:</p>
 
 <pre>    sub score { 1.0 }</pre>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h3><a class='u'
 name="Usage"
->Usage</a></h1>
+>Usage</a></h3>
 
 <p>To get a basic feel for PrefixQuery, insert the FlatQueryParser module 
described in <a href="../../../Lucy/Docs/Cookbook/CustomQueryParser.html" 
class="podlinkpod"
->Lucy::Docs::Cookbook::CustomQueryParser</a> (which supports PrefixQuery) into 
the search.cgi sample app.</p>
+>CustomQueryParser</a> (which supports PrefixQuery) into the search.cgi sample 
app.</p>
 
 <pre>    my $parser = FlatQueryParser-&#62;new( schema =&#62; 
$searcher-&#62;get_schema );
     my $query  = $parser-&#62;parse($q);</pre>
 
-<p>If you&#39;re planning on using PrefixQuery in earnest, though, you may 
want to change up analyzers to avoid stemming, because stemming -- another 
approach to prefix conflation -- is not perfectly compatible with prefix 
searches.</p>
+<p>If you&#8217;re planning on using PrefixQuery in earnest, though, you may 
want to change up analyzers to avoid stemming, because stemming &#8211; another 
approach to prefix conflation &#8211; is not perfectly compatible with prefix 
searches.</p>
 
 <pre>    # Polyanalyzer with no SnowballStemmer.
     my $analyzer = Lucy::Analysis::PolyAnalyzer-&#62;new(

Modified: 
websites/staging/lucy/trunk/content/docs/test/Lucy/Docs/Cookbook/CustomQueryParser.html
==============================================================================
--- 
websites/staging/lucy/trunk/content/docs/test/Lucy/Docs/Cookbook/CustomQueryParser.html
 (original)
+++ 
websites/staging/lucy/trunk/content/docs/test/Lucy/Docs/Cookbook/CustomQueryParser.html
 Fri Feb 26 12:52:42 2016
@@ -71,43 +71,43 @@
           <div>
 <a name='___top' class='dummyTopAnchor' ></a>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h2><a class='u'
 name="NAME"
->NAME</a></h1>
+>NAME</a></h2>
 
 <p>Lucy::Docs::Cookbook::CustomQueryParser - Sample subclass of 
QueryParser.</p>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
-name="ABSTRACT"
->ABSTRACT</a></h1>
+<h2><a class='u'
+name="DESCRIPTION"
+>DESCRIPTION</a></h2>
 
 <p>Implement a custom search query language using a subclass of <a 
href="../../../Lucy/Search/QueryParser.html" class="podlinkpod"
->Lucy::Search::QueryParser</a>.</p>
+>QueryParser</a>.</p>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h3><a class='u'
 name="The_language"
->The language</a></h1>
+>The language</a></h3>
 
 <p>At first,
 our query language will support only simple term queries and phrases delimited 
by double quotes.
-For simplicity&#39;s sake,
+For simplicity&#8217;s sake,
 it will not support parenthetical groupings,
 boolean operators,
 or prepended plus/minus.
-The results for all subqueries will be unioned together -- i.e.
-joined using an OR -- which is usually the best approach for 
small-to-medium-sized document collections.</p>
+The results for all subqueries will be unioned together &#8211; i.e.
+joined using an OR &#8211; which is usually the best approach for 
small-to-medium-sized document collections.</p>
 
 <p>Later,
-we&#39;ll add support for trailing wildcards.</p>
+we&#8217;ll add support for trailing wildcards.</p>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h3><a class='u'
 name="Single-field_parser"
->Single-field parser</a></h1>
+>Single-field parser</a></h3>
 
 <p>Our initial parser implentation will generate queries against a single 
fixed field,
-&#34;content&#34;,
+&#8220;content&#8221;,
 and it will analyze text using a fixed choice of English EasyAnalyzer.
-We won&#39;t subclass Lucy::Search::QueryParser just yet.</p>
+We won&#8217;t subclass Lucy::Search::QueryParser just yet.</p>
 
 <pre>    package FlatQueryParser;
     use Lucy::Search::TermQuery;
@@ -163,7 +163,7 @@ We won&#39;t subclass Lucy::Search::Quer
         return \@tokens;
     }</pre>
 
-<p>The main parsing routine creates an array of tokens by calling _tokenize(), 
runs the tokens through through the EasyAnalyzer, creates TermQuery or 
PhraseQuery objects according to how many tokens emerge from the 
EasyAnalyzer&#39;s split() method, and adds each of the sub-queries to the 
primary ORQuery.</p>
+<p>The main parsing routine creates an array of tokens by calling _tokenize(), 
runs the tokens through through the EasyAnalyzer, creates TermQuery or 
PhraseQuery objects according to how many tokens emerge from the 
EasyAnalyzer&#8217;s split() method, and adds each of the sub-queries to the 
primary ORQuery.</p>
 
 <pre>    sub parse {
         my ( $self, $query_string ) = @_;
@@ -194,21 +194,21 @@ We won&#39;t subclass Lucy::Search::Quer
         return $or_query;
     }</pre>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h3><a class='u'
 name="Multi-field_parser"
->Multi-field parser</a></h1>
+>Multi-field parser</a></h3>
 
-<p>Most often, the end user will want their search query to match not only a 
single &#39;content&#39; field, but also &#39;title&#39; and so on. To make 
that happen, we have to turn queries such as this...</p>
+<p>Most often, the end user will want their search query to match not only a 
single &#8216;content&#8217; field, but also &#8216;title&#8217; and so on. To 
make that happen, we have to turn queries such as this&#8230;</p>
 
 <pre>    foo AND NOT bar</pre>
 
-<p>... into the logical equivalent of this:</p>
+<p>&#8230; into the logical equivalent of this:</p>
 
 <pre>    (title:foo OR content:foo) AND NOT (title:bar OR content:bar)</pre>
 
-<p>Rather than continue with our own from-scratch parser class and write the 
routines to accomplish that expansion, we&#39;re now going to subclass 
Lucy::Search::QueryParser and take advantage of some of its existing 
methods.</p>
+<p>Rather than continue with our own from-scratch parser class and write the 
routines to accomplish that expansion, we&#8217;re now going to subclass 
Lucy::Search::QueryParser and take advantage of some of its existing 
methods.</p>
 
-<p>Our first parser implementation had the &#34;content&#34; field name and 
the choice of English EasyAnalyzer hard-coded for simplicity, but we don&#39;t 
need to do that once we subclass Lucy::Search::QueryParser. QueryParser&#39;s 
constructor -- which we will inherit, allowing us to eliminate our own 
constructor -- requires a Schema which conveys field and Analyzer information, 
so we can just defer to that.</p>
+<p>Our first parser implementation had the &#8220;content&#8221; field name 
and the choice of English EasyAnalyzer hard-coded for simplicity, but we 
don&#8217;t need to do that once we subclass Lucy::Search::QueryParser. 
QueryParser&#8217;s constructor &#8211; which we will inherit, allowing us to 
eliminate our own constructor &#8211; requires a Schema which conveys field and 
Analyzer information, so we can just defer to that.</p>
 
 <pre>    package FlatQueryParser;
     use base qw( Lucy::Search::QueryParser );
@@ -220,7 +220,7 @@ name="Multi-field_parser"
 
     # Inherit new()</pre>
 
-<p>We&#39;re also going to jettison our _make_term_query() and 
_make_phrase_query() helper subs and chop our parse() subroutine way down. Our 
revised parse() routine will generate Lucy::Search::LeafQuery objects instead 
of TermQueries and PhraseQueries:</p>
+<p>We&#8217;re also going to jettison our _make_term_query() and 
_make_phrase_query() helper subs and chop our parse() subroutine way down. Our 
revised parse() routine will generate Lucy::Search::LeafQuery objects instead 
of TermQueries and PhraseQueries:</p>
 
 <pre>    sub parse {
         my ( $self, $query_string ) = @_;
@@ -233,11 +233,11 @@ name="Multi-field_parser"
         return $self-&#62;expand($or_query);
     }</pre>
 
-<p>The magic happens in QueryParser&#39;s expand() method, which walks the 
ORQuery object we supply to it looking for LeafQuery objects, and calls 
expand_leaf() for each one it finds. expand_leaf() performs field-specific 
analysis, decides whether each query should be a TermQuery or a PhraseQuery, 
and if multiple fields are required, creates an ORQuery which mults out e.g. 
<code>foo</code> into <code>(title:foo OR content:foo)</code>.</p>
+<p>The magic happens in QueryParser&#8217;s expand() method, which walks the 
ORQuery object we supply to it looking for LeafQuery objects, and calls 
expand_leaf() for each one it finds. expand_leaf() performs field-specific 
analysis, decides whether each query should be a TermQuery or a PhraseQuery, 
and if multiple fields are required, creates an ORQuery which mults out e.g. 
<code>foo</code> into <code>(title:foo OR content:foo)</code>.</p>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h3><a class='u'
 name="Extending_the_query_language"
->Extending the query language</a></h1>
+>Extending the query language</a></h3>
 
 <p>To add support for trailing wildcards to our query language, we need to 
override expand_leaf() to accommodate PrefixQuery, while deferring to the 
parent class implementation on TermQuery and PhraseQuery.</p>
 
@@ -260,11 +260,11 @@ name="Extending_the_query_language"
         }
     }</pre>
 
-<p>Ordinarily, those asterisks would have been stripped when running tokens 
through the EasyAnalyzer -- query strings containing &#34;foo*&#34; would 
produce TermQueries for the term &#34;foo&#34;. Our override intercepts tokens 
with trailing asterisks and processes them as PrefixQueries before 
<code>SUPER::expand_leaf</code> can discard them, so that a search for 
&#34;foo*&#34; can match &#34;food&#34;, &#34;foosball&#34;, and so on.</p>
+<p>Ordinarily, those asterisks would have been stripped when running tokens 
through the EasyAnalyzer &#8211; query strings containing &#8220;foo*&#8221; 
would produce TermQueries for the term &#8220;foo&#8221;. Our override 
intercepts tokens with trailing asterisks and processes them as PrefixQueries 
before <code>SUPER::expand_leaf</code> can discard them, so that a search for 
&#8220;foo*&#8221; can match &#8220;food&#8221;, &#8220;foosball&#8221;, and so 
on.</p>
 
-<h1><a class='u' href='#___top' title='click to go to top of document'
+<h3><a class='u'
 name="Usage"
->Usage</a></h1>
+>Usage</a></h3>
 
 <p>Insert our custom parser into the search.cgi sample app to get a feel for 
how it behaves:</p>
 


Reply via email to