herd
herd copied to clipboard
UI - Filter BDef search results by multiple Categories
As a Data Analyst I want to filter Related Data Entities listed on the Category Page based on facets so I can narrow in on Data Entities of interest
Acceptance Criteria
- As a user selects multiple Categories within a Header, they are combined as OR logic in the Related Entities search results
- As a user selects multiple Categories across headers, they are combined as AND logic in the Related Entities search results
- Checkboxes by the selected facets should render as unchecked
- Each selection the user makes checks the box and triggers the search and refreshes the result list.
- When the result list is refreshed, the facet display counts must be refreshed as well - but facet list is never updated
- Note - all selections are one state - if user selects one checkbox, then another, then another, they do not go back, back, back.
- If user drills down and comes back to this page, their filter selections should be prefilled and the search will execute fresh
- User is able to clear all filters with a single click
Example - a list of related data entities has the following facets:
- TagType1 = A (1), B = (3), C = (5)
- TagType2 = X (4), Y (3)
The user selects A, B for TagType1, and X under TagType2 The logic will return BDef that are tagged with:
- (A OR B) AND X
Example in Code
<businessObjectDefinitionSearchRequest>
<businessObjectDefinitionSearchFilters>
<businessObjectDefinitionSearchFilter>
<businessObjectDefinitionSearchKeys>
<businessObjectDefinitionSearchKey>
<tagKey>
<tagTypeCode>TagType1</tagTypeCode>
<tagCode>A</tagCode>
</tagKey>
</businessObjectDefinitionSearchKey>
<businessObjectDefinitionSearchKey>
<tagKey>
<tagTypeCode>TagType1</tagTypeCode>
<tagCode>B</tagCode>
</tagKey>
</businessObjectDefinitionSearchKey>
</businessObjectDefinitionSearchKeys>
</businessObjectDefinitionSearchFilter>
<businessObjectDefinitionSearchFilter>
<businessObjectDefinitionSearchKeys>
<businessObjectDefinitionSearchKey>
<tagKey>
<tagTypeCode>TagType2</tagTypeCode>
<tagCode>X</tagCode>
</tagKey>
</businessObjectDefinitionSearchKey>
</businessObjectDefinitionSearchKeys>
</businessObjectDefinitionSearchFilter>
</businessobjectDefinitionSearchFilters>
</businessObjectDefinitionSearchRequest>