The NYSIIS modifier is used with the PARTIAL2 routine to match two (2) strings, using an algorithm based on a standard NYSIIS algorithm.
Improved NYSIIS Algorithm
- If there are any numerics in the string, return a blank code.
- Blank out all non-alphabetic characters.
- If the string is all blanks, return a blank code.
- Capitalize all letters in the string.
-
Translate the following first character(s) of the string:
From characters To characters MAC
MCC
KN
NN
K
C
PH and PF
FF
WR and RH
RR
DG
GG
-
Translate the following last character(s) of the string:
From characters To characters S or Z
Blank
EE or IE or YE
Y
DT or RT or RD
D
NP or ND
N
IX
IC
EX
EC
JR or SR
Blank
- Set the first character of code with the first character of the string.
-
Translate the following character(s) that occur after the first character string:
From characters To characters EV
AF
E, I, O, U
A
Y
A, when not last character
Q
G
Z
S
M or KN
N
K
C
PH
FF
H
Replace with preceding character when preceded or followed by a vowel.
W
Replace with preceding character when preceded by a vowel.
SCH
SSA when SCH is at end of string, or, SSS when SCH is not at end of string.
SH
SA when SH is at end of string, or, SS when SH is not at end of string.
GHT
TTT
DG
GG
WR
RR
- Add letter to code if not same as preceding letter of code; do this until a 10 character code is created or until the string has no more characters.
-
Change the last letter(s) of code:
From characters To characters S
Blank
AY
Y
A
Blank
Table 1. Scoring for NYSIIS Modifier Score
Description 100
Codes are equal (excludes blank versus blank).
80
Blank code versus blank code.
75
Blank code versus non-blank code.
0
Code is not equal.