XLFNAME ;CIOFO-SF/TKW,MKO-Utilities for person name fields ;03/31/15 09:30
Source file <XLFNAME.m>
Name | Comments | DBIA/ICR reference |
---|---|---|
STDNAME(XUNAME,XUFLAG,XUAUD) | ;Standardize name XUNAME
; XUNAME - In, name to be standardized. Out, standardized name ; XUFLAG - In, "C" : return components in XUNAME array ; "F" : Assume input is in general form ; Family,Given Middle Suffix ; "G" : Don't return XUAUD("GIVEN") ; "P" : Remove parenthetical text |
|
BLDSTD(XUNAME,XUNM,XUOUT,XUAUD) | ;Build standard name in XUNAME
|
|
GIVFRST | ;Come here if name has no comma.
|
|
NAMECOMP(XUNM) | ;Build components from standard name
|
|
MOVSUF(XUREST,XUOUT,XURESTO,XUAUD,XUMOV) | ;Move suffixes immediately in front to the end
|
|
PUNC(XUNAME,XUAUD) | ;Remove name pieces that are purely punctuation
|
|
N2(XUREST,XUNM,XUOUT,XURESTO,XUAUD,XUFLAG) | ;Build components from non-family name
|
|
JOIN(S1,S2) | ;Return S1 joined with S2 (separate by a space)
|
|
NAMEFMT(XUNAME,XUFMT,XUFLAG,XUDLM) | ;Name formatting routine
|
|
CLEANC(XUPART,XUFLAG,XUAUD) | ;Component standardization
|
|
BLDNAME(XUNC,XUMAX) | ;Build standard name from components
|
|
HLNAME(XUNAME,XUFLAG,XUDLM) | ;Convert name to HL7 format
|
|
FMNAME(XUNAME,XUFLAG,XUDLM) | ;Convert HL7 name string to standard name or name components
|
|
PRE | ;Pre-install for patch XU*8.0*134
|
|
POST | ;Post-install for XU*8.0*134 (conversion)
|
|
GENERATE | ;Generate information in ^XTMP about changes that will take
|
|
;Print the information in ^XTMP
|
||
CONVERT | ;Convert the Names in the New Person file
|
Name | Field # of Occurrence |
---|---|
$$NAMEFMT^XLFNAME | HLNAME+4 |
$$CHKSUF^XLFNAME1 | STDNAME+55, N2+20 |
$$CHKSUF1^XLFNAME1 | MOVSUF+3 |
$$CLEANC^XLFNAME1 | STDNAME+32, STDNAME+35, STDNAME+47, STDNAME+49, GIVFRST+4, GIVFRST+7 |
$$PARENS^XLFNAME1 | STDNAME+21 |
$$ROMAN^XLFNAME1 | STDNAME+61, N2+21 |
CLEANCX^XLFNAME1 | CLEANC+1 |
NAMEFMTX^XLFNAME1 | NAMEFMT+1 |
SUFEND^XLFNAME1 | STDNAME+39, GIVFRST+11 |
POST^XLFNAME3 | POST+1 |
PRE^XLFNAME3 | PRE+1 |
PRINT^XLFNAME4 | PRINT+1 |
CONVERT^XLFNAME5 | CONVERT+1 |
GENERATE^XLFNAME5 | GENERATE+2 |
F^XLFNAME6 | FMNAME+1 |
Name | Line Occurrences |
---|---|
$$JOIN | STDNAME+61, STDNAME+66, PUNC+6, N2+23, N2+24, N2+31, N2+32, N2+35, N2+36 |
$$NAMEFMT | BLDNAME+1 |
$$PUNC | STDNAME+33, STDNAME+36, STDNAME+48, STDNAME+50, GIVFRST+5, GIVFRST+8 |
BLDSTD | STDNAME+69, GIVFRST+22, GIVFRST+30 |
GIVFRST | STDNAME+27 |
MOVSUF | STDNAME+51 |
N2 | STDNAME+52, GIVFRST+29, NAMECOMP+2 |
>> | Not killed explicitly |
* | Changed |
! | Killed |
~ | Newed |
Name | Field # of Occurrence |
---|---|
I | STDNAME+11~, STDNAME+17*, BLDSTD+2~, BLDSTD+16*, BLDSTD+17, BLDSTD+18 |
J | BLDSTD+2~, BLDSTD+18~* |
S1 | JOIN~, JOIN+1 |
S2 | JOIN~, JOIN+1 |
U | N2+40 |
X | N2+1~, N2+21*, N2+22 |
XUAUD | STDNAME~, STDNAME+15!*, STDNAME+22, STDNAME+32, STDNAME+33, STDNAME+35, STDNAME+36, STDNAME+39, STDNAME+47, STDNAME+48 , STDNAME+49, STDNAME+50, STDNAME+51, STDNAME+52, STDNAME+69, BLDSTD~, GIVFRST+4, GIVFRST+5, GIVFRST+7, GIVFRST+8 , GIVFRST+11, GIVFRST+22, GIVFRST+29, GIVFRST+30, MOVSUF~, PUNC~, N2~, CLEANC~ |
XUAUD("FAMILY" | STDNAME+31* |
XUAUD("GIVEN" | STDNAME+70!, BLDSTD+9*, GIVFRST+18*, GIVFRST+31! |
XUAUD("MIDDLE" | N2+30* |
XUAUD("NM" | N2+42* |
XUAUD("NOTE" | STDNAME+24* |
XUAUD("NUMBER" | BLDSTD+13* |
XUAUD("PUNC" | PUNC+5* |
XUAUD("SPACE" | BLDSTD+6* |
XUAUD("STRIP" | STDNAME+22* |
XUAUD("SUFFIX" | STDNAME+40*, MOVSUF+8*, N2+18*, N2+19*, N2+22* |
XUC | PUNC+1~, PUNC+4*, PUNC+5, PUNC+6 |
XUCNT | STDNAME+56~, STDNAME+58*, STDNAME+59, STDNAME+60, STDNAME+64, STDNAME+65, GIVFRST+1~, GIVFRST+12*, GIVFRST+15, GIVFRST+25 , GIVFRST+26, MOVSUF+1~, MOVSUF+2*, MOVSUF+3, MOVSUF+4, N2+1~, N2+3*, N2+7, N2+11 |
XUDLM | NAMEFMT~, HLNAME~, HLNAME+4, FMNAME~ |
XUF | HLNAME+1~, HLNAME+2*, HLNAME+3*, HLNAME+4 |
XUFAM | STDNAME+11~, STDNAME+32*, STDNAME+33*, STDNAME+39, STDNAME+41 |
XUFAMO | STDNAME+13~, STDNAME+35*, STDNAME+36*, STDNAME+39, STDNAME+41 |
XUFLAG | STDNAME~, STDNAME+12, STDNAME+20, STDNAME+27, STDNAME+70, GIVFRST+18, GIVFRST+31, N2~, N2+16, NAMEFMT~ , CLEANC~, HLNAME~, HLNAME+2, HLNAME+3, FMNAME~ |
XUFMT | NAMEFMT~ |
XUGIVEN | N2+1~, N2+9*, N2+31*, N2+44, N2+45 |
XUGIVENO | N2+2~, N2+9*, N2+32*, N2+46 |
XUI | MOVSUF+1~, MOVSUF+3*, MOVSUF+4, MOVSUF+5, MOVSUF+6, MOVSUF+7, PUNC+1~, PUNC+3*, PUNC+4, N2+1~ , N2+11*, N2+12, N2+13, N2+18, N2+19, N2+22, N2+30 |
XUMAX | BLDNAME~, BLDNAME+1 |
XUMIDDLE | N2+1~, N2+9*, N2+16, N2+27*, N2+38 |
XUMIDO | N2+2~, N2+9*, N2+27*, N2+39 |
XUMOV | STDNAME+11~, STDNAME+51, STDNAME+59, STDNAME+60, STDNAME+64, STDNAME+65, MOVSUF~, MOVSUF+2*, MOVSUF+5* |
XUNAM | GIVFRST+1~, GIVFRST+4*, GIVFRST+5*, GIVFRST+11, GIVFRST+12, GIVFRST+25 |
XUNAME | STDNAME~, STDNAME+14*, STDNAME+15, STDNAME+18*, STDNAME+20, STDNAME+21*, STDNAME+22, STDNAME+24, STDNAME+27, STDNAME+31 , STDNAME+32, STDNAME+35, STDNAME+44, STDNAME+69, BLDSTD~, BLDSTD+3!*, BLDSTD+5*, BLDSTD+6*, BLDSTD+8*, BLDSTD+10* , BLDSTD+11*, BLDSTD+12*, BLDSTD+13, GIVFRST+4, GIVFRST+5, GIVFRST+7, GIVFRST+22, GIVFRST+30, PUNC~, PUNC+3 , PUNC+4, NAMEFMT~, HLNAME~, HLNAME+4, FMNAME~ |
XUNAME( | BLDSTD+16, BLDSTD+17*, BLDSTD+18* |
XUNAMO | GIVFRST+1~, GIVFRST+7*, GIVFRST+8*, GIVFRST+11, GIVFRST+26 |
XUNC | BLDNAME~, BLDNAME+1 |
XUNEW | PUNC+1~, PUNC+2*, PUNC+6*, PUNC+7 |
XUNM | STDNAME+11~, STDNAME+39, STDNAME+52, STDNAME+69, BLDSTD~, GIVFRST+11, GIVFRST+22, GIVFRST+29, GIVFRST+30, NAMECOMP~ , NAMECOMP+1, NAMECOMP+2, N2~ |
XUNM( | STDNAME+17* |
XUNM("FAMILY" | STDNAME+41*, BLDSTD+5, GIVFRST+16*, GIVFRST+25*, NAMECOMP+1* |
XUNM("GIVEN" | STDNAME+55, STDNAME+57, STDNAME+61, STDNAME+62*, BLDSTD+8, N2+6*, N2+45* |
XUNM("MIDDLE" | STDNAME+55, BLDSTD+10, NAMECOMP+3*, N2+38*, N2+40, N2+41* |
XUNM("SUFFIX" | STDNAME+40, STDNAME+58, STDNAME+59, STDNAME+60, STDNAME+61*, BLDSTD+11, GIVFRST+16, GIVFRST+17*, NAMECOMP+4*, N2+35* |
XUOUT | STDNAME+11~, STDNAME+12*, STDNAME+13, STDNAME+17, STDNAME+34, STDNAME+39, STDNAME+41, STDNAME+46, STDNAME+51, STDNAME+52 , STDNAME+63, STDNAME+69, BLDSTD~, BLDSTD+3, BLDSTD+16, GIVFRST+6, GIVFRST+11, GIVFRST+19, GIVFRST+22, GIVFRST+26 , GIVFRST+29, GIVFRST+30, MOVSUF~, MOVSUF+7, N2~, N2+2*, N2+6, N2+9, N2+13, N2+24 , N2+27, N2+32, N2+36, N2+39, N2+41, N2+46 |
XUOUT( | STDNAME+17* |
XUOUT("FAMILY" | STDNAME+41*, GIVFRST+20*, GIVFRST+26* |
XUOUT("GIVEN" | STDNAME+66, STDNAME+67*, N2+6*, N2+46* |
XUOUT("MIDDLE" | N2+39*, N2+41* |
XUOUT("SUFFIX" | STDNAME+64, STDNAME+65, STDNAME+66*, GIVFRST+20, GIVFRST+21*, N2+36* |
XUPART | CLEANC~ |
XUREST | STDNAME+11~, STDNAME+44*, STDNAME+45, STDNAME+47, STDNAME+48, STDNAME+49*, STDNAME+50*, STDNAME+51, STDNAME+52, GIVFRST+25* , GIVFRST+29, MOVSUF~, MOVSUF+2, MOVSUF+3, MOVSUF+6*, N2~, N2+3, N2+6, N2+12, N2+19 |
XURESTO | STDNAME+13~, STDNAME+47*, STDNAME+48*, STDNAME+51, STDNAME+52, GIVFRST+26*, GIVFRST+29, MOVSUF~, MOVSUF+7*, N2~ , N2+6, N2+13 |
XUSP | STDNAME+11~, STDNAME+45*, STDNAME+57 |
XUSUF | N2+1~, N2+9*, N2+23*, N2+34, N2+35 |
XUSUF1 | STDNAME+56~, STDNAME+59*, STDNAME+61, STDNAME+64*, STDNAME+66 |
XUSUF2 | STDNAME+56~, STDNAME+60*, STDNAME+61, STDNAME+65*, STDNAME+66 |
XUSUFFIX | N2+1~, N2+16, N2+17*, N2+20*, N2+21*, N2+22, N2+23 |
XUSUFO | N2+2~, N2+9*, N2+24*, N2+36 |
XUX | N2+1~, N2+12*, N2+18, N2+19, N2+20, N2+27, N2+31 |
XUXO | N2+2~, N2+13*, N2+24, N2+27, N2+32 |