|
30 | 30 | It should be kept correct and concise, usable out-of-the-box. |
31 | 31 |
|
32 | 32 | For more information, on how to customize this file, please see |
33 | | - http://wiki.apache.org/solr/SchemaXml |
| 33 | + https://solr.apache.org/guide/solr/latest/indexing-guide/schema-elements.html |
34 | 34 |
|
35 | 35 | PERFORMANCE NOTE: this schema includes many optional features and should not |
36 | 36 | be used for benchmarking. To improve performance one could |
|
49 | 49 | that avoids logging every request |
50 | 50 | --> |
51 | 51 |
|
52 | | -<schema name="drupal-4.3.5-solr-8.x-1" version="1.6"> |
| 52 | +<schema name="drupal-4.3.10-solr-9.x-1" version="1.6"> |
53 | 53 | <!-- attribute "name" is the name of this schema and is only used for display purposes. |
54 | 54 | version="x.y" is Solr's version number for the schema syntax and |
55 | 55 | semantics. It should not normally be changed by applications. |
|
122 | 122 | <!-- points to the root document of a block of nested documents. Required for nested |
123 | 123 | document support, may be removed otherwise |
124 | 124 | --> |
125 | | - <field name="_root_" type="string" indexed="true" stored="false" docValues="false"/> |
| 125 | + <field name="_root_" type="string" indexed="true" stored="true" docValues="false" /> |
| 126 | + <fieldType name="_nest_path_" class="solr.NestPathField" /> |
| 127 | + <field name="_nest_path_" type="_nest_path_" /> |
126 | 128 |
|
127 | 129 | <!-- Only remove the "id" field if you have a very good reason to. While not strictly |
128 | 130 | required, it is highly recommended. A <uniqueKey> is present in almost all Solr |
|
156 | 158 |
|
157 | 159 | <!-- Currently the suggester context filter query (suggest.cfq) accesses the tags using the stored values, neither the indexed terms nor the docValues. |
158 | 160 | Therefore the dynamicField sm_* isn't suitable at the moment --> |
159 | | - <field name="sm_context_tags" type="string" indexed="true" stored="true" multiValued="true" docValues="false"/> |
| 161 | + <field name="sm_context_tags" type="strings" indexed="true" stored="true" docValues="false"/> |
160 | 162 |
|
161 | 163 | <!-- Dynamic field definitions. If a field name is not found, dynamicFields |
162 | 164 | will be used if the name matches any of the patterns. |
|
170 | 172 | the last letter is 's' for single valued, 'm' for multi-valued --> |
171 | 173 |
|
172 | 174 | <!-- We use plong for integer since 64 bit ints are now common in PHP. --> |
173 | | - <dynamicField name="is_*" type="plong" indexed="true" stored="false" multiValued="false" docValues="true" termVectors="true"/> |
174 | | - <dynamicField name="im_*" type="plong" indexed="true" stored="false" multiValued="true" docValues="true" termVectors="true"/> |
| 175 | + <dynamicField name="is_*" type="plong" indexed="true" stored="false" docValues="true" termVectors="true"/> |
| 176 | + <dynamicField name="im_*" type="plongs" indexed="true" stored="false" docValues="true" termVectors="true"/> |
175 | 177 | <!-- List of floats can be saved in a regular float field --> |
176 | | - <dynamicField name="fs_*" type="pfloat" indexed="true" stored="false" multiValued="false" docValues="true"/> |
177 | | - <dynamicField name="fm_*" type="pfloat" indexed="true" stored="false" multiValued="true" docValues="true"/> |
| 178 | + <dynamicField name="fs_*" type="pfloat" indexed="true" stored="false" docValues="true"/> |
| 179 | + <dynamicField name="fm_*" type="pfloats" indexed="true" stored="false" docValues="true"/> |
178 | 180 | <!-- List of doubles can be saved in a regular double field --> |
179 | | - <dynamicField name="ps_*" type="pdouble" indexed="true" stored="false" multiValued="false" docValues="true"/> |
180 | | - <dynamicField name="pm_*" type="pdouble" indexed="true" stored="false" multiValued="true" docValues="true"/> |
| 181 | + <dynamicField name="ps_*" type="pdouble" indexed="true" stored="false" docValues="true"/> |
| 182 | + <dynamicField name="pm_*" type="pdoubles" indexed="true" stored="false" docValues="true"/> |
181 | 183 | <!-- List of booleans can be saved in a regular boolean field --> |
182 | | - <dynamicField name="bm_*" type="boolean" indexed="true" stored="false" multiValued="true" docValues="true" termVectors="true"/> |
183 | | - <dynamicField name="bs_*" type="boolean" indexed="true" stored="false" multiValued="false" docValues="true" termVectors="true"/> |
| 184 | + <dynamicField name="bm_*" type="booleans" indexed="true" stored="false" docValues="true" termVectors="true"/> |
| 185 | + <dynamicField name="bs_*" type="boolean" indexed="true" stored="false" docValues="true" termVectors="true"/> |
184 | 186 | <!-- Regular text (without processing) can be stored in a string field--> |
185 | | - <dynamicField name="ss_*" type="string" indexed="true" stored="false" multiValued="false" docValues="true" termVectors="true"/> |
| 187 | + <dynamicField name="ss_*" type="string" indexed="true" stored="false" docValues="true" termVectors="true"/> |
186 | 188 | <!-- For field types using SORTED_SET, multiple identical entries are collapsed into a single value. |
187 | 189 | Thus if I insert values 4, 5, 2, 4, 1, my return will be 1, 2, 4, 5 when enabling docValues. |
188 | 190 | If you need to preserve the order and duplicate entries, consider to store the values as zm_* (twice). --> |
189 | | - <dynamicField name="sm_*" type="string" indexed="true" stored="false" multiValued="true" docValues="true" termVectors="true"/> |
| 191 | + <dynamicField name="sm_*" type="strings" indexed="true" stored="false" docValues="true" termVectors="true"/> |
190 | 192 | <!-- Special-purpose text fields --> |
191 | 193 | <dynamicField name="tws_*" type="text_ws" indexed="true" stored="true" multiValued="false"/> |
192 | 194 | <dynamicField name="twm_*" type="text_ws" indexed="true" stored="true" multiValued="true"/> |
193 | 195 |
|
194 | | - <dynamicField name="ds_*" type="pdate" indexed="true" stored="false" multiValued="false" docValues="true"/> |
195 | | - <dynamicField name="dm_*" type="pdate" indexed="true" stored="false" multiValued="true" docValues="true"/> |
| 196 | + <dynamicField name="ds_*" type="pdate" indexed="true" stored="false" docValues="true"/> |
| 197 | + <dynamicField name="dm_*" type="pdates" indexed="true" stored="false" docValues="true"/> |
196 | 198 | <!-- This field is used to store date ranges --> |
197 | | - <dynamicField name="drs_*" type="date_range" indexed="true" stored="true" multiValued="false"/> |
198 | | - <dynamicField name="drm_*" type="date_range" indexed="true" stored="true" multiValued="true"/> |
| 199 | + <dynamicField name="drs_*" type="date_range" indexed="true" stored="true"/> |
| 200 | + <dynamicField name="drm_*" type="date_ranges" indexed="true" stored="true"/> |
199 | 201 | <!-- Trie fields are deprecated. Point fields solve all needs. But we keep the dedicated field names for backward compatibility. --> |
200 | | - <dynamicField name="its_*" type="plong" indexed="true" stored="false" multiValued="false" docValues="true" termVectors="true"/> |
201 | | - <dynamicField name="itm_*" type="plong" indexed="true" stored="false" multiValued="true" docValues="true" termVectors="true"/> |
202 | | - <dynamicField name="fts_*" type="pfloat" indexed="true" stored="false" multiValued="false" docValues="true"/> |
203 | | - <dynamicField name="ftm_*" type="pfloat" indexed="true" stored="false" multiValued="true" docValues="true"/> |
204 | | - <dynamicField name="pts_*" type="pdouble" indexed="true" stored="false" multiValued="false" docValues="true"/> |
205 | | - <dynamicField name="ptm_*" type="pdouble" indexed="true" stored="false" multiValued="true" docValues="true"/> |
| 202 | + <dynamicField name="its_*" type="plong" indexed="true" stored="false" docValues="true" termVectors="true"/> |
| 203 | + <dynamicField name="itm_*" type="plongs" indexed="true" stored="false" docValues="true" termVectors="true"/> |
| 204 | + <dynamicField name="fts_*" type="pfloat" indexed="true" stored="false" docValues="true"/> |
| 205 | + <dynamicField name="ftm_*" type="pfloats" indexed="true" stored="false" docValues="true"/> |
| 206 | + <dynamicField name="pts_*" type="pdouble" indexed="true" stored="false" docValues="true"/> |
| 207 | + <dynamicField name="ptm_*" type="pdoubles" indexed="true" stored="false" docValues="true"/> |
206 | 208 | <!-- Binary fields can be populated using base64 encoded data. Useful e.g. for embedding |
207 | 209 | a small image in a search result using the data URI scheme --> |
208 | | - <dynamicField name="xs_*" type="binary" indexed="false" stored="true" multiValued="false"/> |
209 | | - <dynamicField name="xm_*" type="binary" indexed="false" stored="true" multiValued="true"/> |
| 210 | + <dynamicField name="xs_*" type="binary" indexed="false" stored="true" multiValued="false"/> |
| 211 | + <dynamicField name="xm_*" type="binary" indexed="false" stored="true" multiValued="true"/> |
210 | 212 | <!-- Trie fields are deprecated. Point fields solve all needs. But we keep the dedicated field names for backward compatibility. --> |
211 | | - <dynamicField name="dds_*" type="pdate" indexed="true" stored="false" multiValued="false" docValues="true"/> |
212 | | - <dynamicField name="ddm_*" type="pdate" indexed="true" stored="false" multiValued="true" docValues="true"/> |
| 213 | + <dynamicField name="dds_*" type="pdate" indexed="true" stored="false" docValues="true"/> |
| 214 | + <dynamicField name="ddm_*" type="pdates" indexed="true" stored="false" docValues="true"/> |
213 | 215 | <!-- In case a 32 bit int is really needed, we provide these fields. 'h' is mnemonic for 'half word', i.e. 32 bit on 64 arch --> |
214 | | - <dynamicField name="hs_*" type="pint" indexed="true" stored="false" multiValued="false" docValues="true"/> |
215 | | - <dynamicField name="hm_*" type="pint" indexed="true" stored="false" multiValued="true" docValues="true"/> |
| 216 | + <dynamicField name="hs_*" type="pint" indexed="true" stored="false" docValues="true"/> |
| 217 | + <dynamicField name="hm_*" type="pints" indexed="true" stored="false" docValues="true"/> |
216 | 218 | <!-- Trie fields are deprecated. Point fields solve all needs. But we keep the dedicated field names for backward compatibility. --> |
217 | | - <dynamicField name="hts_*" type="pint" indexed="true" stored="false" multiValued="false" docValues="true"/> |
218 | | - <dynamicField name="htm_*" type="pint" indexed="true" stored="false" multiValued="true" docValues="true"/> |
| 219 | + <dynamicField name="hts_*" type="pint" indexed="true" stored="false" docValues="true"/> |
| 220 | + <dynamicField name="htm_*" type="pints" indexed="true" stored="false" docValues="true"/> |
219 | 221 |
|
220 | 222 | <!-- Unindexed string fields that can be used to store values that won't be searchable but have docValues --> |
221 | | - <dynamicField name="zdvs_*" type="string" indexed="false" stored="true" multiValued="false" docValues="true"/> |
222 | | - <dynamicField name="zdvm_*" type="string" indexed="false" stored="true" multiValued="true" docValues="true"/> |
| 223 | + <dynamicField name="zdvs_*" type="string" indexed="false" stored="true" docValues="true"/> |
| 224 | + <dynamicField name="zdvm_*" type="strings" indexed="false" stored="true" docValues="true"/> |
223 | 225 | <!-- Unindexed string fields that can be used to store values that won't be searchable --> |
224 | | - <dynamicField name="zs_*" type="string" indexed="false" stored="true" multiValued="false"/> |
225 | | - <dynamicField name="zm_*" type="string" indexed="false" stored="true" multiValued="true"/> |
| 226 | + <dynamicField name="zs_*" type="string" indexed="false" stored="true"/> |
| 227 | + <dynamicField name="zm_*" type="strings" indexed="false" stored="true"/> |
226 | 228 |
|
227 | 229 | <!-- Fields for location searches. |
228 | 230 | http://wiki.apache.org/solr/SpatialSearch#geodist_-_The_distance_function --> |
|
267 | 269 | single-valued and either required or have a default value. |
268 | 270 | --> |
269 | 271 | <fieldType name="string" class="solr.StrField"/> |
| 272 | + <fieldType name="strings" class="solr.StrField" multiValued="true"/> |
270 | 273 |
|
271 | 274 | <!-- boolean type: "true" or "false" --> |
272 | 275 | <fieldType name="boolean" class="solr.BoolField"/> |
| 276 | + <fieldType name="booleans" class="solr.BoolField" multiValued="true"/> |
273 | 277 |
|
274 | 278 | <!-- sortMissingLast and sortMissingFirst attributes are optional attributes are |
275 | 279 | currently supported on types that are sorted internally as strings |
|
334 | 338 |
|
335 | 339 | <!-- A date range field --> |
336 | 340 | <fieldType name="date_range" class="solr.DateRangeField"/> |
| 341 | + <fieldType name="date_ranges" class="solr.DateRangeField" multiValued="true"/> |
337 | 342 |
|
338 | 343 | <!--Binary data type. The data should be sent/retrieved in as Base64 encoded Strings --> |
339 | 344 | <fieldType name="binary" class="solr.BinaryField"/> |
|
372 | 377 | --> |
373 | 378 |
|
374 | 379 | <!-- A text field that only splits on whitespace for exact matching of words --> |
375 | | - <fieldType name="text_ws" class="solr.TextField" omitNorms="true" positionIncrementGap="100"> |
| 380 | + <fieldType name="text_ws" class="solr.TextField" omitNorms="true" positionIncrementGap="100" storeOffsetsWithPositions="true"> |
376 | 381 | <analyzer> |
377 | 382 | <tokenizer class="solr.WhitespaceTokenizerFactory"/> |
378 | 383 | <filter class="solr.LowerCaseFilterFactory"/> |
|
0 commit comments