From: evan@hpl.hp.com (Evan Kirshenbaum)
Subject: RFC: ASCII representation of IPA (technical draft)
Date: Thu, 3 Sep 1992 20:57:51 GMT
Reply-To: kirshenbaum@hpl.hp.com
Organization: Hewlett-Packard Laboratories

After consideration, I decided that it would probably be better to
just post my draft and discuss it on line.  Again, this document is
meant for people already familiar with phonology and IPA.  Once we
decide what symbols should mean what, we really need another document
full of examples for non-linguists.

Evan Kirshenbaum
    HP Laboratories
    3500 Deer Creek Road, Building 26U
    Palo Alto, CA  94304

    kirshenbaum@hpl.hp.com
    (415)857-7572


---------Cut Here------------------------

This is a first cut at a scheme for representing IPA transcriptions in
ASCII for use in Usenet articles and email.  The following guidelines
were kept in mind:

        o It should be usable for both phonemic and narrow phonetic
          transcription.

        o It should be possible to represent *all* symbols and
          diacritics in the IPA.

        o The previous guideline notwithstanding, it is expected that
          (as in the past) most use will be in transcribing English,
          so where tradeoffs are necessary, decisions should be made
          in favor of ease of representation of phonemes which are
          common in English.

        o The representation should be readable.

        o It should be possible to mechanically translate from the
          representation to a character set which includes IPA.  The
          reverse would also be nice.

In order to be able to represent a wide range of segments while making
common segments easy to type, we allow more than one representation
for a given segment.  Each segment has an "explicit" representation,
which is a set of features between curly braces ("{" and "}").  Each
feature is represented as a three letter abbreviation taken from a
standardized set.  The phoneme /b/ (a voiced, bilabial stop) could be
represented as /{vcd,blb,stp}/.  A first cut at the feature set
appears in appendix A below.

The word "tag" could thus be represented phonemically as
        /{vls,alv,stp}{low,fnt,unr,vwl}{vcd,vel,stp}/
and phonetically as
        [{vls,asp,alv,stp}{low,fnt,lng,unr,vwl}{unx,vcd,vel,stp}]

This works, but it's a bit of a pain.  To simplify transcription, we
allow an "implicit" representation for a segment which consists of a
(generally alphabetic) symbol followed by diacritics.  Thus /b/ stands
for /{vcd,blb,stp}/.  Case is significant (/n/ and /N/ are different
segments).  The segment symbols are given in appendix B below.

The word "tag" can thus be represented phonemically as
        /tAg/

The diacritics for a segment are represented between angle brackets
("<" and ">") and consist of symbols or features.  (In the common case
where the diacritic symbol is a single character which does not encode
a segment, the brackets may be removed.)  The features which the
diacritics map to override those of the segment.

The word "tag" thus becomes narrowly
        [t<asp>A<lng>g<unx>]
or
        [t<h>A<:>g<o>]
or
        [t<h>A:g<o>]

Some diacritic symbols encode more than one feature set.  Which one is
meant should be apparent from context.  For example, "~" stands for
"{nzd}" when attached to a vowel, but "{vzd}" when attached to a
consonant. 

Clicks are common to many languages (especially in Africa), but there
is no IPA diacritic that means "click".  Rather than use up several
characters for clicks (which are infrequent in the languages most
often discussed), we instead use the diacritic "!" after the
homorganic unvoiced stop.  Thus /t!/ (= /t<clk>/ = /{alv,clk}/) is the
sound commonly written "tsk" and used in English to show disapproval.

The complete set of diacritic symbols appears in appendix C below.
Appendix D contains representation of segments more or less ordered by
feature.

For transcription of any specific language a group can by convention
alter the character mappings (as an example, for Spanish /R/ may be
better used to represent /{alv,trl}/ than /{mid,cnt,rzd,vwl}/).  An
author may also press a little used symbol (for the language under
consideration) into service to highlight a distinction.  Such an
alteration should be made explicitly to avoid confusion.

Stress marks are prepended to the syllable they attach to.  "'"
signals primary stress, "," signals secondary stress.  Spaces should
be employed to separate words (cliticized words may be written
unseparated).  When discussing single words, it may be helpful to
insert a space before each word that doesn't carry a suprasegmental
marker.

The "I hear the secretary" for an American might be something like
        /aI hir D@ 'sEkrI,tAri/
while to an Englishman it might be more like
        /aI hi@ DI 'sEkr^tri/
  
