I have two types assuming Type A and Type B and both of them are associated with each other. Now in the node browser when I search for some property in Type A and another in Type B together, it does not produce any result but when I use the OR keyword, it shows the content of both types. Is there any way to achieve this?
Solved! Go to Solution.
Associations are not relevant to search at all because they are not indexed. What you are seeing is the correct behavior because you are trying to AND properties on two different types and there will be no node that matches that query. The OR works because the search engine is returning hits that match the first clause or the second.
You did not include your type definitions or your query, so I am forced to assume, but, if, for example, you want to find results that match a query and you want to find the documents associated to those hits that also match a query, you will have to find the first set, then iterate over the set inspecting all associated nodes to see if the associated nodes match the query.
This is of course very inefficient and is why ECM repositories like Alfresco (and many others) start to break down when you need to do relational queries. It simply isn't a relational system.
Importing your data into another repository that allows more query flexibility (like a relational database or a JSON document store) is often a good approach when you have a need to do queries on node relationships.
Associations are not relevant to search at all because they are not indexed. What you are seeing is the correct behavior because you are trying to AND properties on two different types and there will be no node that matches that query. The OR works because the search engine is returning hits that match the first clause or the second.
You did not include your type definitions or your query, so I am forced to assume, but, if, for example, you want to find results that match a query and you want to find the documents associated to those hits that also match a query, you will have to find the first set, then iterate over the set inspecting all associated nodes to see if the associated nodes match the query.
This is of course very inefficient and is why ECM repositories like Alfresco (and many others) start to break down when you need to do relational queries. It simply isn't a relational system.
Importing your data into another repository that allows more query flexibility (like a relational database or a JSON document store) is often a good approach when you have a need to do queries on node relationships.
Thank you Jeff. Here is my table. Student details is one type and Sports activity is another. Each row of Student detail is and Sports activity represent a content so multiple content in sports activity is associated with student details. For example the rows cricket-wicketkeeper-3-state, football-goalkeeper-5-national, hockey-defender-2-district are associated with the row Niraj. I get that associations are not indexed, and if I search for Name:"Niraj" AND Sport:"Cricket", I would not get any result. Storing in a relational system is not possible. So can you provide a solution for this?
Ask for and offer help to other Alfresco Content Services Users and members of the Alfresco team.
Related links:
By using this site, you are agreeing to allow us to collect and use cookies as outlined in Alfresco’s Cookie Statement and Terms of Use (and you have a legitimate interest in Alfresco and our products, authorizing us to contact you in such methods). If you are not ok with these terms, please do not use this website.