Add ability to filter by Format and sort in results page

Project:RUcore SOLR Searching and Indexing
Category:feature request
Status:Moved to JIRA

On a results page add ability to filter by format in the menus on the left. Also add ability to sort results while in a results list. see WorldCat example.

<a href=";q=gone+with+the+wind" title=";q=gone+with+the+wind">;q=gone+with+the+wind</a>

Source of this request is the R5.2 Search Portal Requirements



Version:5.2.1» 6-x


Version:6-x» 7.0


Project:RUcore/NJDH/Partner Portal Search» RUcore dlr/EDIT
Version:7.0» 7.0
Component:Searching - Service Agent» Code
Assigned to:chadmills» triggs

I am moving this to dlr because I think some indexing changes need to be made. I am also not certain what metadata fields would need to be indexed to offer such a feature.


I notice that the 5.2 portal spec has the following:
6. Displaylimit/sort
Format (by date, then title) Date (by title)
Title (by date)
Metadata implications:
Subject (broad subject areas)
Content model (search/display label: Format)

If this means we should use the contentmodel field as the "Format" facet field, it could be done now. If we need a different facet field that might include multiple tokens, we'll need to create a new field or copy field in the schema.xml defined as a string.


Version:7.0» 8.x

Please update status when time permits.


I'm not sure what is needed for this. If it means that you'd like to use contentmodel as a facet field, that would be workable, since the content models are all simple strings. If it means faceting on some other metadata field that might have tokens, I'll need to know exactly what these are and can create a new string field.


Version:8.x» 8.1

Need to use contentModel as a facet field, according to Comment #4.


You could use the contentmodel field for faceting as it is now, since all the content models are simple strings.


We should probably not report out into the facet interface the actually true contentModel values but rather translate them to something more user friendly. An example would be the content model "movingImage" in a pick list for an end user is confusing. They won't know for certain what a "movingImage" is rather they would know what a "Video" is. IMO, All of the contentModel values should be observed and translated for the index this way.


Wouldn't that be better done at the user interface level based on the simple set of raw values handled by Solr?


I think the value mapping should happen before hitting the index, that is partially what an index like this is meant for. If you have a management concerns you might want to create two index fields; one with the raw value and one with the translated value.


Does anyone have a list of such user-friendly mappings for the content models? I could prepare that, but it would not work at the XSLT stage. I still think it's essentially a (possibly volatile) label feature for end users, and that there's not much value in baking this into the index. In any event, it doesn't hurt much to create more fields.


The index is the ideal place for it. If you have the possible values, a report, a user friendly mapping can be created. Since we don't add new content model values, practically ever, I don't know why it would be volatile.


Of course the actual values are not volatile, but the user friendly names might well change on someone's whim.


So then we reindex. No big deal.


Assigned to:triggs» chadmills
Status:active» test

OK. As of this afternoon's run, you should have available a new multivalued string field called "contentModel_st". It makes the following changes to the content model strings:
$facetmodeldata = str_replace("photograph", "Photograph", $facetmodeldata);
$facetmodeldata = str_replace("document", "Document", $facetmodeldata);
$facetmodeldata = str_replace("record", "Record", $facetmodeldata);
$facetmodeldata = str_replace("map", "Map", $facetmodeldata);
$facetmodeldata = str_replace("etd", "ETD", $facetmodeldata);
$facetmodeldata = str_replace("book", "Book", $facetmodeldata);
$facetmodeldata = str_replace("periodical", "Periodical", $facetmodeldata);
$facetmodeldata = str_replace("collection", "Collection", $facetmodeldata);
$facetmodeldata = str_replace("manuscript", "Manuscript", $facetmodeldata);
$facetmodeldata = str_replace("pamphlet", "Pamphlet", $facetmodeldata);
$facetmodeldata = str_replace("dataset", "Dataset", $facetmodeldata);
$facetmodeldata = str_replace("video", "Video", $facetmodeldata);
$facetmodeldata = str_replace("stillimage", "Still Image", $facetmodeldata);
$facetmodeldata = str_replace("analytic", "Analytic", $facetmodeldata);
$facetmodeldata = str_replace("audio", "Audio", $facetmodeldata);
$facetmodeldata = str_replace("ead", "EAD", $facetmodeldata);
$facetmodeldata = str_replace("movingimage", "Moving Image", $facetmodeldata);
$facetmodeldata = str_replace("archive", "Archive", $facetmodeldata);
$facetmodeldata = str_replace("transcript", "Transcript", $facetmodeldata);
$facetmodeldata = str_replace("image", "Image", $facetmodeldata);
$facetmodeldata = str_replace("moving", "Moving", $facetmodeldata);
$facetmodeldata = str_replace("article", "Article", $facetmodeldata);
$facetmodeldata = str_replace("darkarchive", "Dark Archive", $facetmodeldata);
$facetmodeldata = str_replace("software", "Software", $facetmodeldata);
$facetmodeldata = str_replace("still", "Still", $facetmodeldata);
$facetmodeldata = str_replace("dark", "Dark", $facetmodeldata);
$facetmodeldata = str_replace("data", "Data", $facetmodeldata);
$facetmodeldata = str_replace("materials", "Materials", $facetmodeldata);
$facetmodeldata = str_replace("supplementary", "Supplementary", $facetmodeldata);


Assigned to:chadmills» triggs
Status:test» active

This isn't the mapping the user services group would probably want. I think you need to provide them, via Rhonda, a list of the the possibilities so they can provide you the mapping. Also, I would provide Rhonda the list in something other than a code snippet.


It can be changed if they come up with different terms. I didn't realize they'd added a bunch of multi-word models. The new field is needed in any event. I'll be interested to see if this list (drawn from the facets as they appear now) flattens them out at least in the new field.


Version:8.1» 8.2
Assigned to:triggs» rmarker

Moving this to 8.2. Needs guidance from USAWG.


Project:RUcore dlr/EDIT» RUcore SOLR Searching and Indexing
Version:8.2» 8.2


Version:8.2» 8.x


Status:active» Moved to JIRA

Back to top