solr:如何将iso8601date范围转换为数据导入的daterange

问题描述 投票:0回答:1

我有一个XML文件(ead-档案描述),包含日期范围'1678/1768',符合iso8601我想将此作为日期范围[1678 TO 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"/>

当我尝试为系统索引时,但是当我用*.*查询它时,我没有输出。

感谢您的帮助

我有一个XML文件(ead-档案描述),包含一个日期范围'1678/1768',符合iso8601,我想在我的schema.xml中定义为&。的日期范围[1678 TO 1768]引入solr。 。

solr
1个回答
0
投票

日期范围字段不能附加过滤器。您可以在Solr看到它之前就使用use an update request processor to reformat the content,但更好的是,您可以use a regex transformer directly in your Data Import Handler规范从xpath查询选择的内容中获取所需的格式:

© www.soinside.com 2019 - 2024. All rights reserved.