Original Algorithm:

    Surname Original Modified
1. Transcode first characters of name:    
MAC » MCC MACINTOSH MCANT MCANTA[S]
KN » NN KNUTH NNAT NATH
K » C KOEHN C CAN
PH » FF PHILLIPSON FFALAP[SAN] FALAPS[AN]
PF » FF PFEISTER FFASTA[R] FASTAR
SCH » SSS SCHOENHOEFT SSANAF[T] SCANAF[T]
2. Transcode last characters of name:    
EE » Y MCKEE MCY MCY
IE » Y MACKIE MCY MCY
DT » D HEITSCHMIDT HATSNA[D] HATSNA[D]
RT » D BART BAD BAD
RD » D HURD HAD HAD
NT » D HUNT HAD HAD
ND » D WESTERLUND WASTAR[LAD] WASTAR[LAD]
4. Transcode remaining characters by following these rules, incrementing by one character each time:    
EV » AF, else A,E,I,O,U » A CASSTEVENS CASTAF[AN] CASTAF[AN]
Q » G VASQUEZ VASG VASG
Z » S FRAZIER FRASAR FRASAR
M » N BOWMAN BANAN BANAN
KN » N MCKNIGHT MCNAGT MCNAGT
K » C RICKERT RACAD RACAD
SCH » SSS DEUTSCH DATS DATS
PH » FF WESTPHAL WASTFA[L] WASTFA[L]
([^AEIOU])H » $1 SHRIVER SHRAVA[R] SRAVAR
(.)H[^AEIOU] » $1 KUHL C CAL
([AEIOU])W» $1 RAWSON RASAN RASAN
5. If last character is S, remove it JILES JAL JAL
6. If last characters are AY, replace with Y CARRAWAY CARAY CARY
7. If last character is A, remove it YAMADA YANAD YANAD

Modified Algorithm:

    Surname Original Modified
1. if the first character of the name is a vowel, remember it EDWARDS EDWARD EDWAD
2. remove all 'S' and 'Z' chars from the end of the name EDWARDS EDWARD EDWAD
PEREZ PAR PAR
3. transcode initial strings    
MAC » MC MACINTOSH MCANT MCANTA[S]
PF » F PHILLIPSON FFALAP[SAN] FALAPS[AN]
4. Transcode trailing strings as follows,    
IX » IC HADDIX HADAX HADAC
EX » EC ESSEX ESAX ESAC
YE » Y MOYE MAY MY
EE » Y MCKEE MCY MCY
IE » Y MACKIE MCY MCY
DT » D HEITSCHMIDT HATSNA[D] HATSNA[D]
RT » D BART BAD BAD
RD » D HURD HAD HAD
NT » D HUNT HAD HAD
ND » D WESTERLUND WASTAR[LAD] WASTAR[LAD]
5. transcode 'EV' to 'EF' if not at start of name EVERS EVAR EVAR
6. use first character of name as first character of key DEVITO DAFAT DAFAT
7. remove any 'W' that follows a vowel RAWSON RASAN RASAN
8. replace all vowels with 'A' SHOULDERS SHALDA[R] SALDAR
9. transcode 'GHT' to 'GT' LEIGHTON LAGTAN LAGTAN
10. transcode 'DG' to 'G' WOOLDRIDGE WALDRA[DG] WALDRA[G]
11. transcode 'PH' to 'F' OLIPHANT OLAFAD OLAFAD
12. if not first character, eliminate all 'H' preceded or followed by a vowel HATCHETT HATCAT HATCAT
13. change 'KN' to 'N', else 'K' to 'C' MCKNIGHT MCNAGT MCNAGT
RICKERT RACAD RACAD
14. if not first character, change 'M' to 'N' BOWMAN BANAN BANAN
15. if not first character, change 'Q' to 'G' VASQUEZ VASG VASG
16. transcode 'SH' to 'S' BASHAW BAS BAS
17. transcode 'SCH' to 'S' SCHOENHOEFT SSANAF[T] SCANAF[T]
18. transcode 'YW' to 'Y' HEYWOOD HAYWAD HAD
19. if not first or last character, change 'Y' to 'A' HAYMAN HAYNAN HANAN
20. transcode 'WR' to 'R' SEAWRIGHT SARAGT SARAGT
21. if not first character, change 'Z' to 'S' KRATZER CRATSA[R] CRATSA[R]
22. transcode terminal 'AY' to 'Y' CANADAY CANADY CANADY
23. remove trailing vowels CREPEAU CRAP CRAP

Back to the NYSIIS page