日期范围字段不能附加筛选器。您可以使用更新请求处理器在Solr看到内容之前重新格式化内容,但更好的是,您可以直接在数据导入处理程序规范中使用regex转换器,从xpath查询选择的内容中获得您想要的格式:
我有一个xml文件(ead-档案描述(,包含符合iso8601的日期范围"1678/1768"我想把它作为一个日期范围[1678到1768]介绍给solr在我的schema.xml中,我定义了
<fieldType name="dateRange" class="solr.DateRangeField">
<charFilter class="solr.PatternReplaceCharFilterFactory"
pattern="(d+)/(d+)" replacement="[$1 TO $2]">
</charFilter>
</fieldType>
和
<field name="dateRange" type="dateRange" indexed="true" stored="true" multiValued="true"/>
在datahandler.xml 中
<field column="dateRange" xpath="/ead/archdesc/did/unitdate/@normal"/>
当我试图对系统进行索引时,对其进行索引,但当我用*.*
查询它时,我没有收到任何输出。
感谢的帮助
regex="(d+)/(d+)" replaceWith="[$1 TO $2]"