Hi Jim,
I hoped someone more experienced would have answered your question,
unfortunately not so.
I assume you are familiar with javascript and my "solution" sets the
background color of those items that match more then once. I do this
with the rowStyler (see tabular-view manual). The rowStyler is a
function that gets called with some arguments, but since you need to
iterate over all facets, you need an extra parameter. So copy the
Exhibit.TabularView.prototype._reconstruct method from the exhibit
source to your own script file (that you load after loading the
Exhibit apis) and change the lines (two times):
self._settings.rowStyler(
item.id, database, tr, i);
into
self._settings.rowStyler(
item.id, database, tr, i, collection);
Then define this rowStyler:
var facetMatchStyler = function(item, database, tr, tel, collection) {
for (var i in collection._facets) {
var facetSelection = collection._facets
[i].exportFacetSelection();
if (facetSelection) {
var expression = collection._facets
[i]._expression;
var results = expression.evaluate({"value":item},
"value":"item"},"value",database);
var itemSet = results.values;
// assume all facets are list-facets!
var nrMatches = Exhibit.Set.createIntersection
(itemSet,
collection._facets[i]._valueSet).size();
if (nrMatches > 1) {
tr.style.background = 'red';
}
}
}
}
Last step is to add this rowStyler to your tabular view:
ex:rowStyler="facetMatchStyler"
I realise this is absolutely not quality code, the real solution is
probably to do a feature request on the bug tracker.
Michiel