Transcribing tone is harder.  Here's an attempt. For register tone
languages (e.g., Hausa, Navajo), numbers should be used with one being
the lowest.  Thus in Navajo, "1" is low tone and "2" is high.  In
Yoruba "1" is low, "2" is mid, and "3" is high.  The language's
"default" tone need not be specified.  For contour tone languages
(e.g., Mandarin, Thai), there is generally a numeric system in place
(Mandarin: "1" is high, "2" is rising, "3" is falling rising, "4" is
falling).  The tone indication should follow the syllable (vowel?).

The symbol "#" is used to represent a syllable or word boundary.

References

  Peter Ladefoged, A Course in Phonetics, 2nd ed., Harcourt Brace
  Jovanovich, 1982.

  Unicode Consortium, The Unicode Standard, Version 1.0, Volume 1,
  Addison-Wesley, 1991


Appendix A.  Feature Abbreviations

vcd     voiced              nas     nasal            fnt     front
vls     voiceless           orl     oral             cnt     center
                            apr     approximant      bck     back
blb     bilabial            vwl     vowel
lbd     labio-dental        lat     lateral          unr     unrounded
dnt     dental              ctl     central          rnd     rounded
alv     alveolar            trl     trill
rfx     retroflex           flp     flap             asp     aspirated
pla     paleto-alveolar     clk     click            unx     unexploded
pal     paletal             ejc     ejective         syl     syllabic
vel     velar               imp     implosive        mrm     murmured
lbv     labio-velar                                  lng     long
uvl     uvular              hgh     high             vzd     velarized
phr     pharyngeal          smh     semi-high        lzd     labialized
glt     Glottal             umd     upper-mid        pzd     palatalized
                            mid     mid              rzd     rhoticized
stp     stop                lmd     lower-mid        nzd     nasalized
frc     fricative           low     low


Appendix B.  Segment Symbols

This table lists the symbol, the associated feature set, and the
Unicode character code and name for the corresponding IPA character.
In some cases (e.g., /I/) there are multiple IPA characters in use for
the segment.  I have listed both.  In some cases (e.g. /j/), the IPA
symbol seems to be ambiguous (generally between an approximant and the
homorganic voiced fricative).

The entries marked with "??" are those that I am least sure of.  When
I have listed more than one possibility for a symbol, the first is my
current preference.

a {low,bck,unr,vwl}     U+0251 LATIN SMALL LETTER SCRIPT A
b {vcd,blb,stp}         U+0062 LATIN SMALL LETTER B
c {vls,pal,stp}         U+0063 LATIN SMALL LETTER C
d {vcd,alv,stp}         U+0064 LATIN SMALL LETTER D
e {umd,fnt,urd,vwl}     U+0065 LATIN SMALL LETTER E
f {vls,lbd,frc}         U+0066 LATIN SMALL LETTER F
g {vcd,vel,stp}         U+0067 LATIN SMALL LETTER G
                        U+0261 LATIN SMALL LETTER SCRIPT G
h {glt,apr}             U+0068 LATIN SMALL LETTER H
i {hgh,fnt,unr,vwl}     U+0069 LATIN SMALL LETTER I
j {pal,apr}/{vcd,pal,frc} U+006A LATIN SMALL LETTER J
k {vls,vel,stp}         U+006B LATIN SMALL LETTER K
l {vcd,alv,lat}         U+006C LATIN SMALL LETTER L
m {blb,nas}             U+006D LATIN SMALL LETTER M
n {alv,nas}             U+006E LATIN SMALL LETTER N
o {umd,bck,rnd,vwl}     U+006F LATIN SMALL LETTER O
p {vls,blb,stp}         U+0070 LATIN SMALL LETTER P
q {vls,uvl,stp}         U+0071 LATIN SMALL LETTER Q
r {alv,apr}             U+0279 LATIN SMALL LETTER TURNED R
s {vls,alv,frc}         U+0073 LATIN SMALL LETTER S
t {vls,alv,stp}         U+0074 LATIN SMALL LETTER T
u {hgh,bck,rnd,vwl}     U+0075 LATIN SMALL LETTER U
v {vcd,lbd,frc}         U+0076 LATIN SMALL LETTER V
w {lbv,apr}/{vcd,lbv,frc} U+0077 LATIN SMALL LETTER W
x {vls,vel,frc}         U+0078 LATIN SMALL LETTER X
y {hgh,fnt,rnd,vwl}     U+0079 LATIN SMALL LETTER Y
z {vcd,alv,frc}         U+007A LATIN SMALL LETTER Z

