模組:Data consistency check/doc

維基詞典,自由的多語言詞典

这是Module:Data consistency check的文档页面

此模块檢查維基詞典上使用的語言、語言系屬和文字数据模块的有效性和內部一致性:包括Category:語言資料模块Module:scripts/data

輸出[编辑]

檢測到差異:

Template:langname-lite

  • 代碼:aek。現有名稱:Haeke。預期名稱:哈克語。
  • 代碼:aey。現有名稱:Amele。預期名稱:阿梅勒語。
  • 代碼:anw。現有名稱:Anaang。預期名稱:阿納昂語。
  • 代碼:apl。現有名稱:Lipan。預期名稱:利攀語。
  • 代碼:aqg。現有名稱:Arigidi。預期名稱:阿里吉蒂語。
  • 代碼:bbr。現有名稱:Girawa。預期名稱:吉拉瓦語。
  • 代碼:bnq。現有名稱:Bantik。預期名稱:班第語。
  • 代碼:byt。現有名稱:Berti。預期名稱:扎加瓦語。
  • 代碼:clc。現有名稱:Chilcotin。預期名稱:奇爾科廷語。
  • 代碼:dcr。現有名稱:Negerhollands。預期名稱:維京群島克里奧荷蘭語。
  • 代碼:dis。現有名稱:Dimasa。預期名稱:迪馬薩語。
  • 代碼:eee。現有名稱:E。預期名稱:誒話。
  • 代碼:emb。現有名稱:Embaloh。預期名稱:恩巴洛語。
  • 代碼:fad。現有名稱:Wagi。預期名稱:瓦吉語。
  • 代碼:foi。現有名稱:Foi。預期名稱:福伊語。
  • 代碼:frd。現有名稱:Fordata。預期名稱:福爾達塔語。
  • 代碼:guw。現有名稱:Gun。預期名稱:奧古語。
  • 代碼:hdy。現有名稱:Hadiyya。預期名稱:哈迪亞語。
  • 代碼:hro。現有名稱:Haroi。預期名稱:赫雷語。
  • 代碼:huu。現有名稱:穆瑞胡圖圖語。預期名稱:穆魯伊維托托語。
  • 代碼:jaz。現有名稱:Jawe。預期名稱:賈韋語。
  • 代碼:lew。現有名稱:Ledo Kaili。預期名稱:列多-凱利語。
  • 代碼:mbj。現有名稱:Nadëb。預期名稱:納德布語。
  • 代碼:mee。現有名稱:Mengen。預期名稱:門根語。
  • 代碼:mps。現有名稱:Dadibi。預期名稱:達迪比語。
  • 代碼:nag。現有名稱:Naga Pidgin。預期名稱:那加克里奧爾語。
  • 代碼:pml。現有名稱:Sabir。預期名稱:沙比爾語。
  • 代碼:qsb-ibe。現有名稱:a pre-Roman substrate of Iberia。預期名稱:羅馬佔領前一種伊比利亞底層語言。
  • 代碼:rel。現有名稱:Rendille。預期名稱:倫迪勒語。
  • 代碼:slu。現有名稱:Selaru。預期名稱:塞拉魯語。
  • 代碼:snp。現有名稱:Siane。預期名稱:西亞內語。
  • 代碼:tmu。現有名稱:Iau。預期名稱:雅烏語。
  • 代碼:ugo。現有名稱:貢語。預期名稱:貢語 (泰國)。
  • 代碼:und-phi。現有名稱:Philistine。預期名稱:非利士語。
  • 代碼:xrn。現有名稱:Arin。預期名稱:阿林語。

Module:etymology languages/data

  • The data key preprocess_links for ??? (th-new) is invalid.
  • 赫爾尼基語 (xum-her) has a canonical name that is not unique; it is also used by the code xhr.

Module:families/canonical names

  • Chumashan, the canonical name for the code nai-chu, is wrong; it should be 丘馬什語系.
  • 規範名稱「丘馬什語系」(nai-chu)缺失。
  • 規範名稱「奇努克語系」(nai-ckn)缺失。
  • Chinookan, the canonical name for the code nai-ckn, is wrong; it should be 奇努克語系.
  • Utian, the canonical name for the code nai-utn, is wrong; it should be 烏蒂語族.
  • 規範名稱「烏蒂語族」(nai-utn)缺失。
  • Yok-Utian, the canonical name for the code nai-you, is wrong; it should be 約庫特-烏蒂語系.
  • 規範名稱「約庫特-烏蒂語系」(nai-you)缺失。
  • Yokuts, the canonical name for the code yok, is wrong; it should be 約庫特語族.
  • 規範名稱「約庫特語族」(yok)缺失。

Module:families/code to canonical name

  • Chumashan, the canonical name for the code nai-chu, is wrong; it should be 丘馬什語系.
  • Chinookan, the canonical name for the code nai-ckn, is wrong; it should be 奇努克語系.
  • Utian, the canonical name for the code nai-utn, is wrong; it should be 烏蒂語族.
  • Yok-Utian, the canonical name for the code nai-you, is wrong; it should be 約庫特-烏蒂語系.
  • Yokuts, the canonical name for the code yok, is wrong; it should be 約庫特語族.

