Work in progress - updates to solrconfig and schema for Solr 5.5
[lui-solr.git] / conf / schema.xml
index fd85cfa..3bcaee4 100644 (file)
       value verbatim (and hence don't support range queries, since the
       lexicographic ordering isn't equal to the numeric ordering)
     -->
+    <!-- deprecated
     <fieldType name="pint" class="solr.IntField" omitNorms="true"/>
     <fieldType name="plong" class="solr.LongField" omitNorms="true"/>
     <fieldType name="pfloat" class="solr.FloatField" omitNorms="true"/>
     <fieldType name="pdouble" class="solr.DoubleField" omitNorms="true"/>
-    <fieldType name="pdate" class="solr.DateField" sortMissingLast="true" omitNorms="true"/>
+    <fieldType name="pdate" class="solr.DateField"
+    sortMissingLast="true" omitNorms="true"/>
+    -->
 
 
     <!--
       but with a lexicographic ordering the same as the numeric ordering,
       so that range queries work correctly.
     -->
+    <!-- deprecated
     <fieldType name="sint" class="solr.SortableIntField" sortMissingLast="true" omitNorms="true"/>
     <fieldType name="slong" class="solr.SortableLongField" sortMissingLast="true" omitNorms="true"/>
     <fieldType name="sfloat" class="solr.SortableFloatField" sortMissingLast="true" omitNorms="true"/>
     <fieldType name="sdouble" class="solr.SortableDoubleField" sortMissingLast="true" omitNorms="true"/>
-
+    -->
 
     <!-- The "RandomSortField" is not used to store or search any
          data.  You can declare fields of this type it in your schema
         <!-- Case insensitive stop word removal.
           add enablePositionIncrements=true in both the index and query
           analyzers to leave a 'gap' for more accurate phrase queries.
+          enablePositionIncrements deprecated since 4.4
         -->
         <filter class="solr.StopFilterFactory"
                 ignoreCase="true"
                 words="stopwords.txt"
-                enablePositionIncrements="true"
                 />
         <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="1" catenateNumbers="1" catenateAll="0" splitOnCaseChange="1"/>
         <filter class="solr.LowerCaseFilterFactory"/>
         <filter class="solr.StopFilterFactory"
                 ignoreCase="true"
                 words="stopwords.txt"
-                enablePositionIncrements="true"
                 />
         <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="0" catenateNumbers="0" catenateAll="0" splitOnCaseChange="1"/>
         <filter class="solr.LowerCaseFilterFactory"/>
     <fieldType name="textgen" class="solr.TextField" positionIncrementGap="100">
       <analyzer type="index">
         <tokenizer class="solr.WhitespaceTokenizerFactory"/>
-        <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" enablePositionIncrements="true" />
+        <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
         <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="1" catenateNumbers="1" catenateAll="0" splitOnCaseChange="0"/>
         <filter class="solr.LowerCaseFilterFactory"/>
       </analyzer>
         <filter class="solr.StopFilterFactory"
                 ignoreCase="true"
                 words="stopwords.txt"
-                enablePositionIncrements="true"
                 />
         <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="0" catenateNumbers="0" catenateAll="0" splitOnCaseChange="0"/>
         <filter class="solr.LowerCaseFilterFactory"/>
     <fieldType name="text_rev" class="solr.TextField" positionIncrementGap="100">
       <analyzer type="index">
         <tokenizer class="solr.WhitespaceTokenizerFactory"/>
-        <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" enablePositionIncrements="true" />
+        <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
         <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="1" catenateNumbers="1" catenateAll="0" splitOnCaseChange="0"/>
         <filter class="solr.LowerCaseFilterFactory"/>
         <filter class="solr.ReversedWildcardFilterFactory" withOriginal="true"
         <filter class="solr.StopFilterFactory"
                 ignoreCase="true"
                 words="stopwords.txt"
-                enablePositionIncrements="true"
                 />
         <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="0" catenateNumbers="0" catenateAll="0" splitOnCaseChange="0"/>
         <filter class="solr.LowerCaseFilterFactory"/>
        when adding a document.
    -->
 
-<!-- 
--->
+<!-- -->
    <field name="id" type="string" indexed="true" stored="true" required="true" /> 
+   <field name="_version_" type="long" indexed="true" stored="true"/>
 
-   <field name="author"       type="text"   indexed="true" stored="true"  multiValued="true" compressed="false" omitNorms="true"/>
-   <field name="author_exact" type="facet" indexed="true" stored="true"  multiValued="true" compressed="false" omitNorms="true"/>
+   <field name="transactionId" type="long" indexed="true" stored="false"/>
+
+   <field name="author"       type="text"   indexed="true" stored="true"  multiValued="true" omitNorms="true"/>
+   <field name="author_exact" type="string" indexed="true" stored="false" multiValued="true" omitNorms="true" docValues="true" />
    <field name="author-date"  type="text"   indexed="true" stored="true"  multiValued="true" omitNorms="true"/>
    <field name="author-title" type="text"   indexed="true" stored="true"  multiValued="true" omitNorms="true"/>
 
-   <field name="corporate-date"     type="text" indexed="true" stored="true" omitNorms="true"/>
-   <field name="corporate-location" type="text" indexed="true" stored="true" omitNorms="true"/>
-   <field name="corporate-name"     type="text" indexed="true" stored="true" omitNorms="true"/>
+   <field name="corporate-date"     type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
+   <field name="corporate-location" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
+   <field name="corporate-name"     type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
 
    <field name="callnumber" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
-   <field name="citation"   type="text" indexed="true" stored="true" multiValued="true" compressed="true" omitNorms="true"/>
+   <field name="citation"   type="text" indexed="true" stored="true" multiValued="true"  omitNorms="true"/>
 
    <field name="date"        type="text"    indexed="true" stored="true" multiValued="true" omitNorms="true"/>
-   <field name="description" type="text_ws" indexed="true" stored="true" multiValued="true" compressed="true" omitNorms="true"/>
+   <field name="description" type="text_ws" indexed="true" stored="true" multiValued="true"  omitNorms="true"/>
 
    <field name="edition" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
 
    <field name="electronic-format-instruction" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
    <field name="electronic-format-type"        type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
-   <field name="electronic-note"               type="text" indexed="true" stored="true" multiValued="true" compressed="true" omitNorms="true"/>
-   <field name="electronic-text"               type="text" indexed="true" stored="true" multiValued="true" compressed="true" omitNorms="true"/>
+   <field name="electronic-note"               type="text" indexed="true" stored="true" multiValued="true"  omitNorms="true"/>
+   <field name="electronic-text"               type="text" indexed="true" stored="true" multiValued="true"  omitNorms="true"/>
    <field name="electronic-url"                type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
 
    <field name="isbn" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
    <field name="issn" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
    <field name="lccn" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
 
-   <field name="medium"       type="text"   indexed="true" stored="true" multiValued="true" omitNorms="true"/>
-   <field name="medium_exact" type="facet" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
+   <field name="medium"       type="text"  indexed="true" stored="true"   multiValued="true" omitNorms="true"/>
+   <field name="medium_exact" type="string" indexed="true" stored="false" multiValued="true" omitNorms="true" docValues="true" />
 
-   <field name="meeting-date"     type="text" indexed="true" stored="true" omitNorms="true"/>
-   <field name="meeting-location" type="text" indexed="true" stored="true" omitNorms="true"/>
-   <field name="meeting-name"     type="text" indexed="true" stored="true" omitNorms="true"/>
+   <field name="meeting-date"     type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
+   <field name="meeting-location" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
+   <field name="meeting-name"     type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
 
    <field name="series-title" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
 
    <field name="subject"       type="text_ws" indexed="true" stored="true"  multiValued="true" omitNorms="true" />
-   <field name="subject_exact" type="facet" indexed="true" stored="true"  multiValued="true" omitNorms="true" />
+   <field name="subject_exact" type="string"  indexed="true" stored="false" multiValued="true" omitNorms="true" docValues="true" />
    <field name="subject-long"  type="text_ws" indexed="true" stored="true"  multiValued="true" omitNorms="true" />
 
    <field name="system-control-nr" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
 
    <field name="tech-rep-nr" type="text" indexed="true" multiValued="true" stored="true"/>
 
-   <field name="title"                  type="text"   indexed="true" multiValued="true" compressed="false" stored="true"/>
-   <field name="title-complete"         type="text"   indexed="true" multiValued="true" compressed="true"  stored="true"/>
+   <field name="title"                  type="text"   indexed="true" multiValued="true" stored="true"/>
+   <field name="title-complete"         type="text"   indexed="true" multiValued="true" stored="true"/>
    <field name="title-dates"            type="text"   indexed="true" multiValued="true" stored="true"/>
    <field name="title-medium"           type="text"   indexed="true" multiValued="true" stored="true"/>
    <field name="title-number-section"   type="text"   indexed="true" multiValued="true" stored="true"/>
    <field name="title-uniform-partname" type="text"   indexed="true" multiValued="true" stored="true"/>
    <field name="title-uniform-parts"    type="text"   indexed="true" multiValued="true" stored="true"/>
 
-   <field name="journal-title"          type="text" indexed="true" multiValued="true" compressed="false" stored="true"/>
-   <field name="journal-title_exact"    type="text" indexed="true" multiValued="true" compressed="false" stored="true"/>
+   <field name="journal-title"          type="text" indexed="true" multiValued="true"  stored="true" />
+   <field name="journal-title_exact"    type="string" indexed="true" multiValued="true"  stored="false" docValues="true" />
 
    <field name="physical-accomp"     type="text" indexed="true" stored="true" multiValued="true" />
    <field name="physical-dimensions" type="text" indexed="true" stored="true" multiValued="true" />
    <field name="keywords" type="textgen" indexed="true" stored="true"/>
    <field name="category" type="textgen" indexed="true" stored="true"/>
    <field name="content_type" type="string" indexed="true" stored="true" multiValued="true"/>
-   <field name="last_modified" type="date" indexed="true" stored="true"/>
    <field name="links" type="string" indexed="true" stored="true" multiValued="true"/>
 -->
+   <field name="harvest-timestamp" type="date"   indexed="true" stored="true"/>
+   <field name="harvest-date"      type="string" indexed="true" stored="true"/>
 
    <!-- catchall field, containing all other searchable text fields (implemented
         via copyField further on in this schema  -->
    <dynamicField name="*_tf" type="tfloat"  indexed="true"  stored="true"/>
    <dynamicField name="*_td" type="tdouble" indexed="true"  stored="true"/>
    <dynamicField name="*_tdt" type="tdate"  indexed="true"  stored="true"/>
-
-   <dynamicField name="*_pi"  type="pint"    indexed="true"  stored="true"/>
+   <!-- deprecated
+   <dynamicField name="*_pi"  type="pint"    indexed="true"
+   stored="true"/>
+   -->
 
    <dynamicField name="ignored_*" type="ignored" multiValued="true"/>
    <dynamicField name="attr_*" type="textgen" indexed="true" stored="true" multiValued="true"/>
 
    <dynamicField name="random_*" type="random" />
 
+   <dynamicField name="*_binary" type="binary" indexed="false" stored="true" multiValued="true"/>
+   <dynamicField name="*_path" type="text" 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 
          destination field is to use the dynamic field syntax. 
          copyField also supports a maxChars to copy setting.  -->
           
-   <copyField source="*" dest="text" maxChars="10000"/> 
+   <copyField source="*" dest="text"/> 
 
    <!-- copy name to alphaNameSort, a field designed for sorting by name -->
    <!-- <copyField source="name" dest="alphaNameSort"/> -->