A {low,fnt,unr,vwl}     U+00E6 LATIN SMALL LETTER A E
B    -- Unused --
C {vls,pal,frc}         U+00E7 LATIN SMALL LETTER C CEDILLA
D {vcd,dnt,frc}         U+00F0 LATIN SMALL LETTER ETH
E {lmd,fnt,unr,vwl}     U+025B LATIN SMALL LETTER EPSILON
F {vls,blb,frc}         U+03A6 GREEK CAPITAL LETTER PHI
G {vcd,uvl,stp}         U+0262 LATIN LETTER SMALL CAPITAL G
H {vls,phr,frc}         U+0127 LATIN SMALL LETTER H BAR
I {smh,fnt,unr,vwl}     U+026A LATIN LETTER SMALL CAPITAL I
                        U+0269 LATIN SMALL LETTER IOTA
J {vcd,pal,stp}         U+025F LATIN SMALL LETTER DOTLESS J BAR
K   -- Unused --
L {vcd,vel,lat}     ??  U+026B LATIN SMALL LETTER L WITH MIDDLE TILDE
                        U+029F LATIN LETTER SMALL CAPITAL L
  {vls,alv,lat,frc} ??  U+026C LATIN SMALL LETTER L BELT
M {pal,nas}         ??  U+0272 LATIN SMALL LETTER N HOOK
  {lbd,nas}         ??  U+0271 LATIN SMALL LETTER M HOOK
N {vel,nas}             U+014B LATIN SMALL LETTER ENG
O {lmd,bck,rnd,vwl}     U+0254 LATIN SMALL LETTER OPEN O
P   -- Unused --
Q   -- Unused --
R {mid,cnt,rzd,vwl} ??  U+025A LATIN SMALL LETTER SCHWA HOOK
  {alv,trl}         ??  U+0280 LATIN LETTER SMALL CAPITAL R
S {vls,pla,frc}         U+0283 LATIN SMALL LETTER ESH
T {vls,dnt,frc}         U+03B8 GREEK SMALL LETTER THETA
U {smh,bck,rnd,vwl}     U+028A LATIN SMALL LETTER UPSILON
                        U+0277 LATIN SMALL LETTER CLOSED OMEGA
V {vcd,blb,frc}         U+03B2 GREEK SMALL LETTER BETA
W {lmd,fnt,rnd,vwl} ??  U+0153 LATIN SMALL LETTER O E
X {vcd,vel,frc}         U+0263 LATIN SMALL LETTER GAMMA
Y {umd,fnt,rnd,vwl} ??  U+00F8 LATIN SMALL LETTER O SLASH
  {lmd,fnt,rnd,vwl} ??  U+0153 LATIN SMALL LETTER O E
Z {vcd,pla,frc}         U+0292 LATIN SMALL LETTER YOGH

? {glt,stp}             U+0294 LATIN SMALL LETTER GLOTTAL STOP
@ {mid,cnt,unr,vwl}     U+0259 LATIN SMALL LETTER SCHWA
^ {lmd,bck,unr,vwl}     U+028C LATIN SMALL LETTER TURNED V
* {vcd,alv,flp}         U+027E LATIN SMALL LETTER FISHHOOK R

Appendix C.  Diacritics

~ Vowels: {nzd}         U+0303 NON-SPACING TILDE
  Consonants: {vzd}     U+0334 NON-SPACING TILDE OVERLAY
: {lng}                 U+02D0 MODIFIER LETTER TRIANGULAR COLON
- Vowels: {unr}           -- No equivalent --
  Consonants: {syl}     U+0329 NON-SPACING VERTICAL LINE BELOW
! {clk}                   -- No equivalent --
. Vowels: {rnd}           -- No equivalent --
  Consonants: {rfx}     U+0322 NON-SPACING RETROFLEX HOOK BELOW
                        U+0323 NON-SPACING DOT BELOW
' {ejc}                 U+02BC MODIFIER LETTER APOSTROPHE
d {dnt}                 U+032A NON-SPACING BRIDGE BELOW
h {asp}                 U+02B0 MODIFIER LETTER SMALL H
j {pzd}                 U+02B2 MODIFIER LETTER SMALL J
                        U+0321 NON-SPACING PALATALIZED HOOK BELOW
o {unx}             ??  U+02DA SPACING RING ABOVE
  {vls}             ??  U+0325 NON-SPACING RING BELOW
r {rzd}                 U+02B3 MODIFIER LETTER SMALL R
w {lzd}                 U+02B7 MODIFIER LETTER SMALL W
                        U+032B NON-SPACING INVERTED DOUBLE ARCH BELOW
H {mrm}                 U+02B1 MODIFIER LETTER SMALL H HOOK
                        U+0324 NON-SPACING DOUBLE DOT BELOW
Appendix D.  Segments

