The search rules are roughly
Take the supplied search string and
Strip out ' characters
Split everything into words
Throw away duplicate words
Ignore the, a, an, etc.
Match all words against dance (author, book, recording) names in the database
As a special case any word ending 's is stored in the index as both the word with and without the possessive s on the end. (Hence a search on Walpole will find both Walpole Cottage and Lady Walpole's Reel.)
If you get a full match then that's the winner
Otherwise report all dances (authors, ...) that match, sorting the results by the number of matching words
This means that a search for (the nonexistent) Lady Godiva's Reel will find Lady Walpole's Reel and reels belonging to various other ladies, followed by a mass of dances with titles containing one of the words Lady or Reel. Were a there dance called Godiva's Gallop then it would be found, but buried in amongst all the other single-word-match results. (Maybe I should do something clever to push more selective words up the results table.)
For added cunning, the word matching is actually done three times, first as an exact match, then (provided you have typed at least 3 letters) as a match against any word starting with those letters and then
using Soundex - this is an algorithm cooked up a hundred years ago, where a word is basically mapped to the initial letter followed by just its consonants, with consonants batched into half-a-dozen similar-sounding groups (so B and V map to the same, as do D and T)
hence mapping both Playford and Plaifurt to P4163 (or, more usefully, both MacGregor and McGregor to M2626). (See Knuth 3 Sorting and Searching if you are desperate.)