Years ago I had a similar problem. Names were originally entered as they would be signed, and then the database had to be changed to separate them.
The bottom line is that it's just about impossible to do it programmatically. There needs to be enough fields and the person doing the data entry has to know enough to assign the various names to the correct fields.
My sister will tell you emphatically that her first name is not Mary, it's Mary Ann. There are loads of names like that: Bobby Joe, Betty Jo, Betty Sue, Betty Ann, Peggy Sue, Mary Jane. There are also less common names such as Jean Claude and Jean Paul, so you can't just make a list of about 10 exceptions.
The same for Italian surnames like della Rosa, Hispanic names like de la Fortuna, Irish names with Mc, Scottish name with Mac, etc.
Hispanic surnames are a special problem. In some countries (I think mainly Mexico but I'm not sure) the "surname" routinely used is the mother's surname rather than the father's. Often the names will be hyphenated, i.e., the son of Maria Garcia and Juan Sanchez will list his name as Pedro Garcia-Sanchez. When not hyphenated, he would most likely be listed as Pedro Garcia, not Pedro Sanchez. If the name is not hyphenated, Americans would consider him to be Pedro Sanchez, but his family and records might be listed the other way. (There are a lot of areas in South Texas where Spanish is the predominant language of everyday use even among those born in the U.S. and fluent in both English and Spanish, and in such areas they often have a tendency to use the "mother's surname only" unofficially.)
|