Where a segment requires more than one character to represent and
there is a single IPA character, the Unicode code and name is noted.
If I couldn't find an IPA symbol for a segment, I left it out.

{blb,nas}       /m/
{vls,blb,stp}   /p/
{vcd,blb,stp}   /b/
{vls,blb,frc}   /F/
{vcd,blb,frc}   /V/
{blb,trl}       /b<trl>/  U+0299 LATIN LETTER SMALL CAPITAL B
{blb,imp}       /b<imp>/  U+0253 LATIN SMALL LETTER B HOOK
{blb,ejc}       /b<'>/
{blb,clk}       /p!/      U+0298 LATIN LETTER BULSEYE

{lbd,nas}       /m<lbd>/  U+0271 LATIN SMALL LETTER M HOOK
                  (perhaps /M/)
{vls,lbd,frc}   /f/
{vcd,lbd,frc}   /v/
{lbd,apr}       /r<lbd>/  U+028B LATIN SMALL LETTER SCRIPT V

{dnt,nas}       /n<d>/
{vls,dnt,stp}   /t<d>/
{vcd,dnt,stp}   /d<d>/
{vls,dnt,frc}   /T/
{vcd,dnt,frc}   /D/
{dnt,apr}       /r<d>/
{dnt,lat}       /l<d>/
{dnt,imp}       /d<imp>/ (same as {alv,imp})
{dnt,ejc}       /b<',d>/
{dnt,clk}       /t!/      U+0287 LATIN SMALL LETTER TURNED T
                  (by rights this should be alveolar, but the alveolar
                   and palatal clicks use the same symbol (/c!/))

