<?xml version="1.0" ?>
<!--
 Licensed to the Apache Software Foundation (ASF) under one or more
 contributor license agreements.  See the NOTICE file distributed with
 this work for additional information regarding copyright ownership.
 The ASF licenses this file to You under the Apache License, Version 2.0
 (the "License"); you may not use this file except in compliance with
 the License.  You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
-->

<!-- Per-field similarity testing where default for fieldtypes w/o sim is overridden -->

<schema name="test" version="1.0">
  
  <similarity class="solr.SchemaSimilarityFactory" >
    <str name="defaultSimFromFieldType">sim-used-as-default-override</str>
  </similarity>

  <!--  some per-field similarity examples --> 
  <!--  specify a Similarity classname directly -->
  <fieldType name="sim-explicit" class="solr.TextField">
    <analyzer>
      <tokenizer class="solr.MockTokenizerFactory"/>
    </analyzer>
    <similarity class="org.apache.lucene.misc.SweetSpotSimilarity"/>
  </fieldType>

  <!--  specify a Similarity factory -->  
  <fieldType name="sim-used-as-default-override" class="solr.TextField">
    <analyzer>
      <tokenizer class="solr.MockTokenizerFactory"/>
    </analyzer>
    <similarity class="solr.CustomSimilarityFactory">
      <str name="echo">is there an echo?</str>
    </similarity>
  </fieldType>
  
  <!-- don't specify any sim at all: get the default  -->
  <fieldType name="sim-none-get-default" class="solr.TextField">
    <analyzer>
      <tokenizer class="solr.MockTokenizerFactory"/>
    </analyzer>
  </fieldType>

  <field name="id" type="string" indexed="true" stored="true" multiValued="false" required="false"/>
  <field name="sim1text" type="sim-explicit" indexed="true" stored="true"/>
  <field name="sim2text" type="sim-used-as-default-override" indexed="true" stored="true"/>
  <field name="sim3text" type="sim-none-get-default" indexed="true" stored="true"/>
  
  <!-- make sure custom sims work with dynamic fields -->
  <dynamicField name="*_sim1" type="sim-explicit" indexed="true" stored="true"/>
  <dynamicField name="*_sim2" type="sim-used-as-default-override" indexed="true" stored="true"/>
  <dynamicField name="*_sim3" type="sim-none-get-default" indexed="true" stored="true"/>

  <fieldType name="string" class="solr.StrField" omitNorms="true" positionIncrementGap="0"/>
  <uniqueKey>id</uniqueKey>
  
</schema>
