levmichael / saphon

South American Phonological Inventory
4 stars 0 forks source link

'Cannot identify phone in allophone list' for [Akuntsu, Jorá, Kamayurá, Mbyá (Mbyá do Brasil), Guajá (Guajá do Caru), Mundurukú do Cururu, Nheengatú (upper Rio Negro), ParintintinTenharim, Siriono, Tupinambá, Urubu Kaapor, Xetá] #40

Closed michael-pollack closed 8 months ago

michael-pollack commented 9 months ago

From Akuntsu, rng=[1]

Requesting 'Akuntsú' lang tab from index 1 and caching at newlangs\Akuntsu.tsv

Cannot find identity phone e in allophone list ['eː', 'ɛː'] for proc list ['eː-lengthening', 'ɛː-lowering', 'ɛː-lengthening']
Cannot find identity phone o in allophone list ['oː', 'uː'] for proc list ['oː-lengthening', 'uː-raising', 'uː-lengthening']
Cannot find identity phone ẽ in allophone list ['ẽː', 'ɛ̃ː'] for proc list ['ẽː-lengthening', 'ɛ̃ː-lowering', 'ɛ̃ː-lengthening']
michael-pollack commented 9 months ago

Jorá, rng=[19]

Cannot find identity phone b in allophone list ['β'] for proc list ['lenition', 'spirantization']
Problem parsing proc 'lenition': 'NoneType' object has no attribute 'strip'
michael-pollack commented 9 months ago

Kamayurá, rng=[23]

Cannot find identity phone w in allophone list ['β̥'] for proc list ['spirantization', 'devoicing']
Problem parsing proc 'spirantization': 'NoneType' object has no attribute 'strip'
Cannot find identity phone w in allophone list ['β̥'] for proc list ['spirantization', 'devoicing']
Problem parsing proc 'spirantization': 'NoneType' object has no attribute 'strip'
michael-pollack commented 9 months ago

Mbyá (Mbyá do Brasil), rng=[33]

Cannot find identity phone ɨ in allophone list ['ɨ̃'] for proc list ['MPP=LNsyll:py?i', 'MPP=LNsyll:suffixes']
Problem parsing proc 'MPP=LNsyll:py?i': 'NoneType' object has no attribute 'strip'
Cannot find identity phone i in allophone list ['ĩ'] for proc list ['MPP=LNsyll:py?i', 'MPP=LNsyll:suffixes']
Problem parsing proc 'MPP=LNsyll:py?i': 'NoneType' object has no attribute 'strip'
michael-pollack commented 9 months ago

Guajá (Guajá do Caru), rng=[15]

Cannot find identity phone a in allophone list ['ɐ', 'ɐ̰'] for proc list ['ɐ̰-glottal constriction']
Proc phone ɐ̰ does not match allophone ɐ
Cannot find identity phone a in allophone list ['ɐ', 'ɐ̰'] for proc list ['ɐ̰-glottal constriction']
Proc phone ɐ̰ does not match allophone ɐ
Cannot find identity phone ã in allophone list ['ɐ̃', 'ɐ̰̃'] for proc list ['ɐ̰̃-glottal constriction']
Proc phone ɐ̰̃ does not match allophone ɐ̃
Cannot find identity phone ã in allophone list ['ɐ̃', 'ɐ̰̃'] for proc list ['ɐ̰̃-glottal constriction']
Proc phone ɐ̰̃ does not match allophone ɐ̃
michael-pollack commented 9 months ago

Mundurukú do Cururu, rng=[35]

Cannot find identity phone ɨ in allophone list ['ɨ̞̠'] for proc list ['backing', 'lowering']
Cannot find identity phone ɨ in allophone list ['ɨ̞̠'] for proc list ['backing', 'lowering']
Cannot find identity phone ɛ in allophone list ['ɛ̃', 'ɪ̞̃'] for proc list ['MPP=LDNH']
michael-pollack commented 9 months ago

Nheengatú (upper Rio Negro), rng=[39]

Cannot find identity phone a in allophone list ['ə̃', 'ã'] for proc list ['LN:V']
Cannot find identity phone a in allophone list ['ə̃', 'ã'] for proc list ['LN:V']
Cannot find identity phone a in allophone list ['ə̃', 'ã'] for proc list ['LN:V']
Cannot find identity phone u in allophone list ['ũ', 'õ'] for proc list ['LN:V']
Cannot find identity phone u in allophone list ['ũ', 'õ'] for proc list ['LN:V']
Cannot find identity phone u in allophone list ['ũ', 'õ'] for proc list ['LN:V']
michael-pollack commented 9 months ago

