FacetHandlers allow you to use an indexFieldName that differs from the facet name. BrowseSelection uses the indexFieldName to filter the BrowseResult. However, there is no way to retrieve the indexFieldName from the FacetHandler, if it differs from the facet handler name.
Ideally, the the facet handler name should be used for the BrowseSelection in stead of the index field name, since the indexFieldName is an implementation detail of the facet handler. The BrowseRequest should figure out the indexFieldName for itself based on the facet handler name reference. And I believe that in previous version of Bobo Browse it worked that way.
Especially if you configure a facet handler through xml, you have no way to know the indexFieldName if it differs from the name unless you introduce additional customizations.
If we are required to initialize a BrowseSelection with an indexFieldName, we should have a way to get the indexFieldName from a facet handler after it has been initialized through a "getIndexFieldName". And for consistency purposes, this is the function that the library should use to retrieve the indexFieldName in order to avoid the accidental references to the wrong field that have occurred over time.