模組:Gender and number/data

維基詞典,自由的多語言詞典
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="性別未指定">?</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="性別無記錄">性別無記錄</abbr>'},

-- Genders
	["m"] = {type = "gender", cat = "陽性POS", display = '<abbr title="陽性">m</abbr>'},
	["f"] = {type = "gender", cat = "陰性POS", display = '<abbr title="陰性">f</abbr>'},
	["n"] = {type = "gender", cat = "中性POS", display = '<abbr title="中性">n</abbr>'},
	["c"] = {type = "gender", cat = "通性POS", display = '<abbr title="通性">c</abbr>'},
	["gneut"] = {type = "gender", cat = "性別中立POS", display = '<abbr title="性別中立">gn</abbr>'},
	["g!"] = {type = "gender", display = '<abbr title="性別無記錄">性別無記錄</abbr>'},

-- Animacy
	-- Animate = either animal or personal (for Russian, etc.)
	["an"] = {type = "animacy", cat = "有生POS", display = '<abbr title="有生">有生</abbr>'},
	["in"] = {type = "animacy", cat = "無生POS", display = '<abbr title="無生">無生</abbr>'},
	-- Animal (for Ukrainian, Belarusian, Polish, etc.)
	["anml"] = {type = "animacy", cat = "動物POS", display = '<abbr title="動物">動物</abbr>'},
	-- Personal (for Ukrainian, Belarusian, Polish, etc.)
	["pr"] = {type = "animacy", cat = "個人POS", display = '<abbr title="個人">個人</abbr>'},
	["np"] = {type = "animacy", cat = "非個人POS", display = '<abbr title="非個人">非個人</abbr>'},
	["an!"] = {type = "animacy", display = '<abbr title="有生性無記錄">有生性無記錄</abbr>'},

-- Virility (for Polish)
	["vr"] = {type = "virility", cat = "男性POS", display = '<abbr title="男性,即阳性个人">男</abbr>'},
	["nv"] = {type = "virility", cat = "非男性POS", display = '<abbr title="非男性,即非阳性个人">非男</abbr>'},

-- Numbers
	["s"] = {type = "number", display = '<abbr title="單數">單</abbr>'},
	["d"] = {type = "number", cat = "唯雙POS", display = '<abbr title="雙數">雙</abbr>'},
	["p"] = {type = "number", cat = "唯複POS", display = '<abbr title="複數">複</abbr>'},
	["num!"] = {type = "number", display = '<abbr title="數無記載">數無記載</abbr>'},

-- Verb qualifiers
	["impf"] = {type = "aspect", cat = "非完整體POS", display = '<abbr title="非完整體">非完</abbr>'},
	["pf"] = {type = "aspect", cat = "完整體POS", display = '<abbr title="完整體">完</abbr>'},
	["asp!"] = {type = "aspect", display = '<abbr title="體貌無記錄">體貌無記錄</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 = {
	["mf"] = {codes = {"m", "f"}},
	["mfequiv"] = {codes = {"m", "f"}, display = '<abbr title="性別不同不會影響詞義">同義</abbr>'},
	["mfbysense"] = {codes = {"m", "f"}, cat = "性別遵照被指代者的POS",
		display = '<abbr title="遵照被指代者的性別">遵詞義</abbr>'},
	["biasp"] = {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",
	["animacy"] = "有多種有生性的POS",
	["aspect"] = "可作完整體和非完整體的POS",
}

return data