How to script a multi-match

Hi, I am trying to understand how a multi-match score could be scripted.
Consider a list of publications, with sample data items like

{ "title": "Sounds of Silence", "author": [ { "first": "Paul", "last"_ "Simon" }, {  "first": "Art", "last": "Garfunkel" } ] }

Now I would like to start with matching just authors, so I need a multi-match on "first" and "last" fields. For the lastname, I want to use a similarity function like daitch_mokotoff phonetic, for the first name I would like to add synonyms (e.g. Bob/Robert, Dick/Richard, Tim/Timothy)
For the scoring I envision something like
last name match: 1 point adjusted by spelling distance for 1 match, 1.5 points for a double match
first name match: minimal contribution for first name only, value from last name multiplied by 1,3 for single or 1.6 for double first name match.
I definitely do not want tf/idf for the names but would rather increase ranks for authors with many publications.

It would be great to allow searches like "T. Leary" with the abbreviation only for first name. It is no problem to replace "." in user input by *, but I would probably need to verify that the T. matches on a first name rather than a last name

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.