Module:families/data

Module:languages/canonical names

  • 規範名稱「維京群島克里奧荷蘭語」(dcr)缺失。
  • Negerhollands, the canonical name for the code dcr, is wrong; it should be 維京群島克里奧荷蘭語.

Module:languages/code to canonical name

  • Negerhollands, the canonical name for the code dcr, is wrong; it should be 維京群島克里奧荷蘭語.

Module:languages/data/2

Module:languages/data/3/a

  • ??? (aeu) 的規範名稱不唯一,同時被代碼aik使用。
  • ??? (aic) 的規範名稱不唯一,同時被代碼amk使用。
  • ??? (alh) 的規範名稱不唯一,同時被代碼aru使用。

Module:languages/data/3/b

  • ??? (bfy) 的規範名稱不唯一,同時被代碼bgq使用。
  • ??? (bgw) 的規範名稱不唯一,同時被代碼btv使用。
  • ??? (bhb) 的規範名稱不唯一,同時被代碼bzr使用。
  • ??? (boa) 的規範名稱不唯一,同時被代碼bxd使用。
  • ??? (bsq) 的規範名稱不唯一,同時被代碼bas使用。
  • ??? (bzw) 的規範名稱不唯一,同時被代碼bas使用。

Module:languages/data/3/c

  • Maa是cma的名稱,但在aliases中重複出現。
  • Island Carib是crb的名稱,但在otherNames中重複出現。

Module:languages/data/3/d

  • ??? (dax) 的規範名稱不唯一,同時被代碼dij使用。

Module:languages/data/3/h

Module:languages/data/3/k

  • ??? (keh) 的規範名稱不唯一,同時被代碼kzq使用。
  • ??? (klm) 的規範名稱不唯一,同時被代碼kyo使用。
  • ??? (kmg) 的規範名稱不唯一,同時被代碼ket使用。
  • ??? (kmx) 的規範名稱不唯一,同時被代碼aup使用。
  • ??? (koz) 的規範名稱不唯一,同時被代碼hhr使用。
  • ??? (kvc) 的規範名稱不唯一,同時被代碼kqb使用。

Module:languages/data/3/l

  • Looma是lom的名稱,但在otherNames中重複出現。

Module:languages/data/3/m

  • ??? (mmq) 的規範名稱不唯一,同時被代碼ahs使用。
  • ??? (mmr) 的規範名稱不唯一,同時被代碼muq使用。
  • ??? (mnk) 的規範名稱不唯一,同時被代碼man使用。
  • ??? (mui) 的規範名稱不唯一,同時被代碼mse使用。

Module:languages/data/3/n

  • ??? (nev) 的規範名稱不唯一,同時被代碼hnu使用。

Module:languages/data/3/p

  • ??? (pbv) 的規範名稱不唯一,同時被代碼bvn使用。
  • ??? (pht) 的規範名稱不唯一,同時被代碼mfl使用。
  • ??? (ppt) 的規範名稱不唯一,同時被代碼pai使用。

Module:languages/data/3/r

  • ??? (rwo) 的規範名稱不唯一,同時被代碼luf使用。

Module:languages/data/3/s

  • ??? (snx) 的規範名稱不唯一,同時被代碼raq使用。

Module:languages/data/3/t

  • ??? (tiv) 的規範名稱不唯一,同時被代碼ter使用。

Module:languages/data/3/v

  • ??? (vmw) 的規範名稱不唯一,同時被代碼lva使用。

Module:languages/data/3/w

  • Wè Northern是wob的名稱,但在otherNames中重複出現。

Module:languages/data/3/x

  • ??? (xcr) 的規範名稱不唯一,同時被代碼khr使用。
  • ??? (xns) 的規範名稱不唯一,同時被代碼soq使用。

Module:languages/data/3/y

  • Yaroamë是yro的名稱,但在otherNames中重複出現。

Module:languages/data/exceptional

  • ??? (tuw-bal) 的規範名稱不唯一,同時被代碼bao使用。

Module:languages/data/exceptional/extra

