I've been experimenting with various search tools for SMW, and there's a lot a very cool features distributed amongst them.
What I'd like to work on, is bring the features I like the most, together into one tool.
What I've been digging lately:
1. Woogle4Mediawiki : this is the best indexer/free text search I've used so far. I like that it indexes the rendered page, which is necessary for all my externalData-built pages. And I've been happy with the kind of results I get, the ranking, etc. It works as a replacement to the existing search
2. Semantic Results Format, with the Simile/Exibit/Facet Result filtering. To me, this is totally awesome, and the best way to leverage all this semantic information in my pages.
Here's how I'd really like my searching/filtering to work:
1. A free-text search, like already exists, which uses woogle for the results.
2. Then, on the results page, I’d like to see the individual results, along with facets for particular properties. I’d like to use those facets to filter the search results.
3. I’ll need to also be able to PICK which properties I want to use as facets, depending on the results returned.
4. I may want to display particular properties for each returned page as well
This functionality already exists, separately in different modules:
“Ask query”: syntax let’s me decide which terms I want to use as facets, and which terms I want to display
“Semantic Results Format” with “Exhibit” : handles the display of the facets, and the filtering, using AJAX
“Woogle4Mediawiki” : handles the free-text search.
What could be the best way to intergrate the intelligence of these various modules?
I was thinking, one possibility, could be to extend the #ask query, to support a free-text search, which leverages woogle4mediawiki for that part of it, then uses those results to get the requested properties (using
ASK syntax), passes through to Semantic Results Format, etc.
What do you all think? Has work like this already been done? Are there existing function hooks I can tie in to? I wouldn't want to reinvent the wheel.
Any comments, advice, criticism, etc greatly appreaciated.
Metropolitan Museum of Art