{{User:Vitalik/uz-decl-noun-table}}
affixes
Name | Value | Changes |
---|---|---|
genitive
|
"ning" | |
dative
|
"ga" | |
dative_k
|
"ka" | |
dative_q
|
"qa" | |
accusative
|
"ni" | |
locative
|
"da" | |
ablative
|
"dan" | |
pl
|
"lar" | "ar" (#4) |
interfix
|
"i" | "yi" (#9.2, #9.3) "" (#8, #9.1) |
possessive_first_sg
|
"m" | |
possessive_first_pl
|
"miz" | |
possessive_second_sg
|
"ng" | |
possessive_second_pl
|
"ngiz" | |
possessive_third
|
"i" | "si" (#8, #9.1, #9.2, #10) "yi" (#9.3) |
conditions
Name | Possible values |
---|---|
st
|
"1" (#17) |
type
|
"std" (#9.1, #9.4, #12, #13, #14.2) "yiyi" (#9.3, #9.4) "yisi" (#9.2, #9.4) "kq" (#14.1, #14.2) "reduced" (#15.1, #15.2) |
Name | Possible values |
---|---|
base_possessive
|
base .replace(/.(.)$/, "%1") (#15.1)base .replace(/q$/, "gʻ") (#13)base .replace(/k$/, "g") (#12)base (#6, #14.1, #15.2)
|
show_possessive
|
"1" (#16.2) "" (#16.1) |
type_expected
|
"" (#16.2) "1" (#9.4, #14.2) |
№ | Conditions | Actions | |
---|---|---|---|
#1 | do anyway |
add class | |
#2 | IF word ends with: "k" |
add class | |
#3 | IF word ends with: "q" |
add class | |
#4 | Comment: If two last letters are identical to first letter of declension ending — then we need to leave only two letters from three. For example, metall + lar = metallar | ||
IF word ends with: "ll" |
set | ||
#5 | Section: Possessive forms | ||
#6 | do anyway |
set | |
#7 | Subsection: When last letter is vowel | ||
#8 | IF word ends with: "a" |
set | |
#9 | IF word ends with: "e", "i", "u", "o", "oʻ", "o`", "o'" | ||
#9.1 | IF argument type is equal to "std"
|
set | |
#9.2 | IF argument type is equal to "yisi"
|
set | |
#9.3 | IF argument type is equal to "yiyi"
|
set | |
#9.4 | IF argument type is not equal to "std", "yisi", "yiyi"
|
set | |
#10 | Subsection: When last letters are "iy" | ||
IF word ends with: "iy" |
set | ||
#11 | Subsection: When last letter is "k" or "q" | ||
#12 | IF (apply both conditions)
|
set | |
#13 | IF (apply both conditions)
|
set | |
#14 | IF word ends with: "k", "q" | ||
#14.1 | IF argument type is equal to "kq"
|
set | |
#14.2 | IF argument type is not equal to "std", "kq"
|
set | |
#15 | Subsection: When penultimate letter is vowel and last letter is consonant (except "y") | ||
IF (apply both conditions)
|
|||
#15.1 | IF argument type is equal to "reduced"
|
set | |
#15.2 | IF argument type is not equal to "reduced"
|
set | |
#16 | Subsection: Make decision to show/hide block "Possesive" | ||
#16.1 | IF variable type_expected is equal to "1"
|
set | |
#16.2 | IF variable type_expected is not equal to "1"
|
set | |
#17 | Section: If there are no plural forms | ||
Comment: This rule should be the last one. Otherwise — removing of plural form can be overriden by other classes | |||
IF argument st is equal to "1"
|
add class |
classes
common
Form | Value |
---|---|
nominative_sg
|
base
|
nominative_pl
|
base + pl
|
genitive_sg
|
base + genitive
|
genitive_pl
|
base + pl + genitive
|
dative_sg
|
base + dative
|
dative_pl
|
base + pl + dative
|
accusative_sg
|
base + accusative
|
accusative_pl
|
base + pl + accusative
|
locative_sg
|
base + locative
|
locative_pl
|
base + pl + locative
|
ablative_sg
|
base + ablative
|
ablative_pl
|
base + pl + ablative
|
show_possessive
|
show_possessive
|
type_expected
|
type_expected
|
dative_k
Form | Value |
---|---|
dative_sg
|
base + dative_k
|
dative_q
Form | Value |
---|---|
dative_sg
|
base + dative_q
|
possessive_nominative
possessive_other
singularia_tantum
variable
, argument
, #1, form