LUCENE-4007: Forrest Chainsaw Massacre
git-svn-id: https://svn.apache.org/repos/asf/lucene/dev/trunk@1328748 13f79535-47bb-0310-9956-ffa450edef68
|
@ -174,18 +174,6 @@
|
|||
<license-check-macro dir="${basedir}" />
|
||||
</target>
|
||||
|
||||
<!-- ================================================================== -->
|
||||
<!-- D O C U M E N T A T I O N -->
|
||||
<!-- ================================================================== -->
|
||||
<!-- -->
|
||||
<!-- ================================================================== -->
|
||||
<target name="docs">
|
||||
<!-- copies the docs over to the docs folder -->
|
||||
<copy todir="build/docs">
|
||||
<fileset dir="site/build/site"/>
|
||||
</copy>
|
||||
</target>
|
||||
|
||||
<target name="resolve">
|
||||
<sequential>
|
||||
<ant dir="test-framework" target="resolve" inheritall="false">
|
||||
|
@ -195,20 +183,26 @@
|
|||
</sequential>
|
||||
</target>
|
||||
|
||||
<target name="documentation" description="Generate all documentation"
|
||||
depends="javadocs,changes-to-html,doc-index"/>
|
||||
<target name="javadoc" depends="javadocs"/>
|
||||
<target name="javadocs" description="Generate javadoc"
|
||||
depends="javadocs-lucene-core, javadocs-modules, javadocs-test-framework">
|
||||
<echo file="${javadoc.dir}/index.html" append="false">
|
||||
<![CDATA[<html><head><title>${Name} ${version} Javadoc Index</title></head>
|
||||
<body>
|
||||
<h1>${Name} ${version} Javadoc Index</h1>
|
||||
<ul>
|
||||
<li><a href="core/index.html">core</a>: Lucene core library</li>
|
||||
<li><a href="test-framework/index.html">test-framework</a>: Framework for testing Lucene-based applications</li>
|
||||
]]></echo>
|
||||
<modules-crawl target="javadocs-index.html" failonerror="true"/>
|
||||
<echo file="${javadoc.dir}/index.html" append="true"><![CDATA[
|
||||
</ul></body>]]></echo>
|
||||
<target name="javadocs" description="Generate javadoc" depends="javadocs-lucene-core, javadocs-modules, javadocs-test-framework"/>
|
||||
|
||||
<target name="doc-index">
|
||||
<pathconvert pathsep="|" dirsep="/" property="buildfiles">
|
||||
<fileset dir="." includes="**/build.xml" excludes="build.xml,analysis/*,build/**,tools/**,backwards/**,site/**"/>
|
||||
</pathconvert>
|
||||
<xslt in="${ant.file}" out="${javadoc.dir}/index.html" style="site/xsl/index.xsl">
|
||||
<outputproperty name="method" value="html"/>
|
||||
<outputproperty name="version" value="4.0"/>
|
||||
<outputproperty name="encoding" value="UTF-8"/>
|
||||
<outputproperty name="indent" value="yes"/>
|
||||
<param name="buildfiles" expression="${buildfiles}"/>
|
||||
<param name="version" expression="${version}"/>
|
||||
</xslt>
|
||||
<copy todir="${javadoc.dir}">
|
||||
<fileset dir="site/html" includes="**/*"/>
|
||||
</copy>
|
||||
</target>
|
||||
|
||||
<target name="javadocs-modules" description="Generate javadoc for modules classes">
|
||||
|
@ -230,7 +224,7 @@
|
|||
<!-- ================================================================== -->
|
||||
<!-- -->
|
||||
<!-- ================================================================== -->
|
||||
<target name="package" depends="jar-core, jar-test-framework, docs, javadocs, build-modules, init-dist, changes-to-html"/>
|
||||
<target name="package" depends="jar-core, jar-test-framework, build-modules, init-dist, documentation"/>
|
||||
|
||||
<target name="nightly" depends="test, package-tgz">
|
||||
</target>
|
||||
|
|
|
@ -124,7 +124,7 @@
|
|||
<available file="${javadoc.packagelist.dir}/java6/package-list" property="javadoc.java6.packagelist.exists"/>
|
||||
<property name="javadoc.access" value="protected"/>
|
||||
<property name="javadoc.charset" value="utf-8"/>
|
||||
<property name="javadoc.dir" value="${common.dir}/build/docs/api"/>
|
||||
<property name="javadoc.dir" value="${common.dir}/build/docs"/>
|
||||
<property name="javadoc.maxmemory" value="512m" />
|
||||
<!-- Javadoc classpath -->
|
||||
<path id="javadoc.classpath">
|
||||
|
|
|
@ -1,8 +0,0 @@
|
|||
<html>
|
||||
<head>
|
||||
<title>Redirecting to docs...</title>
|
||||
<meta http-equiv=refresh content="0; URL=docs/index.html">
|
||||
</head>
|
||||
<body>
|
||||
</body>
|
||||
</html>
|
|
@ -90,14 +90,6 @@
|
|||
</sequential>
|
||||
</macrodef>
|
||||
|
||||
<target name="javadocs-index.html" description="Generate line for index.html of JavaDocs">
|
||||
<xmlproperty file="${ant.file}" collapseAttributes="true"/>
|
||||
<echo file="${javadoc.dir}/index.html" append="true">
|
||||
<![CDATA[
|
||||
<li><a href="${name}/index.html">${name}</a>: ${project.description}</li>
|
||||
]]></echo>
|
||||
</target>
|
||||
|
||||
<property name="queryparser.jar" value="${common.dir}/build/queryparser/lucene-queryparser-${version}.jar"/>
|
||||
<target name="check-queryparser-uptodate" unless="queryparser.uptodate">
|
||||
<module-uptodate name="queryparser" jarfile="${queryparser.jar}" property="queryparser.uptodate"/>
|
||||
|
|
|
@ -31,5 +31,272 @@ must always be fully qualified in source code in this package.
|
|||
<p><b>NOTE</b>: {@link org.apache.lucene.queryparser.flexible.standard} has an alternative queryparser that matches the syntax of this one, but is more modular,
|
||||
enabling substantial customization to how a query is created.
|
||||
|
||||
<h2>Query Parser Syntax</h2>
|
||||
|
||||
<div id="minitoc-area">
|
||||
<ul class="minitoc">
|
||||
<li>
|
||||
<a href="#Overview">Overview</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Terms">Terms</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Fields">Fields</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Term Modifiers">Term Modifiers</a>
|
||||
<ul class="minitoc">
|
||||
<li>
|
||||
<a href="#Wildcard Searches">Wildcard Searches</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Fuzzy Searches">Fuzzy Searches</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Proximity Searches">Proximity Searches</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Range Searches">Range Searches</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Boosting a Term">Boosting a Term</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Boolean operators">Boolean Operators</a>
|
||||
<ul class="minitoc">
|
||||
<li>
|
||||
<a href="#OR"></a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#AND">AND</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#+">+</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#NOT">NOT</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#-">-</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Grouping">Grouping</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Field Grouping">Field Grouping</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Escaping Special Characters">Escaping Special Characters</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<a name="N10013"></a><a name="Overview"></a>
|
||||
<h2 class="boxed">Overview</h2>
|
||||
<div class="section">
|
||||
<p>Although Lucene provides the ability to create your own
|
||||
queries through its API, it also provides a rich query
|
||||
language through the Query Parser, a lexer which
|
||||
interprets a string into a Lucene Query using JavaCC.
|
||||
</p>
|
||||
<p>Generally, the query parser syntax may change from
|
||||
release to release. This page describes the syntax as of
|
||||
the current release. If you are using a different
|
||||
version of Lucene, please consult the copy of
|
||||
<span class="codefrag">docs/queryparsersyntax.html</span> that was distributed
|
||||
with the version you are using.
|
||||
</p>
|
||||
<p>
|
||||
Before choosing to use the provided Query Parser, please consider the following:
|
||||
<ol>
|
||||
|
||||
<li>If you are programmatically generating a query string and then
|
||||
parsing it with the query parser then you should seriously consider building
|
||||
your queries directly with the query API. In other words, the query
|
||||
parser is designed for human-entered text, not for program-generated
|
||||
text.</li>
|
||||
|
||||
|
||||
<li>Untokenized fields are best added directly to queries, and not
|
||||
through the query parser. If a field's values are generated programmatically
|
||||
by the application, then so should query clauses for this field.
|
||||
An analyzer, which the query parser uses, is designed to convert human-entered
|
||||
text to terms. Program-generated values, like dates, keywords, etc.,
|
||||
should be consistently program-generated.</li>
|
||||
|
||||
|
||||
<li>In a query form, fields which are general text should use the query
|
||||
parser. All others, such as date ranges, keywords, etc. are better added
|
||||
directly through the query API. A field with a limit set of values,
|
||||
that can be specified with a pull-down menu should not be added to a
|
||||
query string which is subsequently parsed, but rather added as a
|
||||
TermQuery clause.</li>
|
||||
|
||||
</ol>
|
||||
|
||||
</p>
|
||||
</div>
|
||||
|
||||
|
||||
<a name="N10032"></a><a name="Terms"></a>
|
||||
<h2 class="boxed">Terms</h2>
|
||||
<div class="section">
|
||||
<p>A query is broken up into terms and operators. There are two types of terms: Single Terms and Phrases.</p>
|
||||
<p>A Single Term is a single word such as "test" or "hello".</p>
|
||||
<p>A Phrase is a group of words surrounded by double quotes such as "hello dolly".</p>
|
||||
<p>Multiple terms can be combined together with Boolean operators to form a more complex query (see below).</p>
|
||||
<p>Note: The analyzer used to create the index will be used on the terms and phrases in the query string.
|
||||
So it is important to choose an analyzer that will not interfere with the terms used in the query string.</p>
|
||||
</div>
|
||||
|
||||
|
||||
<a name="N10048"></a><a name="Fields"></a>
|
||||
<h2 class="boxed">Fields</h2>
|
||||
<div class="section">
|
||||
<p>Lucene supports fielded data. When performing a search you can either specify a field, or use the default field. The field names and default field is implementation specific.</p>
|
||||
<p>You can search any field by typing the field name followed by a colon ":" and then the term you are looking for. </p>
|
||||
<p>As an example, let's assume a Lucene index contains two fields, title and text and text is the default field.
|
||||
If you want to find the document entitled "The Right Way" which contains the text "don't go this way", you can enter: </p>
|
||||
<pre class="code">title:"The Right Way" AND text:go</pre>
|
||||
<p>or</p>
|
||||
<pre class="code">title:"Do it right" AND right</pre>
|
||||
<p>Since text is the default field, the field indicator is not required.</p>
|
||||
<p>Note: The field is only valid for the term that it directly precedes, so the query</p>
|
||||
<pre class="code">title:Do it right</pre>
|
||||
<p>Will only find "Do" in the title field. It will find "it" and "right" in the default field (in this case the text field). </p>
|
||||
</div>
|
||||
|
||||
|
||||
<a name="N1006D"></a><a name="Term Modifiers"></a>
|
||||
<h2 class="boxed">Term Modifiers</h2>
|
||||
<div class="section">
|
||||
<p>Lucene supports modifying query terms to provide a wide range of searching options.</p>
|
||||
<a name="N10076"></a><a name="Wildcard Searches"></a>
|
||||
<h3 class="boxed">Wildcard Searches</h3>
|
||||
<p>Lucene supports single and multiple character wildcard searches within single terms
|
||||
(not within phrase queries).</p>
|
||||
<p>To perform a single character wildcard search use the "?" symbol.</p>
|
||||
<p>To perform a multiple character wildcard search use the "*" symbol.</p>
|
||||
<p>The single character wildcard search looks for terms that match that with the single character replaced. For example, to search for "text" or "test" you can use the search:</p>
|
||||
<pre class="code">te?t</pre>
|
||||
<p>Multiple character wildcard searches looks for 0 or more characters. For example, to search for test, tests or tester, you can use the search: </p>
|
||||
<pre class="code">test*</pre>
|
||||
<p>You can also use the wildcard searches in the middle of a term.</p>
|
||||
<pre class="code">te*t</pre>
|
||||
<p>Note: You cannot use a * or ? symbol as the first character of a search.</p>
|
||||
<a name="N1009B"></a><a name="Fuzzy Searches"></a>
|
||||
<h3 class="boxed">Fuzzy Searches</h3>
|
||||
<p>Lucene supports fuzzy searches based on the Levenshtein Distance, or Edit Distance algorithm. To do a fuzzy search use the tilde, "~", symbol at the end of a Single word Term. For example to search for a term similar in spelling to "roam" use the fuzzy search: </p>
|
||||
<pre class="code">roam~</pre>
|
||||
<p>This search will find terms like foam and roams.</p>
|
||||
<p>Starting with Lucene 1.9 an additional (optional) parameter can specify the required similarity. The value is between 0 and 1, with a value closer to 1 only terms with a higher similarity will be matched. For example:</p>
|
||||
<pre class="code">roam~0.8</pre>
|
||||
<p>The default that is used if the parameter is not given is 0.5.</p>
|
||||
<a name="N100B4"></a><a name="Proximity Searches"></a>
|
||||
<h3 class="boxed">Proximity Searches</h3>
|
||||
<p>Lucene supports finding words are a within a specific distance away. To do a proximity search use the tilde, "~", symbol at the end of a Phrase. For example to search for a "apache" and "jakarta" within 10 words of each other in a document use the search: </p>
|
||||
<pre class="code">"jakarta apache"~10</pre>
|
||||
<a name="N100C1"></a><a name="Range Searches"></a>
|
||||
<h3 class="boxed">Range Searches</h3>
|
||||
<p>Range Queries allow one to match documents whose field(s) values
|
||||
are between the lower and upper bound specified by the Range Query.
|
||||
Range Queries can be inclusive or exclusive of the upper and lower bounds.
|
||||
Sorting is done lexicographically.</p>
|
||||
<pre class="code">mod_date:[20020101 TO 20030101]</pre>
|
||||
<p>This will find documents whose mod_date fields have values between 20020101 and 20030101, inclusive.
|
||||
Note that Range Queries are not reserved for date fields. You could also use range queries with non-date fields:</p>
|
||||
<pre class="code">title:{Aida TO Carmen}</pre>
|
||||
<p>This will find all documents whose titles are between Aida and Carmen, but not including Aida and Carmen.</p>
|
||||
<p>Inclusive range queries are denoted by square brackets. Exclusive range queries are denoted by
|
||||
curly brackets.</p>
|
||||
<a name="N100DA"></a><a name="Boosting a Term"></a>
|
||||
<h3 class="boxed">Boosting a Term</h3>
|
||||
<p>Lucene provides the relevance level of matching documents based on the terms found. To boost a term use the caret, "^", symbol with a boost factor (a number) at the end of the term you are searching. The higher the boost factor, the more relevant the term will be.</p>
|
||||
<p>Boosting allows you to control the relevance of a document by boosting its term. For example, if you are searching for</p>
|
||||
<pre class="code">jakarta apache</pre>
|
||||
<p>and you want the term "jakarta" to be more relevant boost it using the ^ symbol along with the boost factor next to the term.
|
||||
You would type:</p>
|
||||
<pre class="code">jakarta^4 apache</pre>
|
||||
<p>This will make documents with the term jakarta appear more relevant. You can also boost Phrase Terms as in the example: </p>
|
||||
<pre class="code">"jakarta apache"^4 "Apache Lucene"</pre>
|
||||
<p>By default, the boost factor is 1. Although the boost factor must be positive, it can be less than 1 (e.g. 0.2)</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<a name="N100FA"></a><a name="Boolean operators"></a>
|
||||
<h2 class="boxed">Boolean Operators</h2>
|
||||
<div class="section">
|
||||
<p>Boolean operators allow terms to be combined through logic operators.
|
||||
Lucene supports AND, "+", OR, NOT and "-" as Boolean operators(Note: Boolean operators must be ALL CAPS).</p>
|
||||
<a name="N10103"></a><a name="OR"></a>
|
||||
<h3 class="boxed"></h3>
|
||||
<p>The OR operator is the default conjunction operator. This means that if there is no Boolean operator between two terms, the OR operator is used.
|
||||
The OR operator links two terms and finds a matching document if either of the terms exist in a document. This is equivalent to a union using sets.
|
||||
The symbol || can be used in place of the word OR.</p>
|
||||
<p>To search for documents that contain either "jakarta apache" or just "jakarta" use the query:</p>
|
||||
<pre class="code">"jakarta apache" jakarta</pre>
|
||||
<p>or</p>
|
||||
<pre class="code">"jakarta apache" OR jakarta</pre>
|
||||
<a name="N10116"></a><a name="AND"></a>
|
||||
<h3 class="boxed">AND</h3>
|
||||
<p>The AND operator matches documents where both terms exist anywhere in the text of a single document.
|
||||
This is equivalent to an intersection using sets. The symbol && can be used in place of the word AND.</p>
|
||||
<p>To search for documents that contain "jakarta apache" and "Apache Lucene" use the query: </p>
|
||||
<pre class="code">"jakarta apache" AND "Apache Lucene"</pre>
|
||||
<a name="N10126"></a><a name="+"></a>
|
||||
<h3 class="boxed">+</h3>
|
||||
<p>The "+" or required operator requires that the term after the "+" symbol exist somewhere in a the field of a single document.</p>
|
||||
<p>To search for documents that must contain "jakarta" and may contain "lucene" use the query:</p>
|
||||
<pre class="code">+jakarta lucene</pre>
|
||||
<a name="N10136"></a><a name="NOT"></a>
|
||||
<h3 class="boxed">NOT</h3>
|
||||
<p>The NOT operator excludes documents that contain the term after NOT.
|
||||
This is equivalent to a difference using sets. The symbol ! can be used in place of the word NOT.</p>
|
||||
<p>To search for documents that contain "jakarta apache" but not "Apache Lucene" use the query: </p>
|
||||
<pre class="code">"jakarta apache" NOT "Apache Lucene"</pre>
|
||||
<p>Note: The NOT operator cannot be used with just one term. For example, the following search will return no results:</p>
|
||||
<pre class="code">NOT "jakarta apache"</pre>
|
||||
<a name="N1014C"></a><a name="-"></a>
|
||||
<h3 class="boxed">-</h3>
|
||||
<p>The "-" or prohibit operator excludes documents that contain the term after the "-" symbol.</p>
|
||||
<p>To search for documents that contain "jakarta apache" but not "Apache Lucene" use the query: </p>
|
||||
<pre class="code">"jakarta apache" -"Apache Lucene"</pre>
|
||||
</div>
|
||||
|
||||
|
||||
<a name="N1015D"></a><a name="Grouping"></a>
|
||||
<h2 class="boxed">Grouping</h2>
|
||||
<div class="section">
|
||||
<p>Lucene supports using parentheses to group clauses to form sub queries. This can be very useful if you want to control the boolean logic for a query.</p>
|
||||
<p>To search for either "jakarta" or "apache" and "website" use the query:</p>
|
||||
<pre class="code">(jakarta OR apache) AND website</pre>
|
||||
<p>This eliminates any confusion and makes sure you that website must exist and either term jakarta or apache may exist.</p>
|
||||
</div>
|
||||
|
||||
|
||||
<a name="N10170"></a><a name="Field Grouping"></a>
|
||||
<h2 class="boxed">Field Grouping</h2>
|
||||
<div class="section">
|
||||
<p>Lucene supports using parentheses to group multiple clauses to a single field.</p>
|
||||
<p>To search for a title that contains both the word "return" and the phrase "pink panther" use the query:</p>
|
||||
<pre class="code">title:(+return +"pink panther")</pre>
|
||||
</div>
|
||||
|
||||
|
||||
<a name="N10180"></a><a name="Escaping Special Characters"></a>
|
||||
<h2 class="boxed">Escaping Special Characters</h2>
|
||||
<div class="section">
|
||||
<p>Lucene supports escaping special characters that are part of the query syntax. The current list special characters are</p>
|
||||
<p>+ - && || ! ( ) { } [ ] ^ " ~ * ? : \</p>
|
||||
<p>To escape these character use the \ before the character. For example to search for (1+1):2 use the query:</p>
|
||||
<pre class="code">\(1\+1\)\:2</pre>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -1,3 +0,0 @@
|
|||
#Forrest generates UTF-8 by default, but these httpd servers are
|
||||
#ignoring the meta http-equiv charset tags
|
||||
AddDefaultCharset off
|
|
@ -1,2 +0,0 @@
|
|||
<broken-links>
|
||||
</broken-links>
|
|
@ -1,756 +0,0 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<meta content="Apache Forrest" name="Generator">
|
||||
<meta name="Forrest-version" content="0.9">
|
||||
<meta name="Forrest-skin-name" content="lucene">
|
||||
<title>
|
||||
Apache Lucene - Contributions
|
||||
</title>
|
||||
<link type="text/css" href="skin/basic.css" rel="stylesheet">
|
||||
<link media="screen" type="text/css" href="skin/screen.css" rel="stylesheet">
|
||||
<link media="print" type="text/css" href="skin/print.css" rel="stylesheet">
|
||||
<link type="text/css" href="skin/profile.css" rel="stylesheet">
|
||||
<script src="skin/getBlank.js" language="javascript" type="text/javascript"></script><script src="skin/getMenu.js" language="javascript" type="text/javascript"></script><script src="skin/fontsize.js" language="javascript" type="text/javascript"></script>
|
||||
<link rel="shortcut icon" href="images/favicon.ico">
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<script type="text/javascript">ndeSetTextSize();</script>
|
||||
<div id="top">
|
||||
<!--+
|
||||
|breadtrail
|
||||
+-->
|
||||
<div class="breadtrail">
|
||||
<a href="http://www.apache.org/">Apache</a> > <a href="http://lucene.apache.org/">Lucene</a><script src="skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script>
|
||||
</div>
|
||||
<!--+
|
||||
|header
|
||||
+-->
|
||||
<div class="header">
|
||||
<!--+
|
||||
|start group logo
|
||||
+-->
|
||||
<div class="grouplogo">
|
||||
<a href="http://lucene.apache.org/"><img class="logoImage" alt="Lucene" src="http://www.apache.org/images/asf_logo_simple.png" title="Apache Lucene"></a>
|
||||
</div>
|
||||
<!--+
|
||||
|end group logo
|
||||
+-->
|
||||
<!--+
|
||||
|start Project Logo
|
||||
+-->
|
||||
<div class="projectlogo">
|
||||
<a href="http://lucene.apache.org/java/"><img class="logoImage" alt="Lucene" src="http://lucene.apache.org/images/lucene_green_300.gif" title="Apache Lucene is a high-performance, full-featured text search engine library written entirely in
|
||||
Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform."></a>
|
||||
</div>
|
||||
<!--+
|
||||
|end Project Logo
|
||||
+-->
|
||||
<!--+
|
||||
|start Search
|
||||
+-->
|
||||
<div class="searchbox">
|
||||
<form action="http://search.lucidimagination.com/p:lucene" method="get" class="roundtopsmall">
|
||||
<input onFocus="getBlank (this, 'Search the site with Lucene');" size="25" name="q" id="query" type="text" value="Search the site with Lucene">
|
||||
<input name="Search" value="Search" type="submit">
|
||||
</form>
|
||||
<div style="position: relative; top: -5px; left: -10px">Powered by <a href="http://www.lucidimagination.com" style="color: #033268">Lucid Imagination</a>
|
||||
</div>
|
||||
</div>
|
||||
<!--+
|
||||
|end search
|
||||
+-->
|
||||
<!--+
|
||||
|start Tabs
|
||||
+-->
|
||||
<ul id="tabs">
|
||||
<li class="current">
|
||||
<a class="selected" href="http://lucene.apache.org/java/docs/">Main</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="unselected" href="http://wiki.apache.org/lucene-java">Wiki</a>
|
||||
</li>
|
||||
<li class="current">
|
||||
<a class="selected" href="index.html">Lucene 4.0 Documentation</a>
|
||||
</li>
|
||||
</ul>
|
||||
<!--+
|
||||
|end Tabs
|
||||
+-->
|
||||
</div>
|
||||
</div>
|
||||
<div id="main">
|
||||
<div id="publishedStrip">
|
||||
<!--+
|
||||
|start Subtabs
|
||||
+-->
|
||||
<div id="level2tabs"></div>
|
||||
<!--+
|
||||
|end Endtabs
|
||||
+-->
|
||||
<script type="text/javascript"><!--
|
||||
document.write("Last Published: " + document.lastModified);
|
||||
// --></script>
|
||||
</div>
|
||||
<!--+
|
||||
|breadtrail
|
||||
+-->
|
||||
<div class="breadtrail">
|
||||
|
||||
|
||||
</div>
|
||||
<!--+
|
||||
|start Menu, mainarea
|
||||
+-->
|
||||
<!--+
|
||||
|start Menu
|
||||
+-->
|
||||
<div id="menu">
|
||||
<div onclick="SwitchMenu('menu_selected_1.1', 'skin/')" id="menu_selected_1.1Title" class="menutitle" style="background-image: url('skin/images/chapter_open.gif');">Documentation</div>
|
||||
<div id="menu_selected_1.1" class="selectedmenuitemgroup" style="display: block;">
|
||||
<div class="menuitem">
|
||||
<a href="index.html">Overview</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="changes/Changes.html">Changes</a>
|
||||
</div>
|
||||
<div onclick="SwitchMenu('menu_1.1.3', 'skin/')" id="menu_1.1.3Title" class="menutitle">Javadocs</div>
|
||||
<div id="menu_1.1.3" class="menuitemgroup">
|
||||
<div class="menuitem">
|
||||
<a href="api/core/index.html">Core</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-common/index.html">Analysis: Common</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-kuromoji/index.html">Analysis: Kuromoji (Japanese)</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-morfologik/index.html">Analysis: Morfologik (Polish)</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-phonetic/index.html">Analysis: Phonetic</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-smartcn/index.html">Analysis: Smart Chinese</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-stempel/index.html">Analysis: Stempel (Polish)</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-uima/index.html">Analysis: UIMA</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/benchmark/index.html">Benchmark</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/demo/index.html">Demo</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/facet/index.html">Faceting</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/grouping/index.html">Grouping</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/highlighter/index.html">Highlighter</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/join/index.html">Join</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/memory/index.html">Memory</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/misc/index.html">Miscellaneous</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/queries/index.html">Queries</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/queryparser/index.html">Query Parsers</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/sandbox/index.html">Sandbox</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/spatial/index.html">Spatial</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/suggest/index.html">Suggest / Spellcheck</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/test-framework/index.html">Test Framework</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="systemrequirements.html">System Requirements</a>
|
||||
</div>
|
||||
<div class="menupage">
|
||||
<div class="menupagetitle">Contributions</div>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="http://wiki.apache.org/lucene-java/LuceneFAQ">FAQ</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="fileformats.html">File Formats</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="gettingstarted.html">Getting Started</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="queryparsersyntax.html">Query Syntax</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="scoring.html">Scoring</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="http://wiki.apache.org/lucene-java">Wiki</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="http://lucene.apache.org/privacy.html">Privacy Policy</a>
|
||||
</div>
|
||||
</div>
|
||||
<div id="credit"></div>
|
||||
<div id="roundbottom">
|
||||
<img style="display: none" class="corner" height="15" width="15" alt="" src="skin/images/rc-b-l-15-1body-2menu-3menu.png"></div>
|
||||
<!--+
|
||||
|alternative credits
|
||||
+-->
|
||||
<div id="credit2"></div>
|
||||
</div>
|
||||
<!--+
|
||||
|end Menu
|
||||
+-->
|
||||
<!--+
|
||||
|start content
|
||||
+-->
|
||||
<div id="content">
|
||||
<h1>
|
||||
Apache Lucene - Contributions
|
||||
</h1>
|
||||
<div id="minitoc-area">
|
||||
<ul class="minitoc">
|
||||
<li>
|
||||
<a href="#Overview">Overview</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Lucene Tools">Lucene Tools</a>
|
||||
<ul class="minitoc">
|
||||
<li>
|
||||
<a href="#Luke">Luke</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#LIMO (Lucene Index Monitor)">LIMO (Lucene Index Monitor)</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Lucene Document Converters">Lucene Document Converters</a>
|
||||
<ul class="minitoc">
|
||||
<li>
|
||||
<a href="#XML Document #1">XML Document #1</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#XML Document #2">XML Document #2</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#PDF Box">PDF Box</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#XPDF - PDF Document Conversion">XPDF - PDF Document Conversion</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#PDFTextStream -- PDF text and metadata extraction">PDFTextStream -- PDF text and metadata extraction</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#PJ Classic & PJ Professional - PDF Document Conversion">PJ Classic & PJ Professional - PDF Document Conversion</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Miscellaneous">Miscellaneous</a>
|
||||
<ul class="minitoc">
|
||||
<li>
|
||||
<a href="#Arabic Analyzer for Java">Arabic Analyzer for Java</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Phonetix">Phonetix</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#ejIndex - JBoss MBean for Lucene">ejIndex - JBoss MBean for Lucene</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#JavaCC">JavaCC</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#LuSQL">LuSQL - Index databases with Lucene</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<a name="N10013"></a><a name="Overview"></a>
|
||||
<h2 class="boxed">Overview</h2>
|
||||
<div class="section">
|
||||
<p>This page lists external Lucene resources. If you have
|
||||
written something that should be included, please post all
|
||||
relevant information to one of the mailing lists. Nothing
|
||||
listed here is directly supported by the Lucene
|
||||
developers, so if you encounter any problems with any of
|
||||
this software, please use the author's contact information
|
||||
to get help.</p>
|
||||
<p>If you are looking for information on contributing patches or other improvements to Lucene, see
|
||||
<a href="http://wiki.apache.org/lucene-java/HowToContribute">How To Contribute</a> on the Lucene Wiki.</p>
|
||||
</div>
|
||||
|
||||
|
||||
<a name="N10024"></a><a name="Lucene Tools"></a>
|
||||
<h2 class="boxed">Lucene Tools</h2>
|
||||
<div class="section">
|
||||
<p>
|
||||
Software that works with Lucene indices.
|
||||
</p>
|
||||
<a name="N1002D"></a><a name="Luke"></a>
|
||||
<h3 class="boxed">Luke</h3>
|
||||
<table class="ForrestTable" cellspacing="1" cellpadding="4">
|
||||
|
||||
<tr>
|
||||
|
||||
<th width="%1">
|
||||
URL
|
||||
</th>
|
||||
<td>
|
||||
<a href="http://www.getopt.org/luke/">
|
||||
http://www.getopt.org/luke/
|
||||
</a>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
|
||||
<th width="%1">
|
||||
author
|
||||
</th>
|
||||
<td>
|
||||
Andrzej Bialecki
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
<a name="N1004E"></a><a name="LIMO (Lucene Index Monitor)"></a>
|
||||
<h3 class="boxed">LIMO (Lucene Index Monitor)</h3>
|
||||
<table class="ForrestTable" cellspacing="1" cellpadding="4">
|
||||
|
||||
<tr>
|
||||
|
||||
<th width="%1">
|
||||
URL
|
||||
</th>
|
||||
<td>
|
||||
<a href="http://limo.sf.net/">
|
||||
http://limo.sf.net/
|
||||
</a>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
|
||||
<th width="%1">
|
||||
author
|
||||
</th>
|
||||
<td>
|
||||
Julien Nioche
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
</div>
|
||||
|
||||
|
||||
<a name="N10071"></a><a name="Lucene Document Converters"></a>
|
||||
<h2 class="boxed">Lucene Document Converters</h2>
|
||||
<div class="section">
|
||||
<p>
|
||||
Lucene requires information you want to index to be
|
||||
converted into a Document class. Here are
|
||||
contributions for various solutions that convert different
|
||||
content types to Lucene's Document classes.
|
||||
</p>
|
||||
<a name="N1007A"></a><a name="XML Document #1"></a>
|
||||
<h3 class="boxed">XML Document #1</h3>
|
||||
<table class="ForrestTable" cellspacing="1" cellpadding="4">
|
||||
|
||||
<tr>
|
||||
|
||||
<th width="%1">
|
||||
URL
|
||||
</th>
|
||||
<td>
|
||||
<a href="http://marc.theaimsgroup.com/?l=lucene-dev&m=100723333506246&w=2">
|
||||
http://marc.theaimsgroup.com/?l=lucene-dev&m=100723333506246&w=2
|
||||
</a>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
|
||||
<th width="%1">
|
||||
author
|
||||
</th>
|
||||
<td>
|
||||
Philip Ogren - ogren@mayo.edu
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
<a name="N1009C"></a><a name="XML Document #2"></a>
|
||||
<h3 class="boxed">XML Document #2</h3>
|
||||
<table class="ForrestTable" cellspacing="1" cellpadding="4">
|
||||
|
||||
<tr>
|
||||
|
||||
<th width="%1">
|
||||
URL
|
||||
</th>
|
||||
<td>
|
||||
<a href="http://www.mail-archive.com/lucene-user@jakarta.apache.org/msg00346.html">
|
||||
http://www.mail-archive.com/lucene-user@jakarta.apache.org/msg00346.html
|
||||
</a>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
|
||||
<th width="%1">
|
||||
author
|
||||
</th>
|
||||
<td>
|
||||
Peter Carlson - carlson@bookandhammer.com
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
<a name="N100BE"></a><a name="PDF Box"></a>
|
||||
<h3 class="boxed">PDF Box</h3>
|
||||
<table class="ForrestTable" cellspacing="1" cellpadding="4">
|
||||
|
||||
<tr>
|
||||
|
||||
<th width="%1">
|
||||
URL
|
||||
</th>
|
||||
<td>
|
||||
<a href="http://www.pdfbox.org/">
|
||||
http://www.pdfbox.org/
|
||||
</a>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
|
||||
<th width="%1">
|
||||
author
|
||||
</th>
|
||||
<td>
|
||||
Ben Litchfield - ben@csh.rit.edu
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
<a name="N100E0"></a><a name="XPDF - PDF Document Conversion"></a>
|
||||
<h3 class="boxed">XPDF - PDF Document Conversion</h3>
|
||||
<table class="ForrestTable" cellspacing="1" cellpadding="4">
|
||||
|
||||
<tr>
|
||||
|
||||
<th width="%1">
|
||||
URL
|
||||
</th>
|
||||
<td>
|
||||
<a href="http://www.foolabs.com/xpdf">
|
||||
http://www.foolabs.com/xpdf
|
||||
</a>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
|
||||
<th width="%1">
|
||||
author
|
||||
</th>
|
||||
<td>
|
||||
N/A
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
<a name="N10102"></a><a name="PDFTextStream -- PDF text and metadata extraction"></a>
|
||||
<h3 class="boxed">PDFTextStream -- PDF text and metadata extraction</h3>
|
||||
<table class="ForrestTable" cellspacing="1" cellpadding="4">
|
||||
|
||||
<tr>
|
||||
|
||||
<th width="%1">
|
||||
URL
|
||||
</th>
|
||||
<td>
|
||||
<a href="http://snowtide.com">
|
||||
http://snowtide.com
|
||||
</a>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
|
||||
<th width="%1">
|
||||
author
|
||||
</th>
|
||||
<td>
|
||||
N/A
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
<a name="N10124"></a><a name="PJ Classic & PJ Professional - PDF Document Conversion"></a>
|
||||
<h3 class="boxed">PJ Classic & PJ Professional - PDF Document Conversion</h3>
|
||||
<table class="ForrestTable" cellspacing="1" cellpadding="4">
|
||||
|
||||
<tr>
|
||||
|
||||
<th width="%1">
|
||||
URL
|
||||
</th>
|
||||
<td>
|
||||
<a href=" http://www.etymon.com/">
|
||||
http://www.etymon.com/
|
||||
</a>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
|
||||
<th width="%1">
|
||||
author
|
||||
</th>
|
||||
<td>
|
||||
N/A
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
</div>
|
||||
|
||||
|
||||
<a name="N10147"></a><a name="Miscellaneous"></a>
|
||||
<h2 class="boxed">Miscellaneous</h2>
|
||||
<div class="section">
|
||||
<p>
|
||||
|
||||
</p>
|
||||
<a name="N10150"></a><a name="Arabic Analyzer for Java"></a>
|
||||
<h3 class="boxed">Arabic Analyzer for Java</h3>
|
||||
<table class="ForrestTable" cellspacing="1" cellpadding="4">
|
||||
|
||||
<tr>
|
||||
|
||||
<th width="%1">
|
||||
URL
|
||||
</th>
|
||||
<td>
|
||||
<a href="http://savannah.nongnu.org/projects/aramorph">
|
||||
http://savannah.nongnu.org/projects/aramorph
|
||||
</a>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
|
||||
<th width="%1">
|
||||
author
|
||||
</th>
|
||||
<td>
|
||||
Pierrick Brihaye
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
<a name="N10172"></a><a name="Phonetix"></a>
|
||||
<h3 class="boxed">Phonetix</h3>
|
||||
<table class="ForrestTable" cellspacing="1" cellpadding="4">
|
||||
|
||||
<tr>
|
||||
|
||||
<th width="%1">
|
||||
URL
|
||||
</th>
|
||||
<td>
|
||||
<a href="http://www.companywebstore.de/tangentum/mirror/en/products/phonetix/index.html">
|
||||
http://www.companywebstore.de/tangentum/mirror/en/products/phonetix/index.html
|
||||
</a>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
|
||||
<th width="%1">
|
||||
author
|
||||
</th>
|
||||
<td>
|
||||
tangentum technologies
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
<a name="N10194"></a><a name="ejIndex - JBoss MBean for Lucene"></a>
|
||||
<h3 class="boxed">ejIndex - JBoss MBean for Lucene</h3>
|
||||
<p>
|
||||
|
||||
</p>
|
||||
<table class="ForrestTable" cellspacing="1" cellpadding="4">
|
||||
|
||||
<tr>
|
||||
|
||||
<th width="%1">
|
||||
URL
|
||||
</th>
|
||||
<td>
|
||||
<a href="http://ejindex.sourceforge.net/">
|
||||
http://ejindex.sourceforge.net/
|
||||
</a>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
|
||||
<th width="%1">
|
||||
author
|
||||
</th>
|
||||
<td>
|
||||
Andy Scholz
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
<a name="N101B9"></a><a name="JavaCC"></a>
|
||||
<h3 class="boxed">JavaCC</h3>
|
||||
<table class="ForrestTable" cellspacing="1" cellpadding="4">
|
||||
|
||||
<tr>
|
||||
|
||||
<th width="%1">
|
||||
URL
|
||||
</th>
|
||||
<td>
|
||||
<a href="https://javacc.dev.java.net/">
|
||||
https://javacc.dev.java.net/
|
||||
</a>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
|
||||
<th width="%1">
|
||||
author
|
||||
</th>
|
||||
<td>
|
||||
Sun Microsystems (java.net)
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
<a name="N101DB"></a><a name="LuSQL"></a>
|
||||
<h3 class="boxed">LuSQL - Index databases with Lucene</h3>
|
||||
<table class="ForrestTable" cellspacing="1" cellpadding="4">
|
||||
|
||||
<tr>
|
||||
|
||||
<th width="%1">
|
||||
URL
|
||||
</th>
|
||||
<td>
|
||||
<a href="http://lab.cisti-icist.nrc-cnrc.gc.ca/cistilabswiki/index.php/LuSql">
|
||||
http://lab.cisti-icist.nrc-cnrc.gc.ca/cistilabswiki/index.php/LuSql
|
||||
</a>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
|
||||
<th width="%1">
|
||||
author
|
||||
</th>
|
||||
<td>
|
||||
Glen Newton
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<!--+
|
||||
|end content
|
||||
+-->
|
||||
<div class="clearboth"> </div>
|
||||
</div>
|
||||
<div id="footer">
|
||||
<!--+
|
||||
|start bottomstrip
|
||||
+-->
|
||||
<div class="lastmodified">
|
||||
<script type="text/javascript"><!--
|
||||
document.write("Last Published: " + document.lastModified);
|
||||
// --></script>
|
||||
</div>
|
||||
<div class="copyright">
|
||||
Copyright ©
|
||||
2006 <a href="http://www.apache.org/licenses/">The Apache Software Foundation.</a>
|
||||
</div>
|
||||
<!--+
|
||||
|end bottomstrip
|
||||
+-->
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
|
||||
var _gaq = _gaq || [];
|
||||
_gaq.push(['_setAccount', 'UA-94576-12']);
|
||||
_gaq.push(['_trackPageview']);
|
||||
|
||||
(function() {
|
||||
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
|
||||
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
|
||||
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
|
||||
})();
|
||||
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -1,372 +0,0 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<meta content="Apache Forrest" name="Generator">
|
||||
<meta name="Forrest-version" content="0.9">
|
||||
<meta name="Forrest-skin-name" content="lucene">
|
||||
<title>
|
||||
Apache Lucene - Building and Installing the Basic Demo
|
||||
</title>
|
||||
<link type="text/css" href="skin/basic.css" rel="stylesheet">
|
||||
<link media="screen" type="text/css" href="skin/screen.css" rel="stylesheet">
|
||||
<link media="print" type="text/css" href="skin/print.css" rel="stylesheet">
|
||||
<link type="text/css" href="skin/profile.css" rel="stylesheet">
|
||||
<script src="skin/getBlank.js" language="javascript" type="text/javascript"></script><script src="skin/getMenu.js" language="javascript" type="text/javascript"></script><script src="skin/fontsize.js" language="javascript" type="text/javascript"></script>
|
||||
<link rel="shortcut icon" href="images/favicon.ico">
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<script type="text/javascript">ndeSetTextSize();</script>
|
||||
<div id="top">
|
||||
<!--+
|
||||
|breadtrail
|
||||
+-->
|
||||
<div class="breadtrail">
|
||||
<a href="http://www.apache.org/">Apache</a> > <a href="http://lucene.apache.org/">Lucene</a><script src="skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script>
|
||||
</div>
|
||||
<!--+
|
||||
|header
|
||||
+-->
|
||||
<div class="header">
|
||||
<!--+
|
||||
|start group logo
|
||||
+-->
|
||||
<div class="grouplogo">
|
||||
<a href="http://lucene.apache.org/"><img class="logoImage" alt="Lucene" src="http://www.apache.org/images/asf_logo_simple.png" title="Apache Lucene"></a>
|
||||
</div>
|
||||
<!--+
|
||||
|end group logo
|
||||
+-->
|
||||
<!--+
|
||||
|start Project Logo
|
||||
+-->
|
||||
<div class="projectlogo">
|
||||
<a href="http://lucene.apache.org/java/"><img class="logoImage" alt="Lucene" src="http://lucene.apache.org/images/lucene_green_300.gif" title="Apache Lucene is a high-performance, full-featured text search engine library written entirely in
|
||||
Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform."></a>
|
||||
</div>
|
||||
<!--+
|
||||
|end Project Logo
|
||||
+-->
|
||||
<!--+
|
||||
|start Search
|
||||
+-->
|
||||
<div class="searchbox">
|
||||
<form action="http://search.lucidimagination.com/p:lucene" method="get" class="roundtopsmall">
|
||||
<input onFocus="getBlank (this, 'Search the site with Lucene');" size="25" name="q" id="query" type="text" value="Search the site with Lucene">
|
||||
<input name="Search" value="Search" type="submit">
|
||||
</form>
|
||||
<div style="position: relative; top: -5px; left: -10px">Powered by <a href="http://www.lucidimagination.com" style="color: #033268">Lucid Imagination</a>
|
||||
</div>
|
||||
</div>
|
||||
<!--+
|
||||
|end search
|
||||
+-->
|
||||
<!--+
|
||||
|start Tabs
|
||||
+-->
|
||||
<ul id="tabs">
|
||||
<li class="current">
|
||||
<a class="selected" href="http://lucene.apache.org/java/docs/">Main</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="unselected" href="http://wiki.apache.org/lucene-java">Wiki</a>
|
||||
</li>
|
||||
<li class="current">
|
||||
<a class="selected" href="index.html">Lucene 4.0 Documentation</a>
|
||||
</li>
|
||||
</ul>
|
||||
<!--+
|
||||
|end Tabs
|
||||
+-->
|
||||
</div>
|
||||
</div>
|
||||
<div id="main">
|
||||
<div id="publishedStrip">
|
||||
<!--+
|
||||
|start Subtabs
|
||||
+-->
|
||||
<div id="level2tabs"></div>
|
||||
<!--+
|
||||
|end Endtabs
|
||||
+-->
|
||||
<script type="text/javascript"><!--
|
||||
document.write("Last Published: " + document.lastModified);
|
||||
// --></script>
|
||||
</div>
|
||||
<!--+
|
||||
|breadtrail
|
||||
+-->
|
||||
<div class="breadtrail">
|
||||
|
||||
|
||||
</div>
|
||||
<!--+
|
||||
|start Menu, mainarea
|
||||
+-->
|
||||
<!--+
|
||||
|start Menu
|
||||
+-->
|
||||
<div id="menu">
|
||||
<div onclick="SwitchMenu('menu_1.1', 'skin/')" id="menu_1.1Title" class="menutitle">Documentation</div>
|
||||
<div id="menu_1.1" class="menuitemgroup">
|
||||
<div class="menuitem">
|
||||
<a href="index.html">Overview</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="changes/Changes.html">Changes</a>
|
||||
</div>
|
||||
<div onclick="SwitchMenu('menu_1.1.3', 'skin/')" id="menu_1.1.3Title" class="menutitle">Javadocs</div>
|
||||
<div id="menu_1.1.3" class="menuitemgroup">
|
||||
<div class="menuitem">
|
||||
<a href="api/core/index.html">Core</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-common/index.html">Analysis: Common</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-kuromoji/index.html">Analysis: Kuromoji (Japanese)</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-morfologik/index.html">Analysis: Morfologik (Polish)</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-phonetic/index.html">Analysis: Phonetic</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-smartcn/index.html">Analysis: Smart Chinese</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-stempel/index.html">Analysis: Stempel (Polish)</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-uima/index.html">Analysis: UIMA</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/benchmark/index.html">Benchmark</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/demo/index.html">Demo</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/facet/index.html">Faceting</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/grouping/index.html">Grouping</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/highlighter/index.html">Highlighter</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/join/index.html">Join</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/memory/index.html">Memory</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/misc/index.html">Miscellaneous</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/queries/index.html">Queries</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/queryparser/index.html">Query Parsers</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/sandbox/index.html">Sandbox</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/spatial/index.html">Spatial</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/suggest/index.html">Suggest / Spellcheck</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/test-framework/index.html">Test Framework</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="systemrequirements.html">System Requirements</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="contributions.html">Contributions</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="http://wiki.apache.org/lucene-java/LuceneFAQ">FAQ</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="fileformats.html">File Formats</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="gettingstarted.html">Getting Started</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="queryparsersyntax.html">Query Syntax</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="scoring.html">Scoring</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="http://wiki.apache.org/lucene-java">Wiki</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="http://lucene.apache.org/privacy.html">Privacy Policy</a>
|
||||
</div>
|
||||
</div>
|
||||
<div id="credit"></div>
|
||||
<div id="roundbottom">
|
||||
<img style="display: none" class="corner" height="15" width="15" alt="" src="skin/images/rc-b-l-15-1body-2menu-3menu.png"></div>
|
||||
<!--+
|
||||
|alternative credits
|
||||
+-->
|
||||
<div id="credit2"></div>
|
||||
</div>
|
||||
<!--+
|
||||
|end Menu
|
||||
+-->
|
||||
<!--+
|
||||
|start content
|
||||
+-->
|
||||
<div id="content">
|
||||
<h1>
|
||||
Apache Lucene - Building and Installing the Basic Demo
|
||||
</h1>
|
||||
<div id="minitoc-area">
|
||||
<ul class="minitoc">
|
||||
<li>
|
||||
<a href="#About this Document">About this Document</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#About the Demo">About the Demo</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Setting your CLASSPATH">Setting your CLASSPATH</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Indexing Files">Indexing Files</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#About the code...">About the code...</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
<a name="N10013"></a><a name="About this Document"></a>
|
||||
<h2 class="boxed">About this Document</h2>
|
||||
<div class="section">
|
||||
<p>
|
||||
This document is intended as a "getting started" guide to using and running the Lucene demos.
|
||||
It walks you through some basic installation and configuration.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<a name="N1001C"></a><a name="About the Demo"></a>
|
||||
<h2 class="boxed">About the Demo</h2>
|
||||
<div class="section">
|
||||
<p>
|
||||
The Lucene command-line demo code consists of an application that demonstrates various
|
||||
functionalities of Lucene and how you can add Lucene to your applications.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
|
||||
<a name="N10025"></a><a name="Setting your CLASSPATH"></a>
|
||||
<h2 class="boxed">Setting your CLASSPATH</h2>
|
||||
<div class="section">
|
||||
<p>
|
||||
First, you should <a href="http://www.apache.org/dyn/closer.cgi/lucene/java/">download</a> the
|
||||
latest Lucene distribution and then extract it to a working directory.
|
||||
</p>
|
||||
<p>
|
||||
You need three JARs: the Lucene JAR, the common analysis JAR, and the Lucene demo JAR. You should
|
||||
see the Lucene JAR file in the core/ directory you created when you extracted the archive -- it
|
||||
should be named something like <span class="codefrag">lucene-core-{version}.jar</span>. You should also see files
|
||||
called <span class="codefrag">lucene-analyzers-common-{version}.jar</span> and <span class="codefrag">lucene-demo-{version}.jar</span>
|
||||
under analysis/common/ and demo/, respectively.
|
||||
</p>
|
||||
<p>
|
||||
Put all three of these files in your Java CLASSPATH.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
|
||||
<a name="N10041"></a><a name="Indexing Files"></a>
|
||||
<h2 class="boxed">Indexing Files</h2>
|
||||
<div class="section">
|
||||
<p>
|
||||
Once you've gotten this far you're probably itching to go. Let's <b>build an index!</b> Assuming
|
||||
you've set your CLASSPATH correctly, just type:
|
||||
|
||||
<pre>
|
||||
java org.apache.lucene.demo.IndexFiles -docs {path-to-lucene}/src
|
||||
</pre>
|
||||
|
||||
This will produce a subdirectory called <span class="codefrag">index</span> which will contain an index of all of the
|
||||
Lucene source code.
|
||||
</p>
|
||||
<p>
|
||||
To <b>search the index</b> type:
|
||||
|
||||
<pre>
|
||||
java org.apache.lucene.demo.SearchFiles
|
||||
</pre>
|
||||
|
||||
You'll be prompted for a query. Type in a swear word and press the enter key. You'll see that the
|
||||
Lucene developers are very well mannered and get no results. Now try entering the word "string".
|
||||
That should return a whole bunch of documents. The results will page at every tenth result and ask
|
||||
you whether you want more results.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
|
||||
<a name="N1005C"></a><a name="About the code..."></a>
|
||||
<h2 class="boxed">About the code...</h2>
|
||||
<div class="section">
|
||||
<p>
|
||||
|
||||
<a href="demo2.html">read on>>></a>
|
||||
|
||||
</p>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
<!--+
|
||||
|end content
|
||||
+-->
|
||||
<div class="clearboth"> </div>
|
||||
</div>
|
||||
<div id="footer">
|
||||
<!--+
|
||||
|start bottomstrip
|
||||
+-->
|
||||
<div class="lastmodified">
|
||||
<script type="text/javascript"><!--
|
||||
document.write("Last Published: " + document.lastModified);
|
||||
// --></script>
|
||||
</div>
|
||||
<div class="copyright">
|
||||
Copyright ©
|
||||
2006 <a href="http://www.apache.org/licenses/">The Apache Software Foundation.</a>
|
||||
</div>
|
||||
<!--+
|
||||
|end bottomstrip
|
||||
+-->
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
|
||||
var _gaq = _gaq || [];
|
||||
_gaq.push(['_setAccount', 'UA-94576-12']);
|
||||
_gaq.push(['_trackPageview']);
|
||||
|
||||
(function() {
|
||||
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
|
||||
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
|
||||
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
|
||||
})();
|
||||
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -1,421 +0,0 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<meta content="Apache Forrest" name="Generator">
|
||||
<meta name="Forrest-version" content="0.9">
|
||||
<meta name="Forrest-skin-name" content="lucene">
|
||||
<title>
|
||||
Apache Lucene - Basic Demo Sources Walk-through
|
||||
</title>
|
||||
<link type="text/css" href="skin/basic.css" rel="stylesheet">
|
||||
<link media="screen" type="text/css" href="skin/screen.css" rel="stylesheet">
|
||||
<link media="print" type="text/css" href="skin/print.css" rel="stylesheet">
|
||||
<link type="text/css" href="skin/profile.css" rel="stylesheet">
|
||||
<script src="skin/getBlank.js" language="javascript" type="text/javascript"></script><script src="skin/getMenu.js" language="javascript" type="text/javascript"></script><script src="skin/fontsize.js" language="javascript" type="text/javascript"></script>
|
||||
<link rel="shortcut icon" href="images/favicon.ico">
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<script type="text/javascript">ndeSetTextSize();</script>
|
||||
<div id="top">
|
||||
<!--+
|
||||
|breadtrail
|
||||
+-->
|
||||
<div class="breadtrail">
|
||||
<a href="http://www.apache.org/">Apache</a> > <a href="http://lucene.apache.org/">Lucene</a><script src="skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script>
|
||||
</div>
|
||||
<!--+
|
||||
|header
|
||||
+-->
|
||||
<div class="header">
|
||||
<!--+
|
||||
|start group logo
|
||||
+-->
|
||||
<div class="grouplogo">
|
||||
<a href="http://lucene.apache.org/"><img class="logoImage" alt="Lucene" src="http://www.apache.org/images/asf_logo_simple.png" title="Apache Lucene"></a>
|
||||
</div>
|
||||
<!--+
|
||||
|end group logo
|
||||
+-->
|
||||
<!--+
|
||||
|start Project Logo
|
||||
+-->
|
||||
<div class="projectlogo">
|
||||
<a href="http://lucene.apache.org/java/"><img class="logoImage" alt="Lucene" src="http://lucene.apache.org/images/lucene_green_300.gif" title="Apache Lucene is a high-performance, full-featured text search engine library written entirely in
|
||||
Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform."></a>
|
||||
</div>
|
||||
<!--+
|
||||
|end Project Logo
|
||||
+-->
|
||||
<!--+
|
||||
|start Search
|
||||
+-->
|
||||
<div class="searchbox">
|
||||
<form action="http://search.lucidimagination.com/p:lucene" method="get" class="roundtopsmall">
|
||||
<input onFocus="getBlank (this, 'Search the site with Lucene');" size="25" name="q" id="query" type="text" value="Search the site with Lucene">
|
||||
<input name="Search" value="Search" type="submit">
|
||||
</form>
|
||||
<div style="position: relative; top: -5px; left: -10px">Powered by <a href="http://www.lucidimagination.com" style="color: #033268">Lucid Imagination</a>
|
||||
</div>
|
||||
</div>
|
||||
<!--+
|
||||
|end search
|
||||
+-->
|
||||
<!--+
|
||||
|start Tabs
|
||||
+-->
|
||||
<ul id="tabs">
|
||||
<li class="current">
|
||||
<a class="selected" href="http://lucene.apache.org/java/docs/">Main</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="unselected" href="http://wiki.apache.org/lucene-java">Wiki</a>
|
||||
</li>
|
||||
<li class="current">
|
||||
<a class="selected" href="index.html">Lucene 4.0 Documentation</a>
|
||||
</li>
|
||||
</ul>
|
||||
<!--+
|
||||
|end Tabs
|
||||
+-->
|
||||
</div>
|
||||
</div>
|
||||
<div id="main">
|
||||
<div id="publishedStrip">
|
||||
<!--+
|
||||
|start Subtabs
|
||||
+-->
|
||||
<div id="level2tabs"></div>
|
||||
<!--+
|
||||
|end Endtabs
|
||||
+-->
|
||||
<script type="text/javascript"><!--
|
||||
document.write("Last Published: " + document.lastModified);
|
||||
// --></script>
|
||||
</div>
|
||||
<!--+
|
||||
|breadtrail
|
||||
+-->
|
||||
<div class="breadtrail">
|
||||
|
||||
|
||||
</div>
|
||||
<!--+
|
||||
|start Menu, mainarea
|
||||
+-->
|
||||
<!--+
|
||||
|start Menu
|
||||
+-->
|
||||
<div id="menu">
|
||||
<div onclick="SwitchMenu('menu_1.1', 'skin/')" id="menu_1.1Title" class="menutitle">Documentation</div>
|
||||
<div id="menu_1.1" class="menuitemgroup">
|
||||
<div class="menuitem">
|
||||
<a href="index.html">Overview</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="changes/Changes.html">Changes</a>
|
||||
</div>
|
||||
<div onclick="SwitchMenu('menu_1.1.3', 'skin/')" id="menu_1.1.3Title" class="menutitle">Javadocs</div>
|
||||
<div id="menu_1.1.3" class="menuitemgroup">
|
||||
<div class="menuitem">
|
||||
<a href="api/core/index.html">Core</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-common/index.html">Analysis: Common</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-kuromoji/index.html">Analysis: Kuromoji (Japanese)</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-morfologik/index.html">Analysis: Morfologik (Polish)</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-phonetic/index.html">Analysis: Phonetic</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-smartcn/index.html">Analysis: Smart Chinese</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-stempel/index.html">Analysis: Stempel (Polish)</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-uima/index.html">Analysis: UIMA</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/benchmark/index.html">Benchmark</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/demo/index.html">Demo</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/facet/index.html">Faceting</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/grouping/index.html">Grouping</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/highlighter/index.html">Highlighter</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/join/index.html">Join</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/memory/index.html">Memory</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/misc/index.html">Miscellaneous</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/queries/index.html">Queries</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/queryparser/index.html">Query Parsers</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/sandbox/index.html">Sandbox</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/spatial/index.html">Spatial</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/suggest/index.html">Suggest / Spellcheck</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/test-framework/index.html">Test Framework</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="systemrequirements.html">System Requirements</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="contributions.html">Contributions</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="http://wiki.apache.org/lucene-java/LuceneFAQ">FAQ</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="fileformats.html">File Formats</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="gettingstarted.html">Getting Started</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="queryparsersyntax.html">Query Syntax</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="scoring.html">Scoring</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="http://wiki.apache.org/lucene-java">Wiki</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="http://lucene.apache.org/privacy.html">Privacy Policy</a>
|
||||
</div>
|
||||
</div>
|
||||
<div id="credit"></div>
|
||||
<div id="roundbottom">
|
||||
<img style="display: none" class="corner" height="15" width="15" alt="" src="skin/images/rc-b-l-15-1body-2menu-3menu.png"></div>
|
||||
<!--+
|
||||
|alternative credits
|
||||
+-->
|
||||
<div id="credit2"></div>
|
||||
</div>
|
||||
<!--+
|
||||
|end Menu
|
||||
+-->
|
||||
<!--+
|
||||
|start content
|
||||
+-->
|
||||
<div id="content">
|
||||
<h1>
|
||||
Apache Lucene - Basic Demo Sources Walk-through
|
||||
</h1>
|
||||
<div id="minitoc-area">
|
||||
<ul class="minitoc">
|
||||
<li>
|
||||
<a href="#About the Code">About the Code</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Location of the source">Location of the source</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#IndexFiles">IndexFiles</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Searching Files">Searching Files</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
<a name="N10013"></a><a name="About the Code"></a>
|
||||
<h2 class="boxed">About the Code</h2>
|
||||
<div class="section">
|
||||
<p>
|
||||
In this section we walk through the sources behind the command-line Lucene demo: where to find them,
|
||||
their parts and their function. This section is intended for Java developers wishing to understand
|
||||
how to use Lucene in their applications.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<a name="N1001C"></a><a name="Location of the source"></a>
|
||||
<h2 class="boxed">Location of the source</h2>
|
||||
<div class="section">
|
||||
<p>
|
||||
NOTE: to examine the sources, you need to download and extract a source checkout of
|
||||
Lucene: (lucene-{version}-src.zip).
|
||||
</p>
|
||||
<p>
|
||||
Relative to the directory created when you extracted Lucene, you
|
||||
should see a directory called <span class="codefrag">lucene/demo/</span>. This is the root for the Lucene
|
||||
demo. Under this directory is <span class="codefrag">src/java/org/apache/lucene/demo/</span>. This is where all
|
||||
the Java sources for the demo live.
|
||||
</p>
|
||||
<p>
|
||||
Within this directory you should see the <span class="codefrag">IndexFiles.java</span> class we executed earlier.
|
||||
Bring it up in <span class="codefrag">vi</span> or your editor of choice and let's take a look at it.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
|
||||
<a name="N10037"></a><a name="IndexFiles"></a>
|
||||
<h2 class="boxed">IndexFiles</h2>
|
||||
<div class="section">
|
||||
<p>
|
||||
As we discussed in the previous walk-through, the <a href="api/demo/org/apache/lucene/demo/IndexFiles.html">IndexFiles</a> class creates a Lucene
|
||||
Index. Let's take a look at how it does this.
|
||||
</p>
|
||||
<p>
|
||||
The <span class="codefrag">main()</span> method parses the command-line parameters, then in preparation for
|
||||
instantiating <a href="api/core/org/apache/lucene/index/IndexWriter.html">IndexWriter</a>, opens a
|
||||
<a href="api/core/org/apache/lucene/store/Directory.html">Directory</a> and instantiates
|
||||
<a href="api/analyzers-common/org/apache/lucene/analysis/standard/StandardAnalyzer.html">StandardAnalyzer</a> and
|
||||
<a href="api/core/org/apache/lucene/index/IndexWriterConfig.html">IndexWriterConfig</a>.
|
||||
</p>
|
||||
<p>
|
||||
The value of the <span class="codefrag">-index</span> command-line parameter is the name of the filesystem directory
|
||||
where all index information should be stored. If <span class="codefrag">IndexFiles</span> is invoked with a
|
||||
relative path given in the <span class="codefrag">-index</span> command-line parameter, or if the <span class="codefrag">-index</span>
|
||||
command-line parameter is not given, causing the default relative index path "<span class="codefrag">index</span>"
|
||||
to be used, the index path will be created as a subdirectory of the current working directory
|
||||
(if it does not already exist). On some platforms, the index path may be created in a different
|
||||
directory (such as the user's home directory).
|
||||
</p>
|
||||
<p>
|
||||
The <span class="codefrag">-docs</span> command-line parameter value is the location of the directory containing
|
||||
files to be indexed.
|
||||
</p>
|
||||
<p>
|
||||
The <span class="codefrag">-update</span> command-line parameter tells <span class="codefrag">IndexFiles</span> not to delete the
|
||||
index if it already exists. When <span class="codefrag">-update</span> is not given, <span class="codefrag">IndexFiles</span> will
|
||||
first wipe the slate clean before indexing any documents.
|
||||
</p>
|
||||
<p>
|
||||
Lucene <a href="api/core/org/apache/lucene/store/Directory.html">Directory</a>s are used by the
|
||||
<span class="codefrag">IndexWriter</span> to store information in the index. In addition to the
|
||||
<a href="api/core/org/apache/lucene/store/FSDirectory.html">FSDirectory</a> implementation we are using,
|
||||
there are several other <span class="codefrag">Directory</span> subclasses that can write to RAM, to databases, etc.
|
||||
</p>
|
||||
<p>
|
||||
Lucene <a href="api/core/org/apache/lucene/analysis/Analyzer.html">Analyzer</a>s are processing pipelines
|
||||
that break up text into indexed tokens, a.k.a. terms, and optionally perform other operations on these
|
||||
tokens, e.g. downcasing, synonym insertion, filtering out unwanted tokens, etc. The <span class="codefrag">Analyzer</span>
|
||||
we are using is <span class="codefrag">StandardAnalyzer</span>, which creates tokens using the Word Break rules from the
|
||||
Unicode Text Segmentation algorithm specified in <a href="http://unicode.org/reports/tr29/">Unicode
|
||||
Standard Annex #29</a>; converts tokens to lowercase; and then filters out stopwords. Stopwords are
|
||||
common language words such as articles (a, an, the, etc.) and other tokens that may have less value for
|
||||
searching. It should be noted that there are different rules for every language, and you should use the
|
||||
proper analyzer for each. Lucene currently provides Analyzers for a number of different languages (see
|
||||
the javadocs under
|
||||
<a href="api/analyzers-common/org/apache/lucene/analysis/">lucene/analysis/common/src/java/org/apache/lucene/analysis</a>).
|
||||
</p>
|
||||
<p>
|
||||
The <span class="codefrag">IndexWriterConfig</span> instance holds all configuration for <span class="codefrag">IndexWriter</span>. For
|
||||
example, we set the <span class="codefrag">OpenMode</span> to use here based on the value of the <span class="codefrag">-update</span>
|
||||
command-line parameter.
|
||||
</p>
|
||||
<p>
|
||||
Looking further down in the file, after <span class="codefrag">IndexWriter</span> is instantiated, you should see the
|
||||
<span class="codefrag">indexDocs()</span> code. This recursive function crawls the directories and creates
|
||||
<a href="api/core/org/apache/lucene/document/Document.html">Document</a> objects. The
|
||||
<span class="codefrag">Document</span> is simply a data object to represent the text content from the file as well as
|
||||
its creation time and location. These instances are added to the <span class="codefrag">IndexWriter</span>. If
|
||||
the <span class="codefrag">-update</span> command-line parameter is given, the <span class="codefrag">IndexWriter</span>
|
||||
<span class="codefrag">OpenMode</span> will be set to <span class="codefrag">OpenMode.CREATE_OR_APPEND</span>, and rather than
|
||||
adding documents to the index, the <span class="codefrag">IndexWriter</span> will <strong>update</strong> them
|
||||
in the index by attempting to find an already-indexed document with the same identifier (in our
|
||||
case, the file path serves as the identifier); deleting it from the index if it exists; and then
|
||||
adding the new document to the index.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
|
||||
<a name="N100DB"></a><a name="Searching Files"></a>
|
||||
<h2 class="boxed">Searching Files</h2>
|
||||
<div class="section">
|
||||
<p>
|
||||
The <a href="api/demo/org/apache/lucene/demo/SearchFiles.html">SearchFiles</a> class is
|
||||
quite simple. It primarily collaborates with an
|
||||
<a href="api/core/org/apache/lucene/search/IndexSearcher.html">IndexSearcher</a>,
|
||||
<a href="api/analyzers-common/org/apache/lucene/analysis/standard/StandardAnalyzer.html">StandardAnalyzer</a> (which is used in the
|
||||
<a href="api/demo/org/apache/lucene/demo/IndexFiles.html">IndexFiles</a> class as well)
|
||||
and a <a href="api/core/org/apache/lucene/queryParser/QueryParser.html">QueryParser</a>. The
|
||||
query parser is constructed with an analyzer used to interpret your query text in the same way the
|
||||
documents are interpreted: finding word boundaries, downcasing, and removing useless words like
|
||||
'a', 'an' and 'the'. The <a href="api/core/org/apache/lucene/search/Query.html">Query</a>
|
||||
object contains the results from the
|
||||
<a href="api/core/org/apache/lucene/queryParser/QueryParser.html">QueryParser</a> which is passed
|
||||
to the searcher. Note that it's also possible to programmatically construct a rich
|
||||
<a href="api/core/org/apache/lucene/search/Query.html">Query</a> object without using the query
|
||||
parser. The query parser just enables decoding the <a href="queryparsersyntax.html">Lucene query
|
||||
syntax</a> into the corresponding <a href="api/core/org/apache/lucene/search/Query.html">Query</a>
|
||||
object.
|
||||
</p>
|
||||
<p>
|
||||
|
||||
<span class="codefrag">SearchFiles</span> uses the <span class="codefrag">IndexSearcher.search(query,n)</span> method that returns
|
||||
<a href="api/core/org/apache/lucene/search/TopDocs.html">TopDocs</a> with max <span class="codefrag">n</span> hits.
|
||||
The results are printed in pages, sorted by score (i.e. relevance).
|
||||
</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<!--+
|
||||
|end content
|
||||
+-->
|
||||
<div class="clearboth"> </div>
|
||||
</div>
|
||||
<div id="footer">
|
||||
<!--+
|
||||
|start bottomstrip
|
||||
+-->
|
||||
<div class="lastmodified">
|
||||
<script type="text/javascript"><!--
|
||||
document.write("Last Published: " + document.lastModified);
|
||||
// --></script>
|
||||
</div>
|
||||
<div class="copyright">
|
||||
Copyright ©
|
||||
2006 <a href="http://www.apache.org/licenses/">The Apache Software Foundation.</a>
|
||||
</div>
|
||||
<!--+
|
||||
|end bottomstrip
|
||||
+-->
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
|
||||
var _gaq = _gaq || [];
|
||||
_gaq.push(['_setAccount', 'UA-94576-12']);
|
||||
_gaq.push(['_trackPageview']);
|
||||
|
||||
(function() {
|
||||
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
|
||||
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
|
||||
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
|
||||
})();
|
||||
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -1,310 +0,0 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<meta content="Apache Forrest" name="Generator">
|
||||
<meta name="Forrest-version" content="0.9">
|
||||
<meta name="Forrest-skin-name" content="lucene">
|
||||
<title>
|
||||
Apache Lucene - Getting Started Guide
|
||||
</title>
|
||||
<link type="text/css" href="skin/basic.css" rel="stylesheet">
|
||||
<link media="screen" type="text/css" href="skin/screen.css" rel="stylesheet">
|
||||
<link media="print" type="text/css" href="skin/print.css" rel="stylesheet">
|
||||
<link type="text/css" href="skin/profile.css" rel="stylesheet">
|
||||
<script src="skin/getBlank.js" language="javascript" type="text/javascript"></script><script src="skin/getMenu.js" language="javascript" type="text/javascript"></script><script src="skin/fontsize.js" language="javascript" type="text/javascript"></script>
|
||||
<link rel="shortcut icon" href="images/favicon.ico">
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<script type="text/javascript">ndeSetTextSize();</script>
|
||||
<div id="top">
|
||||
<!--+
|
||||
|breadtrail
|
||||
+-->
|
||||
<div class="breadtrail">
|
||||
<a href="http://www.apache.org/">Apache</a> > <a href="http://lucene.apache.org/">Lucene</a><script src="skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script>
|
||||
</div>
|
||||
<!--+
|
||||
|header
|
||||
+-->
|
||||
<div class="header">
|
||||
<!--+
|
||||
|start group logo
|
||||
+-->
|
||||
<div class="grouplogo">
|
||||
<a href="http://lucene.apache.org/"><img class="logoImage" alt="Lucene" src="http://www.apache.org/images/asf_logo_simple.png" title="Apache Lucene"></a>
|
||||
</div>
|
||||
<!--+
|
||||
|end group logo
|
||||
+-->
|
||||
<!--+
|
||||
|start Project Logo
|
||||
+-->
|
||||
<div class="projectlogo">
|
||||
<a href="http://lucene.apache.org/java/"><img class="logoImage" alt="Lucene" src="http://lucene.apache.org/images/lucene_green_300.gif" title="Apache Lucene is a high-performance, full-featured text search engine library written entirely in
|
||||
Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform."></a>
|
||||
</div>
|
||||
<!--+
|
||||
|end Project Logo
|
||||
+-->
|
||||
<!--+
|
||||
|start Search
|
||||
+-->
|
||||
<div class="searchbox">
|
||||
<form action="http://search.lucidimagination.com/p:lucene" method="get" class="roundtopsmall">
|
||||
<input onFocus="getBlank (this, 'Search the site with Lucene');" size="25" name="q" id="query" type="text" value="Search the site with Lucene">
|
||||
<input name="Search" value="Search" type="submit">
|
||||
</form>
|
||||
<div style="position: relative; top: -5px; left: -10px">Powered by <a href="http://www.lucidimagination.com" style="color: #033268">Lucid Imagination</a>
|
||||
</div>
|
||||
</div>
|
||||
<!--+
|
||||
|end search
|
||||
+-->
|
||||
<!--+
|
||||
|start Tabs
|
||||
+-->
|
||||
<ul id="tabs">
|
||||
<li class="current">
|
||||
<a class="selected" href="http://lucene.apache.org/java/docs/">Main</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="unselected" href="http://wiki.apache.org/lucene-java">Wiki</a>
|
||||
</li>
|
||||
<li class="current">
|
||||
<a class="selected" href="index.html">Lucene 4.0 Documentation</a>
|
||||
</li>
|
||||
</ul>
|
||||
<!--+
|
||||
|end Tabs
|
||||
+-->
|
||||
</div>
|
||||
</div>
|
||||
<div id="main">
|
||||
<div id="publishedStrip">
|
||||
<!--+
|
||||
|start Subtabs
|
||||
+-->
|
||||
<div id="level2tabs"></div>
|
||||
<!--+
|
||||
|end Endtabs
|
||||
+-->
|
||||
<script type="text/javascript"><!--
|
||||
document.write("Last Published: " + document.lastModified);
|
||||
// --></script>
|
||||
</div>
|
||||
<!--+
|
||||
|breadtrail
|
||||
+-->
|
||||
<div class="breadtrail">
|
||||
|
||||
|
||||
</div>
|
||||
<!--+
|
||||
|start Menu, mainarea
|
||||
+-->
|
||||
<!--+
|
||||
|start Menu
|
||||
+-->
|
||||
<div id="menu">
|
||||
<div onclick="SwitchMenu('menu_selected_1.1', 'skin/')" id="menu_selected_1.1Title" class="menutitle" style="background-image: url('skin/images/chapter_open.gif');">Documentation</div>
|
||||
<div id="menu_selected_1.1" class="selectedmenuitemgroup" style="display: block;">
|
||||
<div class="menuitem">
|
||||
<a href="index.html">Overview</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="changes/Changes.html">Changes</a>
|
||||
</div>
|
||||
<div onclick="SwitchMenu('menu_1.1.3', 'skin/')" id="menu_1.1.3Title" class="menutitle">Javadocs</div>
|
||||
<div id="menu_1.1.3" class="menuitemgroup">
|
||||
<div class="menuitem">
|
||||
<a href="api/core/index.html">Core</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-common/index.html">Analysis: Common</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-kuromoji/index.html">Analysis: Kuromoji (Japanese)</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-morfologik/index.html">Analysis: Morfologik (Polish)</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-phonetic/index.html">Analysis: Phonetic</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-smartcn/index.html">Analysis: Smart Chinese</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-stempel/index.html">Analysis: Stempel (Polish)</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-uima/index.html">Analysis: UIMA</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/benchmark/index.html">Benchmark</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/demo/index.html">Demo</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/facet/index.html">Faceting</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/grouping/index.html">Grouping</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/highlighter/index.html">Highlighter</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/join/index.html">Join</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/memory/index.html">Memory</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/misc/index.html">Miscellaneous</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/queries/index.html">Queries</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/queryparser/index.html">Query Parsers</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/sandbox/index.html">Sandbox</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/spatial/index.html">Spatial</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/suggest/index.html">Suggest / Spellcheck</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/test-framework/index.html">Test Framework</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="systemrequirements.html">System Requirements</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="contributions.html">Contributions</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="http://wiki.apache.org/lucene-java/LuceneFAQ">FAQ</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="fileformats.html">File Formats</a>
|
||||
</div>
|
||||
<div class="menupage">
|
||||
<div class="menupagetitle">Getting Started</div>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="queryparsersyntax.html">Query Syntax</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="scoring.html">Scoring</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="http://wiki.apache.org/lucene-java">Wiki</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="http://lucene.apache.org/privacy.html">Privacy Policy</a>
|
||||
</div>
|
||||
</div>
|
||||
<div id="credit"></div>
|
||||
<div id="roundbottom">
|
||||
<img style="display: none" class="corner" height="15" width="15" alt="" src="skin/images/rc-b-l-15-1body-2menu-3menu.png"></div>
|
||||
<!--+
|
||||
|alternative credits
|
||||
+-->
|
||||
<div id="credit2"></div>
|
||||
</div>
|
||||
<!--+
|
||||
|end Menu
|
||||
+-->
|
||||
<!--+
|
||||
|start content
|
||||
+-->
|
||||
<div id="content">
|
||||
<h1>
|
||||
Apache Lucene - Getting Started Guide
|
||||
</h1>
|
||||
<div id="minitoc-area">
|
||||
<ul class="minitoc">
|
||||
<li>
|
||||
<a href="#Getting Started">Getting Started</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
<a name="N10013"></a><a name="Getting Started"></a>
|
||||
<h2 class="boxed">Getting Started</h2>
|
||||
<div class="section">
|
||||
<p>
|
||||
This document is intended as a "getting started" guide. It has three audiences: first-time users
|
||||
looking to install Apache Lucene in their application; developers looking to modify or base
|
||||
the applications they develop on Lucene; and developers looking to become involved in and contribute
|
||||
to the development of Lucene. This document is written in tutorial and walk-through format. The
|
||||
goal is to help you "get started". It does not go into great depth on some of the conceptual or
|
||||
inner details of Lucene.
|
||||
</p>
|
||||
<p>
|
||||
Each section listed below builds on one another. More advanced users
|
||||
may wish to skip sections.
|
||||
</p>
|
||||
<ul>
|
||||
|
||||
<li>
|
||||
<a href="demo.html">About the command-line Lucene demo and its usage</a>. This section
|
||||
is intended for anyone who wants to use the command-line Lucene demo.</li>
|
||||
|
||||
|
||||
<li>
|
||||
<a href="demo2.html">About the sources and implementation for the command-line Lucene
|
||||
demo</a>. This section walks through the implementation details (sources) of the
|
||||
command-line Lucene demo. This section is intended for developers.</li>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
<!--+
|
||||
|end content
|
||||
+-->
|
||||
<div class="clearboth"> </div>
|
||||
</div>
|
||||
<div id="footer">
|
||||
<!--+
|
||||
|start bottomstrip
|
||||
+-->
|
||||
<div class="lastmodified">
|
||||
<script type="text/javascript"><!--
|
||||
document.write("Last Published: " + document.lastModified);
|
||||
// --></script>
|
||||
</div>
|
||||
<div class="copyright">
|
||||
Copyright ©
|
||||
2006 <a href="http://www.apache.org/licenses/">The Apache Software Foundation.</a>
|
||||
</div>
|
||||
<!--+
|
||||
|end bottomstrip
|
||||
+-->
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
|
||||
var _gaq = _gaq || [];
|
||||
_gaq.push(['_setAccount', 'UA-94576-12']);
|
||||
_gaq.push(['_trackPageview']);
|
||||
|
||||
(function() {
|
||||
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
|
||||
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
|
||||
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
|
||||
})();
|
||||
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
Before Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 3.6 KiB |
Before Width: | Height: | Size: 285 B |
|
@ -1,280 +0,0 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<meta content="Apache Forrest" name="Generator">
|
||||
<meta name="Forrest-version" content="0.9">
|
||||
<meta name="Forrest-skin-name" content="lucene">
|
||||
<title>Lucene Java Documentation</title>
|
||||
<link type="text/css" href="skin/basic.css" rel="stylesheet">
|
||||
<link media="screen" type="text/css" href="skin/screen.css" rel="stylesheet">
|
||||
<link media="print" type="text/css" href="skin/print.css" rel="stylesheet">
|
||||
<link type="text/css" href="skin/profile.css" rel="stylesheet">
|
||||
<script src="skin/getBlank.js" language="javascript" type="text/javascript"></script><script src="skin/getMenu.js" language="javascript" type="text/javascript"></script><script src="skin/fontsize.js" language="javascript" type="text/javascript"></script>
|
||||
<link rel="shortcut icon" href="images/favicon.ico">
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<script type="text/javascript">ndeSetTextSize();</script>
|
||||
<div id="top">
|
||||
<!--+
|
||||
|breadtrail
|
||||
+-->
|
||||
<div class="breadtrail">
|
||||
<a href="http://www.apache.org/">Apache</a> > <a href="http://lucene.apache.org/">Lucene</a><script src="skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script>
|
||||
</div>
|
||||
<!--+
|
||||
|header
|
||||
+-->
|
||||
<div class="header">
|
||||
<!--+
|
||||
|start group logo
|
||||
+-->
|
||||
<div class="grouplogo">
|
||||
<a href="http://lucene.apache.org/"><img class="logoImage" alt="Lucene" src="http://www.apache.org/images/asf_logo_simple.png" title="Apache Lucene"></a>
|
||||
</div>
|
||||
<!--+
|
||||
|end group logo
|
||||
+-->
|
||||
<!--+
|
||||
|start Project Logo
|
||||
+-->
|
||||
<div class="projectlogo">
|
||||
<a href="http://lucene.apache.org/java/"><img class="logoImage" alt="Lucene" src="http://lucene.apache.org/images/lucene_green_300.gif" title="Apache Lucene is a high-performance, full-featured text search engine library written entirely in
|
||||
Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform."></a>
|
||||
</div>
|
||||
<!--+
|
||||
|end Project Logo
|
||||
+-->
|
||||
<!--+
|
||||
|start Search
|
||||
+-->
|
||||
<div class="searchbox">
|
||||
<form action="http://search.lucidimagination.com/p:lucene" method="get" class="roundtopsmall">
|
||||
<input onFocus="getBlank (this, 'Search the site with Lucene');" size="25" name="q" id="query" type="text" value="Search the site with Lucene">
|
||||
<input name="Search" value="Search" type="submit">
|
||||
</form>
|
||||
<div style="position: relative; top: -5px; left: -10px">Powered by <a href="http://www.lucidimagination.com" style="color: #033268">Lucid Imagination</a>
|
||||
</div>
|
||||
</div>
|
||||
<!--+
|
||||
|end search
|
||||
+-->
|
||||
<!--+
|
||||
|start Tabs
|
||||
+-->
|
||||
<ul id="tabs">
|
||||
<li class="current">
|
||||
<a class="selected" href="http://lucene.apache.org/java/docs/">Main</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="unselected" href="http://wiki.apache.org/lucene-java">Wiki</a>
|
||||
</li>
|
||||
<li class="current">
|
||||
<a class="selected" href="index.html">Lucene 4.0 Documentation</a>
|
||||
</li>
|
||||
</ul>
|
||||
<!--+
|
||||
|end Tabs
|
||||
+-->
|
||||
</div>
|
||||
</div>
|
||||
<div id="main">
|
||||
<div id="publishedStrip">
|
||||
<!--+
|
||||
|start Subtabs
|
||||
+-->
|
||||
<div id="level2tabs"></div>
|
||||
<!--+
|
||||
|end Endtabs
|
||||
+-->
|
||||
<script type="text/javascript"><!--
|
||||
document.write("Last Published: " + document.lastModified);
|
||||
// --></script>
|
||||
</div>
|
||||
<!--+
|
||||
|breadtrail
|
||||
+-->
|
||||
<div class="breadtrail">
|
||||
|
||||
|
||||
</div>
|
||||
<!--+
|
||||
|start Menu, mainarea
|
||||
+-->
|
||||
<!--+
|
||||
|start Menu
|
||||
+-->
|
||||
<div id="menu">
|
||||
<div onclick="SwitchMenu('menu_selected_1.1', 'skin/')" id="menu_selected_1.1Title" class="menutitle" style="background-image: url('skin/images/chapter_open.gif');">Documentation</div>
|
||||
<div id="menu_selected_1.1" class="selectedmenuitemgroup" style="display: block;">
|
||||
<div class="menupage">
|
||||
<div class="menupagetitle">Overview</div>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="changes/Changes.html">Changes</a>
|
||||
</div>
|
||||
<div onclick="SwitchMenu('menu_1.1.3', 'skin/')" id="menu_1.1.3Title" class="menutitle">Javadocs</div>
|
||||
<div id="menu_1.1.3" class="menuitemgroup">
|
||||
<div class="menuitem">
|
||||
<a href="api/core/index.html">Core</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-common/index.html">Analysis: Common</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-kuromoji/index.html">Analysis: Kuromoji (Japanese)</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-morfologik/index.html">Analysis: Morfologik (Polish)</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-phonetic/index.html">Analysis: Phonetic</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-smartcn/index.html">Analysis: Smart Chinese</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-stempel/index.html">Analysis: Stempel (Polish)</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-uima/index.html">Analysis: UIMA</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/benchmark/index.html">Benchmark</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/demo/index.html">Demo</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/facet/index.html">Faceting</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/grouping/index.html">Grouping</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/highlighter/index.html">Highlighter</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/join/index.html">Join</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/memory/index.html">Memory</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/misc/index.html">Miscellaneous</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/queries/index.html">Queries</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/queryparser/index.html">Query Parsers</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/sandbox/index.html">Sandbox</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/spatial/index.html">Spatial</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/suggest/index.html">Suggest / Spellcheck</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/test-framework/index.html">Test Framework</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="systemrequirements.html">System Requirements</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="contributions.html">Contributions</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="http://wiki.apache.org/lucene-java/LuceneFAQ">FAQ</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="fileformats.html">File Formats</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="gettingstarted.html">Getting Started</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="queryparsersyntax.html">Query Syntax</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="scoring.html">Scoring</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="http://wiki.apache.org/lucene-java">Wiki</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="http://lucene.apache.org/privacy.html">Privacy Policy</a>
|
||||
</div>
|
||||
</div>
|
||||
<div id="credit">
|
||||
<hr>
|
||||
<a href="http://forrest.apache.org/"><img border="0" title="Built with Apache Forrest" alt="Built with Apache Forrest - logo" src="images/built-with-forrest-button.png" style="width: 88px;height: 31px;"></a>
|
||||
</div>
|
||||
<div id="roundbottom">
|
||||
<img style="display: none" class="corner" height="15" width="15" alt="" src="skin/images/rc-b-l-15-1body-2menu-3menu.png"></div>
|
||||
<!--+
|
||||
|alternative credits
|
||||
+-->
|
||||
<div id="credit2"></div>
|
||||
</div>
|
||||
<!--+
|
||||
|end Menu
|
||||
+-->
|
||||
<!--+
|
||||
|start content
|
||||
+-->
|
||||
<div id="content">
|
||||
<h1>Lucene Java Documentation</h1>
|
||||
|
||||
<p>
|
||||
This is the official documentation for Lucene Java<BR>
|
||||
Please use the menu on the left to access the Javadocs and different documents.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Additional documentation is available in the <a href="http://wiki.apache.org/lucene-java">Wiki</a>.
|
||||
</p>
|
||||
|
||||
</div>
|
||||
<!--+
|
||||
|end content
|
||||
+-->
|
||||
<div class="clearboth"> </div>
|
||||
</div>
|
||||
<div id="footer">
|
||||
<!--+
|
||||
|start bottomstrip
|
||||
+-->
|
||||
<div class="lastmodified">
|
||||
<script type="text/javascript"><!--
|
||||
document.write("Last Published: " + document.lastModified);
|
||||
// --></script>
|
||||
</div>
|
||||
<div class="copyright">
|
||||
Copyright ©
|
||||
2006 <a href="http://www.apache.org/licenses/">The Apache Software Foundation.</a>
|
||||
</div>
|
||||
<div id="logos"></div>
|
||||
<!--+
|
||||
|end bottomstrip
|
||||
+-->
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
|
||||
var _gaq = _gaq || [];
|
||||
_gaq.push(['_setAccount', 'UA-94576-12']);
|
||||
_gaq.push(['_trackPageview']);
|
||||
|
||||
(function() {
|
||||
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
|
||||
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
|
||||
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
|
||||
})();
|
||||
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -1,501 +0,0 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<meta content="Apache Forrest" name="Generator">
|
||||
<meta name="Forrest-version" content="0.9">
|
||||
<meta name="Forrest-skin-name" content="lucene">
|
||||
<title>Site Linkmap Table of Contents</title>
|
||||
<link type="text/css" href="skin/basic.css" rel="stylesheet">
|
||||
<link media="screen" type="text/css" href="skin/screen.css" rel="stylesheet">
|
||||
<link media="print" type="text/css" href="skin/print.css" rel="stylesheet">
|
||||
<link type="text/css" href="skin/profile.css" rel="stylesheet">
|
||||
<script src="skin/getBlank.js" language="javascript" type="text/javascript"></script><script src="skin/getMenu.js" language="javascript" type="text/javascript"></script><script src="skin/fontsize.js" language="javascript" type="text/javascript"></script>
|
||||
<link rel="shortcut icon" href="images/favicon.ico">
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<script type="text/javascript">ndeSetTextSize();</script>
|
||||
<div id="top">
|
||||
<!--+
|
||||
|breadtrail
|
||||
+-->
|
||||
<div class="breadtrail">
|
||||
<a href="http://www.apache.org/">Apache</a> > <a href="http://lucene.apache.org/">Lucene</a><script src="skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script>
|
||||
</div>
|
||||
<!--+
|
||||
|header
|
||||
+-->
|
||||
<div class="header">
|
||||
<!--+
|
||||
|start group logo
|
||||
+-->
|
||||
<div class="grouplogo">
|
||||
<a href="http://lucene.apache.org/"><img class="logoImage" alt="Lucene" src="http://www.apache.org/images/asf_logo_simple.png" title="Apache Lucene"></a>
|
||||
</div>
|
||||
<!--+
|
||||
|end group logo
|
||||
+-->
|
||||
<!--+
|
||||
|start Project Logo
|
||||
+-->
|
||||
<div class="projectlogo">
|
||||
<a href="http://lucene.apache.org/java/"><img class="logoImage" alt="Lucene" src="http://lucene.apache.org/images/lucene_green_300.gif" title="Apache Lucene is a high-performance, full-featured text search engine library written entirely in
|
||||
Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform."></a>
|
||||
</div>
|
||||
<!--+
|
||||
|end Project Logo
|
||||
+-->
|
||||
<!--+
|
||||
|start Search
|
||||
+-->
|
||||
<div class="searchbox">
|
||||
<form action="http://search.lucidimagination.com/p:lucene" method="get" class="roundtopsmall">
|
||||
<input onFocus="getBlank (this, 'Search the site with Lucene');" size="25" name="q" id="query" type="text" value="Search the site with Lucene">
|
||||
<input name="Search" value="Search" type="submit">
|
||||
</form>
|
||||
<div style="position: relative; top: -5px; left: -10px">Powered by <a href="http://www.lucidimagination.com" style="color: #033268">Lucid Imagination</a>
|
||||
</div>
|
||||
</div>
|
||||
<!--+
|
||||
|end search
|
||||
+-->
|
||||
<!--+
|
||||
|start Tabs
|
||||
+-->
|
||||
<ul id="tabs">
|
||||
<li class="current">
|
||||
<a class="selected" href="http://lucene.apache.org/java/docs/">Main</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="unselected" href="http://wiki.apache.org/lucene-java">Wiki</a>
|
||||
</li>
|
||||
<li class="current">
|
||||
<a class="selected" href="index.html">Lucene 4.0 Documentation</a>
|
||||
</li>
|
||||
</ul>
|
||||
<!--+
|
||||
|end Tabs
|
||||
+-->
|
||||
</div>
|
||||
</div>
|
||||
<div id="main">
|
||||
<div id="publishedStrip">
|
||||
<!--+
|
||||
|start Subtabs
|
||||
+-->
|
||||
<div id="level2tabs"></div>
|
||||
<!--+
|
||||
|end Endtabs
|
||||
+-->
|
||||
<script type="text/javascript"><!--
|
||||
document.write("Last Published: " + document.lastModified);
|
||||
// --></script>
|
||||
</div>
|
||||
<!--+
|
||||
|breadtrail
|
||||
+-->
|
||||
<div class="breadtrail">
|
||||
|
||||
|
||||
</div>
|
||||
<!--+
|
||||
|start Menu, mainarea
|
||||
+-->
|
||||
<!--+
|
||||
|start Menu
|
||||
+-->
|
||||
<div id="menu">
|
||||
<div onclick="SwitchMenu('menu_1.1', 'skin/')" id="menu_1.1Title" class="menutitle">Documentation</div>
|
||||
<div id="menu_1.1" class="menuitemgroup">
|
||||
<div class="menuitem">
|
||||
<a href="index.html">Overview</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="changes/Changes.html">Changes</a>
|
||||
</div>
|
||||
<div onclick="SwitchMenu('menu_1.1.3', 'skin/')" id="menu_1.1.3Title" class="menutitle">Javadocs</div>
|
||||
<div id="menu_1.1.3" class="menuitemgroup">
|
||||
<div class="menuitem">
|
||||
<a href="api/core/index.html">Core</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-common/index.html">Analysis: Common</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-kuromoji/index.html">Analysis: Kuromoji (Japanese)</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-morfologik/index.html">Analysis: Morfologik (Polish)</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-phonetic/index.html">Analysis: Phonetic</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-smartcn/index.html">Analysis: Smart Chinese</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-stempel/index.html">Analysis: Stempel (Polish)</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-uima/index.html">Analysis: UIMA</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/benchmark/index.html">Benchmark</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/demo/index.html">Demo</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/facet/index.html">Faceting</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/grouping/index.html">Grouping</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/highlighter/index.html">Highlighter</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/join/index.html">Join</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/memory/index.html">Memory</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/misc/index.html">Miscellaneous</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/queries/index.html">Queries</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/queryparser/index.html">Query Parsers</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/sandbox/index.html">Sandbox</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/spatial/index.html">Spatial</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/suggest/index.html">Suggest / Spellcheck</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/test-framework/index.html">Test Framework</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="systemrequirements.html">System Requirements</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="contributions.html">Contributions</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="http://wiki.apache.org/lucene-java/LuceneFAQ">FAQ</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="fileformats.html">File Formats</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="gettingstarted.html">Getting Started</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="queryparsersyntax.html">Query Syntax</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="scoring.html">Scoring</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="http://wiki.apache.org/lucene-java">Wiki</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="http://lucene.apache.org/privacy.html">Privacy Policy</a>
|
||||
</div>
|
||||
</div>
|
||||
<div id="credit"></div>
|
||||
<div id="roundbottom">
|
||||
<img style="display: none" class="corner" height="15" width="15" alt="" src="skin/images/rc-b-l-15-1body-2menu-3menu.png"></div>
|
||||
<!--+
|
||||
|alternative credits
|
||||
+-->
|
||||
<div id="credit2"></div>
|
||||
</div>
|
||||
<!--+
|
||||
|end Menu
|
||||
+-->
|
||||
<!--+
|
||||
|start content
|
||||
+-->
|
||||
<div id="content">
|
||||
<h1>Site Linkmap Table of Contents</h1>
|
||||
<p>
|
||||
This is a map of the complete site and its structure.
|
||||
</p>
|
||||
<ul>
|
||||
<li>
|
||||
<a>Lucene</a> ___________________ <em>site</em>
|
||||
</li>
|
||||
<ul>
|
||||
|
||||
|
||||
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a>Documentation</a> ___________________ <em>docs</em>
|
||||
</li>
|
||||
<ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="index.html">Overview</a> ___________________ <em>overview</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="changes/Changes.html">Changes</a> ___________________ <em>changes</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a>Javadocs</a> ___________________ <em>javadoc</em>
|
||||
</li>
|
||||
<ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="api/core/index.html">Core</a> ___________________ <em>javadoc-core</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="api/analyzers-common/index.html">Analysis: Common</a> ___________________ <em>javadoc-analyzers-common</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="api/analyzers-kuromoji/index.html">Analysis: Kuromoji (Japanese)</a> ___________________ <em>javadoc-analyzers-kuromoji</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="api/analyzers-morfologik/index.html">Analysis: Morfologik (Polish)</a> ___________________ <em>javadoc-analyzers-morfologik</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="api/analyzers-phonetic/index.html">Analysis: Phonetic</a> ___________________ <em>javadoc-analyzers-phonetic</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="api/analyzers-smartcn/index.html">Analysis: Smart Chinese</a> ___________________ <em>javadoc-analyzers-smartcn</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="api/analyzers-stempel/index.html">Analysis: Stempel (Polish)</a> ___________________ <em>javadoc-analyzers-stempel</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="api/analyzers-uima/index.html">Analysis: UIMA</a> ___________________ <em>javadoc-analyzers-uima</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="api/benchmark/index.html">Benchmark</a> ___________________ <em>javadoc-benchmark</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="api/demo/index.html">Demo</a> ___________________ <em>javadoc-demo</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="api/facet/index.html">Faceting</a> ___________________ <em>javadoc-facet</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="api/grouping/index.html">Grouping</a> ___________________ <em>javadoc-grouping</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="api/highlighter/index.html">Highlighter</a> ___________________ <em>javadoc-highlighter</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="api/join/index.html">Join</a> ___________________ <em>javadoc-join</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="api/memory/index.html">Memory</a> ___________________ <em>javadoc-memory</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="api/misc/index.html">Miscellaneous</a> ___________________ <em>javadoc-misc</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="api/queries/index.html">Queries</a> ___________________ <em>javadoc-queries</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="api/queryparser/index.html">Query Parsers</a> ___________________ <em>javadoc-queryparser</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="api/sandbox/index.html">Sandbox</a> ___________________ <em>javadoc-sandbox</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="api/spatial/index.html">Spatial</a> ___________________ <em>javadoc-spatial</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="api/suggest/index.html">Suggest / Spellcheck</a> ___________________ <em>javadoc-suggest</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="api/test-framework/index.html">Test Framework</a> ___________________ <em>javadoc-test-framework</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</ul>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="systemrequirements.html">System Requirements</a> ___________________ <em>systemrequirements</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="contributions.html">Contributions</a> ___________________ <em>contributions</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="http://wiki.apache.org/lucene-java/LuceneFAQ">FAQ</a> ___________________ <em>faq</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="fileformats.html">File Formats</a> ___________________ <em>file-formats</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="gettingstarted.html">Getting Started</a> ___________________ <em>tutorial</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="queryparsersyntax.html">Query Syntax</a> ___________________ <em>query-syntax</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="scoring.html">Scoring</a> ___________________ <em>scoring</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="http://wiki.apache.org/lucene-java">Wiki</a> ___________________ <em>wiki</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="http://lucene.apache.org/privacy.html">Privacy Policy</a> ___________________ <em>privacy</em>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</ul>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</ul>
|
||||
</div>
|
||||
<!--+
|
||||
|end content
|
||||
+-->
|
||||
<div class="clearboth"> </div>
|
||||
</div>
|
||||
<div id="footer">
|
||||
<!--+
|
||||
|start bottomstrip
|
||||
+-->
|
||||
<div class="lastmodified">
|
||||
<script type="text/javascript"><!--
|
||||
document.write("Last Published: " + document.lastModified);
|
||||
// --></script>
|
||||
</div>
|
||||
<div class="copyright">
|
||||
Copyright ©
|
||||
2006 <a href="http://www.apache.org/licenses/">The Apache Software Foundation.</a>
|
||||
</div>
|
||||
<!--+
|
||||
|end bottomstrip
|
||||
+-->
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
|
||||
var _gaq = _gaq || [];
|
||||
_gaq.push(['_setAccount', 'UA-94576-12']);
|
||||
_gaq.push(['_trackPageview']);
|
||||
|
||||
(function() {
|
||||
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
|
||||
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
|
||||
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
|
||||
})();
|
||||
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -1,420 +0,0 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<meta content="Apache Forrest" name="Generator">
|
||||
<meta name="Forrest-version" content="0.9">
|
||||
<meta name="Forrest-skin-name" content="lucene">
|
||||
<title>
|
||||
Apache Lucene - Lucene Contrib
|
||||
</title>
|
||||
<link type="text/css" href="../skin/basic.css" rel="stylesheet">
|
||||
<link media="screen" type="text/css" href="../skin/screen.css" rel="stylesheet">
|
||||
<link media="print" type="text/css" href="../skin/print.css" rel="stylesheet">
|
||||
<link type="text/css" href="../skin/profile.css" rel="stylesheet">
|
||||
<script src="../skin/getBlank.js" language="javascript" type="text/javascript"></script><script src="../skin/getMenu.js" language="javascript" type="text/javascript"></script><script src="../skin/fontsize.js" language="javascript" type="text/javascript"></script>
|
||||
<link rel="shortcut icon" href="../images/favicon.ico">
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<script type="text/javascript">ndeSetTextSize();</script>
|
||||
<div id="top">
|
||||
<!--+
|
||||
|breadtrail
|
||||
+-->
|
||||
<div class="breadtrail">
|
||||
<a href="http://www.apache.org/">Apache</a> > <a href="http://lucene.apache.org/">Lucene</a><script src="../skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script>
|
||||
</div>
|
||||
<!--+
|
||||
|header
|
||||
+-->
|
||||
<div class="header">
|
||||
<!--+
|
||||
|start group logo
|
||||
+-->
|
||||
<div class="grouplogo">
|
||||
<a href="http://lucene.apache.org/"><img class="logoImage" alt="Lucene" src="http://www.apache.org/images/asf_logo_simple.png" title="Apache Lucene"></a>
|
||||
</div>
|
||||
<!--+
|
||||
|end group logo
|
||||
+-->
|
||||
<!--+
|
||||
|start Project Logo
|
||||
+-->
|
||||
<div class="projectlogo">
|
||||
<a href="http://lucene.apache.org/java/"><img class="logoImage" alt="Lucene" src="http://lucene.apache.org/images/lucene_green_300.gif" title="Apache Lucene is a high-performance, full-featured text search engine library written entirely in
|
||||
Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform."></a>
|
||||
</div>
|
||||
<!--+
|
||||
|end Project Logo
|
||||
+-->
|
||||
<!--+
|
||||
|start Search
|
||||
+-->
|
||||
<div class="searchbox">
|
||||
<form action="http://search.lucidimagination.com/p:lucene" method="get" class="roundtopsmall">
|
||||
<input onFocus="getBlank (this, 'Search the site with Lucene');" size="25" name="q" id="query" type="text" value="Search the site with Lucene">
|
||||
<input name="Search" value="Search" type="submit">
|
||||
</form>
|
||||
<div style="position: relative; top: -5px; left: -10px">Powered by <a href="http://www.lucidimagination.com" style="color: #033268">Lucid Imagination</a>
|
||||
</div>
|
||||
</div>
|
||||
<!--+
|
||||
|end search
|
||||
+-->
|
||||
<!--+
|
||||
|start Tabs
|
||||
+-->
|
||||
<ul id="tabs">
|
||||
<li class="current">
|
||||
<a class="selected" href="http://lucene.apache.org/java/docs/">Main</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="unselected" href="http://wiki.apache.org/lucene-java">Wiki</a>
|
||||
</li>
|
||||
<li class="current">
|
||||
<a class="selected" href="../index.html">Lucene 4.0 Documentation</a>
|
||||
</li>
|
||||
</ul>
|
||||
<!--+
|
||||
|end Tabs
|
||||
+-->
|
||||
</div>
|
||||
</div>
|
||||
<div id="main">
|
||||
<div id="publishedStrip">
|
||||
<!--+
|
||||
|start Subtabs
|
||||
+-->
|
||||
<div id="level2tabs"></div>
|
||||
<!--+
|
||||
|end Endtabs
|
||||
+-->
|
||||
<script type="text/javascript"><!--
|
||||
document.write("Last Published: " + document.lastModified);
|
||||
// --></script>
|
||||
</div>
|
||||
<!--+
|
||||
|breadtrail
|
||||
+-->
|
||||
<div class="breadtrail">
|
||||
|
||||
|
||||
</div>
|
||||
<!--+
|
||||
|start Menu, mainarea
|
||||
+-->
|
||||
<!--+
|
||||
|start Menu
|
||||
+-->
|
||||
<div id="menu">
|
||||
<div onclick="SwitchMenu('menu_selected_1.1', '../skin/')" id="menu_selected_1.1Title" class="menutitle" style="background-image: url('../skin/images/chapter_open.gif');">Documentation</div>
|
||||
<div id="menu_selected_1.1" class="selectedmenuitemgroup" style="display: block;">
|
||||
<div class="menuitem">
|
||||
<a href="../index.html">Overview</a>
|
||||
</div>
|
||||
<div onclick="SwitchMenu('menu_1.1.2', '../skin/')" id="menu_1.1.2Title" class="menutitle">Changes</div>
|
||||
<div id="menu_1.1.2" class="menuitemgroup">
|
||||
<div class="menuitem">
|
||||
<a href="../changes/Changes.html">Core</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="../changes/Contrib-Changes.html">Contrib</a>
|
||||
</div>
|
||||
</div>
|
||||
<div onclick="SwitchMenu('menu_1.1.3', '../skin/')" id="menu_1.1.3Title" class="menutitle">Javadocs</div>
|
||||
<div id="menu_1.1.3" class="menuitemgroup">
|
||||
<div class="menuitem">
|
||||
<a href="../api/all/index.html">All</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="../api/core/index.html">Core</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="../api/test-framework/index.html">Test Framework</a>
|
||||
</div>
|
||||
<div onclick="SwitchMenu('menu_1.1.3.4', '../skin/')" id="menu_1.1.3.4Title" class="menutitle">Contrib</div>
|
||||
<div id="menu_1.1.3.4" class="menuitemgroup">
|
||||
<div class="menuitem">
|
||||
<a href="../api/contrib-benchmark/index.html">Benchmark</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="../api/contrib-demo/index.html">Demo</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="../api/contrib-highlighter/index.html">Highlighter</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="../api/contrib-instantiated/index.html">Instantiated</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="../api/contrib-memory/index.html">Memory</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="../api/contrib-misc/index.html">Miscellaneous</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="../api/contrib-queries/index.html">Queries</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="../api/contrib-queryparser/index.html">Query Parser Framework</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="../api/contrib-remote/index.html">Remote</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="../api/contrib-spatial/index.html">Spatial</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="../api/contrib-spellchecker/index.html">Spellchecker</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="../api/contrib-xml-query-parser/index.html">XML Query Parser</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="../systemrequirements.html">System Requirements</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="../contributions.html">Contributions</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="http://wiki.apache.org/lucene-java/LuceneFAQ">FAQ</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="../fileformats.html">File Formats</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="../gettingstarted.html">Getting Started</a>
|
||||
</div>
|
||||
<div class="menupage">
|
||||
<div class="menupagetitle">Lucene Contrib</div>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="../queryparsersyntax.html">Query Syntax</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="../scoring.html">Scoring</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="http://wiki.apache.org/lucene-java">Wiki</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="http://lucene.apache.org/privacy.html">Privacy Policy</a>
|
||||
</div>
|
||||
</div>
|
||||
<div id="credit">
|
||||
<hr>
|
||||
<a href="http://forrest.apache.org/"><img border="0" title="Built with Apache Forrest" alt="Built with Apache Forrest - logo" src="../images/built-with-forrest-button.png" style="width: 88px;height: 31px;"></a>
|
||||
</div>
|
||||
<div id="roundbottom">
|
||||
<img style="display: none" class="corner" height="15" width="15" alt="" src="../skin/images/rc-b-l-15-1body-2menu-3menu.png"></div>
|
||||
<!--+
|
||||
|alternative credits
|
||||
+-->
|
||||
<div id="credit2"></div>
|
||||
</div>
|
||||
<!--+
|
||||
|end Menu
|
||||
+-->
|
||||
<!--+
|
||||
|start content
|
||||
+-->
|
||||
<div id="content">
|
||||
<h1>
|
||||
Apache Lucene - Lucene Contrib
|
||||
</h1>
|
||||
<div id="minitoc-area">
|
||||
<ul class="minitoc">
|
||||
<li>
|
||||
<a href="#Contrib">Lucene Contrib</a>
|
||||
<ul class="minitoc">
|
||||
<li>
|
||||
<a href="#benchmark">benchmark</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#demo">demo</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#highlighter">highlighter</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#instantiated">instantiated</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#memory">memory</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#misc">misc</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#queryparser">queryparser</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#queries">queries</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#remote">remote</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#spatial">spatial</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#spellchecker">spellchecker</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#xml-query-parser">xml-query-parser</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
<a name="N1000C"></a><a name="Contrib"></a>
|
||||
<h2 class="boxed">Lucene Contrib</h2>
|
||||
<div class="section">
|
||||
<p>
|
||||
The Lucene Java project also contains a workspace, Lucene Contrib
|
||||
(formerly known as the Lucene Sandbox), that is open both to all Lucene
|
||||
Java core committers and to developers whose commit rights are
|
||||
restricted to the Contrib workspace; these developers are referred to
|
||||
as "Contrib committers". The Lucene Contrib workspace hosts the
|
||||
following types of packages:
|
||||
</p>
|
||||
<ul>
|
||||
|
||||
<li>Various third party contributions.</li>
|
||||
|
||||
<li>
|
||||
Contributions with third party dependencies - the Lucene Java core
|
||||
distribution has no external runtime dependencies.
|
||||
</li>
|
||||
|
||||
<li>
|
||||
New ideas that are intended for eventual inclusion into the Lucene
|
||||
Java core.
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
<p>
|
||||
Users are free to experiment with the components developed in the
|
||||
Contrib workspace, but Contrib packages will not necessarily be
|
||||
maintained, particularly in their current state. The Lucene Java core
|
||||
backwards compatibility commitments (see
|
||||
<a href="http://wiki.apache.org/lucene-java/BackwardsCompatibility">http://wiki.apache.org/lucene-java/BackwardsCompatibility</a>)
|
||||
do not necessarily extend to the packages in the Contrib workspace.
|
||||
See the README.txt file for each Contrib package for details. If the
|
||||
README.txt file does not address its backwards compatibility
|
||||
commitments, users should assume it does not make any compatibility
|
||||
commitments.
|
||||
</p>
|
||||
<p>
|
||||
See <a href="../changes/Contrib-Changes.html">Contrib CHANGES</a> for changes included in the current release.
|
||||
</p>
|
||||
<p>
|
||||
You can access the current trunk Contrib repository at
|
||||
<a href="http://svn.apache.org/repos/asf/lucene/dev/trunk/lucene/contrib/">http://svn.apache.org/repos/asf/lucene/dev/trunk/lucene/contrib/</a>.
|
||||
</p>
|
||||
<a name="N10035"></a><a name="benchmark"></a>
|
||||
<h3 class="boxed">benchmark</h3>
|
||||
<p>The benchmark contribution contains tools for benchmarking Lucene using standard, freely available corpora.</p>
|
||||
<p>See <a href="../api/contrib-benchmark/index.html">benchmark javadoc</a>
|
||||
</p>
|
||||
<a name="N10044"></a><a name="demo"></a>
|
||||
<h3 class="boxed">demo</h3>
|
||||
<p>The demo contrib contains the Lucene demo: IndexFiles and SearchFiles, described under
|
||||
<a href="../gettingstarted.html">Getting Started</a>.</p>
|
||||
<p>See <a href="../api/contrib-demo/index.html">demo javadoc</a>
|
||||
</p>
|
||||
<a name="N10057"></a><a name="highlighter"></a>
|
||||
<h3 class="boxed">highlighter</h3>
|
||||
<p>A set of classes for highlighting matching terms in search results.</p>
|
||||
<p>See <a href="../api/contrib-highlighter/index.html">highlighter javadoc</a>
|
||||
</p>
|
||||
<a name="N10066"></a><a name="instantiated"></a>
|
||||
<h3 class="boxed">instantiated</h3>
|
||||
<p>RAM-based index that enables much faster searching than RAMDirectory in certain situations.</p>
|
||||
<p>See <a href="../api/contrib-instantiated/index.html">instantiated javadoc</a>
|
||||
</p>
|
||||
<a name="N10075"></a><a name="memory"></a>
|
||||
<h3 class="boxed">memory</h3>
|
||||
<p>High-performance single-document main memory index.</p>
|
||||
<p>See <a href="../api/contrib-memory/index.html">memory javadoc</a>
|
||||
</p>
|
||||
<a name="N10084"></a><a name="misc"></a>
|
||||
<h3 class="boxed">misc</h3>
|
||||
<p>A variety of miscellaneous files, including QueryParsers, and other alternate Lucene class implementations and tools.</p>
|
||||
<p>See <a href="../api/contrib-misc/index.html">misc javadoc</a>
|
||||
</p>
|
||||
<a name="N10093"></a><a name="queryparser"></a>
|
||||
<h3 class="boxed">queryparser</h3>
|
||||
<p>A new Lucene query parser implementation, which matches the syntax of the core QueryParser but offers a more modular architecture to enable customization.</p>
|
||||
<p>See <a href="../api/contrib-queryparser/index.html">queryparser javadoc</a>
|
||||
</p>
|
||||
<a name="N100A2"></a><a name="queries"></a>
|
||||
<h3 class="boxed">queries</h3>
|
||||
<p>Additional queries for Lucene.</p>
|
||||
<p>See <a href="../api/contrib-queries/index.html">queries javadoc</a>
|
||||
</p>
|
||||
<a name="N100B1"></a><a name="remote"></a>
|
||||
<h3 class="boxed">remote</h3>
|
||||
<p>Classes to help use Lucene with RMI.</p>
|
||||
<p>See <a href="../api/contrib-remote/index.html">remote javadoc</a>
|
||||
</p>
|
||||
<a name="N100C0"></a><a name="spatial"></a>
|
||||
<h3 class="boxed">spatial</h3>
|
||||
<p>Classes to help with efficient distance based sorting.</p>
|
||||
<p>See <a href="../api/contrib-spatial/index.html">spatial javadoc</a>
|
||||
</p>
|
||||
<a name="N100CF"></a><a name="spellchecker"></a>
|
||||
<h3 class="boxed">spellchecker</h3>
|
||||
<p>Provides tools for spellchecking and suggestions with Lucene.</p>
|
||||
<p>See <a href="../api/contrib-spellchecker/index.html">spellchecker javadoc</a>
|
||||
</p>
|
||||
<a name="N100DE"></a><a name="xml-query-parser"></a>
|
||||
<h3 class="boxed">xml-query-parser</h3>
|
||||
<p>A QueryParser that can read queries written in an XML format.</p>
|
||||
<p>See <a href="../api/contrib-xml-query-parser/index.html">xml-query-parser javadoc</a>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<!--+
|
||||
|end content
|
||||
+-->
|
||||
<div class="clearboth"> </div>
|
||||
</div>
|
||||
<div id="footer">
|
||||
<!--+
|
||||
|start bottomstrip
|
||||
+-->
|
||||
<div class="lastmodified">
|
||||
<script type="text/javascript"><!--
|
||||
document.write("Last Published: " + document.lastModified);
|
||||
// --></script>
|
||||
</div>
|
||||
<div class="copyright">
|
||||
Copyright ©
|
||||
2006 <a href="http://www.apache.org/licenses/">The Apache Software Foundation.</a>
|
||||
</div>
|
||||
<div id="logos"></div>
|
||||
<!--+
|
||||
|end bottomstrip
|
||||
+-->
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
|
||||
var _gaq = _gaq || [];
|
||||
_gaq.push(['_setAccount', 'UA-94576-12']);
|
||||
_gaq.push(['_trackPageview']);
|
||||
|
||||
(function() {
|
||||
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
|
||||
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
|
||||
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
|
||||
})();
|
||||
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -1,536 +0,0 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<meta content="Apache Forrest" name="Generator">
|
||||
<meta name="Forrest-version" content="0.9">
|
||||
<meta name="Forrest-skin-name" content="lucene">
|
||||
<title>
|
||||
Apache Lucene - Query Parser Syntax
|
||||
</title>
|
||||
<link type="text/css" href="skin/basic.css" rel="stylesheet">
|
||||
<link media="screen" type="text/css" href="skin/screen.css" rel="stylesheet">
|
||||
<link media="print" type="text/css" href="skin/print.css" rel="stylesheet">
|
||||
<link type="text/css" href="skin/profile.css" rel="stylesheet">
|
||||
<script src="skin/getBlank.js" language="javascript" type="text/javascript"></script><script src="skin/getMenu.js" language="javascript" type="text/javascript"></script><script src="skin/fontsize.js" language="javascript" type="text/javascript"></script>
|
||||
<link rel="shortcut icon" href="images/favicon.ico">
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<script type="text/javascript">ndeSetTextSize();</script>
|
||||
<div id="top">
|
||||
<!--+
|
||||
|breadtrail
|
||||
+-->
|
||||
<div class="breadtrail">
|
||||
<a href="http://www.apache.org/">Apache</a> > <a href="http://lucene.apache.org/">Lucene</a><script src="skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script>
|
||||
</div>
|
||||
<!--+
|
||||
|header
|
||||
+-->
|
||||
<div class="header">
|
||||
<!--+
|
||||
|start group logo
|
||||
+-->
|
||||
<div class="grouplogo">
|
||||
<a href="http://lucene.apache.org/"><img class="logoImage" alt="Lucene" src="http://www.apache.org/images/asf_logo_simple.png" title="Apache Lucene"></a>
|
||||
</div>
|
||||
<!--+
|
||||
|end group logo
|
||||
+-->
|
||||
<!--+
|
||||
|start Project Logo
|
||||
+-->
|
||||
<div class="projectlogo">
|
||||
<a href="http://lucene.apache.org/java/"><img class="logoImage" alt="Lucene" src="http://lucene.apache.org/images/lucene_green_300.gif" title="Apache Lucene is a high-performance, full-featured text search engine library written entirely in
|
||||
Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform."></a>
|
||||
</div>
|
||||
<!--+
|
||||
|end Project Logo
|
||||
+-->
|
||||
<!--+
|
||||
|start Search
|
||||
+-->
|
||||
<div class="searchbox">
|
||||
<form action="http://search.lucidimagination.com/p:lucene" method="get" class="roundtopsmall">
|
||||
<input onFocus="getBlank (this, 'Search the site with Lucene');" size="25" name="q" id="query" type="text" value="Search the site with Lucene">
|
||||
<input name="Search" value="Search" type="submit">
|
||||
</form>
|
||||
<div style="position: relative; top: -5px; left: -10px">Powered by <a href="http://www.lucidimagination.com" style="color: #033268">Lucid Imagination</a>
|
||||
</div>
|
||||
</div>
|
||||
<!--+
|
||||
|end search
|
||||
+-->
|
||||
<!--+
|
||||
|start Tabs
|
||||
+-->
|
||||
<ul id="tabs">
|
||||
<li class="current">
|
||||
<a class="selected" href="http://lucene.apache.org/java/docs/">Main</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="unselected" href="http://wiki.apache.org/lucene-java">Wiki</a>
|
||||
</li>
|
||||
<li class="current">
|
||||
<a class="selected" href="index.html">Lucene 4.0 Documentation</a>
|
||||
</li>
|
||||
</ul>
|
||||
<!--+
|
||||
|end Tabs
|
||||
+-->
|
||||
</div>
|
||||
</div>
|
||||
<div id="main">
|
||||
<div id="publishedStrip">
|
||||
<!--+
|
||||
|start Subtabs
|
||||
+-->
|
||||
<div id="level2tabs"></div>
|
||||
<!--+
|
||||
|end Endtabs
|
||||
+-->
|
||||
<script type="text/javascript"><!--
|
||||
document.write("Last Published: " + document.lastModified);
|
||||
// --></script>
|
||||
</div>
|
||||
<!--+
|
||||
|breadtrail
|
||||
+-->
|
||||
<div class="breadtrail">
|
||||
|
||||
|
||||
</div>
|
||||
<!--+
|
||||
|start Menu, mainarea
|
||||
+-->
|
||||
<!--+
|
||||
|start Menu
|
||||
+-->
|
||||
<div id="menu">
|
||||
<div onclick="SwitchMenu('menu_selected_1.1', 'skin/')" id="menu_selected_1.1Title" class="menutitle" style="background-image: url('skin/images/chapter_open.gif');">Documentation</div>
|
||||
<div id="menu_selected_1.1" class="selectedmenuitemgroup" style="display: block;">
|
||||
<div class="menuitem">
|
||||
<a href="index.html">Overview</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="changes/Changes.html">Changes</a>
|
||||
</div>
|
||||
<div onclick="SwitchMenu('menu_1.1.3', 'skin/')" id="menu_1.1.3Title" class="menutitle">Javadocs</div>
|
||||
<div id="menu_1.1.3" class="menuitemgroup">
|
||||
<div class="menuitem">
|
||||
<a href="api/core/index.html">Core</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-common/index.html">Analysis: Common</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-kuromoji/index.html">Analysis: Kuromoji (Japanese)</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-morfologik/index.html">Analysis: Morfologik (Polish)</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-phonetic/index.html">Analysis: Phonetic</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-smartcn/index.html">Analysis: Smart Chinese</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-stempel/index.html">Analysis: Stempel (Polish)</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-uima/index.html">Analysis: UIMA</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/benchmark/index.html">Benchmark</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/demo/index.html">Demo</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/facet/index.html">Faceting</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/grouping/index.html">Grouping</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/highlighter/index.html">Highlighter</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/join/index.html">Join</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/memory/index.html">Memory</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/misc/index.html">Miscellaneous</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/queries/index.html">Queries</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/queryparser/index.html">Query Parsers</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/sandbox/index.html">Sandbox</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/spatial/index.html">Spatial</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/suggest/index.html">Suggest / Spellcheck</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/test-framework/index.html">Test Framework</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="systemrequirements.html">System Requirements</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="contributions.html">Contributions</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="http://wiki.apache.org/lucene-java/LuceneFAQ">FAQ</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="fileformats.html">File Formats</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="gettingstarted.html">Getting Started</a>
|
||||
</div>
|
||||
<div class="menupage">
|
||||
<div class="menupagetitle">Query Syntax</div>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="scoring.html">Scoring</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="http://wiki.apache.org/lucene-java">Wiki</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="http://lucene.apache.org/privacy.html">Privacy Policy</a>
|
||||
</div>
|
||||
</div>
|
||||
<div id="credit"></div>
|
||||
<div id="roundbottom">
|
||||
<img style="display: none" class="corner" height="15" width="15" alt="" src="skin/images/rc-b-l-15-1body-2menu-3menu.png"></div>
|
||||
<!--+
|
||||
|alternative credits
|
||||
+-->
|
||||
<div id="credit2"></div>
|
||||
</div>
|
||||
<!--+
|
||||
|end Menu
|
||||
+-->
|
||||
<!--+
|
||||
|start content
|
||||
+-->
|
||||
<div id="content">
|
||||
<h1>
|
||||
Apache Lucene - Query Parser Syntax
|
||||
</h1>
|
||||
<div id="minitoc-area">
|
||||
<ul class="minitoc">
|
||||
<li>
|
||||
<a href="#Overview">Overview</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Terms">Terms</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Fields">Fields</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Term Modifiers">Term Modifiers</a>
|
||||
<ul class="minitoc">
|
||||
<li>
|
||||
<a href="#Wildcard Searches">Wildcard Searches</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Fuzzy Searches">Fuzzy Searches</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Proximity Searches">Proximity Searches</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Range Searches">Range Searches</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Boosting a Term">Boosting a Term</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Boolean operators">Boolean Operators</a>
|
||||
<ul class="minitoc">
|
||||
<li>
|
||||
<a href="#OR"></a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#AND">AND</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#+">+</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#NOT">NOT</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#-">-</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Grouping">Grouping</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Field Grouping">Field Grouping</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Escaping Special Characters">Escaping Special Characters</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<a name="N10013"></a><a name="Overview"></a>
|
||||
<h2 class="boxed">Overview</h2>
|
||||
<div class="section">
|
||||
<p>Although Lucene provides the ability to create your own
|
||||
queries through its API, it also provides a rich query
|
||||
language through the Query Parser, a lexer which
|
||||
interprets a string into a Lucene Query using JavaCC.
|
||||
</p>
|
||||
<p>Generally, the query parser syntax may change from
|
||||
release to release. This page describes the syntax as of
|
||||
the current release. If you are using a different
|
||||
version of Lucene, please consult the copy of
|
||||
<span class="codefrag">docs/queryparsersyntax.html</span> that was distributed
|
||||
with the version you are using.
|
||||
</p>
|
||||
<p>
|
||||
Before choosing to use the provided Query Parser, please consider the following:
|
||||
<ol>
|
||||
|
||||
<li>If you are programmatically generating a query string and then
|
||||
parsing it with the query parser then you should seriously consider building
|
||||
your queries directly with the query API. In other words, the query
|
||||
parser is designed for human-entered text, not for program-generated
|
||||
text.</li>
|
||||
|
||||
|
||||
<li>Untokenized fields are best added directly to queries, and not
|
||||
through the query parser. If a field's values are generated programmatically
|
||||
by the application, then so should query clauses for this field.
|
||||
An analyzer, which the query parser uses, is designed to convert human-entered
|
||||
text to terms. Program-generated values, like dates, keywords, etc.,
|
||||
should be consistently program-generated.</li>
|
||||
|
||||
|
||||
<li>In a query form, fields which are general text should use the query
|
||||
parser. All others, such as date ranges, keywords, etc. are better added
|
||||
directly through the query API. A field with a limit set of values,
|
||||
that can be specified with a pull-down menu should not be added to a
|
||||
query string which is subsequently parsed, but rather added as a
|
||||
TermQuery clause.</li>
|
||||
|
||||
</ol>
|
||||
|
||||
</p>
|
||||
</div>
|
||||
|
||||
|
||||
<a name="N10032"></a><a name="Terms"></a>
|
||||
<h2 class="boxed">Terms</h2>
|
||||
<div class="section">
|
||||
<p>A query is broken up into terms and operators. There are two types of terms: Single Terms and Phrases.</p>
|
||||
<p>A Single Term is a single word such as "test" or "hello".</p>
|
||||
<p>A Phrase is a group of words surrounded by double quotes such as "hello dolly".</p>
|
||||
<p>Multiple terms can be combined together with Boolean operators to form a more complex query (see below).</p>
|
||||
<p>Note: The analyzer used to create the index will be used on the terms and phrases in the query string.
|
||||
So it is important to choose an analyzer that will not interfere with the terms used in the query string.</p>
|
||||
</div>
|
||||
|
||||
|
||||
<a name="N10048"></a><a name="Fields"></a>
|
||||
<h2 class="boxed">Fields</h2>
|
||||
<div class="section">
|
||||
<p>Lucene supports fielded data. When performing a search you can either specify a field, or use the default field. The field names and default field is implementation specific.</p>
|
||||
<p>You can search any field by typing the field name followed by a colon ":" and then the term you are looking for. </p>
|
||||
<p>As an example, let's assume a Lucene index contains two fields, title and text and text is the default field.
|
||||
If you want to find the document entitled "The Right Way" which contains the text "don't go this way", you can enter: </p>
|
||||
<pre class="code">title:"The Right Way" AND text:go</pre>
|
||||
<p>or</p>
|
||||
<pre class="code">title:"Do it right" AND right</pre>
|
||||
<p>Since text is the default field, the field indicator is not required.</p>
|
||||
<p>Note: The field is only valid for the term that it directly precedes, so the query</p>
|
||||
<pre class="code">title:Do it right</pre>
|
||||
<p>Will only find "Do" in the title field. It will find "it" and "right" in the default field (in this case the text field). </p>
|
||||
</div>
|
||||
|
||||
|
||||
<a name="N1006D"></a><a name="Term Modifiers"></a>
|
||||
<h2 class="boxed">Term Modifiers</h2>
|
||||
<div class="section">
|
||||
<p>Lucene supports modifying query terms to provide a wide range of searching options.</p>
|
||||
<a name="N10076"></a><a name="Wildcard Searches"></a>
|
||||
<h3 class="boxed">Wildcard Searches</h3>
|
||||
<p>Lucene supports single and multiple character wildcard searches within single terms
|
||||
(not within phrase queries).</p>
|
||||
<p>To perform a single character wildcard search use the "?" symbol.</p>
|
||||
<p>To perform a multiple character wildcard search use the "*" symbol.</p>
|
||||
<p>The single character wildcard search looks for terms that match that with the single character replaced. For example, to search for "text" or "test" you can use the search:</p>
|
||||
<pre class="code">te?t</pre>
|
||||
<p>Multiple character wildcard searches looks for 0 or more characters. For example, to search for test, tests or tester, you can use the search: </p>
|
||||
<pre class="code">test*</pre>
|
||||
<p>You can also use the wildcard searches in the middle of a term.</p>
|
||||
<pre class="code">te*t</pre>
|
||||
<p>Note: You cannot use a * or ? symbol as the first character of a search.</p>
|
||||
<a name="N1009B"></a><a name="Fuzzy Searches"></a>
|
||||
<h3 class="boxed">Fuzzy Searches</h3>
|
||||
<p>Lucene supports fuzzy searches based on the Levenshtein Distance, or Edit Distance algorithm. To do a fuzzy search use the tilde, "~", symbol at the end of a Single word Term. For example to search for a term similar in spelling to "roam" use the fuzzy search: </p>
|
||||
<pre class="code">roam~</pre>
|
||||
<p>This search will find terms like foam and roams.</p>
|
||||
<p>Starting with Lucene 1.9 an additional (optional) parameter can specify the required similarity. The value is between 0 and 1, with a value closer to 1 only terms with a higher similarity will be matched. For example:</p>
|
||||
<pre class="code">roam~0.8</pre>
|
||||
<p>The default that is used if the parameter is not given is 0.5.</p>
|
||||
<a name="N100B4"></a><a name="Proximity Searches"></a>
|
||||
<h3 class="boxed">Proximity Searches</h3>
|
||||
<p>Lucene supports finding words are a within a specific distance away. To do a proximity search use the tilde, "~", symbol at the end of a Phrase. For example to search for a "apache" and "jakarta" within 10 words of each other in a document use the search: </p>
|
||||
<pre class="code">"jakarta apache"~10</pre>
|
||||
<a name="N100C1"></a><a name="Range Searches"></a>
|
||||
<h3 class="boxed">Range Searches</h3>
|
||||
<p>Range Queries allow one to match documents whose field(s) values
|
||||
are between the lower and upper bound specified by the Range Query.
|
||||
Range Queries can be inclusive or exclusive of the upper and lower bounds.
|
||||
Sorting is done lexicographically.</p>
|
||||
<pre class="code">mod_date:[20020101 TO 20030101]</pre>
|
||||
<p>This will find documents whose mod_date fields have values between 20020101 and 20030101, inclusive.
|
||||
Note that Range Queries are not reserved for date fields. You could also use range queries with non-date fields:</p>
|
||||
<pre class="code">title:{Aida TO Carmen}</pre>
|
||||
<p>This will find all documents whose titles are between Aida and Carmen, but not including Aida and Carmen.</p>
|
||||
<p>Inclusive range queries are denoted by square brackets. Exclusive range queries are denoted by
|
||||
curly brackets.</p>
|
||||
<a name="N100DA"></a><a name="Boosting a Term"></a>
|
||||
<h3 class="boxed">Boosting a Term</h3>
|
||||
<p>Lucene provides the relevance level of matching documents based on the terms found. To boost a term use the caret, "^", symbol with a boost factor (a number) at the end of the term you are searching. The higher the boost factor, the more relevant the term will be.</p>
|
||||
<p>Boosting allows you to control the relevance of a document by boosting its term. For example, if you are searching for</p>
|
||||
<pre class="code">jakarta apache</pre>
|
||||
<p>and you want the term "jakarta" to be more relevant boost it using the ^ symbol along with the boost factor next to the term.
|
||||
You would type:</p>
|
||||
<pre class="code">jakarta^4 apache</pre>
|
||||
<p>This will make documents with the term jakarta appear more relevant. You can also boost Phrase Terms as in the example: </p>
|
||||
<pre class="code">"jakarta apache"^4 "Apache Lucene"</pre>
|
||||
<p>By default, the boost factor is 1. Although the boost factor must be positive, it can be less than 1 (e.g. 0.2)</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<a name="N100FA"></a><a name="Boolean operators"></a>
|
||||
<h2 class="boxed">Boolean Operators</h2>
|
||||
<div class="section">
|
||||
<p>Boolean operators allow terms to be combined through logic operators.
|
||||
Lucene supports AND, "+", OR, NOT and "-" as Boolean operators(Note: Boolean operators must be ALL CAPS).</p>
|
||||
<a name="N10103"></a><a name="OR"></a>
|
||||
<h3 class="boxed"></h3>
|
||||
<p>The OR operator is the default conjunction operator. This means that if there is no Boolean operator between two terms, the OR operator is used.
|
||||
The OR operator links two terms and finds a matching document if either of the terms exist in a document. This is equivalent to a union using sets.
|
||||
The symbol || can be used in place of the word OR.</p>
|
||||
<p>To search for documents that contain either "jakarta apache" or just "jakarta" use the query:</p>
|
||||
<pre class="code">"jakarta apache" jakarta</pre>
|
||||
<p>or</p>
|
||||
<pre class="code">"jakarta apache" OR jakarta</pre>
|
||||
<a name="N10116"></a><a name="AND"></a>
|
||||
<h3 class="boxed">AND</h3>
|
||||
<p>The AND operator matches documents where both terms exist anywhere in the text of a single document.
|
||||
This is equivalent to an intersection using sets. The symbol && can be used in place of the word AND.</p>
|
||||
<p>To search for documents that contain "jakarta apache" and "Apache Lucene" use the query: </p>
|
||||
<pre class="code">"jakarta apache" AND "Apache Lucene"</pre>
|
||||
<a name="N10126"></a><a name="+"></a>
|
||||
<h3 class="boxed">+</h3>
|
||||
<p>The "+" or required operator requires that the term after the "+" symbol exist somewhere in a the field of a single document.</p>
|
||||
<p>To search for documents that must contain "jakarta" and may contain "lucene" use the query:</p>
|
||||
<pre class="code">+jakarta lucene</pre>
|
||||
<a name="N10136"></a><a name="NOT"></a>
|
||||
<h3 class="boxed">NOT</h3>
|
||||
<p>The NOT operator excludes documents that contain the term after NOT.
|
||||
This is equivalent to a difference using sets. The symbol ! can be used in place of the word NOT.</p>
|
||||
<p>To search for documents that contain "jakarta apache" but not "Apache Lucene" use the query: </p>
|
||||
<pre class="code">"jakarta apache" NOT "Apache Lucene"</pre>
|
||||
<p>Note: The NOT operator cannot be used with just one term. For example, the following search will return no results:</p>
|
||||
<pre class="code">NOT "jakarta apache"</pre>
|
||||
<a name="N1014C"></a><a name="-"></a>
|
||||
<h3 class="boxed">-</h3>
|
||||
<p>The "-" or prohibit operator excludes documents that contain the term after the "-" symbol.</p>
|
||||
<p>To search for documents that contain "jakarta apache" but not "Apache Lucene" use the query: </p>
|
||||
<pre class="code">"jakarta apache" -"Apache Lucene"</pre>
|
||||
</div>
|
||||
|
||||
|
||||
<a name="N1015D"></a><a name="Grouping"></a>
|
||||
<h2 class="boxed">Grouping</h2>
|
||||
<div class="section">
|
||||
<p>Lucene supports using parentheses to group clauses to form sub queries. This can be very useful if you want to control the boolean logic for a query.</p>
|
||||
<p>To search for either "jakarta" or "apache" and "website" use the query:</p>
|
||||
<pre class="code">(jakarta OR apache) AND website</pre>
|
||||
<p>This eliminates any confusion and makes sure you that website must exist and either term jakarta or apache may exist.</p>
|
||||
</div>
|
||||
|
||||
|
||||
<a name="N10170"></a><a name="Field Grouping"></a>
|
||||
<h2 class="boxed">Field Grouping</h2>
|
||||
<div class="section">
|
||||
<p>Lucene supports using parentheses to group multiple clauses to a single field.</p>
|
||||
<p>To search for a title that contains both the word "return" and the phrase "pink panther" use the query:</p>
|
||||
<pre class="code">title:(+return +"pink panther")</pre>
|
||||
</div>
|
||||
|
||||
|
||||
<a name="N10180"></a><a name="Escaping Special Characters"></a>
|
||||
<h2 class="boxed">Escaping Special Characters</h2>
|
||||
<div class="section">
|
||||
<p>Lucene supports escaping special characters that are part of the query syntax. The current list special characters are</p>
|
||||
<p>+ - && || ! ( ) { } [ ] ^ " ~ * ? : \</p>
|
||||
<p>To escape these character use the \ before the character. For example to search for (1+1):2 use the query:</p>
|
||||
<pre class="code">\(1\+1\)\:2</pre>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
<!--+
|
||||
|end content
|
||||
+-->
|
||||
<div class="clearboth"> </div>
|
||||
</div>
|
||||
<div id="footer">
|
||||
<!--+
|
||||
|start bottomstrip
|
||||
+-->
|
||||
<div class="lastmodified">
|
||||
<script type="text/javascript"><!--
|
||||
document.write("Last Published: " + document.lastModified);
|
||||
// --></script>
|
||||
</div>
|
||||
<div class="copyright">
|
||||
Copyright ©
|
||||
2006 <a href="http://www.apache.org/licenses/">The Apache Software Foundation.</a>
|
||||
</div>
|
||||
<!--+
|
||||
|end bottomstrip
|
||||
+-->
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
|
||||
var _gaq = _gaq || [];
|
||||
_gaq.push(['_setAccount', 'UA-94576-12']);
|
||||
_gaq.push(['_trackPageview']);
|
||||
|
||||
(function() {
|
||||
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
|
||||
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
|
||||
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
|
||||
})();
|
||||
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -1,23 +0,0 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
contributor license agreements. See the NOTICE file distributed with
|
||||
this work for additional information regarding copyright ownership.
|
||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<catalogue>
|
||||
<message key="Font size:">Schriftgrösse:</message>
|
||||
<message key="Last Published:">Zuletzt veröffentlicht:</message>
|
||||
<message key="Search">Suche:</message>
|
||||
<message key="Search the site with">Suche auf der Seite mit</message>
|
||||
</catalogue>
|
|
@ -1,23 +0,0 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
contributor license agreements. See the NOTICE file distributed with
|
||||
this work for additional information regarding copyright ownership.
|
||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<catalogue>
|
||||
<message key="Font size:">Font size:</message>
|
||||
<message key="Last Published:">Last Published:</message>
|
||||
<message key="Search">Search</message>
|
||||
<message key="Search the site with">Search site with</message>
|
||||
</catalogue>
|
|
@ -1,23 +0,0 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
contributor license agreements. See the NOTICE file distributed with
|
||||
this work for additional information regarding copyright ownership.
|
||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<catalogue>
|
||||
<message key="Font size:">Tamaño del texto:</message>
|
||||
<message key="Last Published:">Fecha de publicación:</message>
|
||||
<message key="Search">Buscar</message>
|
||||
<message key="Search the site with">Buscar en</message>
|
||||
</catalogue>
|
|
@ -1,23 +0,0 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
contributor license agreements. See the NOTICE file distributed with
|
||||
this work for additional information regarding copyright ownership.
|
||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<catalogue>
|
||||
<message key="Font size:">Taille :</message>
|
||||
<message key="Last Published:">Dernière publication :</message>
|
||||
<message key="Search">Rechercher</message>
|
||||
<message key="Search the site with">Rechercher sur le site avec</message>
|
||||
</catalogue>
|
|
@ -1,166 +0,0 @@
|
|||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
/**
|
||||
* General
|
||||
*/
|
||||
|
||||
img { border: 0; }
|
||||
|
||||
#content table {
|
||||
border: 0;
|
||||
width: 100%;
|
||||
}
|
||||
/*Hack to get IE to render the table at 100%*/
|
||||
* html #content table { margin-left: -3px; }
|
||||
|
||||
#content th,
|
||||
#content td {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
.clearboth {
|
||||
clear: both;
|
||||
}
|
||||
|
||||
.note, .warning, .fixme {
|
||||
border: solid black 1px;
|
||||
margin: 1em 3em;
|
||||
}
|
||||
|
||||
.note .label {
|
||||
background: #369;
|
||||
color: white;
|
||||
font-weight: bold;
|
||||
padding: 5px 10px;
|
||||
}
|
||||
.note .content {
|
||||
background: #F0F0FF;
|
||||
color: black;
|
||||
line-height: 120%;
|
||||
font-size: 90%;
|
||||
padding: 5px 10px;
|
||||
}
|
||||
.warning .label {
|
||||
background: #C00;
|
||||
color: white;
|
||||
font-weight: bold;
|
||||
padding: 5px 10px;
|
||||
}
|
||||
.warning .content {
|
||||
background: #FFF0F0;
|
||||
color: black;
|
||||
line-height: 120%;
|
||||
font-size: 90%;
|
||||
padding: 5px 10px;
|
||||
}
|
||||
.fixme .label {
|
||||
background: #C6C600;
|
||||
color: black;
|
||||
font-weight: bold;
|
||||
padding: 5px 10px;
|
||||
}
|
||||
.fixme .content {
|
||||
padding: 5px 10px;
|
||||
}
|
||||
|
||||
/**
|
||||
* Typography
|
||||
*/
|
||||
|
||||
body {
|
||||
font-family: verdana, "Trebuchet MS", arial, helvetica, sans-serif;
|
||||
font-size: 100%;
|
||||
}
|
||||
|
||||
#content {
|
||||
font-family: Georgia, Palatino, Times, serif;
|
||||
font-size: 95%;
|
||||
}
|
||||
#tabs {
|
||||
font-size: 70%;
|
||||
}
|
||||
#menu {
|
||||
font-size: 80%;
|
||||
}
|
||||
#footer {
|
||||
font-size: 70%;
|
||||
}
|
||||
|
||||
h1, h2, h3, h4, h5, h6 {
|
||||
font-family: "Trebuchet MS", verdana, arial, helvetica, sans-serif;
|
||||
font-weight: bold;
|
||||
margin-top: 1em;
|
||||
margin-bottom: .5em;
|
||||
}
|
||||
|
||||
h1 {
|
||||
margin-top: 0;
|
||||
margin-bottom: 1em;
|
||||
font-size: 1.4em;
|
||||
}
|
||||
#content h1 {
|
||||
font-size: 160%;
|
||||
margin-bottom: .5em;
|
||||
}
|
||||
#menu h1 {
|
||||
margin: 0;
|
||||
padding: 10px;
|
||||
background: #336699;
|
||||
color: white;
|
||||
}
|
||||
h2 { font-size: 120%; }
|
||||
h3 { font-size: 100%; }
|
||||
h4 { font-size: 90%; }
|
||||
h5 { font-size: 80%; }
|
||||
h6 { font-size: 75%; }
|
||||
|
||||
p {
|
||||
line-height: 120%;
|
||||
text-align: left;
|
||||
margin-top: .5em;
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
|
||||
#content li,
|
||||
#content th,
|
||||
#content td,
|
||||
#content li ul,
|
||||
#content li ol{
|
||||
margin-top: .5em;
|
||||
margin-bottom: .5em;
|
||||
}
|
||||
|
||||
|
||||
#content li li,
|
||||
#minitoc-area li{
|
||||
margin-top: 0em;
|
||||
margin-bottom: 0em;
|
||||
}
|
||||
|
||||
#content .attribution {
|
||||
text-align: right;
|
||||
font-style: italic;
|
||||
font-size: 85%;
|
||||
margin-top: 1em;
|
||||
}
|
||||
|
||||
.codefrag {
|
||||
font-family: "Courier New", Courier, monospace;
|
||||
font-size: 110%;
|
||||
}
|
|
@ -1,90 +0,0 @@
|
|||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
var PREPREND_CRUMBS=new Array();
|
||||
var link1="@skinconfig.trail.link1.name@";
|
||||
var link2="@skinconfig.trail.link2.name@";
|
||||
var link3="@skinconfig.trail.link3.name@";
|
||||
if(!(link1=="")&&!link1.indexOf( "@" ) == 0){
|
||||
PREPREND_CRUMBS.push( new Array( link1, @skinconfig.trail.link1.href@ ) ); }
|
||||
if(!(link2=="")&&!link2.indexOf( "@" ) == 0){
|
||||
PREPREND_CRUMBS.push( new Array( link2, @skinconfig.trail.link2.href@ ) ); }
|
||||
if(!(link3=="")&&!link3.indexOf( "@" ) == 0){
|
||||
PREPREND_CRUMBS.push( new Array( link3, @skinconfig.trail.link3.href@ ) ); }
|
||||
var DISPLAY_SEPARATOR=" > ";
|
||||
var DISPLAY_PREPREND=" > ";
|
||||
var DISPLAY_POSTPREND=":";
|
||||
var CSS_CLASS_CRUMB="breadcrumb";
|
||||
var CSS_CLASS_TRAIL="breadcrumbTrail";
|
||||
var CSS_CLASS_SEPARATOR="crumbSeparator";
|
||||
var FILE_EXTENSIONS=new Array( ".html", ".htm", ".jsp", ".php", ".php3", ".php4" );
|
||||
var PATH_SEPARATOR="/";
|
||||
|
||||
function sc(s) {
|
||||
var l=s.toLowerCase();
|
||||
return l.substr(0,1).toUpperCase()+l.substr(1);
|
||||
}
|
||||
function getdirs() {
|
||||
var t=document.location.pathname.split(PATH_SEPARATOR);
|
||||
var lc=t[t.length-1];
|
||||
for(var i=0;i < FILE_EXTENSIONS.length;i++)
|
||||
{
|
||||
if(lc.indexOf(FILE_EXTENSIONS[i]))
|
||||
return t.slice(1,t.length-1); }
|
||||
return t.slice(1,t.length);
|
||||
}
|
||||
function getcrumbs( d )
|
||||
{
|
||||
var pre = "/";
|
||||
var post = "/";
|
||||
var c = new Array();
|
||||
if( d != null )
|
||||
{
|
||||
for(var i=0;i < d.length;i++) {
|
||||
pre+=d[i]+postfix;
|
||||
c.push(new Array(d[i],pre)); }
|
||||
}
|
||||
if(PREPREND_CRUMBS.length > 0 )
|
||||
return PREPREND_CRUMBS.concat( c );
|
||||
return c;
|
||||
}
|
||||
function gettrail( c )
|
||||
{
|
||||
var h=DISPLAY_PREPREND;
|
||||
for(var i=0;i < c.length;i++)
|
||||
{
|
||||
h+='<a href="'+c[i][1]+'" >'+sc(c[i][0])+'</a>';
|
||||
if(i!=(c.length-1))
|
||||
h+=DISPLAY_SEPARATOR; }
|
||||
return h+DISPLAY_POSTPREND;
|
||||
}
|
||||
|
||||
function gettrailXHTML( c )
|
||||
{
|
||||
var h='<span class="'+CSS_CLASS_TRAIL+'">'+DISPLAY_PREPREND;
|
||||
for(var i=0;i < c.length;i++)
|
||||
{
|
||||
h+='<a href="'+c[i][1]+'" class="'+CSS_CLASS_CRUMB+'">'+sc(c[i][0])+'</a>';
|
||||
if(i!=(c.length-1))
|
||||
h+='<span class="'+CSS_CLASS_SEPARATOR+'">'+DISPLAY_SEPARATOR+'</span>'; }
|
||||
return h+DISPLAY_POSTPREND+'</span>';
|
||||
}
|
||||
|
||||
if(document.location.href.toLowerCase().indexOf("http://")==-1)
|
||||
document.write(gettrail(getcrumbs()));
|
||||
else
|
||||
document.write(gettrail(getcrumbs(getdirs())));
|
||||
|
|
@ -1,237 +0,0 @@
|
|||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
/**
|
||||
* This script, when included in a html file, builds a neat breadcrumb trail
|
||||
* based on its url. That is, if it doesn't contains bugs (I'm relatively
|
||||
* sure it does).
|
||||
*
|
||||
* Typical usage:
|
||||
* <script type="text/javascript" language="JavaScript" src="breadcrumbs.js"></script>
|
||||
*/
|
||||
|
||||
/**
|
||||
* IE 5 on Mac doesn't know Array.push.
|
||||
*
|
||||
* Implement it - courtesy to fritz.
|
||||
*/
|
||||
var abc = new Array();
|
||||
if (!abc.push) {
|
||||
Array.prototype.push = function(what){this[this.length]=what}
|
||||
}
|
||||
|
||||
/* ========================================================================
|
||||
CONSTANTS
|
||||
======================================================================== */
|
||||
|
||||
/**
|
||||
* Two-dimensional array containing extra crumbs to place at the front of
|
||||
* the trail. Specify first the name of the crumb, then the URI that belongs
|
||||
* to it. You'll need to modify this for every domain or subdomain where
|
||||
* you use this script (you can leave it as an empty array if you wish)
|
||||
*/
|
||||
var PREPREND_CRUMBS = new Array();
|
||||
|
||||
var link1 = "@skinconfig.trail.link1.name@";
|
||||
var link2 = "@skinconfig.trail.link2.name@";
|
||||
var link3 = "@skinconfig.trail.link3.name@";
|
||||
|
||||
var href1 = "@skinconfig.trail.link1.href@";
|
||||
var href2 = "@skinconfig.trail.link2.href@";
|
||||
var href3 = "@skinconfig.trail.link3.href@";
|
||||
|
||||
if(!(link1=="")&&!link1.indexOf( "@" ) == 0){
|
||||
PREPREND_CRUMBS.push( new Array( link1, href1 ) );
|
||||
}
|
||||
if(!(link2=="")&&!link2.indexOf( "@" ) == 0){
|
||||
PREPREND_CRUMBS.push( new Array( link2, href2 ) );
|
||||
}
|
||||
if(!(link3=="")&&!link3.indexOf( "@" ) == 0){
|
||||
PREPREND_CRUMBS.push( new Array( link3, href3 ) );
|
||||
}
|
||||
|
||||
/**
|
||||
* String to include between crumbs:
|
||||
*/
|
||||
var DISPLAY_SEPARATOR = " > ";
|
||||
/**
|
||||
* String to include at the beginning of the trail
|
||||
*/
|
||||
var DISPLAY_PREPREND = " > ";
|
||||
/**
|
||||
* String to include at the end of the trail
|
||||
*/
|
||||
var DISPLAY_POSTPREND = "";
|
||||
|
||||
/**
|
||||
* CSS Class to use for a single crumb:
|
||||
*/
|
||||
var CSS_CLASS_CRUMB = "breadcrumb";
|
||||
|
||||
/**
|
||||
* CSS Class to use for the complete trail:
|
||||
*/
|
||||
var CSS_CLASS_TRAIL = "breadcrumbTrail";
|
||||
|
||||
/**
|
||||
* CSS Class to use for crumb separator:
|
||||
*/
|
||||
var CSS_CLASS_SEPARATOR = "crumbSeparator";
|
||||
|
||||
/**
|
||||
* Array of strings containing common file extensions. We use this to
|
||||
* determine what part of the url to ignore (if it contains one of the
|
||||
* string specified here, we ignore it).
|
||||
*/
|
||||
var FILE_EXTENSIONS = new Array( ".html", ".htm", ".jsp", ".php", ".php3", ".php4" );
|
||||
|
||||
/**
|
||||
* String that separates parts of the breadcrumb trail from each other.
|
||||
* When this is no longer a slash, I'm sure I'll be old and grey.
|
||||
*/
|
||||
var PATH_SEPARATOR = "/";
|
||||
|
||||
/* ========================================================================
|
||||
UTILITY FUNCTIONS
|
||||
======================================================================== */
|
||||
/**
|
||||
* Capitalize first letter of the provided string and return the modified
|
||||
* string.
|
||||
*/
|
||||
function sentenceCase( string )
|
||||
{ return string;
|
||||
//var lower = string.toLowerCase();
|
||||
//return lower.substr(0,1).toUpperCase() + lower.substr(1);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns an array containing the names of all the directories in the
|
||||
* current document URL
|
||||
*/
|
||||
function getDirectoriesInURL()
|
||||
{
|
||||
var trail = document.location.pathname.split( PATH_SEPARATOR );
|
||||
|
||||
// check whether last section is a file or a directory
|
||||
var lastcrumb = trail[trail.length-1];
|
||||
for( var i = 0; i < FILE_EXTENSIONS.length; i++ )
|
||||
{
|
||||
if( lastcrumb.indexOf( FILE_EXTENSIONS[i] ) )
|
||||
{
|
||||
// it is, remove it and send results
|
||||
return trail.slice( 1, trail.length-1 );
|
||||
}
|
||||
}
|
||||
|
||||
// it's not; send the trail unmodified
|
||||
return trail.slice( 1, trail.length );
|
||||
}
|
||||
|
||||
/* ========================================================================
|
||||
BREADCRUMB FUNCTIONALITY
|
||||
======================================================================== */
|
||||
/**
|
||||
* Return a two-dimensional array describing the breadcrumbs based on the
|
||||
* array of directories passed in.
|
||||
*/
|
||||
function getBreadcrumbs( dirs )
|
||||
{
|
||||
var prefix = "/";
|
||||
var postfix = "/";
|
||||
|
||||
// the array we will return
|
||||
var crumbs = new Array();
|
||||
|
||||
if( dirs != null )
|
||||
{
|
||||
for( var i = 0; i < dirs.length; i++ )
|
||||
{
|
||||
prefix += dirs[i] + postfix;
|
||||
crumbs.push( new Array( dirs[i], prefix ) );
|
||||
}
|
||||
}
|
||||
|
||||
// preprend the PREPREND_CRUMBS
|
||||
if(PREPREND_CRUMBS.length > 0 )
|
||||
{
|
||||
return PREPREND_CRUMBS.concat( crumbs );
|
||||
}
|
||||
|
||||
return crumbs;
|
||||
}
|
||||
|
||||
/**
|
||||
* Return a string containing a simple text breadcrumb trail based on the
|
||||
* two-dimensional array passed in.
|
||||
*/
|
||||
function getCrumbTrail( crumbs )
|
||||
{
|
||||
var xhtml = DISPLAY_PREPREND;
|
||||
|
||||
for( var i = 0; i < crumbs.length; i++ )
|
||||
{
|
||||
xhtml += '<a href="' + crumbs[i][1] + '" >';
|
||||
xhtml += unescape( crumbs[i][0] ) + '</a>';
|
||||
if( i != (crumbs.length-1) )
|
||||
{
|
||||
xhtml += DISPLAY_SEPARATOR;
|
||||
}
|
||||
}
|
||||
|
||||
xhtml += DISPLAY_POSTPREND;
|
||||
|
||||
return xhtml;
|
||||
}
|
||||
|
||||
/**
|
||||
* Return a string containing an XHTML breadcrumb trail based on the
|
||||
* two-dimensional array passed in.
|
||||
*/
|
||||
function getCrumbTrailXHTML( crumbs )
|
||||
{
|
||||
var xhtml = '<span class="' + CSS_CLASS_TRAIL + '">';
|
||||
xhtml += DISPLAY_PREPREND;
|
||||
|
||||
for( var i = 0; i < crumbs.length; i++ )
|
||||
{
|
||||
xhtml += '<a href="' + crumbs[i][1] + '" class="' + CSS_CLASS_CRUMB + '">';
|
||||
xhtml += unescape( crumbs[i][0] ) + '</a>';
|
||||
if( i != (crumbs.length-1) )
|
||||
{
|
||||
xhtml += '<span class="' + CSS_CLASS_SEPARATOR + '">' + DISPLAY_SEPARATOR + '</span>';
|
||||
}
|
||||
}
|
||||
|
||||
xhtml += DISPLAY_POSTPREND;
|
||||
xhtml += '</span>';
|
||||
|
||||
return xhtml;
|
||||
}
|
||||
|
||||
/* ========================================================================
|
||||
PRINT BREADCRUMB TRAIL
|
||||
======================================================================== */
|
||||
|
||||
// check if we're local; if so, only print the PREPREND_CRUMBS
|
||||
if( document.location.href.toLowerCase().indexOf( "http://" ) == -1 )
|
||||
{
|
||||
document.write( getCrumbTrail( getBreadcrumbs() ) );
|
||||
}
|
||||
else
|
||||
{
|
||||
document.write( getCrumbTrail( getBreadcrumbs( getDirectoriesInURL() ) ) );
|
||||
}
|
||||
|
|
@ -1,166 +0,0 @@
|
|||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
function init()
|
||||
{ //embedded in the doc
|
||||
//ndeSetTextSize();
|
||||
}
|
||||
|
||||
function checkBrowser(){
|
||||
if (!document.getElementsByTagName){
|
||||
return true;
|
||||
}
|
||||
else{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function ndeSetTextSize(chgsize,rs)
|
||||
{
|
||||
var startSize;
|
||||
var newSize;
|
||||
|
||||
if (!checkBrowser)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
startSize = parseInt(ndeGetDocTextSize());
|
||||
|
||||
if (!startSize)
|
||||
{
|
||||
startSize = 16;
|
||||
}
|
||||
|
||||
switch (chgsize)
|
||||
{
|
||||
case 'incr':
|
||||
newSize = startSize + 2;
|
||||
break;
|
||||
|
||||
case 'decr':
|
||||
newSize = startSize - 2;
|
||||
break;
|
||||
|
||||
case 'reset':
|
||||
if (rs) {newSize = rs;} else {newSize = 16;}
|
||||
break;
|
||||
|
||||
default:
|
||||
try{
|
||||
newSize = parseInt(ndeReadCookie("nde-textsize"));
|
||||
}
|
||||
catch(e){
|
||||
alert(e);
|
||||
}
|
||||
|
||||
if (!newSize || newSize == 'NaN')
|
||||
{
|
||||
newSize = startSize;
|
||||
}
|
||||
break;
|
||||
|
||||
}
|
||||
|
||||
if (newSize < 10)
|
||||
{
|
||||
newSize = 10;
|
||||
}
|
||||
|
||||
newSize += 'px';
|
||||
|
||||
document.getElementsByTagName('html')[0].style.fontSize = newSize;
|
||||
document.getElementsByTagName('body')[0].style.fontSize = newSize;
|
||||
|
||||
ndeCreateCookie("nde-textsize", newSize, 365);
|
||||
}
|
||||
|
||||
function ndeGetDocTextSize()
|
||||
{
|
||||
if (!checkBrowser)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
var size = 0;
|
||||
var body = document.getElementsByTagName('body')[0];
|
||||
|
||||
if (body.style && body.style.fontSize)
|
||||
{
|
||||
size = body.style.fontSize;
|
||||
}
|
||||
else if (typeof(getComputedStyle) != 'undefined')
|
||||
{
|
||||
size = getComputedStyle(body,'').getPropertyValue('font-size');
|
||||
}
|
||||
else if (body.currentStyle)
|
||||
{
|
||||
size = body.currentStyle.fontSize;
|
||||
}
|
||||
|
||||
//fix IE bug
|
||||
if( isNaN(size)){
|
||||
if(size.substring(size.length-1)=="%"){
|
||||
return
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return size;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
function ndeCreateCookie(name,value,days)
|
||||
{
|
||||
var cookie = name + "=" + value + ";";
|
||||
|
||||
if (days)
|
||||
{
|
||||
var date = new Date();
|
||||
date.setTime(date.getTime()+(days*24*60*60*1000));
|
||||
cookie += " expires=" + date.toGMTString() + ";";
|
||||
}
|
||||
cookie += " path=/";
|
||||
|
||||
document.cookie = cookie;
|
||||
|
||||
}
|
||||
|
||||
function ndeReadCookie(name)
|
||||
{
|
||||
var nameEQ = name + "=";
|
||||
var ca = document.cookie.split(';');
|
||||
|
||||
|
||||
for(var i = 0; i < ca.length; i++)
|
||||
{
|
||||
var c = ca[i];
|
||||
while (c.charAt(0) == ' ')
|
||||
{
|
||||
c = c.substring(1, c.length);
|
||||
}
|
||||
|
||||
ctest = c.substring(0,name.length);
|
||||
|
||||
if(ctest == name){
|
||||
return c.substring(nameEQ.length,c.length);
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
|
@ -1,40 +0,0 @@
|
|||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
/**
|
||||
* getBlank script - when included in a html file and called from a form text field, will set the value of this field to ""
|
||||
* if the text value is still the standard value.
|
||||
* getPrompt script - when included in a html file and called from a form text field, will set the value of this field to the prompt
|
||||
* if the text value is empty.
|
||||
*
|
||||
* Typical usage:
|
||||
* <script type="text/javascript" language="JavaScript" src="getBlank.js"></script>
|
||||
* <input type="text" id="query" value="Search the site:" onFocus="getBlank (this, 'Search the site:');" onBlur="getBlank (this, 'Search the site:');"/>
|
||||
*/
|
||||
<!--
|
||||
function getBlank (form, stdValue){
|
||||
if (form.value == stdValue){
|
||||
form.value = '';
|
||||
}
|
||||
return true;
|
||||
}
|
||||
function getPrompt (form, stdValue){
|
||||
if (form.value == ''){
|
||||
form.value = stdValue;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
//-->
|
|
@ -1,45 +0,0 @@
|
|||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
/**
|
||||
* This script, when included in a html file, can be used to make collapsible menus
|
||||
*
|
||||
* Typical usage:
|
||||
* <script type="text/javascript" language="JavaScript" src="menu.js"></script>
|
||||
*/
|
||||
|
||||
if (document.getElementById){
|
||||
document.write('<style type="text/css">.menuitemgroup{display: none;}</style>')
|
||||
}
|
||||
|
||||
|
||||
function SwitchMenu(obj, thePath)
|
||||
{
|
||||
var open = 'url("'+thePath + 'images/chapter_open.gif")';
|
||||
var close = 'url("'+thePath + 'images/chapter.gif")';
|
||||
if(document.getElementById) {
|
||||
var el = document.getElementById(obj);
|
||||
var title = document.getElementById(obj+'Title');
|
||||
|
||||
if(el.style.display != "block"){
|
||||
title.style.backgroundImage = open;
|
||||
el.style.display = "block";
|
||||
}else{
|
||||
title.style.backgroundImage = close;
|
||||
el.style.display = "none";
|
||||
}
|
||||
}// end - if(document.getElementById)
|
||||
}//end - function SwitchMenu(obj)
|
|
@ -1 +0,0 @@
|
|||
The images in this directory are used if the current skin lacks them.
|
Before Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 4.7 KiB |
Before Width: | Height: | Size: 2.2 KiB |
Before Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 49 B |
|
@ -1,92 +0,0 @@
|
|||
<?xml version="1.0"?>
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
contributor license agreements. See the NOTICE file distributed with
|
||||
this work for additional information regarding copyright ownership.
|
||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
|
||||
<xsl:param name="orientation-tb"/>
|
||||
<xsl:param name="orientation-lr"/>
|
||||
<xsl:param name="size"/>
|
||||
<xsl:param name="bg-color-name"/>
|
||||
<xsl:param name="stroke-color-name"/>
|
||||
<xsl:param name="fg-color-name"/>
|
||||
<!-- if not all colors are present, don't even try to render the corners -->
|
||||
<xsl:variable name="isize">
|
||||
<xsl:choose>
|
||||
<xsl:when test="$bg-color-name and $stroke-color-name and $fg-color-name">
|
||||
<xsl:value-of select="$size"/>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>0</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
<xsl:variable name="smallersize" select="number($isize)-1"/>
|
||||
<xsl:variable name="biggersize" select="number($isize)+1"/>
|
||||
<xsl:variable name="bg">
|
||||
<xsl:if test="skinconfig/colors/color[@name=$bg-color-name]">fill:<xsl:value-of select="skinconfig/colors/color[@name=$bg-color-name]/@value"/>;</xsl:if>
|
||||
</xsl:variable>
|
||||
<xsl:variable name="fill">
|
||||
<xsl:if test="skinconfig/colors/color[@name=$stroke-color-name]">fill:<xsl:value-of select="skinconfig/colors/color[@name=$stroke-color-name]/@value"/>;</xsl:if>
|
||||
</xsl:variable>
|
||||
<xsl:variable name="stroke">
|
||||
<xsl:if test="skinconfig/colors/color[@name=$fg-color-name]">stroke:<xsl:value-of select="skinconfig/colors/color[@name=$fg-color-name]/@value"/>;</xsl:if>
|
||||
</xsl:variable>
|
||||
<xsl:template match="skinconfig">
|
||||
<svg width="{$isize}" height="{$isize}">
|
||||
<!-- background-->
|
||||
<rect x="-1" y="-1" width="{$biggersize}" height="{$biggersize}" style="{$bg}stroke-width:0"/>
|
||||
<!-- 0,0 0,-4 4,0 4,-4-->
|
||||
<xsl:variable name="flip-tb-scale">
|
||||
<xsl:choose>
|
||||
<xsl:when test="$orientation-tb='t'">1</xsl:when>
|
||||
<xsl:otherwise>-1</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
<xsl:variable name="flip-lr-scale">
|
||||
<xsl:choose>
|
||||
<xsl:when test="$orientation-lr='l'">1</xsl:when>
|
||||
<xsl:otherwise>-1</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
<xsl:variable name="flip-tb-translate">
|
||||
<xsl:choose>
|
||||
<xsl:when test="$orientation-tb='t'">0</xsl:when>
|
||||
<xsl:otherwise>-<xsl:value-of select="$isize" />
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
<xsl:variable name="flip-lr-translate">
|
||||
<xsl:choose>
|
||||
<xsl:when test="$orientation-lr='l'">0</xsl:when>
|
||||
<xsl:otherwise>-<xsl:value-of select="$isize" />
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
<!-- flip transform -->
|
||||
<g transform="scale({$flip-lr-scale},{$flip-tb-scale}) translate({$flip-lr-translate}, {$flip-tb-translate})">
|
||||
<xsl:call-template name="figure" />
|
||||
</g>
|
||||
</svg>
|
||||
</xsl:template>
|
||||
<xsl:template name="figure">
|
||||
<!-- Just change shape here -->
|
||||
<g transform="translate(0.5 0.5)">
|
||||
<ellipse cx="{$smallersize}" cy="{$smallersize}" rx="{$smallersize}" ry="{$smallersize}"
|
||||
style="{$fill}{$stroke}stroke-width:1"/>
|
||||
</g>
|
||||
<!-- end -->
|
||||
</xsl:template>
|
||||
<xsl:template match="*"></xsl:template>
|
||||
<xsl:template match="text()"></xsl:template>
|
||||
</xsl:stylesheet>
|
Before Width: | Height: | Size: 54 B |
|
@ -1,28 +0,0 @@
|
|||
<?xml version="1.0"?>
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
contributor license agreements. See the NOTICE file distributed with
|
||||
this work for additional information regarding copyright ownership.
|
||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
|
||||
<xsl:import href="corner-imports.svg.xslt" />
|
||||
<!-- Diagonal 45 degrees corner -->
|
||||
<xsl:template name="figure">
|
||||
<xsl:variable name="biggersize" select="number($size)+number($size)"/>
|
||||
<g transform="translate(0 0.5)">
|
||||
<polygon points="0,{$size} {$size},0 {$biggersize},0 {$biggersize},{$biggersize} 0,{$biggersize}"
|
||||
style="{$fill}{$stroke}stroke-width:1"/>
|
||||
</g>
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
Before Width: | Height: | Size: 71 B |
Before Width: | Height: | Size: 932 B |
Before Width: | Height: | Size: 4.5 KiB |
Before Width: | Height: | Size: 743 B |
Before Width: | Height: | Size: 79 B |
Before Width: | Height: | Size: 457 B |
Before Width: | Height: | Size: 856 B |
|
@ -1,55 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
contributor license agreements. See the NOTICE file distributed with
|
||||
this work for additional information regarding copyright ownership.
|
||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<svg width="20pt" height="20pt"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<defs
|
||||
id="defs550">
|
||||
<linearGradient id="gray2white">
|
||||
<stop style="stop-color:#7f7f7f;stop-opacity:1;" offset="0.000000"/>
|
||||
<stop style="stop-color:#ffffff;stop-opacity:1;" offset="1.000000"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="pageshade" xlink:href="#gray2white"
|
||||
x1="0.95" y1="0.95"
|
||||
x2="0.40" y2="0.20"
|
||||
gradientUnits="objectBoundingBox" spreadMethod="pad" />
|
||||
<path d="M 0 0 L 200 0" style="stroke:#000000;stroke-width:1pt;" id="hr"/>
|
||||
</defs>
|
||||
<g transform="scale(0.08)">
|
||||
<g transform="translate(40, 0)">
|
||||
<rect width="230" height="300" x="0" y="0"
|
||||
style="fill:url(#pageshade);fill-rule:evenodd;
|
||||
stroke:#000000;stroke-width:1.25;"/>
|
||||
<g transform="translate(15, 60)">
|
||||
<use xlink:href="#hr" x="0" y="0"/>
|
||||
<use xlink:href="#hr" x="0" y="60"/>
|
||||
<use xlink:href="#hr" x="0" y="120"/>
|
||||
<use xlink:href="#hr" x="0" y="180"/>
|
||||
</g>
|
||||
</g>
|
||||
<g transform="translate(0,70),scale(1.1,1.6)">
|
||||
<rect width="200" height="100" x="0" y="0"
|
||||
style="fill:#ff0000;fill-rule:evenodd;
|
||||
stroke:#000000;stroke-width:2.33903;"/>
|
||||
<text x="20" y="75"
|
||||
style="stroke:#ffffff;stroke-width:1.0;
|
||||
font-size:72;font-weight:normal;fill:#ffffff;
|
||||
font-family:Arial;text-anchor:start;">POD</text>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 2.3 KiB |
Before Width: | Height: | Size: 438 B |
Before Width: | Height: | Size: 348 B |
Before Width: | Height: | Size: 319 B |
Before Width: | Height: | Size: 200 B |
Before Width: | Height: | Size: 199 B |
Before Width: | Height: | Size: 209 B |
Before Width: | Height: | Size: 199 B |
Before Width: | Height: | Size: 390 B |
Before Width: | Height: | Size: 214 B |
Before Width: | Height: | Size: 215 B |
Before Width: | Height: | Size: 214 B |
|
@ -1,27 +0,0 @@
|
|||
<?xml version="1.0"?>
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
contributor license agreements. See the NOTICE file distributed with
|
||||
this work for additional information regarding copyright ownership.
|
||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
|
||||
<xsl:import href="corner-imports.svg.xslt" />
|
||||
<!-- Rounded corner -->
|
||||
<xsl:template name="figure">
|
||||
<g transform="translate(0.5 0.5)">
|
||||
<ellipse cx="{$smallersize}" cy="{$smallersize}" rx="{$smallersize}" ry="{$smallersize}"
|
||||
style="{$fill}{$stroke}stroke-width:1"/>
|
||||
</g>
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
Before Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 360 B |
Before Width: | Height: | Size: 43 B |
Before Width: | Height: | Size: 784 B |
|
@ -1,55 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
contributor license agreements. See the NOTICE file distributed with
|
||||
this work for additional information regarding copyright ownership.
|
||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<svg width="20pt" height="20pt"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<defs
|
||||
id="defs550">
|
||||
<linearGradient id="gray2white">
|
||||
<stop style="stop-color:#7f7f7f;stop-opacity:1;" offset="0.000000"/>
|
||||
<stop style="stop-color:#ffffff;stop-opacity:1;" offset="1.000000"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="pageshade" xlink:href="#gray2white"
|
||||
x1="0.95" y1="0.95"
|
||||
x2="0.40" y2="0.20"
|
||||
gradientUnits="objectBoundingBox" spreadMethod="pad" />
|
||||
<path d="M 0 0 L 200 0" style="stroke:#000000;stroke-width:1pt;" id="hr"/>
|
||||
</defs>
|
||||
<g transform="scale(0.08)">
|
||||
<g transform="translate(40, 0)">
|
||||
<rect width="230" height="300" x="0" y="0"
|
||||
style="fill:url(#pageshade);fill-rule:evenodd;
|
||||
stroke:#000000;stroke-width:1.25;"/>
|
||||
<g transform="translate(15, 60)">
|
||||
<use xlink:href="#hr" x="0" y="0"/>
|
||||
<use xlink:href="#hr" x="0" y="60"/>
|
||||
<use xlink:href="#hr" x="0" y="120"/>
|
||||
<use xlink:href="#hr" x="0" y="180"/>
|
||||
</g>
|
||||
</g>
|
||||
<g transform="translate(0,70),scale(1.1,1.6)">
|
||||
<rect width="200" height="100" x="0" y="0"
|
||||
style="fill:#ff0000;fill-rule:evenodd;
|
||||
stroke:#000000;stroke-width:2.33903;"/>
|
||||
<text x="20" y="75"
|
||||
style="stroke:#ffffff;stroke-width:1.0;
|
||||
font-size:72;font-weight:normal;fill:#ffffff;
|
||||
font-family:Arial;text-anchor:start;">TXT</text>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 2.3 KiB |
Before Width: | Height: | Size: 990 B |
Before Width: | Height: | Size: 2.9 KiB |
Before Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 647 B |
|
@ -1,48 +0,0 @@
|
|||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
/**
|
||||
* This script, when included in a html file, can be used to make collapsible menus
|
||||
*
|
||||
* Typical usage:
|
||||
* <script type="text/javascript" language="JavaScript" src="menu.js"></script>
|
||||
*/
|
||||
|
||||
if (document.getElementById){
|
||||
document.write('<style type="text/css">.menuitemgroup{display: none;}</style>')
|
||||
}
|
||||
|
||||
function SwitchMenu(obj)
|
||||
{
|
||||
if(document.getElementById) {
|
||||
var el = document.getElementById(obj);
|
||||
var title = document.getElementById(obj+'Title');
|
||||
|
||||
if(obj.indexOf("_selected_")==0&&el.style.display == ""){
|
||||
el.style.display = "block";
|
||||
title.className = "pagegroupselected";
|
||||
}
|
||||
|
||||
if(el.style.display != "block"){
|
||||
el.style.display = "block";
|
||||
title.className = "pagegroupopen";
|
||||
}
|
||||
else{
|
||||
el.style.display = "none";
|
||||
title.className = "pagegroup";
|
||||
}
|
||||
}// end - if(document.getElementById)
|
||||
}//end - function SwitchMenu(obj)
|
|
@ -1,50 +0,0 @@
|
|||
Notes for developer:
|
||||
|
||||
--Legend-------------------
|
||||
TODO -> blocker
|
||||
DONE -> blocker
|
||||
ToDo -> enhancement bug
|
||||
done -> enhancement bug
|
||||
|
||||
--Issues-------------------
|
||||
- the corner images should be rendered through svg with the header color.
|
||||
-> DONE
|
||||
-> ToDo: get rid of the images and use only divs!
|
||||
|
||||
- the menu points should be displayed "better".
|
||||
-> DONE
|
||||
-- Use the krysalis-site menu approach for the overall menu display.
|
||||
-> DONE
|
||||
-- Use the old lenya innermenu approch to further enhance the menu .
|
||||
-> DONE
|
||||
|
||||
- the content area needs some attention.
|
||||
-> DONE
|
||||
-- introduce the heading scheme from krysalis (<headings type="clean|box|underlined"/>)
|
||||
-> DONE
|
||||
-> ToDo: make box with round corners
|
||||
-> done: make underlined with variable border height
|
||||
-> ToDo: make underline with bottom round corner
|
||||
-- introduce the toc for each html-page
|
||||
-> DONE
|
||||
-- introduce the external-link-images.
|
||||
-> DONE
|
||||
|
||||
- the publish note should be where now only a border is.
|
||||
Like <div id="published"/>
|
||||
-> DONE
|
||||
, but make it configurable.
|
||||
-> DONE
|
||||
- footer needs some attention
|
||||
-> DONE
|
||||
-- the footer do not have the color profile! Enable it!
|
||||
-> DONE
|
||||
-- the footer should as well contain a feedback link.
|
||||
See http://issues.apache.org/eyebrowse/ReadMsg?listName=forrest-user@xml.apache.org&msgNo=71
|
||||
-> DONE
|
||||
|
||||
- introduce credits alternativ location
|
||||
-> DONE
|
||||
|
||||
- border for published / breadtrail / menu /tab divs
|
||||
-> ToDo
|
|
@ -1,54 +0,0 @@
|
|||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
body {
|
||||
font-family: Georgia, Palatino, serif;
|
||||
font-size: 12pt;
|
||||
background: white;
|
||||
}
|
||||
|
||||
#tabs,
|
||||
#menu,
|
||||
#content .toc {
|
||||
display: none;
|
||||
}
|
||||
|
||||
#content {
|
||||
width: auto;
|
||||
padding: 0;
|
||||
float: none !important;
|
||||
color: black;
|
||||
background: inherit;
|
||||
}
|
||||
|
||||
a:link, a:visited {
|
||||
color: #336699;
|
||||
background: inherit;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
#top .logo {
|
||||
padding: 0;
|
||||
margin: 0 0 2em 0;
|
||||
}
|
||||
|
||||
#footer {
|
||||
margin-top: 4em;
|
||||
}
|
||||
|
||||
acronym {
|
||||
border: 0;
|
||||
}
|
|
@ -1,175 +0,0 @@
|
|||
|
||||
|
||||
/* ==================== aural ============================ */
|
||||
|
||||
@media aural {
|
||||
h1, h2, h3, h4, h5, h6 { voice-family: paul, male; stress: 20; richness: 90 }
|
||||
h1 { pitch: x-low; pitch-range: 90 }
|
||||
h2 { pitch: x-low; pitch-range: 80 }
|
||||
h3 { pitch: low; pitch-range: 70 }
|
||||
h4 { pitch: medium; pitch-range: 60 }
|
||||
h5 { pitch: medium; pitch-range: 50 }
|
||||
h6 { pitch: medium; pitch-range: 40 }
|
||||
li, dt, dd { pitch: medium; richness: 60 }
|
||||
dt { stress: 80 }
|
||||
pre, code, tt { pitch: medium; pitch-range: 0; stress: 0; richness: 80 }
|
||||
em { pitch: medium; pitch-range: 60; stress: 60; richness: 50 }
|
||||
strong { pitch: medium; pitch-range: 60; stress: 90; richness: 90 }
|
||||
dfn { pitch: high; pitch-range: 60; stress: 60 }
|
||||
s, strike { richness: 0 }
|
||||
i { pitch: medium; pitch-range: 60; stress: 60; richness: 50 }
|
||||
b { pitch: medium; pitch-range: 60; stress: 90; richness: 90 }
|
||||
u { richness: 0 }
|
||||
|
||||
:link { voice-family: harry, male }
|
||||
:visited { voice-family: betty, female }
|
||||
:active { voice-family: betty, female; pitch-range: 80; pitch: x-high }
|
||||
}
|
||||
|
||||
a.external {
|
||||
padding: 0 20px 0px 0px;
|
||||
display:inline;
|
||||
background-repeat: no-repeat;
|
||||
background-position: center right;
|
||||
background-image: url(images/external-link.gif);
|
||||
}
|
||||
|
||||
#top { background-color: #FFFFFF;}
|
||||
|
||||
#top .header .current { background-color: #4C6C8F;}
|
||||
#top .header .current a:link { color: #ffffff; }
|
||||
#top .header .current a:visited { color: #ffffff; }
|
||||
#top .header .current a:hover { color: #ffffff; }
|
||||
|
||||
#tabs li { background-color: #E5E4D9 ;}
|
||||
#tabs li a:link { color: #000000; }
|
||||
#tabs li a:visited { color: #000000; }
|
||||
#tabs li a:hover { color: #000000; }
|
||||
|
||||
#level2tabs a.selected { background-color: #4C6C8F ;}
|
||||
#level2tabs a:link { color: #ffffff; }
|
||||
#level2tabs a:visited { color: #ffffff; }
|
||||
#level2tabs a:hover { color: #ffffff; }
|
||||
|
||||
#level2tabs { background-color: #E5E4D9;}
|
||||
#level2tabs a.unselected:link { color: #000000; }
|
||||
#level2tabs a.unselected:visited { color: #000000; }
|
||||
#level2tabs a.unselected:hover { color: #000000; }
|
||||
|
||||
.heading { background-color: #E5E4D9;}
|
||||
|
||||
.boxed { background-color: #E5E4D9;}
|
||||
.underlined_5 {border-bottom: solid 5px #E5E4D9;}
|
||||
.underlined_10 {border-bottom: solid 10px #E5E4D9;}
|
||||
table caption {
|
||||
background-color: #E5E4D9;
|
||||
color: #000000;
|
||||
}
|
||||
|
||||
#feedback {
|
||||
color: #FFFFFF;
|
||||
background: #4C6C8F;
|
||||
text-align: center;
|
||||
}
|
||||
#feedback #feedbackto {
|
||||
color: #FFFFFF;
|
||||
}
|
||||
|
||||
#publishedStrip {
|
||||
color: #FFFFFF;
|
||||
background: #4C6C8F;
|
||||
}
|
||||
|
||||
#publishedStrip {
|
||||
color: #000000;
|
||||
background: #E5E4D9;
|
||||
}
|
||||
|
||||
#menu .menupagetitle { background-color: #CFDCED;
|
||||
color: #000000;}
|
||||
|
||||
#menu { border-color: #999999;}
|
||||
#menu .menupagetitle { border-color: #999999;}
|
||||
#menu .menupageitemgroup { border-color: #999999;}
|
||||
|
||||
#menu { background-color: #4C6C8F;}
|
||||
#menu { color: #ffffff;}
|
||||
#menu a:link { color: #ffffff;}
|
||||
#menu a:visited { color: #ffffff;}
|
||||
#menu a:hover {
|
||||
background-color: #4C6C8F;
|
||||
color: #ffffff;}
|
||||
|
||||
#menu h1 {
|
||||
color: #000000;
|
||||
background-color: #cfdced;
|
||||
}
|
||||
|
||||
#top .searchbox {
|
||||
background-color: #E5E4D9 ;
|
||||
color: #000000;
|
||||
}
|
||||
|
||||
#menu .menupageitemgroup {
|
||||
background-color: #E5E4D9;
|
||||
}
|
||||
#menu .menupageitem {
|
||||
color: #000000;
|
||||
}
|
||||
#menu .menupageitem a:link { color: #000000;}
|
||||
#menu .menupageitem a:visited { color: #000000;}
|
||||
#menu .menupageitem a:hover {
|
||||
background-color: #E5E4D9;
|
||||
color: #000000;
|
||||
}
|
||||
|
||||
body{
|
||||
background-color: #ffffff;
|
||||
color: #000000;
|
||||
}
|
||||
a:link { color:#0000ff}
|
||||
a:visited { color:#009999}
|
||||
a:hover { color:#6587ff}
|
||||
|
||||
|
||||
.ForrestTable { background-color: #ccc;}
|
||||
|
||||
.ForrestTable td { background-color: #ffffff;}
|
||||
|
||||
.highlight { background-color: #ffff00;}
|
||||
|
||||
.fixme { border-color: #c60;}
|
||||
|
||||
.note { border-color: #069;}
|
||||
|
||||
.warning { border-color: #900;}
|
||||
|
||||
.code { border-color: #a5b6c6;}
|
||||
|
||||
#footer { background-color: #E5E4D9;}
|
||||
/* extra-css */
|
||||
|
||||
p.quote {
|
||||
margin-left: 2em;
|
||||
padding: .5em;
|
||||
background-color: #f0f0f0;
|
||||
font-family: monospace;
|
||||
}
|
||||
img.float-right {
|
||||
float: right;
|
||||
margin-left: 2em;
|
||||
padding: .5em;
|
||||
}
|
||||
|
||||
#footer a { color: #0F3660; }
|
||||
#footer a:visited { color: #009999; }
|
||||
|
||||
pre.code {
|
||||
margin-left: 2em;
|
||||
margin-right: 2em;
|
||||
padding: 0.5em;
|
||||
background-color: #f0f0f0;
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -1,587 +0,0 @@
|
|||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
body { margin: 0px 0px 0px 0px; font-family: Verdana, Helvetica, sans-serif; }
|
||||
|
||||
h1 { font-size : 160%; margin: 0px 0px 0px 0px; padding: 0px; }
|
||||
h2 { font-size : 140%; margin: 1em 0px 0.8em 0px; padding: 0px; font-weight : bold;}
|
||||
h3 { font-size : 130%; margin: 0.8em 0px 0px 0px; padding: 0px; font-weight : bold; }
|
||||
.h3 { margin: 22px 0px 3px 0px; }
|
||||
h4 { font-size : 120%; margin: 0.7em 0px 0px 0px; padding: 0px; font-weight : normal; text-align: left; }
|
||||
.h4 { margin: 18px 0px 0px 0px; }
|
||||
h4.faq { font-size : 120%; margin: 18px 0px 0px 0px; padding: 0px; font-weight : bold; text-align: left; }
|
||||
h5 { font-size : 100%; margin: 14px 0px 0px 0px; padding: 0px; font-weight : normal; text-align: left; }
|
||||
|
||||
/**
|
||||
* table
|
||||
*/
|
||||
table .title { background-color: #000000; }
|
||||
.ForrestTable {
|
||||
color: #ffffff;
|
||||
background-color: #7099C5;
|
||||
width: 100%;
|
||||
font-size : 100%;
|
||||
empty-cells: show;
|
||||
}
|
||||
table caption {
|
||||
padding-left: 5px;
|
||||
color: white;
|
||||
text-align: left;
|
||||
font-weight: bold;
|
||||
background-color: #000000;
|
||||
}
|
||||
.ForrestTable td {
|
||||
color: black;
|
||||
background-color: #f0f0ff;
|
||||
}
|
||||
.ForrestTable th { text-align: center; }
|
||||
/**
|
||||
* Page Header
|
||||
*/
|
||||
|
||||
#top {
|
||||
position: relative;
|
||||
float: left;
|
||||
width: 100%;
|
||||
background: #294563; /* if you want a background in the header, put it here */
|
||||
}
|
||||
|
||||
#top .breadtrail {
|
||||
background: #CFDCED;
|
||||
color: black;
|
||||
border-bottom: solid 1px white;
|
||||
padding: 3px 10px;
|
||||
font-size: 75%;
|
||||
}
|
||||
#top .breadtrail a { color: black; }
|
||||
|
||||
#top .header {
|
||||
float: left;
|
||||
width: 100%;
|
||||
background: url("images/header_white_line.gif") repeat-x bottom;
|
||||
}
|
||||
|
||||
#top .grouplogo {
|
||||
padding: 7px 0 10px 10px;
|
||||
float: left;
|
||||
text-align: left;
|
||||
}
|
||||
#top .projectlogo {
|
||||
padding: 7px 0 10px 10px;
|
||||
float: left;
|
||||
width: 33%;
|
||||
text-align: right;
|
||||
}
|
||||
#top .projectlogoA1 {
|
||||
padding: 7px 0 10px 10px;
|
||||
float: right;
|
||||
}
|
||||
html>body #top .searchbox {
|
||||
bottom: 0px;
|
||||
}
|
||||
#top .searchbox {
|
||||
position: absolute;
|
||||
right: 10px;
|
||||
height: 42px;
|
||||
font-size: 70%;
|
||||
white-space: nowrap;
|
||||
text-align: right;
|
||||
color: white;
|
||||
background-color: #000000;
|
||||
z-index:0;
|
||||
background-image: url(images/rc-t-l-5-1header-2searchbox-3searchbox.png);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
bottom: -1px; /* compensate for IE rendering issue */
|
||||
}
|
||||
|
||||
#top .searchbox form {
|
||||
padding: 5px 10px;
|
||||
margin: 0;
|
||||
}
|
||||
#top .searchbox p {
|
||||
padding: 0 0 2px 0;
|
||||
margin: 0;
|
||||
}
|
||||
#top .searchbox input {
|
||||
font-size: 100%;
|
||||
}
|
||||
|
||||
#tabs {
|
||||
clear: both;
|
||||
padding-left: 10px;
|
||||
margin: 0;
|
||||
list-style: none;
|
||||
}
|
||||
/* background: #CFDCED url("images/tab-right.gif") no-repeat right top;*/
|
||||
#tabs li {
|
||||
float: left;
|
||||
background-image: url(images/rc-t-r-5-1header-2tab-unselected-3tab-unselected.png);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top right;
|
||||
background-color: #000000;
|
||||
margin: 0 3px 0 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
/*background: url("images/tab-left.gif") no-repeat left top;*/
|
||||
#tabs li a {
|
||||
float: left;
|
||||
display: block;
|
||||
font-family: verdana, arial, sans-serif;
|
||||
text-decoration: none;
|
||||
color: black;
|
||||
white-space: nowrap;
|
||||
background-image: url(images/rc-t-l-5-1header-2tab-unselected-3tab-unselected.png);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
padding: 5px 15px 4px;
|
||||
width: .1em; /* IE/Win fix */
|
||||
}
|
||||
|
||||
#tabs li a:hover {
|
||||
|
||||
cursor: pointer;
|
||||
text-decoration:underline;
|
||||
}
|
||||
|
||||
#tabs > li a { width: auto; } /* Rest of IE/Win fix */
|
||||
|
||||
/* Commented Backslash Hack hides rule from IE5-Mac \*/
|
||||
#tabs a { float: none; }
|
||||
/* End IE5-Mac hack */
|
||||
|
||||
#top .header .current {
|
||||
background-color: #4C6C8F;
|
||||
background-image: url(images/rc-t-r-5-1header-2tab-selected-3tab-selected.png);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top right;
|
||||
}
|
||||
#top .header .current a {
|
||||
font-weight: bold;
|
||||
padding-bottom: 5px;
|
||||
color: white;
|
||||
background-image: url(images/rc-t-l-5-1header-2tab-selected-3tab-selected.png);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
#publishedStrip {
|
||||
padding-right: 10px;
|
||||
padding-left: 20px;
|
||||
padding-top: 3px;
|
||||
padding-bottom:3px;
|
||||
color: #ffffff;
|
||||
font-size : 60%;
|
||||
font-weight: bold;
|
||||
background-color: #4C6C8F;
|
||||
text-align:right;
|
||||
}
|
||||
|
||||
#level2tabs {
|
||||
margin: 0;
|
||||
float:left;
|
||||
position:relative;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
#level2tabs a:hover {
|
||||
|
||||
cursor: pointer;
|
||||
text-decoration:underline;
|
||||
|
||||
}
|
||||
|
||||
#level2tabs a{
|
||||
|
||||
cursor: pointer;
|
||||
text-decoration:none;
|
||||
background-image: url('images/chapter.gif');
|
||||
background-repeat: no-repeat;
|
||||
background-position: center left;
|
||||
padding-left: 6px;
|
||||
margin-left: 6px;
|
||||
}
|
||||
|
||||
/*
|
||||
* border-top: solid #4C6C8F 15px;
|
||||
*/
|
||||
#main {
|
||||
position: relative;
|
||||
background: white;
|
||||
clear:both;
|
||||
}
|
||||
#main .breadtrail {
|
||||
clear:both;
|
||||
position: relative;
|
||||
background: #CFDCED;
|
||||
color: black;
|
||||
border-bottom: solid 1px black;
|
||||
border-top: solid 1px black;
|
||||
padding: 0px 180px;
|
||||
font-size: 75%;
|
||||
z-index:10;
|
||||
}
|
||||
/**
|
||||
* Round corner
|
||||
*/
|
||||
#roundtop {
|
||||
background-image: url(images/rc-t-r-15-1body-2menu-3menu.png);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top right;
|
||||
}
|
||||
|
||||
#roundbottom {
|
||||
background-image: url(images/rc-b-r-15-1body-2menu-3menu.png);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top right;
|
||||
}
|
||||
|
||||
img.corner {
|
||||
width: 15px;
|
||||
height: 15px;
|
||||
border: none;
|
||||
display: block !important;
|
||||
}
|
||||
|
||||
.roundtopsmall {
|
||||
background-image: url(images/rc-t-r-5-1header-2searchbox-3searchbox.png);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top right;
|
||||
}
|
||||
|
||||
#roundbottomsmall {
|
||||
background-image: url(images/rc-b-r-5-1header-2tab-selected-3tab-selected.png);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top right;
|
||||
}
|
||||
|
||||
img.cornersmall {
|
||||
width: 5px;
|
||||
height: 5px;
|
||||
border: none;
|
||||
display: block !important;
|
||||
}
|
||||
/**
|
||||
* Side menu
|
||||
*/
|
||||
#menu a { font-weight: normal; text-decoration: none;}
|
||||
#menu a:visited { font-weight: normal; }
|
||||
#menu a:active { font-weight: normal; }
|
||||
#menu a:hover { font-weight: normal; text-decoration:underline;}
|
||||
|
||||
#menuarea { width:10em;}
|
||||
#menu {
|
||||
position: relative;
|
||||
float: left;
|
||||
width: 160px;
|
||||
padding-top: 0px;
|
||||
top:-18px;
|
||||
left:10px;
|
||||
z-index: 20;
|
||||
background-color: #f90;
|
||||
font-size : 70%;
|
||||
|
||||
}
|
||||
|
||||
.menutitle {
|
||||
cursor:pointer;
|
||||
padding: 3px 12px;
|
||||
margin-left: 10px;
|
||||
background-image: url('images/chapter.gif');
|
||||
background-repeat: no-repeat;
|
||||
background-position: center left;
|
||||
font-weight : bold;
|
||||
|
||||
|
||||
}
|
||||
|
||||
.menutitle:hover{text-decoration:underline;cursor: pointer;}
|
||||
|
||||
#menu .menuitemgroup {
|
||||
margin: 0px 0px 6px 8px;
|
||||
padding: 0px;
|
||||
font-weight : bold; }
|
||||
|
||||
#menu .selectedmenuitemgroup{
|
||||
margin: 0px 0px 0px 8px;
|
||||
padding: 0px;
|
||||
font-weight : normal;
|
||||
|
||||
}
|
||||
|
||||
#menu .menuitem {
|
||||
padding: 2px 0px 1px 13px;
|
||||
background-image: url('images/page.gif');
|
||||
background-repeat: no-repeat;
|
||||
background-position: center left;
|
||||
font-weight : normal;
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
#menu .menupage {
|
||||
margin: 2px 0px 1px 10px;
|
||||
padding: 0px 3px 0px 12px;
|
||||
background-image: url('images/page.gif');
|
||||
background-repeat: no-repeat;
|
||||
background-position: center left;
|
||||
font-style : normal;
|
||||
}
|
||||
#menu .menupagetitle {
|
||||
padding: 0px 0px 0px 1px;
|
||||
font-style : normal;
|
||||
border-style: solid;
|
||||
border-width: 1px;
|
||||
margin-right: 10px;
|
||||
|
||||
}
|
||||
#menu .menupageitemgroup {
|
||||
padding: 3px 0px 4px 6px;
|
||||
font-style : normal;
|
||||
border-bottom: 1px solid ;
|
||||
border-left: 1px solid ;
|
||||
border-right: 1px solid ;
|
||||
margin-right: 10px;
|
||||
}
|
||||
#menu .menupageitem {
|
||||
font-style : normal;
|
||||
font-weight : normal;
|
||||
border-width: 0px;
|
||||
font-size : 90%;
|
||||
}
|
||||
#menu #credit {
|
||||
text-align: center;
|
||||
}
|
||||
#menu #credit2 {
|
||||
text-align: center;
|
||||
padding: 3px 3px 3px 3px;
|
||||
background-color: #ffffff;
|
||||
}
|
||||
#menu .searchbox {
|
||||
text-align: center;
|
||||
}
|
||||
#menu .searchbox form {
|
||||
padding: 3px 3px;
|
||||
margin: 0;
|
||||
}
|
||||
#menu .searchbox input {
|
||||
font-size: 100%;
|
||||
}
|
||||
|
||||
#content {
|
||||
padding: 20px 20px 20px 180px;
|
||||
margin: 0;
|
||||
font : small Verdana, Helvetica, sans-serif;
|
||||
font-size : 80%;
|
||||
}
|
||||
|
||||
#content ul {
|
||||
margin: 0;
|
||||
padding: 0 25px;
|
||||
}
|
||||
#content li {
|
||||
padding: 0 5px;
|
||||
}
|
||||
#feedback {
|
||||
color: black;
|
||||
background: #CFDCED;
|
||||
text-align:center;
|
||||
margin-top: 5px;
|
||||
}
|
||||
#feedback #feedbackto {
|
||||
font-size: 90%;
|
||||
color: black;
|
||||
}
|
||||
#footer {
|
||||
clear: both;
|
||||
position: relative; /* IE bugfix (http://www.dracos.co.uk/web/css/ie6floatbug/) */
|
||||
width: 100%;
|
||||
background: #CFDCED;
|
||||
border-top: solid 1px #4C6C8F;
|
||||
color: black;
|
||||
}
|
||||
#footer .copyright {
|
||||
position: relative; /* IE bugfix cont'd */
|
||||
padding: 5px;
|
||||
margin: 0;
|
||||
width: 45%;
|
||||
}
|
||||
#footer .lastmodified {
|
||||
position: relative; /* IE bugfix cont'd */
|
||||
float: right;
|
||||
width: 45%;
|
||||
padding: 5px;
|
||||
margin: 0;
|
||||
text-align: right;
|
||||
}
|
||||
#footer a { color: white; }
|
||||
|
||||
#footer #logos {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Misc Styles
|
||||
*/
|
||||
|
||||
acronym { cursor: help; }
|
||||
.boxed { background-color: #a5b6c6;}
|
||||
.underlined_5 {border-bottom: solid 5px #4C6C8F;}
|
||||
.underlined_10 {border-bottom: solid 10px #4C6C8F;}
|
||||
/* ==================== snail trail ============================ */
|
||||
|
||||
.trail {
|
||||
position: relative; /* IE bugfix cont'd */
|
||||
font-size: 70%;
|
||||
text-align: right;
|
||||
float: right;
|
||||
margin: -10px 5px 0px 5px;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
#motd-area {
|
||||
position: relative; /* IE bugfix cont'd */
|
||||
float: right;
|
||||
width: 35%;
|
||||
background-color: #f0f0ff;
|
||||
border-top: solid 1px #4C6C8F;
|
||||
border-bottom: solid 1px #4C6C8F;
|
||||
margin-bottom: 15px;
|
||||
margin-left: 15px;
|
||||
margin-right: 10%;
|
||||
padding-bottom: 5px;
|
||||
padding-top: 5px;
|
||||
}
|
||||
|
||||
#minitoc-area {
|
||||
border-top: solid 1px #4C6C8F;
|
||||
border-bottom: solid 1px #4C6C8F;
|
||||
margin: 15px 10% 5px 15px;
|
||||
/* margin-bottom: 15px;
|
||||
margin-left: 15px;
|
||||
margin-right: 10%;*/
|
||||
padding-bottom: 7px;
|
||||
padding-top: 5px;
|
||||
}
|
||||
.minitoc {
|
||||
list-style-image: url('images/current.gif');
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
li p {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.pdflink {
|
||||
position: relative; /* IE bugfix cont'd */
|
||||
float: right;
|
||||
margin: 0px 5px;
|
||||
padding: 0;
|
||||
}
|
||||
.pdflink br {
|
||||
margin-top: -10px;
|
||||
padding-left: 1px;
|
||||
}
|
||||
.pdflink a {
|
||||
display: block;
|
||||
font-size: 70%;
|
||||
text-align: center;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.pdflink img {
|
||||
display: block;
|
||||
height: 16px;
|
||||
width: 16px;
|
||||
}
|
||||
.xmllink {
|
||||
position: relative; /* IE bugfix cont'd */
|
||||
float: right;
|
||||
margin: 0px 5px;
|
||||
padding: 0;
|
||||
}
|
||||
.xmllink br {
|
||||
margin-top: -10px;
|
||||
padding-left: 1px;
|
||||
}
|
||||
.xmllink a {
|
||||
display: block;
|
||||
font-size: 70%;
|
||||
text-align: center;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.xmllink img {
|
||||
display: block;
|
||||
height: 16px;
|
||||
width: 16px;
|
||||
}
|
||||
.podlink {
|
||||
position: relative; /* IE bugfix cont'd */
|
||||
float: right;
|
||||
margin: 0px 5px;
|
||||
padding: 0;
|
||||
}
|
||||
.podlink br {
|
||||
margin-top: -10px;
|
||||
padding-left: 1px;
|
||||
}
|
||||
.podlink a {
|
||||
display: block;
|
||||
font-size: 70%;
|
||||
text-align: center;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.podlink img {
|
||||
display: block;
|
||||
height: 16px;
|
||||
width: 16px;
|
||||
}
|
||||
|
||||
.printlink {
|
||||
position: relative; /* IE bugfix cont'd */
|
||||
float: right;
|
||||
}
|
||||
.printlink br {
|
||||
margin-top: -10px;
|
||||
padding-left: 1px;
|
||||
}
|
||||
.printlink a {
|
||||
display: block;
|
||||
font-size: 70%;
|
||||
text-align: center;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
.printlink img {
|
||||
display: block;
|
||||
height: 16px;
|
||||
width: 16px;
|
||||
}
|
||||
|
||||
p.instruction {
|
||||
display: list-item;
|
||||
list-style-image: url('../images/instruction_arrow.png');
|
||||
list-style-position: outside;
|
||||
margin-left: 2em;
|
||||
}
|
|
@ -1,137 +0,0 @@
|
|||
<?xml version="1.0"?>
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
contributor license agreements. See the NOTICE file distributed with
|
||||
this work for additional information regarding copyright ownership.
|
||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
|
||||
<xsl:template match="skinconfig">
|
||||
<xsl:if test="not(colors)">
|
||||
<colors>
|
||||
<!-- Lenya -->
|
||||
<color name="header" value="#ffffff"/>
|
||||
<color name="tab-selected" value="#4C6C8F" link="#ffffff" vlink="#ffffff" hlink="#ffffff"/>
|
||||
<color name="tab-unselected" value="#E5E4D9" link="#000000" vlink="#000000" hlink="#000000"/>
|
||||
<color name="subtab-selected" value="#4C6C8F" link="#ffffff" vlink="#ffffff" hlink="#ffffff"/>
|
||||
<color name="subtab-unselected" value="#E5E4D9" link="#000000" vlink="#000000" hlink="#000000"/>
|
||||
<color name="heading" value="#E5E4D9"/>
|
||||
<color name="subheading" value="#E5E4D9"/>
|
||||
<color name="published" value="#4C6C8F" font="#FFFFFF"/>
|
||||
<color name="feedback" value="#4C6C8F" font="#FFFFFF" align="center"/>
|
||||
<color name="navstrip" value="#E5E4D9" font="#000000"/>
|
||||
<color name="toolbox" value="#CFDCED" font="#000000"/>
|
||||
<color name="border" value="#999999"/>
|
||||
<color name="menu" value="#4C6C8F" font="#ffffff" link="#ffffff" vlink="#ffffff" hlink="#ffffff" />
|
||||
<color name="menuheading" value="#cfdced" font="#000000" />
|
||||
<color name="searchbox" value="#E5E4D9" font="#000000"/>
|
||||
<color name="dialog" value="#E5E4D9" font="#000000"/>
|
||||
<color name="body" value="#ffffff" />
|
||||
<color name="table" value="#ccc"/>
|
||||
<color name="table-cell" value="#ffffff"/>
|
||||
<color name="highlight" value="#ffff00"/>
|
||||
<color name="fixme" value="#cc6600"/>
|
||||
<color name="note" value="#006699"/>
|
||||
<color name="warning" value="#990000"/>
|
||||
<color name="code" value="#003366"/>
|
||||
<color name="footer" value="#E5E4D9"/>
|
||||
</colors>
|
||||
</xsl:if>
|
||||
<xsl:copy>
|
||||
<xsl:copy-of select="@*"/>
|
||||
<xsl:copy-of select="node()[not(name(.)='colors')]"/>
|
||||
<xsl:apply-templates select="colors"/>
|
||||
</xsl:copy>
|
||||
</xsl:template>
|
||||
<xsl:template match="colors">
|
||||
<xsl:copy>
|
||||
<xsl:copy-of select="@*"/>
|
||||
<xsl:copy-of select="node()[name(.)='color']"/>
|
||||
<xsl:if test="not(color[@name='header'])">
|
||||
<color name="header" value="#FFFFFF"/>
|
||||
</xsl:if>
|
||||
<xsl:if test="not(color[@name='tab-selected'])">
|
||||
<color name="tab-selected" value="#4C6C8F" link="#ffffff" vlink="#ffffff" hlink="#ffffff"/>
|
||||
</xsl:if>
|
||||
<xsl:if test="not(color[@name='tab-unselected'])">
|
||||
<color name="tab-unselected" value="#E5E4D9" link="#000000" vlink="#000000" hlink="#000000"/>
|
||||
</xsl:if>
|
||||
<xsl:if test="not(color[@name='subtab-selected'])">
|
||||
<color name="subtab-selected" value="#4C6C8F" link="#ffffff" vlink="#ffffff" hlink="#ffffff"/>
|
||||
</xsl:if>
|
||||
<xsl:if test="not(color[@name='subtab-unselected'])">
|
||||
<color name="subtab-unselected" value="#E5E4D9" link="#000000" vlink="#000000" hlink="#000000"/>
|
||||
</xsl:if>
|
||||
<xsl:if test="not(color[@name='heading'])">
|
||||
<color name="heading" value="#E5E4D9"/>
|
||||
</xsl:if>
|
||||
<xsl:if test="not(color[@name='subheading'])">
|
||||
<color name="subheading" value="#E5E4D9"/>
|
||||
</xsl:if>
|
||||
<xsl:if test="not(color[@name='feedback'])">
|
||||
<color name="feedback" value="#4C6C8F" font="#FFFFFF" align="center"/>
|
||||
</xsl:if>
|
||||
<xsl:if test="not(color[@name='published'])">
|
||||
<color name="published" value="#4C6C8F" font="#FFFFFF"/>
|
||||
</xsl:if>
|
||||
<xsl:if test="not(color[@name='navstrip'])">
|
||||
<color name="navstrip" value="#E5E4D9" font="#000000"/>
|
||||
</xsl:if>
|
||||
<xsl:if test="not(color[@name='toolbox'])">
|
||||
<color name="toolbox" value="#CFDCED" font="#000000"/>
|
||||
</xsl:if>
|
||||
<xsl:if test="not(color[@name='border'])">
|
||||
<color name="border" value="#999999"/>
|
||||
</xsl:if>
|
||||
<xsl:if test="not(color[@name='menu'])">
|
||||
<color name="menu" value="#4C6C8F" font="#ffffff" link="#ffffff" vlink="#ffffff" hlink="#ffffff" />
|
||||
</xsl:if>
|
||||
<xsl:if test="not(color[@name='menuheading'])">
|
||||
<color name="menuheading" value="#cfdced" font="#000000" />
|
||||
</xsl:if>
|
||||
<xsl:if test="not(color[@name='searchbox'])">
|
||||
<color name="searchbox" value="#E5E4D9" font="#000000"/>
|
||||
</xsl:if>
|
||||
<xsl:if test="not(color[@name='dialog'])">
|
||||
<color name="dialog" value="#E5E4D9" font="#000000" link="#000000" vlink="#000000" hlink="#000000"/>
|
||||
</xsl:if>
|
||||
<xsl:if test="not(color[@name='body'])">
|
||||
<color name="body" value="#ffffff" />
|
||||
</xsl:if>
|
||||
<xsl:if test="not(color[@name='table'])">
|
||||
<color name="table" value="#ccc"/>
|
||||
</xsl:if>
|
||||
<xsl:if test="not(color[@name='table-cell'])">
|
||||
<color name="table-cell" value="#ffffff"/>
|
||||
</xsl:if>
|
||||
<xsl:if test="not(color[@name='highlight'])">
|
||||
<color name="highlight" value="#ffff00"/>
|
||||
</xsl:if>
|
||||
<xsl:if test="not(color[@name='fixme'])">
|
||||
<color name="fixme" value="#c60"/>
|
||||
</xsl:if>
|
||||
<xsl:if test="not(color[@name='note'])">
|
||||
<color name="note" value="#069"/>
|
||||
</xsl:if>
|
||||
<xsl:if test="not(color[@name='warning'])">
|
||||
<color name="warning" value="#900"/>
|
||||
</xsl:if>
|
||||
<xsl:if test="not(color[@name='code'])">
|
||||
<color name="code" value="#a5b6c6"/>
|
||||
</xsl:if>
|
||||
<xsl:if test="not(color[@name='footer'])">
|
||||
<color name="footer" value="#E5E4D9"/>
|
||||
</xsl:if>
|
||||
</xsl:copy>
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
|
@ -1,299 +0,0 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<meta content="Apache Forrest" name="Generator">
|
||||
<meta name="Forrest-version" content="0.9">
|
||||
<meta name="Forrest-skin-name" content="lucene">
|
||||
<title>Apache Lucene - System Requirements</title>
|
||||
<link type="text/css" href="skin/basic.css" rel="stylesheet">
|
||||
<link media="screen" type="text/css" href="skin/screen.css" rel="stylesheet">
|
||||
<link media="print" type="text/css" href="skin/print.css" rel="stylesheet">
|
||||
<link type="text/css" href="skin/profile.css" rel="stylesheet">
|
||||
<script src="skin/getBlank.js" language="javascript" type="text/javascript"></script><script src="skin/getMenu.js" language="javascript" type="text/javascript"></script><script src="skin/fontsize.js" language="javascript" type="text/javascript"></script>
|
||||
<link rel="shortcut icon" href="images/favicon.ico">
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<script type="text/javascript">ndeSetTextSize();</script>
|
||||
<div id="top">
|
||||
<!--+
|
||||
|breadtrail
|
||||
+-->
|
||||
<div class="breadtrail">
|
||||
<a href="http://www.apache.org/">Apache</a> > <a href="http://lucene.apache.org/">Lucene</a><script src="skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script>
|
||||
</div>
|
||||
<!--+
|
||||
|header
|
||||
+-->
|
||||
<div class="header">
|
||||
<!--+
|
||||
|start group logo
|
||||
+-->
|
||||
<div class="grouplogo">
|
||||
<a href="http://lucene.apache.org/"><img class="logoImage" alt="Lucene" src="http://www.apache.org/images/asf_logo_simple.png" title="Apache Lucene"></a>
|
||||
</div>
|
||||
<!--+
|
||||
|end group logo
|
||||
+-->
|
||||
<!--+
|
||||
|start Project Logo
|
||||
+-->
|
||||
<div class="projectlogo">
|
||||
<a href="http://lucene.apache.org/java/"><img class="logoImage" alt="Lucene" src="http://lucene.apache.org/images/lucene_green_300.gif" title="Apache Lucene is a high-performance, full-featured text search engine library written entirely in
|
||||
Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform."></a>
|
||||
</div>
|
||||
<!--+
|
||||
|end Project Logo
|
||||
+-->
|
||||
<!--+
|
||||
|start Search
|
||||
+-->
|
||||
<div class="searchbox">
|
||||
<form action="http://search.lucidimagination.com/p:lucene" method="get" class="roundtopsmall">
|
||||
<input onFocus="getBlank (this, 'Search the site with Lucene');" size="25" name="q" id="query" type="text" value="Search the site with Lucene">
|
||||
<input name="Search" value="Search" type="submit">
|
||||
</form>
|
||||
<div style="position: relative; top: -5px; left: -10px">Powered by <a href="http://www.lucidimagination.com" style="color: #033268">Lucid Imagination</a>
|
||||
</div>
|
||||
</div>
|
||||
<!--+
|
||||
|end search
|
||||
+-->
|
||||
<!--+
|
||||
|start Tabs
|
||||
+-->
|
||||
<ul id="tabs">
|
||||
<li class="current">
|
||||
<a class="selected" href="http://lucene.apache.org/java/docs/">Main</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="unselected" href="http://wiki.apache.org/lucene-java">Wiki</a>
|
||||
</li>
|
||||
<li class="current">
|
||||
<a class="selected" href="index.html">Lucene 4.0 Documentation</a>
|
||||
</li>
|
||||
</ul>
|
||||
<!--+
|
||||
|end Tabs
|
||||
+-->
|
||||
</div>
|
||||
</div>
|
||||
<div id="main">
|
||||
<div id="publishedStrip">
|
||||
<!--+
|
||||
|start Subtabs
|
||||
+-->
|
||||
<div id="level2tabs"></div>
|
||||
<!--+
|
||||
|end Endtabs
|
||||
+-->
|
||||
<script type="text/javascript"><!--
|
||||
document.write("Last Published: " + document.lastModified);
|
||||
// --></script>
|
||||
</div>
|
||||
<!--+
|
||||
|breadtrail
|
||||
+-->
|
||||
<div class="breadtrail">
|
||||
|
||||
|
||||
</div>
|
||||
<!--+
|
||||
|start Menu, mainarea
|
||||
+-->
|
||||
<!--+
|
||||
|start Menu
|
||||
+-->
|
||||
<div id="menu">
|
||||
<div onclick="SwitchMenu('menu_selected_1.1', 'skin/')" id="menu_selected_1.1Title" class="menutitle" style="background-image: url('skin/images/chapter_open.gif');">Documentation</div>
|
||||
<div id="menu_selected_1.1" class="selectedmenuitemgroup" style="display: block;">
|
||||
<div class="menuitem">
|
||||
<a href="index.html">Overview</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="changes/Changes.html">Changes</a>
|
||||
</div>
|
||||
<div onclick="SwitchMenu('menu_1.1.3', 'skin/')" id="menu_1.1.3Title" class="menutitle">Javadocs</div>
|
||||
<div id="menu_1.1.3" class="menuitemgroup">
|
||||
<div class="menuitem">
|
||||
<a href="api/core/index.html">Core</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-common/index.html">Analysis: Common</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-kuromoji/index.html">Analysis: Kuromoji (Japanese)</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-morfologik/index.html">Analysis: Morfologik (Polish)</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-phonetic/index.html">Analysis: Phonetic</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-smartcn/index.html">Analysis: Smart Chinese</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-stempel/index.html">Analysis: Stempel (Polish)</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-uima/index.html">Analysis: UIMA</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/benchmark/index.html">Benchmark</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/demo/index.html">Demo</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/facet/index.html">Faceting</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/grouping/index.html">Grouping</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/highlighter/index.html">Highlighter</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/join/index.html">Join</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/memory/index.html">Memory</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/misc/index.html">Miscellaneous</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/queries/index.html">Queries</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/queryparser/index.html">Query Parsers</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/sandbox/index.html">Sandbox</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/spatial/index.html">Spatial</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/suggest/index.html">Suggest / Spellcheck</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/test-framework/index.html">Test Framework</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="menupage">
|
||||
<div class="menupagetitle">System Requirements</div>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="contributions.html">Contributions</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="http://wiki.apache.org/lucene-java/LuceneFAQ">FAQ</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="fileformats.html">File Formats</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="gettingstarted.html">Getting Started</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="queryparsersyntax.html">Query Syntax</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="scoring.html">Scoring</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="http://wiki.apache.org/lucene-java">Wiki</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="http://lucene.apache.org/privacy.html">Privacy Policy</a>
|
||||
</div>
|
||||
</div>
|
||||
<div id="credit"></div>
|
||||
<div id="roundbottom">
|
||||
<img style="display: none" class="corner" height="15" width="15" alt="" src="skin/images/rc-b-l-15-1body-2menu-3menu.png"></div>
|
||||
<!--+
|
||||
|alternative credits
|
||||
+-->
|
||||
<div id="credit2"></div>
|
||||
</div>
|
||||
<!--+
|
||||
|end Menu
|
||||
+-->
|
||||
<!--+
|
||||
|start content
|
||||
+-->
|
||||
<div id="content">
|
||||
<h1>Apache Lucene - System Requirements</h1>
|
||||
<div id="minitoc-area">
|
||||
<ul class="minitoc">
|
||||
<li>
|
||||
<a href="#System Requirements">System Requirements</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<!-- <section id="Code Coverage"><title>Code Coverage</title>
|
||||
<p>Code Coverage reports are available <a
|
||||
href="">here</a></p>
|
||||
</section> -->
|
||||
|
||||
<a name="N10013"></a><a name="System Requirements"></a>
|
||||
<h2 class="boxed">System Requirements</h2>
|
||||
<div class="section">
|
||||
<p>
|
||||
Lucene Core has the following minimum requirements:
|
||||
<ul>
|
||||
|
||||
<li>Java 1.6.x or greater.</li>
|
||||
|
||||
<li>ANT 1.7.0 or greater.</li>
|
||||
|
||||
<li>CPU, Disk and Memory requirements are based on the many choices made in implementing Lucene (document size, number of documents, and number of hits retrieved to name a few.)</li>
|
||||
|
||||
</ul>
|
||||
|
||||
</p>
|
||||
<p>Some modules may have other requirements, refer to their documentation and build files for information.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
<!--+
|
||||
|end content
|
||||
+-->
|
||||
<div class="clearboth"> </div>
|
||||
</div>
|
||||
<div id="footer">
|
||||
<!--+
|
||||
|start bottomstrip
|
||||
+-->
|
||||
<div class="lastmodified">
|
||||
<script type="text/javascript"><!--
|
||||
document.write("Last Published: " + document.lastModified);
|
||||
// --></script>
|
||||
</div>
|
||||
<div class="copyright">
|
||||
Copyright ©
|
||||
2006 <a href="http://www.apache.org/licenses/">The Apache Software Foundation.</a>
|
||||
</div>
|
||||
<!--+
|
||||
|end bottomstrip
|
||||
+-->
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
|
||||
var _gaq = _gaq || [];
|
||||
_gaq.push(['_setAccount', 'UA-94576-12']);
|
||||
_gaq.push(['_trackPageview']);
|
||||
|
||||
(function() {
|
||||
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
|
||||
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
|
||||
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
|
||||
})();
|
||||
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -1,130 +0,0 @@
|
|||
# Copyright 2002-2005 The Apache Software Foundation or its licensors,
|
||||
# as applicable.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
##############
|
||||
# Properties used by forrest.build.xml for building the website
|
||||
# These are the defaults, un-comment them only if you need to change them.
|
||||
##############
|
||||
|
||||
# Prints out a summary of Forrest settings for this project
|
||||
#forrest.echo=true
|
||||
|
||||
# Project name (used to name .war file)
|
||||
#project.name=my-project
|
||||
|
||||
# Specifies name of Forrest skin to use
|
||||
# See list at http://forrest.apache.org/docs/skins.html
|
||||
project.skin=lucene
|
||||
|
||||
# Descriptors for plugins and skins
|
||||
# comma separated list, file:// is supported
|
||||
#forrest.skins.descriptors=http://forrest.apache.org/skins/skins.xml,file:///c:/myskins/skins.xml
|
||||
#forrest.plugins.descriptors=http://forrest.apache.org/plugins/plugins.xml,http://forrest.apache.org/plugins/whiteboard-plugins.xml
|
||||
|
||||
##############
|
||||
# behavioural properties
|
||||
#project.menu-scheme=tab_attributes
|
||||
#project.menu-scheme=directories
|
||||
|
||||
##############
|
||||
# layout properties
|
||||
|
||||
# Properties that can be set to override the default locations
|
||||
#
|
||||
# Parent properties must be set. This usually means uncommenting
|
||||
# project.content-dir if any other property using it is uncommented
|
||||
|
||||
#project.status=status.xml
|
||||
#project.content-dir=src/documentation
|
||||
#project.raw-content-dir=${project.content-dir}/content
|
||||
#project.conf-dir=${project.content-dir}/conf
|
||||
#project.sitemap-dir=${project.content-dir}
|
||||
#project.xdocs-dir=${project.content-dir}/content/xdocs
|
||||
#project.resources-dir=${project.content-dir}/resources
|
||||
#project.stylesheets-dir=${project.resources-dir}/stylesheets
|
||||
#project.images-dir=${project.resources-dir}/images
|
||||
#project.schema-dir=${project.resources-dir}/schema
|
||||
#project.skins-dir=${project.content-dir}/skins
|
||||
#project.skinconf=${project.content-dir}/skinconf.xml
|
||||
#project.lib-dir=${project.content-dir}/lib
|
||||
#project.classes-dir=${project.content-dir}/classes
|
||||
#project.translations-dir=${project.content-dir}/translations
|
||||
project.configfile=${project.home}/src/documentation/conf/cli.xconf
|
||||
|
||||
##############
|
||||
# validation properties
|
||||
|
||||
# This set of properties determine if validation is performed
|
||||
# Values are inherited unless overridden.
|
||||
# e.g. if forrest.validate=false then all others are false unless set to true.
|
||||
#forrest.validate=true
|
||||
#forrest.validate.xdocs=${forrest.validate}
|
||||
#forrest.validate.skinconf=${forrest.validate}
|
||||
#forrest.validate.sitemap=${forrest.validate}
|
||||
#forrest.validate.stylesheets=${forrest.validate}
|
||||
#forrest.validate.skins=${forrest.validate}
|
||||
#forrest.validate.skins.stylesheets=${forrest.validate.skins}
|
||||
|
||||
# *.failonerror=(true|false) - stop when an XML file is invalid
|
||||
#forrest.validate.failonerror=true
|
||||
|
||||
# *.excludes=(pattern) - comma-separated list of path patterns to not validate
|
||||
# e.g.
|
||||
#forrest.validate.xdocs.excludes=samples/subdir/**, samples/faq.xml
|
||||
#forrest.validate.xdocs.excludes=
|
||||
|
||||
|
||||
##############
|
||||
# General Forrest properties
|
||||
|
||||
# The URL to start crawling from
|
||||
#project.start-uri=linkmap.html
|
||||
|
||||
# Set logging level for messages printed to the console
|
||||
# (DEBUG, INFO, WARN, ERROR, FATAL_ERROR)
|
||||
#project.debuglevel=ERROR
|
||||
|
||||
# Max memory to allocate to Java
|
||||
#forrest.maxmemory=64m
|
||||
|
||||
# Any other arguments to pass to the JVM. For example, to run on an X-less
|
||||
# server, set to -Djava.awt.headless=true
|
||||
#forrest.jvmargs=
|
||||
|
||||
# The bugtracking URL - the issue number will be appended
|
||||
#project.bugtracking-url=http://issues.apache.org/bugzilla/show_bug.cgi?id=
|
||||
#project.bugtracking-url=http://issues.apache.org/jira/browse/
|
||||
|
||||
# The issues list as rss
|
||||
#project.issues-rss-url=
|
||||
|
||||
#I18n Property. Based on the locale request for the browser.
|
||||
#If you want to use it for static site then modify the JVM system.language
|
||||
# and run once per language
|
||||
#project.i18n=true
|
||||
|
||||
# The names of plugins that are required to build the project
|
||||
# comma separated list (no spaces)
|
||||
# You can request a specific version by appending "-VERSION" to the end of
|
||||
# the plugin name. If you exclude a version number the latest released version
|
||||
# will be used, however, be aware that this may be a development version. In
|
||||
# a production environment it is recomended that you specify a known working
|
||||
# version.
|
||||
# Run "forrest available-plugins" for a list of plug-ins currently available
|
||||
#project.required.plugins=org.apache.forrest.plugin.output.pdf
|
||||
|
||||
# Proxy configuration
|
||||
# proxy.host=
|
||||
# proxy.port=
|
|
@ -0,0 +1,72 @@
|
|||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>Apache Lucene - Building and Installing the Basic Demo</title>
|
||||
</head>
|
||||
<body>
|
||||
<h1>Apache Lucene - Building and Installing the Basic Demo</h1>
|
||||
<div id="minitoc-area">
|
||||
<ul class="minitoc">
|
||||
<li><a href="#About%20this%20Document">About this Document</a></li>
|
||||
<li><a href="#About%20the%20Demo">About the Demo</a></li>
|
||||
<li><a href="#Setting%20your%20CLASSPATH">Setting your CLASSPATH</a></li>
|
||||
<li><a href="#Indexing%20Files">Indexing Files</a></li>
|
||||
<li><a href="#About%20the%20code...">About the code...</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<a name="N10013" id="N10013"></a><a name="About this Document"></a>
|
||||
<h2 class="boxed">About this Document</h2>
|
||||
<div class="section">
|
||||
<p>This document is intended as a "getting started" guide to using and running
|
||||
the Lucene demos. It walks you through some basic installation and
|
||||
configuration.</p>
|
||||
</div>
|
||||
<a name="N1001C" id="N1001C"></a><a name="About the Demo"></a>
|
||||
<h2 class="boxed">About the Demo</h2>
|
||||
<div class="section">
|
||||
<p>The Lucene command-line demo code consists of an application that
|
||||
demonstrates various functionalities of Lucene and how you can add Lucene to
|
||||
your applications.</p>
|
||||
</div>
|
||||
<a name="N10025" id="N10025"></a><a name="Setting your CLASSPATH"></a>
|
||||
<h2 class="boxed">Setting your CLASSPATH</h2>
|
||||
<div class="section">
|
||||
<p>First, you should <a href=
|
||||
"http://www.apache.org/dyn/closer.cgi/lucene/java/">download</a> the latest
|
||||
Lucene distribution and then extract it to a working directory.</p>
|
||||
<p>You need three JARs: the Lucene JAR, the common analysis JAR, and the Lucene
|
||||
demo JAR. You should see the Lucene JAR file in the core/ directory you created
|
||||
when you extracted the archive -- it should be named something like
|
||||
<span class="codefrag">lucene-core-{version}.jar</span>. You should also see
|
||||
files called <span class=
|
||||
"codefrag">lucene-analyzers-common-{version}.jar</span> and <span class=
|
||||
"codefrag">lucene-demo-{version}.jar</span> under analysis/common/ and demo/,
|
||||
respectively.</p>
|
||||
<p>Put all three of these files in your Java CLASSPATH.</p>
|
||||
</div>
|
||||
<a name="N10041" id="N10041"></a><a name="Indexing Files"></a>
|
||||
<h2 class="boxed">Indexing Files</h2>
|
||||
<div class="section">
|
||||
<p>Once you've gotten this far you're probably itching to go. Let's <b>build an
|
||||
index!</b> Assuming you've set your CLASSPATH correctly, just type:</p>
|
||||
<pre>
|
||||
java org.apache.lucene.demo.IndexFiles -docs {path-to-lucene}/src
|
||||
</pre>
|
||||
This will produce a subdirectory called <span class="codefrag">index</span>
|
||||
which will contain an index of all of the Lucene source code.
|
||||
<p>To <b>search the index</b> type:</p>
|
||||
<pre>
|
||||
java org.apache.lucene.demo.SearchFiles
|
||||
</pre>
|
||||
You'll be prompted for a query. Type in a swear word and press the enter key.
|
||||
You'll see that the Lucene developers are very well mannered and get no
|
||||
results. Now try entering the word "string". That should return a whole bunch
|
||||
of documents. The results will page at every tenth result and ask you whether
|
||||
you want more results.</div>
|
||||
<a name="N1005C" id="N1005C"></a><a name="About the code..."></a>
|
||||
<h2 class="boxed">About the code...</h2>
|
||||
<div class="section">
|
||||
<p><a href="demo2.html">read on>>></a></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,148 @@
|
|||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>Apache Lucene - Basic Demo Sources Walk-through</title>
|
||||
</head>
|
||||
<body>
|
||||
<h1>Apache Lucene - Basic Demo Sources Walk-through</h1>
|
||||
<div id="minitoc-area">
|
||||
<ul class="minitoc">
|
||||
<li><a href="#About%20the%20Code">About the Code</a></li>
|
||||
<li><a href="#Location%20of%20the%20source">Location of the source</a></li>
|
||||
<li><a href="#IndexFiles">IndexFiles</a></li>
|
||||
<li><a href="#Searching%20Files">Searching Files</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<a name="N10013" id="N10013"></a><a name="About the Code"></a>
|
||||
<h2 class="boxed">About the Code</h2>
|
||||
<div class="section">
|
||||
<p>In this section we walk through the sources behind the command-line Lucene
|
||||
demo: where to find them, their parts and their function. This section is
|
||||
intended for Java developers wishing to understand how to use Lucene in their
|
||||
applications.</p>
|
||||
</div>
|
||||
<a name="N1001C" id="N1001C"></a><a name="Location of the source"></a>
|
||||
<h2 class="boxed">Location of the source</h2>
|
||||
<div class="section">
|
||||
<p>NOTE: to examine the sources, you need to download and extract a source
|
||||
checkout of Lucene: (lucene-{version}-src.zip).</p>
|
||||
<p>Relative to the directory created when you extracted Lucene, you should see
|
||||
a directory called <span class="codefrag">lucene/demo/</span>. This is the root
|
||||
for the Lucene demo. Under this directory is <span class=
|
||||
"codefrag">src/java/org/apache/lucene/demo/</span>. This is where all the Java
|
||||
sources for the demo live.</p>
|
||||
<p>Within this directory you should see the <span class=
|
||||
"codefrag">IndexFiles.java</span> class we executed earlier. Bring it up in
|
||||
<span class="codefrag">vi</span> or your editor of choice and let's take a look
|
||||
at it.</p>
|
||||
</div>
|
||||
<a name="N10037" id="N10037"></a><a name="IndexFiles" id="IndexFiles"></a>
|
||||
<h2 class="boxed">IndexFiles</h2>
|
||||
<div class="section">
|
||||
<p>As we discussed in the previous walk-through, the <a href=
|
||||
"api/demo/org/apache/lucene/demo/IndexFiles.html">IndexFiles</a> class creates
|
||||
a Lucene Index. Let's take a look at how it does this.</p>
|
||||
<p>The <span class="codefrag">main()</span> method parses the command-line
|
||||
parameters, then in preparation for instantiating <a href=
|
||||
"api/core/org/apache/lucene/index/IndexWriter.html">IndexWriter</a>, opens a
|
||||
<a href="api/core/org/apache/lucene/store/Directory.html">Directory</a> and
|
||||
instantiates <a href=
|
||||
"api/analyzers-common/org/apache/lucene/analysis/standard/StandardAnalyzer.html">
|
||||
StandardAnalyzer</a> and <a href=
|
||||
"api/core/org/apache/lucene/index/IndexWriterConfig.html">IndexWriterConfig</a>.</p>
|
||||
<p>The value of the <span class="codefrag">-index</span> command-line parameter
|
||||
is the name of the filesystem directory where all index information should be
|
||||
stored. If <span class="codefrag">IndexFiles</span> is invoked with a relative
|
||||
path given in the <span class="codefrag">-index</span> command-line parameter,
|
||||
or if the <span class="codefrag">-index</span> command-line parameter is not
|
||||
given, causing the default relative index path "<span class=
|
||||
"codefrag">index</span>" to be used, the index path will be created as a
|
||||
subdirectory of the current working directory (if it does not already exist).
|
||||
On some platforms, the index path may be created in a different directory (such
|
||||
as the user's home directory).</p>
|
||||
<p>The <span class="codefrag">-docs</span> command-line parameter value is the
|
||||
location of the directory containing files to be indexed.</p>
|
||||
<p>The <span class="codefrag">-update</span> command-line parameter tells
|
||||
<span class="codefrag">IndexFiles</span> not to delete the index if it already
|
||||
exists. When <span class="codefrag">-update</span> is not given, <span class=
|
||||
"codefrag">IndexFiles</span> will first wipe the slate clean before indexing
|
||||
any documents.</p>
|
||||
<p>Lucene <a href=
|
||||
"api/core/org/apache/lucene/store/Directory.html">Directory</a>s are used by
|
||||
the <span class="codefrag">IndexWriter</span> to store information in the
|
||||
index. In addition to the <a href=
|
||||
"api/core/org/apache/lucene/store/FSDirectory.html">FSDirectory</a>
|
||||
implementation we are using, there are several other <span class=
|
||||
"codefrag">Directory</span> subclasses that can write to RAM, to databases,
|
||||
etc.</p>
|
||||
<p>Lucene <a href=
|
||||
"api/core/org/apache/lucene/analysis/Analyzer.html">Analyzer</a>s are
|
||||
processing pipelines that break up text into indexed tokens, a.k.a. terms, and
|
||||
optionally perform other operations on these tokens, e.g. downcasing, synonym
|
||||
insertion, filtering out unwanted tokens, etc. The <span class=
|
||||
"codefrag">Analyzer</span> we are using is <span class=
|
||||
"codefrag">StandardAnalyzer</span>, which creates tokens using the Word Break
|
||||
rules from the Unicode Text Segmentation algorithm specified in <a href=
|
||||
"http://unicode.org/reports/tr29/">Unicode Standard Annex #29</a>; converts
|
||||
tokens to lowercase; and then filters out stopwords. Stopwords are common
|
||||
language words such as articles (a, an, the, etc.) and other tokens that may
|
||||
have less value for searching. It should be noted that there are different
|
||||
rules for every language, and you should use the proper analyzer for each.
|
||||
Lucene currently provides Analyzers for a number of different languages (see
|
||||
the javadocs under <a href=
|
||||
"api/analyzers-common/org/apache/lucene/analysis/">lucene/analysis/common/src/java/org/apache/lucene/analysis</a>).</p>
|
||||
<p>The <span class="codefrag">IndexWriterConfig</span> instance holds all
|
||||
configuration for <span class="codefrag">IndexWriter</span>. For example, we
|
||||
set the <span class="codefrag">OpenMode</span> to use here based on the value
|
||||
of the <span class="codefrag">-update</span> command-line parameter.</p>
|
||||
<p>Looking further down in the file, after <span class=
|
||||
"codefrag">IndexWriter</span> is instantiated, you should see the <span class=
|
||||
"codefrag">indexDocs()</span> code. This recursive function crawls the
|
||||
directories and creates <a href=
|
||||
"api/core/org/apache/lucene/document/Document.html">Document</a> objects. The
|
||||
<span class="codefrag">Document</span> is simply a data object to represent the
|
||||
text content from the file as well as its creation time and location. These
|
||||
instances are added to the <span class="codefrag">IndexWriter</span>. If the
|
||||
<span class="codefrag">-update</span> command-line parameter is given, the
|
||||
<span class="codefrag">IndexWriter</span> <span class=
|
||||
"codefrag">OpenMode</span> will be set to <span class=
|
||||
"codefrag">OpenMode.CREATE_OR_APPEND</span>, and rather than adding documents
|
||||
to the index, the <span class="codefrag">IndexWriter</span> will
|
||||
<strong>update</strong> them in the index by attempting to find an
|
||||
already-indexed document with the same identifier (in our case, the file path
|
||||
serves as the identifier); deleting it from the index if it exists; and then
|
||||
adding the new document to the index.</p>
|
||||
</div>
|
||||
<a name="N100DB" id="N100DB"></a><a name="Searching Files"></a>
|
||||
<h2 class="boxed">Searching Files</h2>
|
||||
<div class="section">
|
||||
<p>The <a href=
|
||||
"api/demo/org/apache/lucene/demo/SearchFiles.html">SearchFiles</a> class is
|
||||
quite simple. It primarily collaborates with an <a href=
|
||||
"api/core/org/apache/lucene/search/IndexSearcher.html">IndexSearcher</a>,
|
||||
<a href=
|
||||
"api/analyzers-common/org/apache/lucene/analysis/standard/StandardAnalyzer.html">
|
||||
StandardAnalyzer</a> (which is used in the <a href=
|
||||
"api/demo/org/apache/lucene/demo/IndexFiles.html">IndexFiles</a> class as well)
|
||||
and a <a href=
|
||||
"api/core/org/apache/lucene/queryParser/QueryParser.html">QueryParser</a>. The
|
||||
query parser is constructed with an analyzer used to interpret your query text
|
||||
in the same way the documents are interpreted: finding word boundaries,
|
||||
downcasing, and removing useless words like 'a', 'an' and 'the'. The <a href=
|
||||
"api/core/org/apache/lucene/search/Query.html">Query</a> object contains the
|
||||
results from the <a href=
|
||||
"api/core/org/apache/lucene/queryParser/QueryParser.html">QueryParser</a> which
|
||||
is passed to the searcher. Note that it's also possible to programmatically
|
||||
construct a rich <a href=
|
||||
"api/core/org/apache/lucene/search/Query.html">Query</a> object without using
|
||||
the query parser. The query parser just enables decoding the <a href=
|
||||
"queryparsersyntax.html">Lucene query syntax</a> into the corresponding
|
||||
<a href="api/core/org/apache/lucene/search/Query.html">Query</a> object.</p>
|
||||
<p><span class="codefrag">SearchFiles</span> uses the <span class=
|
||||
"codefrag">IndexSearcher.search(query,n)</span> method that returns <a href=
|
||||
"api/core/org/apache/lucene/search/TopDocs.html">TopDocs</a> with max
|
||||
<span class="codefrag">n</span> hits. The results are printed in pages, sorted
|
||||
by score (i.e. relevance).</p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
After Width: | Height: | Size: 2.2 KiB |
|
@ -1,235 +1,10 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<meta content="Apache Forrest" name="Generator">
|
||||
<meta name="Forrest-version" content="0.9">
|
||||
<meta name="Forrest-skin-name" content="lucene">
|
||||
<title>
|
||||
Apache Lucene - Scoring
|
||||
</title>
|
||||
<link type="text/css" href="skin/basic.css" rel="stylesheet">
|
||||
<link media="screen" type="text/css" href="skin/screen.css" rel="stylesheet">
|
||||
<link media="print" type="text/css" href="skin/print.css" rel="stylesheet">
|
||||
<link type="text/css" href="skin/profile.css" rel="stylesheet">
|
||||
<script src="skin/getBlank.js" language="javascript" type="text/javascript"></script><script src="skin/getMenu.js" language="javascript" type="text/javascript"></script><script src="skin/fontsize.js" language="javascript" type="text/javascript"></script>
|
||||
<link rel="shortcut icon" href="images/favicon.ico">
|
||||
<title>Apache Lucene - Scoring</title>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<script type="text/javascript">ndeSetTextSize();</script>
|
||||
<div id="top">
|
||||
<!--+
|
||||
|breadtrail
|
||||
+-->
|
||||
<div class="breadtrail">
|
||||
<a href="http://www.apache.org/">Apache</a> > <a href="http://lucene.apache.org/">Lucene</a><script src="skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script>
|
||||
</div>
|
||||
<!--+
|
||||
|header
|
||||
+-->
|
||||
<div class="header">
|
||||
<!--+
|
||||
|start group logo
|
||||
+-->
|
||||
<div class="grouplogo">
|
||||
<a href="http://lucene.apache.org/"><img class="logoImage" alt="Lucene" src="http://www.apache.org/images/asf_logo_simple.png" title="Apache Lucene"></a>
|
||||
</div>
|
||||
<!--+
|
||||
|end group logo
|
||||
+-->
|
||||
<!--+
|
||||
|start Project Logo
|
||||
+-->
|
||||
<div class="projectlogo">
|
||||
<a href="http://lucene.apache.org/java/"><img class="logoImage" alt="Lucene" src="http://lucene.apache.org/images/lucene_green_300.gif" title="Apache Lucene is a high-performance, full-featured text search engine library written entirely in
|
||||
Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform."></a>
|
||||
</div>
|
||||
<!--+
|
||||
|end Project Logo
|
||||
+-->
|
||||
<!--+
|
||||
|start Search
|
||||
+-->
|
||||
<div class="searchbox">
|
||||
<form action="http://search.lucidimagination.com/p:lucene" method="get" class="roundtopsmall">
|
||||
<input onFocus="getBlank (this, 'Search the site with Lucene');" size="25" name="q" id="query" type="text" value="Search the site with Lucene">
|
||||
<input name="Search" value="Search" type="submit">
|
||||
</form>
|
||||
<div style="position: relative; top: -5px; left: -10px">Powered by <a href="http://www.lucidimagination.com" style="color: #033268">Lucid Imagination</a>
|
||||
</div>
|
||||
</div>
|
||||
<!--+
|
||||
|end search
|
||||
+-->
|
||||
<!--+
|
||||
|start Tabs
|
||||
+-->
|
||||
<ul id="tabs">
|
||||
<li class="current">
|
||||
<a class="selected" href="http://lucene.apache.org/java/docs/">Main</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="unselected" href="http://wiki.apache.org/lucene-java">Wiki</a>
|
||||
</li>
|
||||
<li class="current">
|
||||
<a class="selected" href="index.html">Lucene 4.0 Documentation</a>
|
||||
</li>
|
||||
</ul>
|
||||
<!--+
|
||||
|end Tabs
|
||||
+-->
|
||||
</div>
|
||||
</div>
|
||||
<div id="main">
|
||||
<div id="publishedStrip">
|
||||
<!--+
|
||||
|start Subtabs
|
||||
+-->
|
||||
<div id="level2tabs"></div>
|
||||
<!--+
|
||||
|end Endtabs
|
||||
+-->
|
||||
<script type="text/javascript"><!--
|
||||
document.write("Last Published: " + document.lastModified);
|
||||
// --></script>
|
||||
</div>
|
||||
<!--+
|
||||
|breadtrail
|
||||
+-->
|
||||
<div class="breadtrail">
|
||||
|
||||
|
||||
</div>
|
||||
<!--+
|
||||
|start Menu, mainarea
|
||||
+-->
|
||||
<!--+
|
||||
|start Menu
|
||||
+-->
|
||||
<div id="menu">
|
||||
<div onclick="SwitchMenu('menu_selected_1.1', 'skin/')" id="menu_selected_1.1Title" class="menutitle" style="background-image: url('skin/images/chapter_open.gif');">Documentation</div>
|
||||
<div id="menu_selected_1.1" class="selectedmenuitemgroup" style="display: block;">
|
||||
<div class="menuitem">
|
||||
<a href="index.html">Overview</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="changes/Changes.html">Changes</a>
|
||||
</div>
|
||||
<div onclick="SwitchMenu('menu_1.1.3', 'skin/')" id="menu_1.1.3Title" class="menutitle">Javadocs</div>
|
||||
<div id="menu_1.1.3" class="menuitemgroup">
|
||||
<div class="menuitem">
|
||||
<a href="api/core/index.html">Core</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-common/index.html">Analysis: Common</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-kuromoji/index.html">Analysis: Kuromoji (Japanese)</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-morfologik/index.html">Analysis: Morfologik (Polish)</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-phonetic/index.html">Analysis: Phonetic</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-smartcn/index.html">Analysis: Smart Chinese</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-stempel/index.html">Analysis: Stempel (Polish)</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/analyzers-uima/index.html">Analysis: UIMA</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/benchmark/index.html">Benchmark</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/demo/index.html">Demo</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/facet/index.html">Faceting</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/grouping/index.html">Grouping</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/highlighter/index.html">Highlighter</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/join/index.html">Join</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/memory/index.html">Memory</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/misc/index.html">Miscellaneous</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/queries/index.html">Queries</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/queryparser/index.html">Query Parsers</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/sandbox/index.html">Sandbox</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/spatial/index.html">Spatial</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/suggest/index.html">Suggest / Spellcheck</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="api/test-framework/index.html">Test Framework</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="systemrequirements.html">System Requirements</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="contributions.html">Contributions</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="http://wiki.apache.org/lucene-java/LuceneFAQ">FAQ</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="fileformats.html">File Formats</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="gettingstarted.html">Getting Started</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="queryparsersyntax.html">Query Syntax</a>
|
||||
</div>
|
||||
<div class="menupage">
|
||||
<div class="menupagetitle">Scoring</div>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="http://wiki.apache.org/lucene-java">Wiki</a>
|
||||
</div>
|
||||
<div class="menuitem">
|
||||
<a href="http://lucene.apache.org/privacy.html">Privacy Policy</a>
|
||||
</div>
|
||||
</div>
|
||||
<div id="credit"></div>
|
||||
<div id="roundbottom">
|
||||
<img style="display: none" class="corner" height="15" width="15" alt="" src="skin/images/rc-b-l-15-1body-2menu-3menu.png"></div>
|
||||
<!--+
|
||||
|alternative credits
|
||||
+-->
|
||||
<div id="credit2"></div>
|
||||
</div>
|
||||
<!--+
|
||||
|end Menu
|
||||
+-->
|
||||
<!--+
|
||||
|start content
|
||||
+-->
|
||||
<div id="content">
|
||||
<h1>
|
||||
Apache Lucene - Scoring
|
||||
</h1>
|
||||
<body>
|
||||
<h1>Apache Lucene - Scoring</h1>
|
||||
<div id="minitoc-area">
|
||||
<ul class="minitoc">
|
||||
<li>
|
||||
|
@ -297,10 +72,10 @@ document.write("Last Published: " + document.lastModified);
|
|||
<a href="http://wiki.apache.org/lucene-java/InformationRetrieval">Lucene Wiki IR references</a>.
|
||||
</p>
|
||||
<p>The rest of this document will cover <a href="#Scoring">Scoring</a> basics and how to change your
|
||||
<a href="api/core/org/apache/lucene/search/Similarity.html">Similarity</a>. Next it will cover ways you can
|
||||
<a href="core/org/apache/lucene/search/Similarity.html">Similarity</a>. Next it will cover ways you can
|
||||
customize the Lucene internals in <a href="#Changing your Scoring -- Expert Level">Changing your Scoring
|
||||
-- Expert Level</a> which gives details on implementing your own
|
||||
<a href="api/core/org/apache/lucene/search/Query.html">Query</a> class and related functionality. Finally, we
|
||||
<a href="core/org/apache/lucene/search/Query.html">Query</a> class and related functionality. Finally, we
|
||||
will finish up with some reference material in the <a href="#Appendix">Appendix</a>.
|
||||
</p>
|
||||
</div>
|
||||
|
@ -314,21 +89,21 @@ document.write("Last Published: " + document.lastModified);
|
|||
and the Lucene
|
||||
<a href="fileformats.html">file formats</a>
|
||||
before continuing on with this section.) It is also assumed that readers know how to use the
|
||||
<a href="api/core/org/apache/lucene/search/Searcher.html#explain(Query query, int doc)">Searcher.explain(Query query, int doc)</a> functionality,
|
||||
<a href="core/org/apache/lucene/search/Searcher.html#explain(Query query, int doc)">Searcher.explain(Query query, int doc)</a> functionality,
|
||||
which can go a long way in informing why a score is returned.
|
||||
</p>
|
||||
<a name="N10059"></a><a name="Fields and Documents"></a>
|
||||
<h3 class="boxed">Fields and Documents</h3>
|
||||
<p>In Lucene, the objects we are scoring are
|
||||
<a href="api/core/org/apache/lucene/document/Document.html">Documents</a>. A Document is a collection
|
||||
<a href="core/org/apache/lucene/document/Document.html">Documents</a>. A Document is a collection
|
||||
of
|
||||
<a href="api/core/org/apache/lucene/document/Field.html">Fields</a>. Each Field has semantics about how
|
||||
<a href="core/org/apache/lucene/document/Field.html">Fields</a>. Each Field has semantics about how
|
||||
it is created and stored (i.e. tokenized, untokenized, raw data, compressed, etc.) It is important to
|
||||
note that Lucene scoring works on Fields and then combines the results to return Documents. This is
|
||||
important because two Documents with the exact same content, but one having the content in two Fields
|
||||
and the other in one Field will return different scores for the same query due to length normalization
|
||||
(assumming the
|
||||
<a href="api/core/org/apache/lucene/search/DefaultSimilarity.html">DefaultSimilarity</a>
|
||||
<a href="core/org/apache/lucene/search/DefaultSimilarity.html">DefaultSimilarity</a>
|
||||
on the Fields).
|
||||
</p>
|
||||
<a name="N1006E"></a><a name="Score Boosting"></a>
|
||||
|
@ -339,21 +114,21 @@ document.write("Last Published: " + document.lastModified);
|
|||
<li>
|
||||
<b>Document level boosting</b>
|
||||
- while indexing - by calling
|
||||
<a href="api/core/org/apache/lucene/document/Document.html#setBoost(float)">document.setBoost()</a>
|
||||
<a href="core/org/apache/lucene/document/Document.html#setBoost(float)">document.setBoost()</a>
|
||||
before a document is added to the index.
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<b>Document's Field level boosting</b>
|
||||
- while indexing - by calling
|
||||
<a href="api/core/org/apache/lucene/document/Fieldable.html#setBoost(float)">field.setBoost()</a>
|
||||
<a href="core/org/apache/lucene/document/Fieldable.html#setBoost(float)">field.setBoost()</a>
|
||||
before adding a field to the document (and before adding the document to the index).
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<b>Query level boosting</b>
|
||||
- during search, by setting a boost on a query clause, calling
|
||||
<a href="api/core/org/apache/lucene/search/Query.html#setBoost(float)">Query.setBoost()</a>.
|
||||
<a href="core/org/apache/lucene/search/Query.html#setBoost(float)">Query.setBoost()</a>.
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
|
@ -374,52 +149,52 @@ document.write("Last Published: " + document.lastModified);
|
|||
<p>This composition of 1-byte representation of norms
|
||||
(that is, indexing time multiplication of field boosts & doc boost & field-length-norm)
|
||||
is nicely described in
|
||||
<a href="api/core/org/apache/lucene/document/Fieldable.html#setBoost(float)">Fieldable.setBoost()</a>.
|
||||
<a href="core/org/apache/lucene/document/Fieldable.html#setBoost(float)">Fieldable.setBoost()</a>.
|
||||
</p>
|
||||
<p>Encoding and decoding of the resulted float norm in a single byte are done by the
|
||||
static methods of the class Similarity:
|
||||
<a href="api/core/org/apache/lucene/search/Similarity.html#encodeNorm(float)">encodeNorm()</a> and
|
||||
<a href="api/core/org/apache/lucene/search/Similarity.html#decodeNorm(byte)">decodeNorm()</a>.
|
||||
<a href="core/org/apache/lucene/search/Similarity.html#encodeNorm(float)">encodeNorm()</a> and
|
||||
<a href="core/org/apache/lucene/search/Similarity.html#decodeNorm(byte)">decodeNorm()</a>.
|
||||
Due to loss of precision, it is not guaranteed that decode(encode(x)) = x,
|
||||
e.g. decode(encode(0.89)) = 0.75.
|
||||
At scoring (search) time, this norm is brought into the score of document
|
||||
as <b>norm(t, d)</b>, as shown by the formula in
|
||||
<a href="api/core/org/apache/lucene/search/Similarity.html">Similarity</a>.
|
||||
<a href="core/org/apache/lucene/search/Similarity.html">Similarity</a>.
|
||||
</p>
|
||||
<a name="N100B1"></a><a name="Understanding the Scoring Formula"></a>
|
||||
<h3 class="boxed">Understanding the Scoring Formula</h3>
|
||||
<p>
|
||||
This scoring formula is described in the
|
||||
<a href="api/core/org/apache/lucene/search/Similarity.html">Similarity</a> class. Please take the time to study this formula, as it contains much of the information about how the
|
||||
<a href="core/org/apache/lucene/search/Similarity.html">Similarity</a> class. Please take the time to study this formula, as it contains much of the information about how the
|
||||
basics of Lucene scoring work, especially the
|
||||
<a href="api/core/org/apache/lucene/search/TermQuery.html">TermQuery</a>.
|
||||
<a href="core/org/apache/lucene/search/TermQuery.html">TermQuery</a>.
|
||||
</p>
|
||||
<a name="N100C2"></a><a name="The Big Picture"></a>
|
||||
<h3 class="boxed">The Big Picture</h3>
|
||||
<p>OK, so the tf-idf formula and the
|
||||
<a href="api/core/org/apache/lucene/search/Similarity.html">Similarity</a>
|
||||
<a href="core/org/apache/lucene/search/Similarity.html">Similarity</a>
|
||||
is great for understanding the basics of Lucene scoring, but what really drives Lucene scoring are
|
||||
the use and interactions between the
|
||||
<a href="api/core/org/apache/lucene/search/Query.html">Query</a> classes, as created by each application in
|
||||
<a href="core/org/apache/lucene/search/Query.html">Query</a> classes, as created by each application in
|
||||
response to a user's information need.
|
||||
</p>
|
||||
<p>In this regard, Lucene offers a wide variety of <a href="api/core/org/apache/lucene/search/Query.html">Query</a> implementations, most of which are in the
|
||||
<a href="api/core/org/apache/lucene/search/package-summary.html">org.apache.lucene.search</a> package.
|
||||
<p>In this regard, Lucene offers a wide variety of <a href="core/org/apache/lucene/search/Query.html">Query</a> implementations, most of which are in the
|
||||
<a href="core/org/apache/lucene/search/package-summary.html">org.apache.lucene.search</a> package.
|
||||
These implementations can be combined in a wide variety of ways to provide complex querying
|
||||
capabilities along with
|
||||
information about where matches took place in the document collection. The <a href="#Query Classes">Query</a>
|
||||
section below
|
||||
highlights some of the more important Query classes. For information on the other ones, see the
|
||||
<a href="api/core/org/apache/lucene/search/package-summary.html">package summary</a>. For details on implementing
|
||||
<a href="core/org/apache/lucene/search/package-summary.html">package summary</a>. For details on implementing
|
||||
your own Query class, see <a href="#Changing your Scoring -- Expert Level">Changing your Scoring --
|
||||
Expert Level</a> below.
|
||||
</p>
|
||||
<p>Once a Query has been created and submitted to the
|
||||
<a href="api/core/org/apache/lucene/search/IndexSearcher.html">IndexSearcher</a>, the scoring process
|
||||
<a href="core/org/apache/lucene/search/IndexSearcher.html">IndexSearcher</a>, the scoring process
|
||||
begins. (See the <a href="#Appendix">Appendix</a> Algorithm section for more notes on the process.) After some infrastructure setup,
|
||||
control finally passes to the <a href="api/core/org/apache/lucene/search/Weight.html">Weight</a> implementation and its
|
||||
<a href="api/core/org/apache/lucene/search/Scorer.html">Scorer</a> instance. In the case of any type of
|
||||
<a href="api/core/org/apache/lucene/search/BooleanQuery.html">BooleanQuery</a>, scoring is handled by the
|
||||
control finally passes to the <a href="core/org/apache/lucene/search/Weight.html">Weight</a> implementation and its
|
||||
<a href="core/org/apache/lucene/search/Scorer.html">Scorer</a> instance. In the case of any type of
|
||||
<a href="core/org/apache/lucene/search/BooleanQuery.html">BooleanQuery</a>, scoring is handled by the
|
||||
<a href="http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/search/BooleanQuery.java?view=log">BooleanWeight2</a>
|
||||
(link goes to ViewVC BooleanQuery java code which contains the BooleanWeight2 inner class) or
|
||||
<a href="http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/search/BooleanQuery.java?view=log">BooleanWeight</a>
|
||||
|
@ -429,7 +204,7 @@ document.write("Last Published: " + document.lastModified);
|
|||
Assuming the use of the BooleanWeight2, a
|
||||
BooleanScorer2 is created by bringing together
|
||||
all of the
|
||||
<a href="api/core/org/apache/lucene/search/Scorer.html">Scorer</a>s from the sub-clauses of the BooleanQuery.
|
||||
<a href="core/org/apache/lucene/search/Scorer.html">Scorer</a>s from the sub-clauses of the BooleanQuery.
|
||||
When the BooleanScorer2 is asked to score it delegates its work to an internal Scorer based on the type
|
||||
of clauses in the Query. This internal Scorer essentially loops over the sub scorers and sums the scores
|
||||
provided by each scorer while factoring in the coord() score.
|
||||
|
@ -438,14 +213,14 @@ document.write("Last Published: " + document.lastModified);
|
|||
<a name="N10112"></a><a name="Query Classes"></a>
|
||||
<h3 class="boxed">Query Classes</h3>
|
||||
<p>For information on the Query Classes, refer to the
|
||||
<a href="api/core/org/apache/lucene/search/package-summary.html#query">search package javadocs</a>
|
||||
<a href="core/org/apache/lucene/search/package-summary.html#query">search package javadocs</a>
|
||||
|
||||
</p>
|
||||
<a name="N1011F"></a><a name="Changing Similarity"></a>
|
||||
<h3 class="boxed">Changing Similarity</h3>
|
||||
<p>One of the ways of changing the scoring characteristics of Lucene is to change the similarity factors. For information on
|
||||
how to do this, see the
|
||||
<a href="api/core/org/apache/lucene/search/package-summary.html#changingSimilarity">search package javadocs</a>
|
||||
<a href="core/org/apache/lucene/search/package-summary.html#changingSimilarity">search package javadocs</a>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
|
@ -454,7 +229,7 @@ document.write("Last Published: " + document.lastModified);
|
|||
<div class="section">
|
||||
<p>At a much deeper level, one can affect scoring by implementing their own Query classes (and related scoring classes.) To learn more
|
||||
about how to do this, refer to the
|
||||
<a href="api/core/org/apache/lucene/search/package-summary.html#scoring">search package javadocs</a>
|
||||
<a href="core/org/apache/lucene/search/package-summary.html#scoring">search package javadocs</a>
|
||||
|
||||
</p>
|
||||
</div>
|
||||
|
@ -468,19 +243,19 @@ document.write("Last Published: " + document.lastModified);
|
|||
<p>This section is mostly notes on stepping through the Scoring process and serves as
|
||||
fertilizer for the earlier sections.</p>
|
||||
<p>In the typical search application, a
|
||||
<a href="api/core/org/apache/lucene/search/Query.html">Query</a>
|
||||
<a href="core/org/apache/lucene/search/Query.html">Query</a>
|
||||
is passed to the
|
||||
<a href="api/core/org/apache/lucene/search/Searcher.html">Searcher</a>
|
||||
<a href="core/org/apache/lucene/search/Searcher.html">Searcher</a>
|
||||
, beginning the scoring process.
|
||||
</p>
|
||||
<p>Once inside the Searcher, a
|
||||
<a href="api/core/org/apache/lucene/search/Collector.html">Collector</a>
|
||||
<a href="core/org/apache/lucene/search/Collector.html">Collector</a>
|
||||
is used for the scoring and sorting of the search results.
|
||||
These important objects are involved in a search:
|
||||
<ol>
|
||||
|
||||
<li>The
|
||||
<a href="api/core/org/apache/lucene/search/Weight.html">Weight</a>
|
||||
<a href="core/org/apache/lucene/search/Weight.html">Weight</a>
|
||||
object of the Query. The Weight object is an internal representation of the Query that
|
||||
allows the Query to be reused by the Searcher.
|
||||
</li>
|
||||
|
@ -488,12 +263,12 @@ document.write("Last Published: " + document.lastModified);
|
|||
<li>The Searcher that initiated the call.</li>
|
||||
|
||||
<li>A
|
||||
<a href="api/core/org/apache/lucene/search/Filter.html">Filter</a>
|
||||
<a href="core/org/apache/lucene/search/Filter.html">Filter</a>
|
||||
for limiting the result set. Note, the Filter may be null.
|
||||
</li>
|
||||
|
||||
<li>A
|
||||
<a href="api/core/org/apache/lucene/search/Sort.html">Sort</a>
|
||||
<a href="core/org/apache/lucene/search/Sort.html">Sort</a>
|
||||
object for specifying how to sort the results if the standard score based sort method is not
|
||||
desired.
|
||||
</li>
|
||||
|
@ -504,44 +279,44 @@ document.write("Last Published: " + document.lastModified);
|
|||
<p> Assuming we are not sorting (since sorting doesn't
|
||||
effect the raw Lucene score),
|
||||
we call one of the search methods of the Searcher, passing in the
|
||||
<a href="api/core/org/apache/lucene/search/Weight.html">Weight</a>
|
||||
<a href="core/org/apache/lucene/search/Weight.html">Weight</a>
|
||||
object created by Searcher.createWeight(Query),
|
||||
<a href="api/core/org/apache/lucene/search/Filter.html">Filter</a>
|
||||
<a href="core/org/apache/lucene/search/Filter.html">Filter</a>
|
||||
and the number of results we want. This method
|
||||
returns a
|
||||
<a href="api/core/org/apache/lucene/search/TopDocs.html">TopDocs</a>
|
||||
<a href="core/org/apache/lucene/search/TopDocs.html">TopDocs</a>
|
||||
object, which is an internal collection of search results.
|
||||
The Searcher creates a
|
||||
<a href="api/core/org/apache/lucene/search/TopScoreDocCollector.html">TopScoreDocCollector</a>
|
||||
<a href="core/org/apache/lucene/search/TopScoreDocCollector.html">TopScoreDocCollector</a>
|
||||
and passes it along with the Weight, Filter to another expert search method (for more on the
|
||||
<a href="api/core/org/apache/lucene/search/Collector.html">Collector</a>
|
||||
<a href="core/org/apache/lucene/search/Collector.html">Collector</a>
|
||||
mechanism, see
|
||||
<a href="api/core/org/apache/lucene/search/Searcher.html">Searcher</a>
|
||||
<a href="core/org/apache/lucene/search/Searcher.html">Searcher</a>
|
||||
.) The TopDocCollector uses a
|
||||
<a href="api/core/org/apache/lucene/util/PriorityQueue.html">PriorityQueue</a>
|
||||
<a href="core/org/apache/lucene/util/PriorityQueue.html">PriorityQueue</a>
|
||||
to collect the top results for the search.
|
||||
</p>
|
||||
<p>If a Filter is being used, some initial setup is done to determine which docs to include. Otherwise,
|
||||
we ask the Weight for
|
||||
a
|
||||
<a href="api/core/org/apache/lucene/search/Scorer.html">Scorer</a>
|
||||
<a href="core/org/apache/lucene/search/Scorer.html">Scorer</a>
|
||||
for the
|
||||
<a href="api/core/org/apache/lucene/index/IndexReader.html">IndexReader</a>
|
||||
<a href="core/org/apache/lucene/index/IndexReader.html">IndexReader</a>
|
||||
of the current searcher and we proceed by
|
||||
calling the score method on the
|
||||
<a href="api/core/org/apache/lucene/search/Scorer.html">Scorer</a>
|
||||
<a href="core/org/apache/lucene/search/Scorer.html">Scorer</a>
|
||||
.
|
||||
</p>
|
||||
<p>At last, we are actually going to score some documents. The score method takes in the Collector
|
||||
(most likely the TopScoreDocCollector or TopFieldCollector) and does its business.
|
||||
Of course, here is where things get involved. The
|
||||
<a href="api/core/org/apache/lucene/search/Scorer.html">Scorer</a>
|
||||
<a href="core/org/apache/lucene/search/Scorer.html">Scorer</a>
|
||||
that is returned by the
|
||||
<a href="api/core/org/apache/lucene/search/Weight.html">Weight</a>
|
||||
<a href="core/org/apache/lucene/search/Weight.html">Weight</a>
|
||||
object depends on what type of Query was submitted. In most real world applications with multiple
|
||||
query terms,
|
||||
the
|
||||
<a href="api/core/org/apache/lucene/search/Scorer.html">Scorer</a>
|
||||
<a href="core/org/apache/lucene/search/Scorer.html">Scorer</a>
|
||||
is going to be a
|
||||
<a href="http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/search/BooleanScorer2.java?view=log">BooleanScorer2</a>
|
||||
(see the section on customizing your scoring for info on changing this.)
|
||||
|
@ -558,42 +333,6 @@ document.write("Last Published: " + document.lastModified);
|
|||
your internal Scorer is most likely a DisjunctionSumScorer, which essentially combines the scorers
|
||||
from the sub scorers of the OR'd terms.</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<!--+
|
||||
|end content
|
||||
+-->
|
||||
<div class="clearboth"> </div>
|
||||
</div>
|
||||
<div id="footer">
|
||||
<!--+
|
||||
|start bottomstrip
|
||||
+-->
|
||||
<div class="lastmodified">
|
||||
<script type="text/javascript"><!--
|
||||
document.write("Last Published: " + document.lastModified);
|
||||
// --></script>
|
||||
</div>
|
||||
<div class="copyright">
|
||||
Copyright ©
|
||||
2006 <a href="http://www.apache.org/licenses/">The Apache Software Foundation.</a>
|
||||
</div>
|
||||
<!--+
|
||||
|end bottomstrip
|
||||
+-->
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
|
||||
var _gaq = _gaq || [];
|
||||
_gaq.push(['_setAccount', 'UA-94576-12']);
|
||||
_gaq.push(['_trackPageview']);
|
||||
|
||||
(function() {
|
||||
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
|
||||
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
|
||||
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
|
||||
})();
|
||||
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -1,57 +0,0 @@
|
|||
# Copyright 2002-2005 The Apache Software Foundation or its licensors,
|
||||
# as applicable.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
#=======================================================================
|
||||
# CatalogManager.properties for Catalog Entity Resolver.
|
||||
#
|
||||
# This is the default properties file for your project.
|
||||
# This facilitates local configuration of application-specific catalogs.
|
||||
# If you have defined any local catalogs, then they will be loaded
|
||||
# before Forrest's core catalogs.
|
||||
#
|
||||
# See the Apache Forrest documentation:
|
||||
# http://forrest.apache.org/docs/your-project.html
|
||||
# http://forrest.apache.org/docs/validation.html
|
||||
|
||||
# verbosity:
|
||||
# The level of messages for status/debug (messages go to standard output).
|
||||
# The setting here is for your own local catalogs.
|
||||
# The verbosity of Forrest's core catalogs is controlled via
|
||||
# main/webapp/WEB-INF/cocoon.xconf
|
||||
#
|
||||
# The following messages are provided ...
|
||||
# 0 = none
|
||||
# 1 = ? (... not sure yet)
|
||||
# 2 = 1+, Loading catalog, Resolved public, Resolved system
|
||||
# 3 = 2+, Catalog does not exist, resolvePublic, resolveSystem
|
||||
# 10 = 3+, List all catalog entries when loading a catalog
|
||||
# (Cocoon also logs the "Resolved public" messages.)
|
||||
verbosity=1
|
||||
|
||||
# catalogs ... list of additional catalogs to load
|
||||
# (Note that Apache Forrest will automatically load its own default catalog
|
||||
# from main/webapp/resources/schema/catalog.xcat)
|
||||
# Use either full pathnames or relative pathnames.
|
||||
# pathname separator is always semi-colon (;) regardless of operating system
|
||||
# directory separator is always slash (/) regardless of operating system
|
||||
catalogs=../resources/schema/catalog.xcat
|
||||
|
||||
# relative-catalogs
|
||||
# If false, relative catalog URIs are made absolute with respect to the
|
||||
# base URI of the CatalogManager.properties file. This setting only
|
||||
# applies to catalog URIs obtained from the catalogs property in the
|
||||
# CatalogManager.properties file
|
||||
# Example: relative-catalogs=[yes|no]
|
||||
relative-catalogs=no
|
|
@ -1,322 +0,0 @@
|
|||
<?xml version="1.0"?>
|
||||
<!--
|
||||
Copyright 2002-2004 The Apache Software Foundation or its licensors,
|
||||
as applicable.
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<!--+
|
||||
| This is the Apache Cocoon command line configuration file.
|
||||
| Here you give the command line interface details of where
|
||||
| to find various aspects of your Cocoon installation.
|
||||
|
|
||||
| If you wish, you can also use this file to specify the URIs
|
||||
| that you wish to generate.
|
||||
|
|
||||
| The current configuration information in this file is for
|
||||
| building the Cocoon documentation. Therefore, all links here
|
||||
| are relative to the build context dir, which, in the build.xml
|
||||
| file, is set to ${build.context}
|
||||
|
|
||||
| Options:
|
||||
| verbose: increase amount of information presented
|
||||
| to standard output (default: false)
|
||||
| follow-links: whether linked pages should also be
|
||||
| generated (default: true)
|
||||
| precompile-only: precompile sitemaps and XSP pages, but
|
||||
| do not generate any pages (default: false)
|
||||
| confirm-extensions: check the mime type for the generated page
|
||||
| and adjust filename and links extensions
|
||||
| to match the mime type
|
||||
| (e.g. text/html->.html)
|
||||
|
|
||||
| Note: Whilst using an xconf file to configure the Cocoon
|
||||
| Command Line gives access to more features, the use of
|
||||
| command line parameters is more stable, as there are
|
||||
| currently plans to improve the xconf format to allow
|
||||
| greater flexibility. If you require a stable and
|
||||
| consistent method for accessing the CLI, it is recommended
|
||||
| that you use the command line parameters to configure
|
||||
| the CLI. See documentation at:
|
||||
| http://cocoon.apache.org/2.1/userdocs/offline/
|
||||
| http://wiki.apache.org/cocoon/CommandLine
|
||||
|
|
||||
+-->
|
||||
|
||||
<cocoon verbose="true"
|
||||
follow-links="true"
|
||||
precompile-only="false"
|
||||
confirm-extensions="false">
|
||||
|
||||
<!--+
|
||||
| The context directory is usually the webapp directory
|
||||
| containing the sitemap.xmap file.
|
||||
|
|
||||
| The config file is the cocoon.xconf file.
|
||||
|
|
||||
| The work directory is used by Cocoon to store temporary
|
||||
| files and cache files.
|
||||
|
|
||||
| The destination directory is where generated pages will
|
||||
| be written (assuming the 'simple' mapper is used, see
|
||||
| below)
|
||||
+-->
|
||||
<context-dir>.</context-dir>
|
||||
<config-file>WEB-INF/cocoon.xconf</config-file>
|
||||
<work-dir>../tmp/cocoon-work</work-dir>
|
||||
<dest-dir>../site</dest-dir>
|
||||
|
||||
<!--+
|
||||
| A checksum file can be used to store checksums for pages
|
||||
| as they are generated. When the site is next generated,
|
||||
| files will not be written if their checksum has not changed.
|
||||
| This means that it will be easier to detect which files
|
||||
| need to be uploaded to a server, using the timestamp.
|
||||
+-->
|
||||
<!-- <checksums-uri>build/work/checksums</checksums-uri>-->
|
||||
|
||||
<!--+
|
||||
| Broken link reporting options:
|
||||
| Report into a text file, one link per line:
|
||||
| <broken-links type="text" report="filename"/>
|
||||
| Report into an XML file:
|
||||
| <broken-links type="xml" report="filename"/>
|
||||
| Ignore broken links (default):
|
||||
| <broken-links type="none"/>
|
||||
|
|
||||
| Two attributes to this node specify whether a page should
|
||||
| be generated when an error has occured. 'generate' specifies
|
||||
| whether a page should be generated (default: true) and
|
||||
| extension specifies an extension that should be appended
|
||||
| to the generated page's filename (default: none)
|
||||
|
|
||||
| Using this, a quick scan through the destination directory
|
||||
| will show broken links, by their filename extension.
|
||||
+-->
|
||||
<broken-links type="xml"
|
||||
file="../brokenlinks.xml"
|
||||
generate="false"
|
||||
extension=".error"
|
||||
show-referrers="true"/>
|
||||
|
||||
<!--+
|
||||
| Load classes at startup. This is necessary for generating
|
||||
| from sites that use SQL databases and JDBC.
|
||||
| The <load-class> element can be repeated if multiple classes
|
||||
| are needed.
|
||||
+-->
|
||||
<!--
|
||||
<load-class>org.firebirdsql.jdbc.Driver</load-class>
|
||||
-->
|
||||
|
||||
<!--+
|
||||
| Configures logging.
|
||||
| The 'log-kit' parameter specifies the location of the log kit
|
||||
| configuration file (usually called logkit.xconf.
|
||||
|
|
||||
| Logger specifies the logging category (for all logging prior
|
||||
| to other Cocoon logging categories taking over)
|
||||
|
|
||||
| Available log levels are:
|
||||
| DEBUG: prints all level of log messages.
|
||||
| INFO: prints all level of log messages except DEBUG
|
||||
| ones.
|
||||
| WARN: prints all level of log messages except DEBUG
|
||||
| and INFO ones.
|
||||
| ERROR: prints all level of log messages except DEBUG,
|
||||
| INFO and WARN ones.
|
||||
| FATAL_ERROR: prints only log messages of this level
|
||||
+-->
|
||||
<!-- <logging log-kit="WEB-INF/logkit.xconf" logger="cli" level="ERROR" /> -->
|
||||
|
||||
<!--+
|
||||
| Specifies the filename to be appended to URIs that
|
||||
| refer to a directory (i.e. end with a forward slash).
|
||||
+-->
|
||||
<default-filename>index.html</default-filename>
|
||||
|
||||
<!--+
|
||||
| Specifies a user agent string to the sitemap when
|
||||
| generating the site.
|
||||
|
|
||||
| A generic term for a web browser is "user agent". Any
|
||||
| user agent, when connecting to a web server, will provide
|
||||
| a string to identify itself (e.g. as Internet Explorer or
|
||||
| Mozilla). It is possible to have Cocoon serve different
|
||||
| content depending upon the user agent string provided by
|
||||
| the browser. If your site does this, then you may want to
|
||||
| use this <user-agent> entry to provide a 'fake' user agent
|
||||
| to Cocoon, so that it generates the correct version of your
|
||||
| site.
|
||||
|
|
||||
| For most sites, this can be ignored.
|
||||
+-->
|
||||
<!--
|
||||
<user-agent>Cocoon Command Line Environment 2.1</user-agent>
|
||||
-->
|
||||
|
||||
<!--+
|
||||
| Specifies an accept string to the sitemap when generating
|
||||
| the site.
|
||||
| User agents can specify to an HTTP server what types of content
|
||||
| (by mime-type) they are able to receive. E.g. a browser may be
|
||||
| able to handle jpegs, but not pngs. The HTTP accept header
|
||||
| allows the server to take the browser's capabilities into account,
|
||||
| and only send back content that it can handle.
|
||||
|
|
||||
| For most sites, this can be ignored.
|
||||
+-->
|
||||
|
||||
<accept>*/*</accept>
|
||||
|
||||
<!--+
|
||||
| Specifies which URIs should be included or excluded, according
|
||||
| to wildcard patterns.
|
||||
|
|
||||
| These includes/excludes are only relevant when you are following
|
||||
| links. A link URI must match an include pattern (if one is given)
|
||||
| and not match an exclude pattern, if it is to be followed by
|
||||
| Cocoon. It can be useful, for example, where there are links in
|
||||
| your site to pages that are not generated by Cocoon, such as
|
||||
| references to api-documentation.
|
||||
|
|
||||
| By default, all URIs are included. If both include and exclude
|
||||
| patterns are specified, a URI is first checked against the
|
||||
| include patterns, and then against the exclude patterns.
|
||||
|
|
||||
| Multiple patterns can be given, using muliple include or exclude
|
||||
| nodes.
|
||||
|
|
||||
| The order of the elements is not significant, as only the first
|
||||
| successful match of each category is used.
|
||||
|
|
||||
| Currently, only the complete source URI can be matched (including
|
||||
| any URI prefix). Future plans include destination URI matching
|
||||
| and regexp matching. If you have requirements for these, contact
|
||||
| dev@cocoon.apache.org.
|
||||
+-->
|
||||
|
||||
<exclude pattern="**/"/>
|
||||
<exclude pattern="**apidocs**"/>
|
||||
<exclude pattern="api/**"/>
|
||||
<exclude pattern="**/api/contrib**"/>
|
||||
<exclude pattern="**changes/Contrib-Changes.html"/>
|
||||
<exclude pattern="**changes/Changes.html"/>
|
||||
<!--
|
||||
This is a workaround for FOR-284 "link rewriting broken when
|
||||
linking to xml source views which contain site: links".
|
||||
See the explanation there and in declare-broken-site-links.xsl
|
||||
-->
|
||||
<exclude pattern="site:**"/>
|
||||
<exclude pattern="ext:**"/>
|
||||
<exclude pattern="**/site:**"/>
|
||||
<exclude pattern="**/ext:**"/>
|
||||
|
||||
<!-- Exclude tokens used in URLs to ASF mirrors (interpreted by a CGI) -->
|
||||
<exclude pattern="[preferred]/**"/>
|
||||
<exclude pattern="[location]"/>
|
||||
|
||||
<!-- <include-links extension=".html"/>-->
|
||||
|
||||
<!--+
|
||||
| <uri> nodes specify the URIs that should be generated, and
|
||||
| where required, what should be done with the generated pages.
|
||||
| They describe the way the URI of the generated file is created
|
||||
| from the source page's URI. There are three ways that a generated
|
||||
| file URI can be created: append, replace and insert.
|
||||
|
|
||||
| The "type" attribute specifies one of (append|replace|insert):
|
||||
|
|
||||
| append:
|
||||
| Append the generated page's URI to the end of the source URI:
|
||||
|
|
||||
| <uri type="append" src-prefix="documents/" src="index.html"
|
||||
| dest="build/dest/"/>
|
||||
|
|
||||
| This means that
|
||||
| (1) the "documents/index.html" page is generated
|
||||
| (2) the file will be written to "build/dest/documents/index.html"
|
||||
|
|
||||
| replace:
|
||||
| Completely ignore the generated page's URI - just
|
||||
| use the destination URI:
|
||||
|
|
||||
| <uri type="replace" src-prefix="documents/" src="index.html"
|
||||
| dest="build/dest/docs.html"/>
|
||||
|
|
||||
| This means that
|
||||
| (1) the "documents/index.html" page is generated
|
||||
| (2) the result is written to "build/dest/docs.html"
|
||||
| (3) this works only for "single" pages - and not when links
|
||||
| are followed
|
||||
|
|
||||
| insert:
|
||||
| Insert generated page's URI into the destination
|
||||
| URI at the point marked with a * (example uses fictional
|
||||
| zip protocol)
|
||||
|
|
||||
| <uri type="insert" src-prefix="documents/" src="index.html"
|
||||
| dest="zip://*.zip/page.html"/>
|
||||
|
|
||||
| This means that
|
||||
| (1)
|
||||
|
|
||||
| In any of these scenarios, if the dest attribute is omitted,
|
||||
| the value provided globally using the <dest-dir> node will
|
||||
| be used instead.
|
||||
+-->
|
||||
<!--
|
||||
<uri type="replace"
|
||||
src-prefix="samples/"
|
||||
src="hello-world/hello.html"
|
||||
dest="build/dest/hello-world.html"/>
|
||||
-->
|
||||
|
||||
<!--+
|
||||
| <uri> nodes can be grouped together in a <uris> node. This
|
||||
| enables a group of URIs to share properties. The following
|
||||
| properties can be set for a group of URIs:
|
||||
| * follow-links: should pages be crawled for links
|
||||
| * confirm-extensions: should file extensions be checked
|
||||
| for the correct mime type
|
||||
| * src-prefix: all source URIs should be
|
||||
| pre-pended with this prefix before
|
||||
| generation. The prefix is not
|
||||
| included when calculating the
|
||||
| destination URI
|
||||
| * dest: the base destination URI to be
|
||||
| shared by all pages in this group
|
||||
| * type: the method to be used to calculate
|
||||
| the destination URI. See above
|
||||
| section on <uri> node for details.
|
||||
|
|
||||
| Each <uris> node can have a name attribute. When a name
|
||||
| attribute has been specified, the -n switch on the command
|
||||
| line can be used to tell Cocoon to only process the URIs
|
||||
| within this URI group. When no -n switch is given, all
|
||||
| <uris> nodes are processed. Thus, one xconf file can be
|
||||
| used to manage multiple sites.
|
||||
+-->
|
||||
<!--
|
||||
<uris name="mirrors" follow-links="false">
|
||||
<uri type="append" src="mirrors.html"/>
|
||||
</uris>
|
||||
-->
|
||||
|
||||
<!--+
|
||||
| File containing URIs (plain text, one per line).
|
||||
+-->
|
||||
<!--
|
||||
<uri-file>uris.txt</uri-file>
|
||||
-->
|
||||
</cocoon>
|
|
@ -1,3 +0,0 @@
|
|||
#Forrest generates UTF-8 by default, but these httpd servers are
|
||||
#ignoring the meta http-equiv charset tags
|
||||
AddDefaultCharset off
|
|
@ -1,350 +0,0 @@
|
|||
<?xml version="1.0"?>
|
||||
<document>
|
||||
<header>
|
||||
<title>
|
||||
Apache Lucene - Contributions
|
||||
</title>
|
||||
</header>
|
||||
<properties>
|
||||
<author email="carlson@apache.org">
|
||||
Peter Carlson
|
||||
</author>
|
||||
</properties>
|
||||
<body>
|
||||
<section id="Overview">
|
||||
<title>Overview</title>
|
||||
<p>This page lists external Lucene resources. If you have
|
||||
written something that should be included, please post all
|
||||
relevant information to one of the mailing lists. Nothing
|
||||
listed here is directly supported by the Lucene
|
||||
developers, so if you encounter any problems with any of
|
||||
this software, please use the author's contact information
|
||||
to get help.</p>
|
||||
<p>If you are looking for information on contributing patches or other improvements to Lucene, see
|
||||
<a href="http://wiki.apache.org/lucene-java/HowToContribute">How To Contribute</a> on the Lucene Wiki.</p>
|
||||
</section>
|
||||
|
||||
<section id="Lucene Tools">
|
||||
<title>Lucene Tools</title>
|
||||
<p>
|
||||
Software that works with Lucene indices.
|
||||
</p>
|
||||
<section id="Luke"><title>Luke</title>
|
||||
<table>
|
||||
<tr>
|
||||
<th width="%1">
|
||||
URL
|
||||
</th>
|
||||
<td>
|
||||
<a href="http://www.getopt.org/luke/">
|
||||
http://www.getopt.org/luke/
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th width="%1">
|
||||
author
|
||||
</th>
|
||||
<td>
|
||||
Andrzej Bialecki
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</section>
|
||||
<section id="LIMO (Lucene Index Monitor)">
|
||||
<title>LIMO (Lucene Index Monitor)</title>
|
||||
<table>
|
||||
<tr>
|
||||
<th width="%1">
|
||||
URL
|
||||
</th>
|
||||
<td>
|
||||
<a href="http://limo.sf.net/">
|
||||
http://limo.sf.net/
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th width="%1">
|
||||
author
|
||||
</th>
|
||||
<td>
|
||||
Julien Nioche
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</section>
|
||||
</section>
|
||||
|
||||
<section id="Lucene Document Converters">
|
||||
<title>Lucene Document Converters</title>
|
||||
<p>
|
||||
Lucene requires information you want to index to be
|
||||
converted into a Document class. Here are
|
||||
contributions for various solutions that convert different
|
||||
content types to Lucene's Document classes.
|
||||
</p>
|
||||
<section id="XML Document #1">
|
||||
<title>XML Document #1</title>
|
||||
<table>
|
||||
<tr>
|
||||
<th width="%1">
|
||||
URL
|
||||
</th>
|
||||
<td>
|
||||
<a href="http://marc.theaimsgroup.com/?l=lucene-dev&m=100723333506246&w=2">
|
||||
http://marc.theaimsgroup.com/?l=lucene-dev&m=100723333506246&w=2
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th width="%1">
|
||||
author
|
||||
</th>
|
||||
<td>
|
||||
Philip Ogren - ogren@mayo.edu
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</section>
|
||||
<section id="XML Document #2">
|
||||
<title>XML Document #2</title>
|
||||
<table>
|
||||
<tr>
|
||||
<th width="%1">
|
||||
URL
|
||||
</th>
|
||||
<td>
|
||||
<a href="http://www.mail-archive.com/lucene-user@jakarta.apache.org/msg00346.html">
|
||||
http://www.mail-archive.com/lucene-user@jakarta.apache.org/msg00346.html
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th width="%1">
|
||||
author
|
||||
</th>
|
||||
<td>
|
||||
Peter Carlson - carlson@bookandhammer.com
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</section>
|
||||
<section id="PDF Box">
|
||||
<title>PDF Box</title>
|
||||
<table>
|
||||
<tr>
|
||||
<th width="%1">
|
||||
URL
|
||||
</th>
|
||||
<td>
|
||||
<a href="http://www.pdfbox.org/">
|
||||
http://www.pdfbox.org/
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th width="%1">
|
||||
author
|
||||
</th>
|
||||
<td>
|
||||
Ben Litchfield - ben@csh.rit.edu
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</section>
|
||||
<section id="XPDF - PDF Document Conversion">
|
||||
<title>XPDF - PDF Document Conversion</title>
|
||||
<table>
|
||||
<tr>
|
||||
<th width="%1">
|
||||
URL
|
||||
</th>
|
||||
<td>
|
||||
<a href="http://www.foolabs.com/xpdf">
|
||||
http://www.foolabs.com/xpdf
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th width="%1">
|
||||
author
|
||||
</th>
|
||||
<td>
|
||||
N/A
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</section>
|
||||
<section id="PDFTextStream -- PDF text and metadata extraction">
|
||||
<title>PDFTextStream -- PDF text and metadata extraction</title>
|
||||
<table>
|
||||
<tr>
|
||||
<th width="%1">
|
||||
URL
|
||||
</th>
|
||||
<td>
|
||||
<a href="http://snowtide.com">
|
||||
http://snowtide.com
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th width="%1">
|
||||
author
|
||||
</th>
|
||||
<td>
|
||||
N/A
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</section>
|
||||
<section id="PJ Classic & PJ Professional - PDF Document Conversion">
|
||||
<title>PJ Classic & PJ Professional - PDF Document Conversion</title>
|
||||
<table>
|
||||
<tr>
|
||||
<th width="%1">
|
||||
URL
|
||||
</th>
|
||||
<td>
|
||||
<a href=" http://www.etymon.com/">
|
||||
http://www.etymon.com/
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th width="%1">
|
||||
author
|
||||
</th>
|
||||
<td>
|
||||
N/A
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</section>
|
||||
</section>
|
||||
|
||||
<section id="Miscellaneous">
|
||||
<title>Miscellaneous</title>
|
||||
<p>
|
||||
</p>
|
||||
<section id="Arabic Analyzer for Java">
|
||||
<title>Arabic Analyzer for Java</title>
|
||||
<table>
|
||||
<tr>
|
||||
<th width="%1">
|
||||
URL
|
||||
</th>
|
||||
<td>
|
||||
<a href="http://savannah.nongnu.org/projects/aramorph">
|
||||
http://savannah.nongnu.org/projects/aramorph
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th width="%1">
|
||||
author
|
||||
</th>
|
||||
<td>
|
||||
Pierrick Brihaye
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</section>
|
||||
<section id="Phonetix">
|
||||
<title>Phonetix</title>
|
||||
<table>
|
||||
<tr>
|
||||
<th width="%1">
|
||||
URL
|
||||
</th>
|
||||
<td>
|
||||
<a href="http://www.companywebstore.de/tangentum/mirror/en/products/phonetix/index.html">
|
||||
http://www.companywebstore.de/tangentum/mirror/en/products/phonetix/index.html
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th width="%1">
|
||||
author
|
||||
</th>
|
||||
<td>
|
||||
tangentum technologies
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</section>
|
||||
<section id="ejIndex - JBoss MBean for Lucene">
|
||||
<title>ejIndex - JBoss MBean for Lucene</title>
|
||||
<p>
|
||||
</p>
|
||||
<table>
|
||||
<tr>
|
||||
<th width="%1">
|
||||
URL
|
||||
</th>
|
||||
<td>
|
||||
<a href="http://ejindex.sourceforge.net/">
|
||||
http://ejindex.sourceforge.net/
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th width="%1">
|
||||
author
|
||||
</th>
|
||||
<td>
|
||||
Andy Scholz
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</section>
|
||||
<section id="JavaCC">
|
||||
<title>JavaCC</title>
|
||||
<table>
|
||||
<tr>
|
||||
<th width="%1">
|
||||
URL
|
||||
</th>
|
||||
<td>
|
||||
<a href="https://javacc.dev.java.net/">
|
||||
https://javacc.dev.java.net/
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th width="%1">
|
||||
author
|
||||
</th>
|
||||
<td>
|
||||
Sun Microsystems (java.net)
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</section>
|
||||
<section id="LuSQL">
|
||||
<title>LuSQL - Index databases with Lucene</title>
|
||||
<table>
|
||||
<tr>
|
||||
<th width="%1">
|
||||
URL
|
||||
</th>
|
||||
<td>
|
||||
<a href="http://lab.cisti-icist.nrc-cnrc.gc.ca/cistilabswiki/index.php/LuSql">
|
||||
http://lab.cisti-icist.nrc-cnrc.gc.ca/cistilabswiki/index.php/LuSql
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th width="%1">
|
||||
author
|
||||
</th>
|
||||
<td>
|
||||
Glen Newton
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</section>
|
||||
</section>
|
||||
</body>
|
||||
</document>
|
|
@ -1,79 +0,0 @@
|
|||
<?xml version="1.0"?>
|
||||
<document>
|
||||
<header>
|
||||
<title>
|
||||
Apache Lucene - Building and Installing the Basic Demo
|
||||
</title>
|
||||
</header>
|
||||
<properties>
|
||||
<author email="acoliver@apache.org">Andrew C. Oliver</author>
|
||||
</properties>
|
||||
<body>
|
||||
|
||||
<section id="About this Document"><title>About this Document</title>
|
||||
<p>
|
||||
This document is intended as a "getting started" guide to using and running the Lucene demos.
|
||||
It walks you through some basic installation and configuration.
|
||||
</p>
|
||||
</section>
|
||||
|
||||
|
||||
<section id="About the Demo"><title>About the Demo</title>
|
||||
<p>
|
||||
The Lucene command-line demo code consists of an application that demonstrates various
|
||||
functionalities of Lucene and how you can add Lucene to your applications.
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<section id="Setting your CLASSPATH"><title>Setting your CLASSPATH</title>
|
||||
<p>
|
||||
First, you should <a href="http://www.apache.org/dyn/closer.cgi/lucene/java/">download</a> the
|
||||
latest Lucene distribution and then extract it to a working directory.
|
||||
</p>
|
||||
<p>
|
||||
You need three JARs: the Lucene JAR, the common analysis JAR, and the Lucene demo JAR. You should
|
||||
see the Lucene JAR file in the core/ directory you created when you extracted the archive -- it
|
||||
should be named something like <code>lucene-core-{version}.jar</code>. You should also see files
|
||||
called <code>lucene-analyzers-common-{version}.jar</code> and <code>lucene-demo-{version}.jar</code>
|
||||
under analysis/common/ and demo/, respectively.
|
||||
</p>
|
||||
<p>
|
||||
Put all three of these files in your Java CLASSPATH.
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<section id="Indexing Files"><title>Indexing Files</title>
|
||||
<p>
|
||||
Once you've gotten this far you're probably itching to go. Let's <b>build an index!</b> Assuming
|
||||
you've set your CLASSPATH correctly, just type:
|
||||
|
||||
<pre>
|
||||
java org.apache.lucene.demo.IndexFiles -docs {path-to-lucene}/src
|
||||
</pre>
|
||||
|
||||
This will produce a subdirectory called <code>index</code> which will contain an index of all of the
|
||||
Lucene source code.
|
||||
</p>
|
||||
<p>
|
||||
To <b>search the index</b> type:
|
||||
|
||||
<pre>
|
||||
java org.apache.lucene.demo.SearchFiles
|
||||
</pre>
|
||||
|
||||
You'll be prompted for a query. Type in a swear word and press the enter key. You'll see that the
|
||||
Lucene developers are very well mannered and get no results. Now try entering the word "string".
|
||||
That should return a whole bunch of documents. The results will page at every tenth result and ask
|
||||
you whether you want more results.
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<section id="About the code..."><title>About the code...</title>
|
||||
<p>
|
||||
<a href="demo2.html">read on>>></a>
|
||||
</p>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
</document>
|
||||
|
|
@ -1,154 +0,0 @@
|
|||
<?xml version="1.0"?>
|
||||
<document>
|
||||
<header>
|
||||
<title>
|
||||
Apache Lucene - Basic Demo Sources Walk-through
|
||||
</title>
|
||||
</header>
|
||||
<properties>
|
||||
<author email="acoliver@apache.org">Andrew C. Oliver</author>
|
||||
</properties>
|
||||
<body>
|
||||
|
||||
<section id="About the Code"><title>About the Code</title>
|
||||
<p>
|
||||
In this section we walk through the sources behind the command-line Lucene demo: where to find them,
|
||||
their parts and their function. This section is intended for Java developers wishing to understand
|
||||
how to use Lucene in their applications.
|
||||
</p>
|
||||
</section>
|
||||
|
||||
|
||||
<section id="Location of the source"><title>Location of the source</title>
|
||||
|
||||
<p>
|
||||
NOTE: to examine the sources, you need to download and extract a source checkout of
|
||||
Lucene: (lucene-{version}-src.zip).
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Relative to the directory created when you extracted Lucene, you
|
||||
should see a directory called <code>lucene/demo/</code>. This is the root for the Lucene
|
||||
demo. Under this directory is <code>src/java/org/apache/lucene/demo/</code>. This is where all
|
||||
the Java sources for the demo live.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Within this directory you should see the <code>IndexFiles.java</code> class we executed earlier.
|
||||
Bring it up in <code>vi</code> or your editor of choice and let's take a look at it.
|
||||
</p>
|
||||
|
||||
</section>
|
||||
|
||||
<section id="IndexFiles"><title>IndexFiles</title>
|
||||
|
||||
<p>
|
||||
As we discussed in the previous walk-through, the <a
|
||||
href="api/demo/org/apache/lucene/demo/IndexFiles.html">IndexFiles</a> class creates a Lucene
|
||||
Index. Let's take a look at how it does this.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
The <code>main()</code> method parses the command-line parameters, then in preparation for
|
||||
instantiating <a href="api/core/org/apache/lucene/index/IndexWriter.html">IndexWriter</a>, opens a
|
||||
<a href="api/core/org/apache/lucene/store/Directory.html">Directory</a> and instantiates
|
||||
<a href="api/analyzers-common/org/apache/lucene/analysis/standard/StandardAnalyzer.html"
|
||||
>StandardAnalyzer</a> and
|
||||
<a href="api/core/org/apache/lucene/index/IndexWriterConfig.html">IndexWriterConfig</a>.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
The value of the <code>-index</code> command-line parameter is the name of the filesystem directory
|
||||
where all index information should be stored. If <code>IndexFiles</code> is invoked with a
|
||||
relative path given in the <code>-index</code> command-line parameter, or if the <code>-index</code>
|
||||
command-line parameter is not given, causing the default relative index path "<code>index</code>"
|
||||
to be used, the index path will be created as a subdirectory of the current working directory
|
||||
(if it does not already exist). On some platforms, the index path may be created in a different
|
||||
directory (such as the user's home directory).
|
||||
</p>
|
||||
|
||||
<p>
|
||||
The <code>-docs</code> command-line parameter value is the location of the directory containing
|
||||
files to be indexed.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
The <code>-update</code> command-line parameter tells <code>IndexFiles</code> not to delete the
|
||||
index if it already exists. When <code>-update</code> is not given, <code>IndexFiles</code> will
|
||||
first wipe the slate clean before indexing any documents.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Lucene <a href="api/core/org/apache/lucene/store/Directory.html">Directory</a>s are used by the
|
||||
<code>IndexWriter</code> to store information in the index. In addition to the
|
||||
<a href="api/core/org/apache/lucene/store/FSDirectory.html">FSDirectory</a> implementation we are using,
|
||||
there are several other <code>Directory</code> subclasses that can write to RAM, to databases, etc.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Lucene <a href="api/core/org/apache/lucene/analysis/Analyzer.html">Analyzer</a>s are processing pipelines
|
||||
that break up text into indexed tokens, a.k.a. terms, and optionally perform other operations on these
|
||||
tokens, e.g. downcasing, synonym insertion, filtering out unwanted tokens, etc. The <code>Analyzer</code>
|
||||
we are using is <code>StandardAnalyzer</code>, which creates tokens using the Word Break rules from the
|
||||
Unicode Text Segmentation algorithm specified in <a href="http://unicode.org/reports/tr29/">Unicode
|
||||
Standard Annex #29</a>; converts tokens to lowercase; and then filters out stopwords. Stopwords are
|
||||
common language words such as articles (a, an, the, etc.) and other tokens that may have less value for
|
||||
searching. It should be noted that there are different rules for every language, and you should use the
|
||||
proper analyzer for each. Lucene currently provides Analyzers for a number of different languages (see
|
||||
the javadocs under
|
||||
<a href="api/analyzers-common/org/apache/lucene/analysis/"
|
||||
>lucene/analysis/common/src/java/org/apache/lucene/analysis</a>).
|
||||
</p>
|
||||
|
||||
<p>
|
||||
The <code>IndexWriterConfig</code> instance holds all configuration for <code>IndexWriter</code>. For
|
||||
example, we set the <code>OpenMode</code> to use here based on the value of the <code>-update</code>
|
||||
command-line parameter.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Looking further down in the file, after <code>IndexWriter</code> is instantiated, you should see the
|
||||
<code>indexDocs()</code> code. This recursive function crawls the directories and creates
|
||||
<a href="api/core/org/apache/lucene/document/Document.html">Document</a> objects. The
|
||||
<code>Document</code> is simply a data object to represent the text content from the file as well as
|
||||
its creation time and location. These instances are added to the <code>IndexWriter</code>. If
|
||||
the <code>-update</code> command-line parameter is given, the <code>IndexWriter</code>
|
||||
<code>OpenMode</code> will be set to <code>OpenMode.CREATE_OR_APPEND</code>, and rather than
|
||||
adding documents to the index, the <code>IndexWriter</code> will <strong>update</strong> them
|
||||
in the index by attempting to find an already-indexed document with the same identifier (in our
|
||||
case, the file path serves as the identifier); deleting it from the index if it exists; and then
|
||||
adding the new document to the index.
|
||||
</p>
|
||||
|
||||
</section>
|
||||
|
||||
<section id="Searching Files"><title>Searching Files</title>
|
||||
|
||||
<p>
|
||||
The <a href="api/demo/org/apache/lucene/demo/SearchFiles.html">SearchFiles</a> class is
|
||||
quite simple. It primarily collaborates with an
|
||||
<a href="api/core/org/apache/lucene/search/IndexSearcher.html">IndexSearcher</a>,
|
||||
<a href="api/analyzers-common/org/apache/lucene/analysis/standard/StandardAnalyzer.html"
|
||||
>StandardAnalyzer</a> (which is used in the
|
||||
<a href="api/demo/org/apache/lucene/demo/IndexFiles.html">IndexFiles</a> class as well)
|
||||
and a <a href="api/core/org/apache/lucene/queryParser/QueryParser.html">QueryParser</a>. The
|
||||
query parser is constructed with an analyzer used to interpret your query text in the same way the
|
||||
documents are interpreted: finding word boundaries, downcasing, and removing useless words like
|
||||
'a', 'an' and 'the'. The <a href="api/core/org/apache/lucene/search/Query.html">Query</a>
|
||||
object contains the results from the
|
||||
<a href="api/core/org/apache/lucene/queryParser/QueryParser.html">QueryParser</a> which is passed
|
||||
to the searcher. Note that it's also possible to programmatically construct a rich
|
||||
<a href="api/core/org/apache/lucene/search/Query.html">Query</a> object without using the query
|
||||
parser. The query parser just enables decoding the <a href="queryparsersyntax.html">Lucene query
|
||||
syntax</a> into the corresponding <a href="api/core/org/apache/lucene/search/Query.html">Query</a>
|
||||
object.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<code>SearchFiles</code> uses the <code>IndexSearcher.search(query,n)</code> method that returns
|
||||
<a href="api/core/org/apache/lucene/search/TopDocs.html">TopDocs</a> with max <code>n</code> hits.
|
||||
The results are printed in pages, sorted by score (i.e. relevance).
|
||||
</p>
|
||||
</section>
|
||||
</body>
|
||||
</document>
|
|
@ -1,41 +0,0 @@
|
|||
<?xml version="1.0"?>
|
||||
<document>
|
||||
<header>
|
||||
<title>
|
||||
Apache Lucene - Getting Started Guide
|
||||
</title>
|
||||
</header>
|
||||
<properties>
|
||||
<author email="acoliver@apache.org">Andrew C. Oliver</author>
|
||||
</properties>
|
||||
<body>
|
||||
|
||||
<section id="Getting Started">
|
||||
<title>Getting Started</title>
|
||||
<p>
|
||||
This document is intended as a "getting started" guide. It has three audiences: first-time users
|
||||
looking to install Apache Lucene in their application; developers looking to modify or base
|
||||
the applications they develop on Lucene; and developers looking to become involved in and contribute
|
||||
to the development of Lucene. This document is written in tutorial and walk-through format. The
|
||||
goal is to help you "get started". It does not go into great depth on some of the conceptual or
|
||||
inner details of Lucene.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Each section listed below builds on one another. More advanced users
|
||||
may wish to skip sections.
|
||||
</p>
|
||||
|
||||
<ul>
|
||||
<li><a href="demo.html">About the command-line Lucene demo and its usage</a>. This section
|
||||
is intended for anyone who wants to use the command-line Lucene demo.</li>
|
||||
|
||||
<li><a href="demo2.html">About the sources and implementation for the command-line Lucene
|
||||
demo</a>. This section walks through the implementation details (sources) of the
|
||||
command-line Lucene demo. This section is intended for developers.</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
</document>
|
||||
|
Before Width: | Height: | Size: 7.1 KiB |
Before Width: | Height: | Size: 49 B |
Before Width: | Height: | Size: 54 B |
Before Width: | Height: | Size: 3.6 KiB |
Before Width: | Height: | Size: 285 B |
Before Width: | Height: | Size: 43 KiB |
Before Width: | Height: | Size: 24 KiB |
Before Width: | Height: | Size: 4.3 KiB |
Before Width: | Height: | Size: 696 B |
Before Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.4 KiB |