Feature #6285
closedHandle EML singleDateTime field in SOLR index
0%
Description
Data packages may store temporal coverage in as a range of dates - beginDate and endDate or as a single date - singleDateTime - which is currently not in the schema file. This is preventing data sets described by a singleDateTime from being included in data coverage year searches.
Example data set -- doi:10.5063/AA/nceas.290.8
https://knb.ecoinformatics.org/m/#view/doi:10.5063/AA/nceas.290.8
Updated by ben leinfelder almost 11 years ago
- Subject changed from Add singleDateTime field to Solr schema file to Handle EML singleDateTime field tin SOLR index
I think the approach should be to write the singleDateTime value to the existing solr fields for start and end date so that our client queries can remain the same.
There is a slight loss in semantics when we do this, but I think it is okay.
Updated by ben leinfelder almost 11 years ago
- Status changed from New to In Progress
- Assignee set to ben leinfelder
Giving this a whirl locally and adding it to the CN lib so we all can make use of it.
Updated by ben leinfelder almost 11 years ago
- Status changed from In Progress to Closed
Added the application-context fiels for all eml versions to our local metcat-index project with the new singleDateTime parsing defined. These are also in the d1 project's trunk so they will benefit from the change, eventually. We could, eventually, remove our local context files when we use a newer tagged version of the d1 library that includes these new beans.
Updated by ben leinfelder almost 11 years ago
- Status changed from Closed to In Progress
Updated by ben leinfelder almost 11 years ago
- Subject changed from Handle EML singleDateTime field tin SOLR index to Handle EML singleDateTime field in SOLR index
Updated by ben leinfelder almost 11 years ago
Removed the extra bean definitions and combined the single and range of dates into the existing beginDate and endDate fields.
//dataset/coverage/temporalCoverage/rangeOfDates/beginDate/calendarDate/text() | //dataset/coverage/temporalCoverage/singleDateTime/calendarDate/text() //dataset/coverage/temporalCoverage/rangeOfDates/endDate/calendarDate/text() | //dataset/coverage/temporalCoverage/singleDateTime/calendarDate/text()
Updated by ben leinfelder almost 11 years ago
- Status changed from In Progress to Resolved
I'm happy with this as an interim solution until we implement something that can effectively query multiple ranges or multiple single values (see: https://redmine.dataone.org/issues/4278)