K wobsahej skočić

Modul:gender and number/data

z Wikisłownika

Dokumentacija za tutón modul hodźi so na Modul:gender and number/data/dokumentacija wutworić

local data = {}

-- A list of all possible "parts" that a specification can be made out of. For each part, we list
-- the class it's in (gender, animacy, etc.), the associated category (if any) and the display form.
-- In a given gender/number spec, only one part of each class is allowed.
data.codes = {
	["?"] = {type = "other", display = '<abbr title="gender incomplete">?</abbr>'},
	-- FIXME: The following should be either eliminated in favor of g! or converted to a general "gender/number unattested".
	["?!"] = {type = "other", display = '<abbr title="gender unattested">gender unattested</abbr>'},

-- Genders
	["m"] = {type = "gender", cat = "muske POS", display = '<abbr title="muski ród">m</abbr>'},
	["ž" or "f"] = {type = "gender", cat = "žónske POS", display = '<abbr title="žónski ród">ž</abbr>'},
	["n"] = {type = "gender", cat = "ničeje POS", display = '<abbr title="ničeji ród">n</abbr>'},
	["c"] = {type = "gender", cat = "common-gender POS", display = '<abbr title="common gender">c</abbr>'},
	["gneut"] = {type = "gender", cat = "gender-neutral POS", display = '<abbr title="gender-neutral">gender-neutral</abbr>'},
	["g!"] = {type = "gender", display = '<abbr title="gender unattested">gender unattested</abbr>'},

-- Animacy
	-- Animate = either animal or personal (for Russian, etc.)
	["žiw" or "an"] = {type = "animacy", cat = "žiwostne POS", display = '<abbr title="žiwostny">žiw</abbr>'},
	["nžiw" or "in"] = {type = "animacy", cat = "nježiwostne POS", display = '<abbr title="nježiwostny">nžiw</abbr>'},
	-- Animal (for Ukrainian, Belarusian, Polish, etc.)
	["zwj" or "anml"] = {type = "animacy", cat = "muskozwěrjeće POS", display = '<abbr title="zwěrjeći">zwj</abbr>'},
	-- Personal (for Ukrainian, Belarusian, Polish, etc.)
	["wos" or "pr"] = {type = "animacy", cat = "muskowosobowe POS", display = '<abbr title="wosobowy">wos</abbr>'},
	["wěc"] = {type = "animacy", cat = "muskowěcowne POS", display = '<abbr title="wěcowny">wěc</abbr>'},
	["np"] = {type = "animacy", cat = "nonpersonal POS", display = '<abbr title="nonpersonal">npers</abbr>'},
	["an!"] = {type = "animacy", display = '<abbr title="animacy unattested">animacy unattested</abbr>'},

-- Virility (for Polish)
	["vr" or "mwos"] = {type = "virility", cat = "virile POS", display = '<abbr title="muskowosobowy ród">mwos</abbr>'},
	["nv" or "nmwos"] = {type = "virility", cat = "nonvirile POS", display = '<abbr title="njemuskowosobowy ród">nmwosr</abbr>'},

-- Numbers
	["jed"] = {type = "number", display = '<abbr title="jednota">jed</abbr>'},
	["dw"] = {type = "number", cat = "dualia tantum", display = '<abbr title="dwojota">dw</abbr>'},
	["mn"] = {type = "number", cat = "pluralia tantum", display = '<abbr title="mnohota">mn</abbr>'},
	["num!"] = {type = "number", display = '<abbr title="čisło njewobkrućene">čisło njewobkrućene</abbr>'},

-- Verb qualifiers
	["ndk" or "impf"] = {type = "aspect", cat = "imperfective POS", display = '<abbr title="aspekt njedokonjany">ndk</abbr>'},
	["dk" or "pf"] = {type = "aspect", cat = "perfective POS", display = '<abbr title="aspekt dokonjany">dk</abbr>'},
	["asp!"] = {type = "aspect", display = '<abbr title="aspekt njewobkrućeny">aspekt njewobkrućeny</abbr>'},
}

-- Combined codes that are equivalent to giving multiple specs. `mf` is the same as specifying two separate specs,
-- one with `m` in it and the other with `f`. `mfbysense` is similar but is used for nouns that can be either masculine
-- or feminine according as to whether they refer to masculine or feminine beings.
data.combinations = {
	["mž"] = {codes = {"m", "ž"}},
	["mžequiv"] = {codes = {"m", "ž"}, display = '<abbr title="different genders do not affect the meaning">same meaning</abbr>'},
	["mžsens"] = {codes = {"m", "ž"}, cat = "masculine and feminine POS by sense",
		display = '<abbr title="according to the gender of the referent">by sense</abbr>'},
	["dwuasp"] = {codes = {"impf", "pf"}},
}

-- Categories when multiple gender/number codes of a given type occur in different specs (two or more of the same type
-- cannot occur in a single spec).
data.multicode_cats = {
	["gender"] = "POS with multiple genders",
	["animacy"] = "POS with multiple animacies",
	["aspect"] = "biaspectual POS",
}

return data