Module:scripts/data

  • 布列斯符號Blis)未被任何語言使用並且沒有給出供自動檢測所用的字元。
  • 塞普勒斯-米諾斯文字Cpmn)未被任何語言使用。
  • 平假名Hira)未被任何語言使用。
  • 假名Hrkt)未被任何語言使用。
  • 圖像渲染Imag)未被任何語言使用並且沒有給出供自動檢測所用的字元。
  • 國際音標Ipach)未被任何語言使用並且沒有給出供自動檢測所用的字元。
  • MoonMoon)未被任何語言使用並且沒有給出供自動檢測所用的字元。
  • 摩斯電碼Morse)未被任何語言使用並且沒有給出供自動檢測所用的字元。
  • 音樂記號Music)未被任何語言使用。
  • 未指定文字None)未被任何語言使用並且沒有給出供自動檢測所用的字元。
  • Ol OnalOnao)未被任何語言使用並且沒有給出供自動檢測所用的字元。
  • 朗格朗格Roro)未被任何語言使用並且沒有給出供自動檢測所用的字元。
  • 盧米文數字Rumin)未被任何語言使用。
  • 旗語Semap)未被任何語言使用並且沒有給出供自動檢測所用的字元。
  • Visible SpeechVisp)未被任何語言使用並且沒有給出供自動檢測所用的字元。
  • 數學記號Zmth)未被任何語言使用。
  • 符號Zsym)未被任何語言使用。
  • 未定文字Zyyy)未被任何語言使用並且沒有給出供自動檢測所用的字元。
  • 未編碼文字Zzzz)未被任何語言使用並且沒有給出供自動檢測所用的字元。
  • The data key sort_by_scraping for 日文 (Jpan) is invalid.

進行的檢查[编辑]

對於多個数据模块:

  • 語言、語言系屬和詞源語言的代碼必須是唯一的,不能相互衝突。
  • 不得在其他名稱列表中找到語言、語言系屬和詞源語言的規範名稱。
  • 其他名稱列表中的每個名稱只能出現一次。
  • otherNames如果存在,則必須是一個数组。
  • 維基數據項 ID 必須是正整數,或者以Q開頭、以十進位數字結尾的字符串。

Module:languages 使用的數據必須滿足以下條件:

  • Each code must be defined in the correct submodule according to whether it is two-letter, three-letter or exceptional.
  • The canonical name (field 1) must be present and must not be the same as the canonical name of another language.
  • If field 2 is not nil, it must a valid Wikidata item ID.
  • If field 3 or family is given and not nil, it must be a valid family code.
  • If field 4 or scripts is given and not nil, it must be an array, and each string in the array must be a valid script code.
  • If ancestors is given, it must be an array, and each string in the array must be a valid language or etymology language code.
  • If family is given, it must be a valid family code.
  • If type is given, it must be one of the recognised values (regular, reconstructed, appendix-constructed).
  • If entry_name is given, it must be a table that contains either two arrays (from and to) or a string (remove_diacritics) or both.
  • If sort_key is given, it may either be a string, or at table that in turn contains either two arrays (from and to) or a string (remove_diacritics).
  • If entry_name or sort_key is given, the from array must be longer or equal in length to the to array.
  • If standardChars is given, it must form a valid Lua string pattern when placed between square brackets with ^ before it ("[^...]). (It should match all characters regularly used in the language, but that cannot be tested.)
  • If override_translit is set, translit must also be set, because there must be a transliteration module that can override manual transliteration.
  • If link_tr is present, it must be true.
  • Have no data keys besides these: 1, 2, 3, "entry_name", "sort_key", "display", "otherNames", "aliases", "varieties", "type", "scripts", "ancestors", "wikimedia_codes", "wikipedia_article", "standardChars", "translit", "override_translit", "link_tr".

未執行的檢查:

  • If translit is present, it should be the name of a module, and this module should contain a tr function that takes a pagename (and optionally a language code and script code) as arguments.
  • If sort_key is a string, it should be the name of a module, and this module should contain a makeSortKey function that takes a pagename (and optionally a language code and script code) as arguments.
  • If entry_name or sort_key is a table and contains a field remove_diacritics, the value of the field should be a string that forms a valid Lua pattern when it is placed inside negated set notation ([^...]).

此模块沒有檢查這些項目,因為如果不滿足以上條件,模块錯誤將很快出現在條目中(如Module:utilities 嘗試為與該語言相關的分類生成排序鍵,或者full_link嘗試使用音譯模塊等)。

Module:languages/code to canonical nameModule:languages/canonical names 必須包含且僅應包含 Module:languages 的数据子模块中的所有代碼和規範名稱。

Module:etymology languages 使用的数据必須滿足以下條件:

  • 必須給出 canonicalName
  • parent必須給出,且必須是有效的語言、語言系屬或詞源語言的代碼。
  • If ancestors is given, it must be an array, and each string in the array must be a valid language or etymology language code. The etymology language should also be listed as the ancestor of a regular language.
  • Have no data keys besides these: "canonicalName", "otherNames", "parent", "ancestors", "wikipedia_article", "wikidata_item".

Module:families 中的代碼数据必須:

  • Have canonicalName, which must not be the same as the canonical name of another family.
  • If family is given, it must be a valid family code.
  • Have at least one language or subfamily belonging to it.
  • Have no data keys besides these: "canonicalName", "otherNames", "family", "protoLanguage", "wikidata_item".

Module:scripts 中的代碼数据必須:

  • Have canonicalName.
  • Have at least one language that lists it as one of its scripts.
  • Have a characters pattern for script autodetection, and this must form a valid Lua string pattern when placed between square brackets ("[...]"). (It should match all characters in the script, but that cannot be tested.)
  • Have no data keys besides these: "canonicalName", "otherNames", "parent", "systems", "wikipedia_article", "characters", "direction".