On Thu, Jul 2, 2009 at 3:53 PM, Mark Bennett<mbenn...@ideaeng.com> wrote:
> There is an abbreviated syntax for specifying plugins in the schema, but
> there is a more powerful syntax that is preferred.

I think of it as specifying the Analyzer for a field: one can either
specify a Java Analyzer class (opaque, but good for legacy Analyzer
implementations or implementations that don't even use
Tokenizer/TokenFilter chains), or specify an Analyzer as a Tokenizer
followed by a list of Filters.

I'm still planning on cleaning up the schema for 1.4 - I'll see if the
comments can be made a little clearer.

> This is confusing because the <analyzer> tag can EITHER have a class=
> attribute OR nested subelements, usually of type <tokenizer> and <filter>.
> You should not do both!  Futher, the main <fieldType> element also takes a
> class attribute, which is required, but this is a separate class (...could
> use some narrative as to why....)

For polymorphic behavior for everything that falls outside Analyzer.

> Classes starting with
> "org.apache.lucene.analysis." are NOT native Solr plugins and must EITHER
> use the short hand syntax (which limits your functionality), or you need to
> add a custom adapter class.

Yeah, for years I've meant to look into getting this to "just work"
w/o having to create a factory.

FYI - the long-form/short-form is just a classloading thing, and
doesn't relate to factories.  It's only correlated in that something
in the solr namespace should have a factory.

-Yonik
http://www.lucidimagination.com

Reply via email to