Request for Feature Enhancement (RFE) Summary: |
When using property predicates in the search rail, it shouldn't matter what listOrder they are assigned and that listOrder shouldn't change how the query. Currently, some listOrders make the query search on every property and other listOrders correctly searches for the term on the property it points to. Obviously the location of the search facet in the search rail should not change the query. For example, a listOrder of 35 gives this query: xpath: /jcr:root/content/dam//element(*, dam:Asset)[(jcr:contains(jcr:content/metadata/@nord.row.item.brand, 'nike'))] and searches for "nike" in the jcr:content/metadata/nord.row.item.brand metadata field. However, change the listOrder of the search facet to 36 and the query changes to: xpath: /jcr:root/content/dam//element(*, dam:Asset)[(jcr:contains(., 'nike'))] and search on ALL metadata fields for "nike." This is obviously a bug, but the support team told me to open an enhancement ticket - you can find the ticket under: CQ-4332860. Additionally, if you check both the case insensitive and partial search options, the search doesn't work at all for property predicate fields. I believe this is already an acknowledge bug though. |
Use-case: |
Clients would like to search for metadata using the property predicate and only have results for that metadata property |
Current/Experienced Behavior: |
Currently, some listOrders make the query search on every property and other listOrders correctly searches for the term on the property it points to. Obviously the location of the search facet in the search rail should not change the query. For example, a listOrder of 35 gives this query: xpath: /jcr:root/content/dam//element(*, dam:Asset)[(jcr:contains(jcr:content/metadata/@nord.row.item.brand, 'nike'))] and searches for "nike" in the jcr:content/metadata/nord.row.item.brand metadata field. However, change the listOrder of the search facet to 36 and the query changes to: xpath: /jcr:root/content/dam//element(*, dam:Asset)[(jcr:contains(., 'nike'))] and search on ALL metadata fields for "nike." This is obviously a bug, but the support team told me to open an enhancement ticket |
Improved/Expected Behavior: |
The property predicate only returns results for the metadata field it points to. |
Environment Details (AEM version/service pack, any other specifics if applicable): |
It's been so long that we have tired to get this bug fixed I'm not even sure when we first noticed it. I believe it was around 6.5 when we switched from using the fulltext predicate to the property predicate more to get |
Customer-name/Organization name: |
Freedom Marketing. We have seen this in all of our clients on 6.5. |
Screenshot (if applicable): |
Please see ticket CQ-4332860 for screenshots and query examples |
Code package (if applicable): |
|