Report abuse

--- /Users/epugh/solr/solr2/LucidWorks/example/solr/conf/schema.xml	2010-01-27 11:52:43.000000000 -0500
+++ /Users/epugh/solr/solr2/LucidWorks/lucidworks/solr/conf/schema.xml	2010-01-27 11:52:39.000000000 -0500
@@ -212,6 +212,26 @@
       </analyzer>
     </fieldType>

+    <!-- a basic general purpose text field utilizing KStemmer -->
+    <fieldType name="text_kstem" class="solr.TextField" positionIncrementGap="100">
+      <analyzer type="index">
+        <tokenizer class="solr.WhitespaceTokenizerFactory"/>
+        <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" enablePositionIncrements="false" />
+        <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="1" catenateNumbers="1" catenateAll="0" splitOnCaseChange="1"/>
+        <filter class="solr.LowerCaseFilterFactory"/>
+        <!-- The LucidKStemmer currently requires a lowercase filter somewhere before it. -->
+        <filter class="com.lucidimagination.solrworks.analysis.LucidKStemFilterFactory" protected="protwords.txt"/>
+      </analyzer>
+      <analyzer type="query">
+        <tokenizer class="solr.WhitespaceTokenizerFactory"/>
+        <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt"/>
+        <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="0" catenateNumbers="0" catenateAll="0" splitOnCaseChange="1"/>
+        <filter class="solr.LowerCaseFilterFactory"/>
+        <!-- The LucidKStemmer currently requires a lowercase filter somewhere before it. -->
+        <filter class="com.lucidimagination.solrworks.analysis.LucidKStemFilterFactory" protected="protwords.txt"/>
+      </analyzer>
+    </fieldType>
+
     <!-- A text field that uses WordDelimiterFilter to enable splitting and matching of
         words on case-change, alpha numeric boundaries, and non-alphanumeric chars,
         so that a query of "wifi" or "wi fi" could match a document containing "Wi-Fi".
@@ -510,6 +530,8 @@

    <dynamicField name="random_*" type="random" />

+   <dynamicField name="*_kstem"  type="text_kstem" indexed="true" stored="true" multiValued="true"/>
+
    <!-- uncomment the following to ignore any fields that don't already match an existing 
         field name or dynamic field, rather than reporting them as an error. 
         alternately, change the type="ignored" to some other type e.g. "text" if you want