{alv,nas}       /n/
{vls,alv,stp}   /t/
{vcd,alv,stp}   /d/
{vls,alv,frc}   /s/
{vcd,alv,frc}   /z/
{alv,apr}       /r/
{alv,lat}       /l/
{alv,trl}       /r<trl>/  U+0072 LATIN SMALL LETTER R
                (perhaps /R/)
{alv,flp}       /*/
{vls,alv,lat,frc} /s<lat>/  U+026C LAIN SMALL LETTER L BELT
                (perhaps /L/)
{vcd,alv,lat,frc} /z<lat>/  U+026E LATIN SMALL LETTER L YOGH
{alv,imp}       /d<imp>/  U+0257 LATIN SMALL LETTER D HOOK
{alv,ejc}       /t<'>/
{alv,clk}       /c!/ (same as {pal,clk})

{rfx,nas}       /n./      U+0273 LATIN SMALL LETTER N RETROFLEX HOOK
{vls,rfx,stp}   /t./      U+0288 LATIN SMALL LETTER T RETROFLEX HOOK
{vcd,rfx,stp}   /d./      U+0256 LATIN SMALL LETTER D RETROFLEX HOOK
{vls,rfx,frc}   /s./      U+0282 LATIN SMALL LETTER S HOOK
{vcd,rfx,frc}   /z./      U+0290 LATIN SMALL LETTER Z RETROFLEX HOOK
{rfx,apr}       /r./      U+027B LATIN SMALL LETTER TURNED R HOOK
{rfx,lat}       /l./      U+026D LATIN SMALL LETTER L RETROFLEX HOOK
{rfx,flp}       /*./      U+027D LATIN SMALL LETTER R HOOK

{vls,pla,frc}   /S/
{vcd,pla,frc}   /Z/

{pal,nas}       /M/
{vls,pal,stp}   /c/
{vcd,pal,stp}   /J/
{vls,pal,frc}   /C/
{vcd,pal,frc}   /C<vcd>/  U+029D LATIN SMALL LETTER CROSSED-TAIL J
                (perhaps /j/ (same as {pal,apr}))

{pal,apr}       /j/
{rnd,pal,apr}   /j<rnd>/  U+0265 LATIN SMALL LETTER TURNED H
{pal,lat}       /l<pal>/  U+028E LATIN SMALL LETTER TURNED Y
{pal,imp}       /J<imp>/  U+0284 LATIN SMALL LETTER DOTLESS J BAR HOOK
{pal,clk}       /c!/      U+0297 LATIN LETTER STRETCHED C

{vel,nas}       /N/
{vls,vel,stp}   /k/
{vcd,vel,stp}   /g/
{vls,vel,frc}   /x/
{vcd,vel,frc}   /X/
{vel,apr}       /j~/      U+0270 LATIN SMALL LETTER TURNED M WITH LONG
                                 LEG
{vel,lat}       /L/
{vel,imp}       /g<imp>/  U+0260 LATIN SMALL LETTER G HOOK
{vel,ejc}       /k<'>/
{vel,clk}       /k!/      U+029E LATIN SMALL LETTER TURNED K

{lbv,nas}       /n<lbv>/  Written as "ng" with tie above
{vls,lbv,stp}   /t<lbv>/  Written as "kp" with tie above
{vcd,lbv,stp}   /d<lbv>/  Written as "gb" with tie above
{vls,lbv,frc}   /w<vls>/    U+028D LATIN SMALL LETTER TURNED W
                  (perhaps /w<o>/)
{vcd,lbv,frc}   /w/  (same as {lbv,apr})
{lbv,apr}       /w/

{uvl,nas}       /n<uvl>/  U+0274 LATIN LETTER SMALL CAPITAL N
{vls,uvl,stp}   /q/
{vcd,uvl,stp}   /G/
{vls,uvl,frc}   /x<uvl>/  U+03C7 GREEK SMALL LETTER CHI
{vcd,uvl,frc}   /X<uvl>/  (same as {uvl,apr})
{uvl,apr}       /X<uvl>/  U+0281 LATIN LETTER SMALL CAPITAL INVERTED R
{uvl,trl}       /r<uvl>/  U+0280 LATIN LETTER SMALL CAPITAL R
{vls,uvl,imp}   /q<imp>/  U+02A0 LATIN SMALL LETTER Q HOOK
{vcd,uvl,imp}   /G<imp>/  U+029B LATIN LETTER SMALL CAPITAL G HOOK

{vls,phr,frc}   /H/
{vcd,phr,frc}   /H<vcd>/  U+0295 LATIN LETTER REVERSED GLOTTAL STOP

{glt,stp}       /?/
{glt,apr}       /h/
{mrm,glt,frc}   /h<H>/    U+0266 LATIN SMALL LETTER H HOOK

{vcd,lat,flp}   /*<lat>/  U+027A LATIN SMALL LETTER TURNED R WITH LONG
                                 LEG 
{lat,clk}       /l!/      U+0296 LATIN LETTER INVERTED GLOTTAL STOP

{hgh,fnt,unr,vwl} /i/
{hgh,fnt,rnd,vwl} /y/
{smh,fnt,unr,vwl} /I/
{smh,fnt,rnd,vwl} /I<rnd>/  U+028F LATIN LETTER SMALL CAPITAL Y
{umd,fnt,unr,vwl} /e/
{umd,fnt,rnd,vwl} /Y/
{lmd,fnt,unr,vwl} /E/
{lmd,fnt,rnd,vwl} /W/
                    (perhaps /Y/)
{low,fnt,unr,vwl} /A/
{low,fnt,rnd,vwl} /A./      U+0276 LATIN LETTER SMALL CAPITAL O E

{hgh,cnt,unr,vwl} /i<cnt>/  U+0268 LATIN SMALL LETTER BARRED I
{hgh,cnt,rnd,vwl} /u<cnt>/  U+0289 LATIN SMALL LETTER U BAR
{umd,cnt,unr,vwl} /@<umd>/  U+0258 LATIN SMALL LETTER REVERSED E
{umd,cnt,unr,rzd,vwl} /R<umd>/ U+025D LATIN SMALL LETTER REVERSED EPSILON
                                      HOOK 
{mid,cnt,unr,vwl} /@/
{mid,cnt,unr,rzd,vwl} /R/
{mid,cnt,rnd,vwl} /@./      U+0275 LATIN SMALL LETTER BARRED O
{lmd,cnt,unr,vwl} /^<cnt>/  U+025C LATIN SMALL LETTER REVERSED EPSILON
{lmd,cnt,rnd,vwl} /O<cnt>/  U+025E LATIN SMALL LETTER CLOSED REVERSED
                                   EPSILON
{low,cnt,unr,vwl} /a<cnt>/  U+0061 LATIN SMALL LETTER A
                    (for many languages this is the main /a/)
                    (what do we do about U+0250 LATIN SMALL LETTER
                    TURNED A?) 

{hgh,bck,unr,vwl} /u-/      U+026F LATIN SMALL LETTER TURNED M
{hgh,bck,rnd,vwl} /u/
{umd,bck,unr,vwl} /o-/      U+0264 LATIN SMALL LETTER BABY GAMMA
{umd,bck,rnd,vwl} /o/
{lmd,bck,unr,vwl} /^/
{lmd,bck,rnd,vwl} /O/
{low,bck,unr,vwl} /a/
{low,bck,rnd,vwl} /a./      U+0252 LATIN SMALL LETTER TURNED SCRIPT A

Newsgroups: sci.lang