Repository navigation
Description
Part of #747. Needs phase 2 and the language tags from the classification sub-issues.
The semantics (decisions/vocabulary-model): the default loads every language. A pack prefers its language: it settles clashes where its language has a vocabulary reading. A strict pack also drops other languages' name-level readings. Packs are sets of languages, so combining them is order-independent. Vocabulary in a non-Latin script is always on, because it selects itself by script. A pack can outrank a reading derived by a shape rule (Ma. Cristina, where Ma. is María).
Open: how today's locales packs move onto this; region and script subtags beyond zh-Hans/zh-Hant; whether third parties can ship packs.
Pack-specific issues are linked here as sub-issues.
Status (2026-11-02). Shipped in 3.0's cycle:
- 3a, the reading index: Add the reading index and share the vocabulary compiler (#753, 3a) #941.
- 3b,
Locale.languages: Add Locale.languages: a choice of languages selects the pool (#753, 3b) #945. - 3c, the pack-shaped exclusions as readings off by default: Turn the pack-shaped exclusions into readings off by default (#753, 3c) #946.
- 3j, file-strict: File-strict: parser_for(..., strict=True) reads only the chosen languages' files (#753, 3j) #986, designed in Design: file-strict, a strict choice reads only the chosen files (#753) #985.
parser_for(..., strict=True)reads only the chosen languages' files, plus native-script vocabulary. - The packs:
neAdd locales.NE, the first language pack: a choice of ne (3.0, 3d) #955;hi/bnAdd the Hindi and Bengali packs, locales.HI and locales.BN (3.0, 3e) #958;cs/sk/sl/hrAdd the Czech, Slovak, Slovenian and Croatian packs (3.0, 3f) #957, withcs/skturning ontwo_family_namesin Read two family names in the Czech and Slovak packs (3.0, 3f amended) #973;ga/gd/pt-BRAdd the ga, gd and pt-BR language packs (3.0, 3h) #956;es/ptAdd the Spanish and Portuguese packs, locales.ES and locales.PT (3.0, 3g) #964.esturns ontwo_family_names, with Leave a listed given name out of two_family_names' family (rules/O6, #959) #961's given-name veto;ru's irregular patronymicsНикитичandСаввич: Read Никитич and Саввич as patronymics under locales.RU (#994) #996.
The title-run connective (Ministro de Hacienda Juan Pérez) was declined on measurement, and is recorded in decisions/vocabulary-model's 3g entry. 3i, the bearers' languages of each name reading, is set aside: only name-strict needed it, and file-strict replaced name-strict (vocabulary-model-rfc.md, "Name-strict could not be built on the files").
Still open:
- an
ispack; - the transliterated honorifics Ship
hiandbnlocale packs for Latin-transliterated Indic honorifics #345 leaves; - a French pack for
père(Locale packs forAlexandre Dumas filsandJiří Dienstbier ml.: generational words that collide outside their language #684); - under a strict choice, the spaced
Ph. D.still reads as a credential wherePhDdoes not (ShouldJohn Smith Ph. D.read suffix 'Ph. D.' under a lexicon that lists nophd, such asparser_for(locales.PT, strict=True)orLexicon.empty()? #1000).
Activity
Alexandre Dumas filsandJiří Dienstbier ml.: generational words that collide outside their language #684hiandbnlocale packs for Latin-transliterated Indic honorifics #345Juan Sta. Mariaread familySta. Maria? Today it reads middleSta., familyMaria#725derek73 commentedon Oct 24, 2026
A first measured case for "a pack prefers its language": Nepali (
ne) against the Hindi and Marathi vocabulary.The nepal-candidates local corpus (#866) writes each of 125,331 local-election candidates in Devanagari beside the Election Commission's own romanization, so it shows two languages' vocabularies disagreeing about one word, with the writer's intent recorded beside it.
श्री(#870).hi.tomlandmr.tomllist it as a salutation (Shri, Mr.; #269), and in a Hindi or Marathi name that is right. In Nepali names it is also the first element of a given name:श्रीopening the nameShree193,Shri6,Sri2),Mrin 2श्रीglued into the given nameSo
श्री कृष्ण श्रेष्ठreads titleश्रीwhile its own romanizationShree Krishna Shresthareads givenShree.Buddha,Siddha,Gyani,Guru(#869). Title words in the default vocabulary (buddha/siddhareligious inen.toml,gyaniinpa.toml,guruthe renunciate title of #346), and the opening element of common Nepali compound given names:Buddha Bahadur Tamangreads titleBuddha, givenBahadur. Of the names opening with one of them, 172 read it as a title.Why this is a pack question and not a default change. Both readings are right for some language: the default loads every language, so it can only pick one, and either pick breaks the other language's names. Decision 6 (decisions/vocabulary-model) is the mechanism for exactly this: a
nepack that prefers its language settles the clash where Nepali has a vocabulary reading, readingश्रीandBuddhaas given-name elements, while the default and ahipack keep the salutation. The Phase 2 spec (#752) decides how the default gates title words that are also names (its D12); the Nepali cases may still belong to the pack rather than to the default gate, and that is recorded there.What a
nepack would carry, from these two issues: given-name readings forश्री(spaced, opening a name) and forbuddha,siddha,gyani,guruopening a compound given name, withश्रीमती(92 names, romanizedShreematiin 62 andMrs/Msin 11) left a salutation. The corpus's two scripts give the pack its own test: a Devanagari name and its romanization should read the same roles.derek73 commentedon Oct 25, 2026
Dotted and joined Nepali surnames for the
nepack (from #864, closed by #872)#872 keeps exactly two dotted single letters (
B.K.,K.C.,G.C.) as a name word at the end of a name, by shape, in the default. Some spellings are out of a shape rule's reach and belong to anepack that prefers a family reading:Ram Bahadur KC,BK,Bk).kcandbkare in no default set, so these already read as names, but nothing marks them as surnames. A pack can givebk,kc,gc,bcanddca family reading.dc/D.C., a live credential in the default: 99,172 NPPES providers write DC (Read a surname written as two dotted initials as a name, not a credential (#864) #872), against 21 nepal-candidates pairs ending in it. The default keeps the credential, andneshould flip it.Jane Doe MA R.T.), which rules/S3 records as an accepted cost in the default. Undernethe trailing pair should be the family.nepack would dropdc's credential reading outright.Counts, nepal-candidates (Election 2079, 126,981 name pairs), pairs whose romanized name ends in the word, any spelling:
bk2,168,kc497,gc79,bc70,dc21.K.C.alone is written 341 times,K.C126 andKc21.mcends 2 pairs andgdnone, so neither is on the list.Measure the pack against nepal-candidates' script pairs, comparing roles rather than text: the Devanagari spelling says which word is the surname. That is the spelling-consistency measure the phase 2 spec (#752) uses.
derek73 commentedon Oct 28, 2026
Phase 3 input: words kept out of the default vocabulary (#753)
Swept 2026-10-27 on master
cfe8bf92, read-only. Sources: everyexcludedentry innameparser/vocab/*.toml;docs/design/decisions/(Excluded, Declined and Open blocks, removal records, and every mention of a pack or an opt-in); PR #132; #18, #99 and the closed issues and PRs that list words; the open issues #658, #514, #804, #317, #345, #684, #725, #870 and #913, and #753's comments; the four Python locale packs. No bearer lookups were run: every count below is copied from its source.The two figures
Words whose readings already clash between languages: 9, the same as the 2026-10-27 count.
abd(ar bound_given, en suffix),i(ca/pl conjunction, de/mul generation),st(cs generation, en/fr particle and title),ra(de title, en suffix),sr(en suffix, es/pt title),do(en credential, pt particle),mc(en particle and credential, ga/gd particle),vd(en credential, nl particle).de(a preposition in es/fr/it/pt, an article in nl). Prefer or strict changes nothing forde, since both kinds compile intoPARTICLES.Of the 110 words that appear in more than one file, these are the only clashes.
Readings with
default = false: 3. They are csst(generation, starší), dei(generation, the regnal ordinal written with its period) and esh(generation, hijo). All three are generation words that a period makes look like an initial (rules/T5).What the inventory says
Most candidates are not about clashes. The 9 clashing words are nearly all a pack can settle under prefer. The (a) rows below are mostly readings that are missing from the default entirely, so the main job of phase 3 is to turn readings ON, not to settle clashes. That supports what the orchestrating session found.
Mechanisms: most (a) rows need
default = false(DF, 22) ordefault = falseplus strict (DF+ST, 27). DF+ST is the case where the reading is right in its own language and its collision is with another language's name:pan(Chinese surname Pan),bay(a Hungarian surname),nic(English Nic),puan(an Indonesian given name),fil(a Slavic surname), and the Dutchan/in/to/ten.Prefer alone is small. Only 3 (a) rows (ms
btagainst the en credential Bt, cyabagainst the en military title, csbcagainst nebc) plus the PO+PR and DF+PR mixes are settled by prefer as the RFC defines it.Same-language clashes cannot be settled by any pack (the
filsargument). Most of the 189 (c) rows are this kind:ông,segundo,thiru,malam.For several of these, the phase 2j route (a given reading plus the H9 title phrase, as
sheikh,sultanandkingtook) is a better fit than a pack. I marked those "phase 2j route".The (b) rows are 156:
herren,heren);bon,dí,heer,gravos);cva,gaee,np);rai,cha,mai);Alexandre Dumas filsreads familyfils#679);gil,kil,m',pour);attachedexclusions, whose collision is in the word's own script.Languages with enough candidates to justify a pack
ne: yes, and the evidence is the strongest of any language.bk(2,168 candidate names),kc(497),gc(79),bc(70) anddc(21), withdcflipped from the en credential.श्री(201 of 215 names).guru/गुरु, which Derek already assigned to anepack (2026-10-24).Every one of these is a name reading.
default = falseis not allowed on the name kinds, so this pack needs a mechanism today's model does not have (Q1).hi/bn(Shiphiandbnlocale packs for Latin-transliterated Indic honorifics #345): yes, for the Latin transliterations:smt,shrimati,sushri,shriyut,shri,mst,adhyapak(DF+ST). About 30 more rows are (c) because the word is a name in the same language:kumari,babu,begum,acharya,sardar,pandit,sant, and the Tier 4 deferrals of decisions/indic-honorifics.The Czech, Slovak, Slovenian and Croatian group: yes, but small.
ml/st(generation; csstis already DF while csmland the hr/sk/slstare excluded instead, Q4),pan,roz,bc, and possiblymudr/phdr/mgr(Should a bareIngafter a comma be a credential?Viera Sevcikova, Ingreads givenIng, familyViera Sevcikova#848).ga/gd: yes, small.nic(decisions name "an opt-in Irish pack" as its home),mhic/mic/uí, and the unaccentedni/ui.o,na,ógandmórare (c).nl(andde): a small (a) set, all of the same shape. These are the particles that were confirmed regressions globally (an,in,ten,then,to,v; PR Add German/Dutch prefixes and German title/degree suffixes #191). Strict only removes the Korean and Vietnamese readings that break them (Park In Hwan,Nguyen To Nga) if those readings are recorded as name readings in the vocabulary (Q2).pt-BR: yes, small. The single-letter agnomensF/N(Should José Silva Júnior read Júnior as a suffix, as José Silva Junior does, and where do Filho, Neto and Sobrinho belong? #843, which leaves them to phase 3 explicitly),filandsb(DF+ST and DF+PR), and the unvetted abbreviations.cy: a candidate list, never vetted. It comes from PR Tussenvoegsels / family name prefixes support #132:ap,ab,ferchspellings. Some may be safe in the default.nb/sv: 36 (c) rows, all from PR Tussenvoegsels / family name prefixes support #132. These are the farm-name position words (nord,vestre,øvre…). Nobody ever judged them, and a Norwegian registry measurement would have to come first.Every other language has 1 to 3 candidates. That is not enough for a pack on its own, but a pack file costs nothing once the mechanism exists:
bay, frpère, itsig, ltjaun, mia, brar;bt/bte/puan;lo;aït.The locale packs today
ZHcarries 556 surnames (Simplified, Traditional, ranked and compound forms). They are a segmentation list, outside the per-word model, likeKOREAN_SURNAMES. Its keep-outs are recorded in decisions: married double surnames (李林), Japanese surnames (佐藤), and unattested compounds (东野,成公,宗政).JA,RUandTR_AZcarry empty lexicons._pipeline/_post_rules.py: whole-wordoğlu,qızı,kızı,uulu,оглы,кызы,улы…, and the endings-ovich/-ович…Summary
411 candidate readings: 150 from the TOML
excludedentries (102 word-level, 48 property-level) and 261 from decisions/, closed and open issues and PRs (one row per word-reading; a few spellings of one decision are rows of their own).By verdict: (a) 66, (b) 156, (c) 189
Pack candidates (a) by language, with mechanism:
(languages with no (a) and fewer than three (c) rows are left out of this table; every row is in the full table)
(a) rows by mechanism: DF+ST 27, DF 22, PO 6, PR 3, pack removes a property 3, DF-prop+ST 2, PO+PR 2, DF+PR 1
Questions for the Phase 3 design
Can a pack carry a name reading? Every
necandidate (bk,kc,gc,bc,dc, spacedश्री,guru's given reading) is afamilyorgivenreading.default = falseis refused on the name kinds, and in the default a name reading is not inert: it gates a clashing reading or marks a fork. The design needs either a pack-only file that the default does not load, ordefault = falseon name readings.Strict sees only recorded name readings. DF+ST is the largest group (27 rows). In it, strict is supposed to remove the other language's name, for example Pan, In, To, Nic, Bay, Sig and Puan. It can do that only if that name is recorded as a name reading in some file. Several are not (for example
inandtoas Korean and Vietnamese given names). Does phase 3 need a sweep that records those name readings first, or should the pack carry the reading ungated?Properties, not only readings. 48 exclusions refuse a property on a reading the default keeps:
after_given,attached,cased,may_be_initial. The one-case connective fork (ept,ica/pl,ynl) is something a pack is meant to remove, and decisions/3-0-reevaluations records that a pack "cannot express 'remove e'". Shoulddefault = false(or its pack-side opposite) apply to a property, and can a pack remove one?One shape, two encodings. cs
stisdefault = false, while csmland the hr/sk/slstandmlare excluded as "pack-shaped". Should phase 3 convert pack-shaped exclusions intodefault = falsereadings, so that an excluded reading again means "wrong everywhere"? The sweep would make that distinction mechanical: every (a) row in the table is an exclusion that would become a reading.How a tag filters. cs/sk/sl/hr share
ml/st, and ms/id sharepuan,putraandputri, where a strict ms pack would drop the Indonesian readings it needs. Shouldptmatchpt-BR, which holds every agnomen candidate? (Open under Phase 3: language packs that prefer or restrict their language #753.)Latin transliterations under strict. The hi/bn Latin forms clash both with names elsewhere (Indonesian Sri) and with names in the same language (Indian Shri/Sri given-name elements). A strict hi pack settles only the first. Is the remaining same-language cost accepted per word, as
grafandherrawere?Not every candidate is a pack question. About a dozen (c) rows wait on a rule, not a word:
úrfollows the name;นายneeds a head peel;M.is initial-shaped;Dr. rer. nat.modifiers.Others want the default's H9 route instead:
earl,donandbaron(Should Baron, Bishop, Judge and the other title words borne as names read as names outside a title phrase? (Baron Davis→ title 'Baron', no given name) #913), and the Arabic and Indic given-name titles. Phase 4's[rules]table, or phase 2j-style batches, may be the right home for them rather than a pack.What moves from the Python packs. ZH's surname list stays a segmentation list, and the Turkic and East Slavic markers live in regexes. Do they become TOML readings (a new
patronymicreading onoğlu, and so on), or stay rule data under phase 4?Measuring a pack. The snapshot and
compare.pyparse under the defaultLexicon, so neither can show what a pack changes (decisions/3-0-reevaluations). The agreement records score CLDR names under their language's pack since Measure the CLDR corpus with each locale pack too #673, andnepal-candidatesholds everynecandidate. Does each pack need its own local-corpus reading, the waynewould neednepal-candidates?Method and limits
default = falsereading the pack turns on;?and were judged (b) for having no stated language or use.ben,nic,o), 3 exist only as another kind (ab,e,i), and 75 are absent.Baron Davis→ title 'Baron', no given name) #913's remaining title words are not enumerated in decisions/. Onlybaron,earlanddonappear here.derek73 commentedon Oct 28, 2026
Full table, part 1 of 2
Sorted by language tag, then verdict.
derek73 commentedon Oct 28, 2026
Full table, part 2 of 2
Sorted by language tag, then verdict.
derek73 commentedon Oct 28, 2026
Phase 3 probe: missing foreign titles and function-word/credential collisions
Read-only research for #753 (vocabulary Phase 3, language packs). Measured 2026-10-27 on
cfe8bf92(master after 2.7.0, 2.8 cycle open). No tracked file changed. Local corpora were read from the cache; nothing here quotes a real name. Every name below is made up.Words already recorded as excluded (
pan,ing,heer,mst, the cs/pl salutations) belong to the kept-out sweep in the comments above. They are marked "(recorded)" here and not reargued.Summary
M..Across the eight occupational families (professor, doctor, engineer, judge, senator, reverend, lawyer, architect), the vocabulary holds the English word, plus
prof,dr,dra,mgr,pastorandimam. It holds no bare full-word form in any other language: 0 of about 120 forms checked.Profa.,Prof.ª,Dott.ssa,Sig.ra,Dipl.-Ing.,Dr hab. inż.,MUDr.,Doç. Dr.,Mr. drs.. The whole gap is bare words, which become the given name (Profesor Juan Pérez→ given 'Profesor').titles ∪ titles_ambiguous. Most of those are English typos (mt,nr,mis,mss), English phrases (the hon,executors of,managing director) or job titles.m(French M.: 70 records, plus 40 non-UK filers'mboxes),engr/eng/ing,dott,sig,drs,mudr,jonkheer,panandbay, each at 2–11.tools/vocab/word_report.py --rank). Where they open a name at all, the word is a surname or given name:richter327,pan270,hakim186,don1,045,dona59.sig,pani,sigraanddipl-ing.profesoraandministroadded,Profesora de Historia Ana Lópezstill reads as title 'Profesora' and family 'de Historia Ana López'. Rule P1 folds the never-given particlede, and rule P4 says titles don't move the opening position.Ministro da Fazenda Carlos Souzareads as given 'da', becausedais an ambiguous particle.deanddaconjunctions globally fixes both phrases (title 'Profesora de Historia'), but it breaks every surname:Ana de Souza→ given 'Ana de Souza'.do,i,abd.am(de),ed(it),od(it, pl, cs),v(cs),se(cs),ala(ar).Haddad, Abdreads as family 'Haddad', suffix 'Abd'.el,des,les,il,lo,zum,zur,ten,ben,bou,ul,abi,dalla) collide with no suffix set.Languages where enough is missing to justify a pack (bare occupational forms, plus honorifics the default lacks):
de/daphrase problem.M.are missing.1. Titles that real filers write and the vocabulary misses (psc-individuals)
Population: 1,040,708 PSC records. 888,830 have a filed title box. The fold is
local_corpora.word_key. A box hits when every word in it is intitles ∪ titles_ambiguous.M.,Dipl-Ing,H.E.)Engr.,Ing.,Brig.,MUDr.,Drs.)Top misses, as boxes in key form, with each box's top nationalities. Boxes that were a filer's own name are left out.
Title boxes from non-UK nationalities, excluding the English core (mr, mrs, ms, miss, dr, prof, sir, lady, mx, dame, lord, rev). Hits and misses mixed:
The English words this turned up in passing, with nothing recorded about them (no TOML entry, no decisions mention):
revd,hrh,hh,hsh,eur(Eur Ing),engr,jonkheer,alhaji.veryas a modifier of Reverend:Very Reverend John Smith→ given 'Very'.HRH Prince Ali Haddad→ given 'HRH'. The H9 phrase never starts, because HRH is not a title.The Executors of John Smith→ given 'The Executors of John'. This is garbage input, but 110 filers wrote it.UKEC (15,213 multi-word names): 8,700 lead with a listed title. Among leading words not listed, only
the(29, which parses fine as "The Hon"),m(9),don(3) andmd(3) touch the candidate list. One period-shaped miss. UKEC adds nothing for foreign titles.2. Translated title families
Key: T = listed title. shape = not listed, but a title by rules/H2 when it opens a name with its period. — = missing (a bare form reads as the given name). risky = borne as a name (counts from
tools/name_usage.py --no-wikidatafor the six words checked, or from the PSC forename box). seen = the incidence the local corpora show where the word opens a name or follows a comma (word_report --rank). Nearly all of those openings are surnames or given names, not titles.Notes:
pr(French Pr., professeur) is listed as missing above. It already appears 1,366 times after a comma, and those PR/Pr are credentials (Public Relations, etc.).av(Turkish Av., Avukat) is a nb/sv particle.Av. Ahmet Yılmazstill reads title 'Av.', because the shape rule runs first.donanddonaare the clearest "risky" words. The Spanish honorific Don is also a common English given name, and Dona is one too. A pack could list them only for a caller who opted in.3. Function words that collide with credentials
Checked: the articles, prepositions and conjunctions of es, pt, fr, de, it, nl, pl, cs and tr, plus Arabic-in-Latin particles (≈250 words). Each was checked against
suffix_acronyms(SA),suffix_acronyms_ambiguous(SAamb),suffix_words(SW) andsuffix_words_ambiguous, and againstparticles(P),conjunctions(C),conjunctions_ambiguousandbound_given_names.parse()gives on a made-up nameMaria do Carmo Velasco→ given 'Maria', family 'do Carmo Velasco';Ana Velasco, DO→ suffix 'DO';Ana Velasco Do→ family 'Do' [SUFFIX_OR_NAME]Klaus am Rhyn→ middle 'am', family 'Rhyn' (family should be 'am Rhyn');Klaus Rhyn, AM→ suffix 'AM'Joan Garcia i Puig→ family 'Garcia i Puig' (good);Joan Garcia I→ suffix 'I' [SUFFIX_OR_NAME]Paolo Rossi ed Bianchi→ middle 'Rossi ed';Bianchi, Ed→ given 'Ed' [SUFFIX_OR_NAME] (the gate holds)Anna od Krzyża→ middle 'od' (a religious-name shape: should be family or a byname 'od Krzyża');Jan Lesny, OD→ suffix 'OD'Jan Novak v Lese→ middle 'Novak v';Jan Novak, V→ suffix 'V' (intended)Ala Haddad→ given 'Ala';Haddad, Ala→ given 'Ala' [SUFFIX_OR_NAME] (the gate holds)Abd Rahman Haddad→ given 'Abd Rahman' (good);Haddad, Abd→ suffix 'Abd', no given nameCount: 9 distinct words, 15 language pairs. Six of the words are not in any particle or conjunction set. The real harm is narrow:
Haddad, Abd, whereabdis an unambiguous acronym and loses a given name.amandod, where the particle is not joined to the family name. That one is a missing particle, not a credential problem. Once listed as particles, the credential reading after a comma would remain, as it does fordo.A pack that adds
amorodas a particle meets the credential set exactly asdoalready does. So the per-pack overlap check has a precedent:dosits in P ∩ SAamb today.4. Example shapes for the design session
All made up. "Today" is
parse()oncfe8bf92. "Wanted" is what a pack would deliver.Profesora de Historia Ana Lópezprofesoragives title 'Profesora', family 'de Historia Ana López' (the P1 fold). Makingdea conjunction globally fixes this one and breaksAna de Souza(→ given 'Ana de Souza'). So it needsdeas a connective inside a title run only.Ministro da Fazenda Carlos Souzaministroadded, it reads given 'da', becausedais an ambiguous particle and the title leaves it opening the name. This is worse than today.Senador Juan Pérez,Juez …,Doutor …,Maître …,Rechtsanwalt …Directeur Général Jean DupontDon Juan Pérez/Dona Maria SouzaM. Jean Dupont{2,}), so this is an initial-vs-title fork that only a language decides. 70 PSC boxes.Ahmet Yılmaz Bey,Ayşe Yılmaz HanımAhmet Bey), so this is a new position rule. Bey is also a US surname (5,453).Juan Pérez, ProfesorHaddad, Abdabdis in SA unambiguously. Move it to SAamb, or let a pack's given/bound reading derive the ambiguity.Klaus am Rhyn/Anna od Krzyżaam,od), withdoas the precedent.HRH Prince Ali Haddad,HH Sheikh …Mst Rahima KhatunMstin the forename box. If a bn pack ever lists মোসাঃ's transliteration, it is a given-name abbreviation likeMd(#853), not a title.Shapes that already work and need nothing (with their periods):
Dott.ssa,Sig.ra,Prof.ª,Profa.,Dra.,Dipl.-Ing.,Prof. Dr.-Ing.,Dr hab. inż.,Mr. drs.,Ir.,MUDr.,Doç. Dr.,Av.,Ks.,Mec.,Lic.,Arq.,Engr.,Eng.;Ing. Jan Novák, CSc.(suffix 'CSc.').Herr Prof. Dr. Hans Müllerreads title 'Herr Prof. Dr.'.Hans Müller, Dipl.-Ing.reads title 'Dipl.-Ing.' after the comma.5. Questions for the Phase 3 design
de,da,do,del,für,voor), as words that join a title run (H9/P3) while staying particles everywhere else? Shapes 1 and 2 show that no wordlist edit can deliver this. Is it a pack field, or a property on the particle's reading, scoped to "after a title"?salutation'sgenderdoes for occupational titles, and does anything read it?don,dona,bay,bey,pan,M.,hakimandrichtercannot be default titles. Is "a pack word may be one the default refuses" the core licence of a pack? If so, does a pack word override a defaultexcludedentry, and how is that override recorded?amorodas a particle lands in SA, asdoalready does. Should the build's derived ambiguity (phase 2's "a name reading beside a credential makes it ambiguous") also fire for a particle reading, so thatHaddad, Abd's class is closed by construction rather than by a list?M.is the one honorific that rules/H2's{2,}shape can never reach, and that loses to the initial reading. Is a one-letter title a pack-only exception to the initial veto?Baron Davis→ title 'Baron', no given name) #913's batches rather than Phase 3? None is recorded anywhere.7 remaining items
Fill Reading.languages from the reading index (3.0, 4a's follow-up) (#…
Add Locale.languages: a choice of languages selects the pool (#753, 3…
Turn the pack-shaped exclusions into readings off by default (#753, 3…
Record 4f's narrower reading as a reversal in part of #753's item 10
Compile a language file's [rules] into its pack's policy patch (3.0, …
Fix the 3g review's findings: reasons, counts, recipes and rotators
Add the Spanish and Portuguese packs, locales.ES and locales.PT (3.0,…
Scope file-strict's no-harm claim to credentials; fix the review's co…
Compare strict with the plain choice of the same tags for ungated wor…
Design: file-strict, a strict choice reads only the chosen files (#753)…
Test the strict CLI errors in process, and the en fallback of the str…
Review fixes: a pack's region names the pack, tr_az --strict names a …
Decisions: the CLI region refusal's own reason, and sushri no longer …
CLI: a pack's language with a subtag names the pack without calling i…
File-strict: parser_for(..., strict=True) reads only the chosen langu…