org.apache.lucene.wikipedia.analysis
Class WikipediaTokenizer

java.lang.Object
  extended by org.apache.lucene.analysis.TokenStream
      extended by org.apache.lucene.analysis.Tokenizer
          extended by org.apache.lucene.wikipedia.analysis.WikipediaTokenizer

public class WikipediaTokenizer
extends Tokenizer

Extension of StandardTokenizer that is aware of Wikipedia syntax. It is based off of the Wikipedia tutorial available at http://en.wikipedia.org/wiki/Wikipedia:Tutorial, but it may not be complete.

EXPERIMENTAL !!!!!!!!! NOTE: This Tokenizer is considered experimental and the grammar is subject to change in the trunk and in follow up releases.


Field Summary
static int ACRONYM_ID
           
static int ALPHANUM_ID
           
static int APOSTROPHE_ID
           
static String BOLD
           
static int BOLD_ID
           
static String BOLD_ITALICS
           
static int BOLD_ITALICS_ID
           
static int BOTH
           
static String CATEGORY
           
static int CATEGORY_ID
           
static String CITATION
           
static int CITATION_ID
           
static int CJ_ID
           
static int COMPANY_ID
           
static int EMAIL_ID
           
static String EXTERNAL_LINK
           
static int EXTERNAL_LINK_ID
           
static String EXTERNAL_LINK_URL
           
static int EXTERNAL_LINK_URL_ID
           
static String HEADING
           
static int HEADING_ID
           
static int HOST_ID
           
static String INTERNAL_LINK
           
static int INTERNAL_LINK_ID
           
static String ITALICS
           
static int ITALICS_ID
           
static int NUM_ID
           
static String SUB_HEADING
           
static int SUB_HEADING_ID
           
static String[] TOKEN_TYPES
          String token types that correspond to token type int constants
static String[] tokenImage
          Deprecated. Please use TOKEN_TYPES instead
static int TOKENS_ONLY
           
static int UNTOKENIZED_ONLY
           
static int UNTOKENIZED_TOKEN_FLAG
          This flag is used to indicate that the produced "Token" would, if TOKENS_ONLY was used, produce multiple tokens.
 
Fields inherited from class org.apache.lucene.analysis.Tokenizer
input
 
Constructor Summary
WikipediaTokenizer(Reader input)
          Creates a new instance of the WikipediaTokenizer.
WikipediaTokenizer(Reader input, int tokenOutput, Set untokenizedTypes)
           
 
Method Summary
 Token next(Token reusableToken)
          Returns the next token in the stream, or null at EOS.
 void reset()
          Resets this stream to the beginning.
 void reset(Reader reader)
          Expert: Reset the tokenizer to a new reader.
 
Methods inherited from class org.apache.lucene.analysis.Tokenizer
close
 
Methods inherited from class org.apache.lucene.analysis.TokenStream
next
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

INTERNAL_LINK

public static final String INTERNAL_LINK
See Also:
Constant Field Values

EXTERNAL_LINK

public static final String EXTERNAL_LINK
See Also:
Constant Field Values

EXTERNAL_LINK_URL

public static final String EXTERNAL_LINK_URL
See Also:
Constant Field Values

CITATION

public static final String CITATION
See Also:
Constant Field Values

CATEGORY

public static final String CATEGORY
See Also:
Constant Field Values

BOLD

public static final String BOLD
See Also:
Constant Field Values

ITALICS

public static final String ITALICS
See Also:
Constant Field Values

BOLD_ITALICS

public static final String BOLD_ITALICS
See Also:
Constant Field Values

HEADING

public static final String HEADING
See Also:
Constant Field Values

SUB_HEADING

public static final String SUB_HEADING
See Also:
Constant Field Values

ALPHANUM_ID

public static final int ALPHANUM_ID
See Also:
Constant Field Values

APOSTROPHE_ID

public static final int APOSTROPHE_ID
See Also:
Constant Field Values

ACRONYM_ID

public static final int ACRONYM_ID
See Also:
Constant Field Values

COMPANY_ID

public static final int COMPANY_ID
See Also:
Constant Field Values

EMAIL_ID

public static final int EMAIL_ID
See Also:
Constant Field Values

