Hi, Does anybody have any experience with building federated search using opensearch and/or proprietary APIs of Atlassian's products?
Many Atlassian's products have built in full-text search modules (running on top of Lucene I think) that provide interesting and sometimes quite advanced search features (including recommendations and identification of similar or "the-like" documents). However, there does not seem to be any easy way how to allow users search across multiple CMSs in useful way (or is there?) - aka federated search. Atlassian seems to provide opensearch API in some products (1.1 version still in draft since 2005!) or proprietary API (REST based for example) that is subject to change with every product update. As far as I understand opensearch is quite limited as well as the mentioned REST API is. The later is bit more advanced but documentation for their search API seems to be quite brief and learning how to do sorting, phrase querying, boosting or anything more advanced then simple term query sounds like spending time experimenting. I believe the only reasonable and efficient way how to allow federated search is to pull the content from individual CMSs into new search server (like Solr for example). However, this may sound like reinventing the wheel to the customers ("Atlassian product owns the data and their developers invested a lot of resources into all the fancy search features, right? Why to build it again?"). So, I would like to hear from anybody who can prove me wrong on my opinion that unless I can grab, pull (steal if you will) and index the data again then there is no way how to build something really useful. By "more useful" I mean something more then just sending term queries into individual CMSs and merging individual search results (which does not allow building facets in efficient way, does not allow good sorting and filtering, does not allow scoring control... etc... not to mention spell checking, search suggestions, did you mean ...). Regards, Lukas