How does Funnelback figure out when and when not to display spelling suggestions?
Considering the phrase 'Employee Self Service', I get the following results from searching for misspelled words.
employe - No results, suggests 'employee'
sel - No results, suggests 'self'
employe self - No results, no suggestion
employee sel - No results, no suggestion
employe sel - No results, suggests 'employees'
I have fmo=true set in the query processor options, so that could be interfering with the second and third ones, but I would have expected spelling suggestions for cases 3, 4 and 5 above. It seems to only display suggestions if there's a single term, and based on case 5 above seems to be focusing on single term suggestions.
Is this expected behaviour or have I set something up wrong?
The primary issue you're encountering here is the use of multi-term queries with spelling suggestions.
The test queries and responses you provided are helpful - the first and second examples certainly seem to work as intended.
Funnelback requires a word to exist a certain number number of times in a corpus before it is considered as a candidate for a spelling suggestion. This source is only generated from individual words, though:
A similar approach is required for multi-term queries (or phrases you might expect to be suggested as corrections). Adding these phrases as titles or link text to documents would be one way to ensure the phrases exist in annotations, in addition to having click logs where users have searched for 'employee self service' and clicked on a result. Having them exist solely as plain text content phrases will not result in those phrases/multi-term queries being considered as candidate suggestions.
Alternative sources of spelling suggestions are also available:
Thanks Gordon. I knew everything you said but as I read your explanation it seemed to crystalize, so very helpful indeed.
Based on what you've explained I think the issue we have is the site is still very new and very small (and for internal staff only) so a lot of the things that would inform spelling suggestions is not there or has not accumulated yet. I had a look and there actually isn't a page called 'Employee Self Service', there's not even links with that text. So I'm guessing that when the spelling suggestion came up for 'employee' it was from one page, and when 'self' was suggested it came from another page, but since the two words together doesn't actually exist anywhere in the index it would not - could not - be suggested.
Spelling suggestions obviously far more complex than I first thought, but for good reason. Thanks again for helping me understand.
So I have a follow-up question. Slightly different issue (let me know if you think I should raise a new post for this). I can't get spelling suggestions to display for the search term 'accessib'. Obviously a spelling mistake but we have many pages that have the term 'accessibility'. Searching for 'accessib' returns zero results and displays a spelling suggestion for 'access', but not a suggestion for 'accessibility'.
I noticed when searching via the admin interface that the drop-down for query completion when I type in 'accessib' provides 2 options: 'accesible' and 'accessibility' (I'm aware these suggestions come from the actual words indexed).
Searching for 'access', 'accessible' and 'accessibility' separately yield the following result counts:
'access' - 516 results
'accessible' - 131 results
'accessibility' - 51 results
So, my questions are:
1> I'm assuming Funnelback will not match on partial words, and will not match on spelling suggestions (I can see why this could be disastrous in some cases). Hoping someone could confirm.
2> I'm also assuming Funnelback, when determining spelling suggestions, displays the suggestion with the highest yield/weighting. Again hoping to confirm my understanding.
3> Finally an actuial question, does spelling suggestions only return a single option, or can we configure more suggestions to be returned?