IUBLibTech / newton_chymistry

New version of 'The Chymistry of Isaac Newton', using XProc pipelines to generate a website based on TEI XML encodings of Newton's alchemical manuscripts, and Apache Solr as a search engine.
2 stars 0 forks source link

Advanced Search: Title label misleading? #87

Open mdalmau opened 3 years ago

mdalmau commented 3 years ago

The search box for “title” in Possum and Carbon makes me think that I should be searching the “title” that’s in the manuscript description, but it’s really searching the manuscript shelfmarks. I think that search box should either be titled “shelfmark” or have its programming expanded to include the titles in the manuscript description. Reported by Alex Wingate.

mdalmau commented 3 years ago

The "title" is searching a combination of fields that includes repository information, shelfmark, etc. Not sure what the right label would be or how easy it is to change.

mdalmau commented 3 years ago

From Alex: In the individual TEI files, it's <title @type="main"> that I think should also be included under "title" in the advanced search. But I also think having a separate "shelfmark" search box with the repository, idno, etc. in it makes sense

Conal-Tuohy commented 3 years ago

See the search-fields.xml file for definition of the search fields, including the title field. NB the definition in this file determines the textual label used for it on the search form. The @name attribute is an internal name, used in URLs, etc, it can contain - but not spaces. The @label attribute is a display feature only and can contain all kinds of characters ... emojis, whatever.

https://github.com/IUBLibTech/newton_chymistry/blob/master/search-fields.xml#L30-L44

The title field defined (basically, as a comma-delimited concatenation of various components of the msIdentifier):

    <field name="title"
        label="Title"
        xpath="
            let $id := /TEI/teiHeader/fileDesc/sourceDesc/msDesc/msIdentifier
            return string-join(
                (
                    $id/settlement,
                    concat($id/collection, ' ', $id/idno),
                    $id/repository,
                    $id/institution
                )[normalize-space()],
                ', '
            )
        "
    />

This is where you could add a new shelfmark field, etc.