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