ParintintinTenharim, rng=[45]

Cannot find identity phone w in allophone list ['w̃', 'ŋʷ'] for proc list ['LDNH']
Cannot find identity phone j in allophone list ['ɲ', 'j̃'] for proc list ['LDNH']
michael-pollack commented 9 months ago

Siriono, rng=[49]

Cannot find identity phone e in allophone list ['ë'] for proc list ['centralization', 'backing']

michael-pollack commented 9 months ago

Tupinambá, rng=[57]

Cannot find identity phone b in allophone list ['β'] for proc list ['lenition', 'spirantization']
Cannot find identity phone ɲ in allophone list ['j', 'ʒ'] for proc list ['LO:stressed']
michael-pollack commented 9 months ago

Urubu Kaapor, rng=[59]

Cannot find identity phone k in allophone list ['ɡ', 'ɣ'] for proc list ['ɡ-voicing', 'ɣ-lenition', 'ɣ-spirantization']
Cannot find identity phone k in allophone list ['ɡ', 'ɣ'] for proc list ['ɡ-voicing', 'ɣ-lenition', 'ɣ-spirantization']
michael-pollack commented 9 months ago

Xetá, rng=[63]

Cannot find identity phone k in allophone list ['ɣ'] for proc list ['lenition', 'spirantization', 'voicing']
Cannot find identity phone k in allophone list ['ɣ'] for proc list ['lenition', 'spirantization', 'voicing']
Cannot find identity phone k in allophone list ['ɣ'] for proc list ['lenition', 'spirantization', 'voicing']
Cannot find identity phone k in allophone list ['ɣ'] for proc list ['lenition', 'spirantization', 'voicing']
Cannot find identity phone k in allophone list ['ɣ'] for proc list ['lenition', 'spirantization', 'voicing']
Cannot find identity phone ɾ in allophone list ['ʀ', 'x'] for proc list ['ʀ-uvularization', 'ʀ-trilling', 'x-fortition']
rsprouse commented 9 months ago

Cross-referencing #37 for allophone list.

rsprouse commented 9 months ago

An example from Akuntsu allophones line 232: {e, {eː, ɛː}, $'_, {eː-lengthening, ɛː-lowering, ɛː-lengthening}}

Note that there are two processes associated with ɛː.

rsprouse commented 9 months ago

Let's try changing the mapping of allophones to processes (for those that specify environments and processes) in the allophones list to the following:

Definition: A phone prefix is a phone character, followed by a hyphen, before a process name, e.g. ɛ is a phone prefix for ɛ-lowering.

rsprouse commented 8 months ago

Sample strings that could be mapped and the required result for each:

{e, {e, ɛ}, @, ɛ-lowering}:

phone: e
allophones:
  - e
  - ɛ
environment: @
process:
  - allophone: ɛ      # Allophone is required to be in original string as phone prefix
    name: [lowering]

{s, {s, tʃ, ʃ}, {_i, i_}, {tʃ-fortition, tʃ-palatalization, ʃ-palatalization}}

phone: s
allophones:
  - s
  - tʃ
  - ʃ
environment:
  - _i
  - i_
  - process:
    - allophone: tʃ
      name: [tʃ-fortition, tʃ-palatalization]
    - allophone: ʃ
      name: [ʃ-palatalization]

{t, n, _+Ṽ, XMP=LN:t}

phone: t
allophones:
  - n
environment: _+Ṽ
process:
  - allophone: n      # Allophone not required in original string and is interpolated
    name: [XMP=LN:t]

{e, {eː, ɛː}, $'_, {eː-lengthening, ɛː-lowering, ɛː-lengthening}}

phone: e
allophones:
  - eː
  - ɛː
environment: $'_
process:
  - allophone: eː      # Allophone is required to be in original string as phone prefix
    name: [lengthening]
  - allophone: ɛː
    name: [lengthening, lowering]

{p, p} # Simple example that does not require environment or processes in original string

phone: p
allophones:
  - p
environment: 
process: 
rsprouse commented 8 months ago

After recent updates to the alloprocs function many of these errors are no longer present. Closing this issue, and individual remaining errors can be addressed separately.