HOST_ID

public static final int HOST_ID
See Also:
Constant Field Values

NUM_ID

public static final int NUM_ID
See Also:
Constant Field Values

CJ_ID

public static final int CJ_ID
See Also:
Constant Field Values

INTERNAL_LINK_ID

public static final int INTERNAL_LINK_ID
See Also:
Constant Field Values

EXTERNAL_LINK_ID

public static final int EXTERNAL_LINK_ID
See Also:
Constant Field Values

CITATION_ID

public static final int CITATION_ID
See Also:
Constant Field Values

CATEGORY_ID

public static final int CATEGORY_ID
See Also:
Constant Field Values

BOLD_ID

public static final int BOLD_ID
See Also:
Constant Field Values

ITALICS_ID

public static final int ITALICS_ID
See Also:
Constant Field Values

BOLD_ITALICS_ID

public static final int BOLD_ITALICS_ID
See Also:
Constant Field Values

HEADING_ID

public static final int HEADING_ID
See Also:
Constant Field Values

SUB_HEADING_ID

public static final int SUB_HEADING_ID
See Also:
Constant Field Values

EXTERNAL_LINK_URL_ID

public static final int EXTERNAL_LINK_URL_ID
See Also:
Constant Field Values

TOKEN_TYPES

public static final String[] TOKEN_TYPES
String token types that correspond to token type int constants


tokenImage

public static final String[] tokenImage
Deprecated. Please use TOKEN_TYPES instead

TOKENS_ONLY

public static final int TOKENS_ONLY
See Also:
Constant Field Values

UNTOKENIZED_ONLY

public static final int UNTOKENIZED_ONLY
See Also:
Constant Field Values

BOTH

public static final int BOTH
See Also:
Constant Field Values

UNTOKENIZED_TOKEN_FLAG

public static final int UNTOKENIZED_TOKEN_FLAG
This flag is used to indicate that the produced "Token" would, if TOKENS_ONLY was used, produce multiple tokens.

See Also:
Constant Field Values
Constructor Detail

WikipediaTokenizer

public WikipediaTokenizer(Reader input)
Creates a new instance of the WikipediaTokenizer. Attaches the input to a newly created JFlex scanner.

Parameters:
input - The Input Reader

WikipediaTokenizer

public WikipediaTokenizer(Reader input,
                          int tokenOutput,
                          Set untokenizedTypes)
Method Detail

next

public Token next(Token reusableToken)
           throws IOException
Description copied from class: TokenStream
Returns the next token in the stream, or null at EOS. When possible, the input Token should be used as the returned Token (this gives fastest tokenization performance), but this is not required and a new Token may be returned. Callers may re-use a single Token instance for successive calls to this method.

This implicitly defines a "contract" between consumers (callers of this method) and producers (implementations of this method that are the source for tokens):

Also, the producer must make no assumptions about a Token after it has been returned: the caller may arbitrarily change it. If the producer needs to hold onto the token for subsequent calls, it must clone() it before storing it. Note that a TokenFilter is considered a consumer.

Overrides:
next in class TokenStream
Parameters:
reusableToken - a Token that may or may not be used to return; this parameter should never be null (the callee is not required to check for null before using it, but it is a good idea to assert that it is not null.)
Returns:
next token in the stream or null if end-of-stream was hit
Throws:
IOException

reset

public void reset()
           throws IOException
Description copied from class: TokenStream
Resets this stream to the beginning. This is an optional operation, so subclasses may or may not implement this method. Reset() is not needed for the standard indexing process. However, if the Tokens of a TokenStream are intended to be consumed more than once, it is necessary to implement reset(). Note that if your TokenStream caches tokens and feeds them back again after a reset, it is imperative that you clone the tokens when you store them away (on the first pass) as well as when you return them (on future passes after reset()).

Overrides:
reset in class TokenStream
Throws:
IOException

reset

public void reset(Reader reader)
           throws IOException
Description copied from class: Tokenizer
Expert: Reset the tokenizer to a new reader. Typically, an analyzer (in its reusableTokenStream method) will use this to re-use a previously created tokenizer.

Overrides:
reset in class Tokenizer
Throws:
IOException


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