Field Searching in Keyword Expert Searches
Currently (7/2020), more complicated publication date searching functionality is available through the expert search. It is not guaranteed to be permanently supported in its current configuration.
Background: Each bibliographic record has two associated dates recorded in the MARC 008 field, which usually correspond to publication start date and end date, represented by "pub_min_dtsort" and "pub_max_dtsort" respectively. The two values are combined in the "publication_dr" date range field that supports intersection query operations. Each field is always populated in the index, to support consistent searching; absent fields are given values derived from present fields.
(All of the below also pertains to the additional fields "content_min_dtsort", "content_max_dtsort", and "content_dr" -- for cases where the 008 separates the "content" date from the "publication" date. "content" dates, when not differentiated from "publication" dates, default to the values of corresponding "publication" dates).
Some search statement options are:
Synax 1. "publication_dr:1968"
Supports querying a date range for intersection with the date range defined for each bibliographic record. The shorter syntax here (individual year) matches the level of granularity in the underlying data, but is unfortunately only supported for the "*_dr" ("date range") fields. Supported range descriptions (query values) are described here: https://lucene.apache.org/solr/guide/8_5/working-with-dates.html#date-range-formatting
Syntax 2 "pub_min_dtsort:1968-01-01T00:00:00Z"
Selects records whose "publication start" date is 1968.
Syntax 3 "pub_max_dtsort:1968-01-01T00:00:00Z"
Selects records whose "publication end" date is *1967* (note that since we're dealing entirely with ranges, the raw syntax here might be considered counterintuitive).
Syntax 4. "pub_max_dtsort:[* TO 1968-01-01T00:00:00Z]"
Selects records that ceased publication (or were only published) 1967 or earlier. (see also analogous interpretation for publication start date "pub_min_dtsort")
Syntax 5 "pub_max_dtsort:[1968-01-01T00:00:00Z TO *]"
Selects records that ceased publication (or were only published) 1967 or later. (see also analogous interpretation for publication start date "pub_min_dtsort")
The MARC-008 idiom of coding approximate dates as, e.g., "198u", is translated to a date range, as applicable.