Wikipedia
csbwiki
https://csb.wikipedia.org/wiki/Prz%C3%A9dn%C3%B4_starna
MediaWiki 1.47.0-wmf.22
first-letter
Media
Specjalnô
Diskùsëjô
Brëkòwnik
Diskùsëjô brëkòwnika
Wiki
Diskùsëjô Wiki
Òbrôzk
Diskùsëjô òbrôzków
MediaWiki
Diskùsëjô MediaWiki
Szablóna
Diskùsëjô Szablónë
Pòmòc
Diskùsëjô Pòmòcë
Kategòrëjô
Diskùsëjô Kategòrëji
TimedText
TimedText talk
Moduł
Dyskusja modułu
Wydarzenie
Dyskusja wydarzenia
Amsterdam
0
66
216510
199414
2026-10-05T10:13:57Z
Terrus38
14026
216510
wikitext
text/x-wiki
[[Òbrôzk:Amsterdam, bridge name Varkenssluis.jpg|mały|Kòła ë karnôle są czãstim widzënkã w Amsterdamù]]
'''Amsterdam''' – nôwikszi gard w [[Niderlandë|Niderlandach]] ë jich kònstitucyjnô stolëca (chòc rząd mô sedzbã w [[Haga|Hadze]]).
W [[2005]] rokù miôł 739 295 mieszkańców.
== Bùtnowé lënczi ==
{{Commons}}
* [http://www.amsterdam.nl/ Domôcô starna gardu]
{{Ùzémk artikla}}
{{Kòntrola}}
[[Kategòrëjô:Niderlandë]]
0ltj25c794i9k0ee7ks0rj6dnam2bvm
Lësta eùropejsczich państw
0
67
216521
215961
2026-10-05T10:21:32Z
Terrus38
14026
216521
wikitext
text/x-wiki
[[Òbrôzk:Europejsko Unijo CBS ubt2.png|frame|right|Dôwnô kôrta [[Eùropa|Eùropë]] ë Eùropejsczi Ùnie pò kaszëbskù (nieaktualny)]]'''Lësta [[Eùropa|eùropejsczich]] państw''' – lësta [[Państwò|państw]] ë zawiôzłëch teritoriów [[Eùropa|Eùropë]].
Na òbrëmienié Eùropë w całoscë abò dzélowô najdiwô sã 46 ùznônëch państw na midzënôrodny arenie. Knéż do Eùropë zalëczô sã sétmë [[Zawiôzłé teritorium|zawiôzłëch]] [[Zawiôzłé teritorium|teritoriów]] [[Dëńskô|Dëńsczi]], [[Norweskô|Norwesczi]] ë [[Wiôlgô Britaniô|Wiôldżi Britanie]]. W Eùropie fónkcjonëje téż jedno dzélowô ùznôwóné państwò ([[Kòsowò]]) a téż jedno [[nieùznôwóné państwò]] ([[Nadedniestrzé]]).
Nôwiãkszim eùropejsczim państwã je [[Ruskô]] (17 098 242 km²), równak nôwiãkszim państwã najdiwëjącym sã w całoscë na teritorium Eùropë je [[Ùkrajina]] (603 550 km²). Nôlëdniészim państwã na eùropejsczim kòntinence równak je Ruskô (142 021 981 mieszkańców), a nôlëdniészim państwã pòłóżonym w całoscë w Eùropie są [[Niemieckô|Niemcë]] (84 316 622 mieszkańców). Nômniészim tak samò wedle wiôlgòscë wiéchrzëznë, jak ë lëczbë lëdztwa je [[Watikan]] (0,44 km²; 825 mieszkańców).
{| class="wikitable"
|+
!
!Artikel
!Kategòrëjô
!Też
!sloworz.org
|-
| align="right" |1
|[[Albańskô]]
|{{#categorytree:Albańskô|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Albańskô →]: [[Albańskô]]
|Albaniô<ref>{{sloworz.org|18433|20909}}</ref>
|-
| align="right" |2
|[[Andora]]
|{{#categorytree:Andora|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Andora →]: –
|–
|-
| align="right" |3
|[[Aùstriô]] - (''[[Eùropejskô Ùniô|EÙ]]'')
|{{#categorytree:Aùstriô|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Aùstriô →]: Aùstrëjackô
|Óstrëjô<ref>{{sloworz.org|9215|10520}}</ref>; Óstrëjackô<ref>{{sloworz.org|9214|10519}}</ref>; Aùstriô<ref>{{sloworz.org|19158|21683}}</ref>;
|-
| align="right" |4
|[[Belgijskô]] - (''[[Eùropejskô Ùniô|EÙ]]'')
|{{#categorytree:Belgijskô|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Belgijskô →]: –
|Belgiô<ref>{{sloworz.org|19593|22180}}</ref>
|-
| align="right" |5
|[[Biôłorus]]
|{{#categorytree:Biôłorus|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Biôłorus →]: [[Biôłorëskô]]; [[Biôłorusjô]]
|Biôłorusjô<ref>{{sloworz.org|19534|22109}}</ref>
|-
| align="right" |6
|[[Bòsniô i Hercegòwina]]
|{{#categorytree:Bòsniô i Hercegòwina|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Bòsniô_i_Hercegòwina →]: [[Bòsnijô ë Hercegòwina]]
|–
|-
| align="right" |7
|[[Bùłgariô]] - (''[[Eùropejskô Ùniô|EÙ]]'')
|{{#categorytree:Bùłgariô|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Bùłgariô →]: [[Bùlgarskô]]
|Bùłgariô<ref>{{sloworz.org|21053|23824}}</ref>
|-
| align="right" |8
|[[Cyper]] - (''[[Eùropejskô Ùniô|EÙ]]'')
|{{#categorytree:Cyper|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Cyper →]: –
|Cyper<ref>{{sloworz.org|22463|25437}}</ref>
|-
| align="right" |9
|[[Chòrwackô]] - (''[[Eùropejskô Ùniô|EÙ]]'')
|{{#categorytree:Chòrwackô|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Chòrwackô →]: [[Chòrwacjô]]
|Chòrwacjô<ref>{{sloworz.org|21850|24722}}</ref>
|-
| align="right" |10
|[[Czeskô]] - (''[[Eùropejskô Ùniô|EÙ]]'')
|{{#categorytree:Czeskô|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Czeskô →]: [[Czeskô Repùblika]]
|Czeskô<ref>{{sloworz.org|16592|18963}}</ref>
|-
| align="right" |11
|[[Czôrnogóra]]
|{{#categorytree:Czôrnogóra|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Czôrnogóra →]: [[Czôrnô Góra]]
|Czôrnogóra<ref>{{sloworz.org|22515|25494}}</ref>
|-
| align="right" |12
|[[Duńskô]] - (''[[Eùropejskô Ùniô|EÙ]]'')
|{{#categorytree:Duńskô|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Duńskô →]: [[Dëńskô]]
|Duńskô<ref>{{sloworz.org|19811|22430}}</ref>
|-
| align="right" |13
|[[Estoniô]] - (''[[Eùropejskô Ùniô|EÙ]]'')
|{{#categorytree:Estoniô|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Estoniô →]: [[Estónskô]]; [[Estóńskô]]
|Estoniô<ref>{{sloworz.org|25726|29718}}</ref>
|-
| align="right" |14
|[[Farersczé Òstrowë]]
|{{#categorytree:Farersczé Òstrowë|mode=all|depth=0}}
|–
|–
|-
| align="right" |15
|[[Fińskô]] - (''[[Eùropejskô Ùniô|EÙ]]'')
|{{#categorytree:Fińskô|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Fińskô →]: –
|Finlandiô<ref>{{sloworz.org|26158|30313}}</ref>
|-
| align="right" |16
|[[Francjô]] - (''[[Eùropejskô Ùniô|EÙ]]'')
|{{#categorytree:Francjô|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Francjô →]: [[Frańcëskô]]; [[Francëjô]]
|Francjô<ref>{{sloworz.org|26389|30647}}</ref>; Francëskô<ref>{{sloworz.org|26389|30647}}</ref>
|-
| align="right" |17
|[[Greckô]] - (''[[Eùropejskô Ùniô|EÙ]]'')
|{{#categorytree:Greckô|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Greckô →]: [[Grecjô]]
|Grecjô<ref>{{sloworz.org|27032|31520}}</ref>
|-
| align="right" |18
|[[Grëzóńskô]]
|{{#categorytree:Grëzóńskô|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Grëzóńskô →]: –
|Gruzjô<ref name=":0">{{sloworz.org|27113|31612}}</ref>; Grëzjô<ref name=":0" />, Grëzóńskô<ref name=":0" />
|-
| align="right" |19
|[[Irlandiô]] - (''[[Eùropejskô Ùniô|EÙ]]'')
|{{#categorytree:Irlandiô|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Irlandiô →]: [[Irlandëjô]]
|Irlandiô<ref name=":1">{{sloworz.org|28225|33035}}</ref>; Irlandzkô<ref name=":1" />; Jirlandiô<ref name=":1" />; Jirlandzkô<ref name=":1" />
|-
| align="right" |20
|[[Islandiô]]
|{{#categorytree:Islandiô|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Islandiô →]: [[Islandëjô]]
|Islandiô<ref name=":2">{{sloworz.org|28258|33076}}</ref>; Jislandiô<ref name=":2" />
|-
| align="right" |21
|[[Italskô]] - (''[[Eùropejskô Ùniô|EÙ]]'')
|{{#categorytree:Italskô|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Italskô →]: –
|Italiô<ref name=":3">{{sloworz.org|28276|36149}}</ref>; Italskô<ref name=":3" />; Włochë<ref>{{sloworz.org|7453|8433}}</ref>
|-
| align="right" |22
|[[Liechtenstein]]
|{{#categorytree:Lichtenstein|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Liechtenstein →]: [[Lichtenstein]]
|–
|-
| align="right" |23
|[[Lëtwa]] - (''[[Eùropejskô Ùniô|EÙ]]'')
|{{#categorytree:Lëtwa|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Lëtwa →]: [[Lëtewskô]]
|Lëtwa<ref>{{sloworz.org|2304|2653}}</ref>; Lëtewskô<ref>{{sloworz.org|19533|22108}}</ref>
|-
| align="right" |24
|[[Luksembùrg]] - (''[[Eùropejskô Ùniô|EÙ]]'')
|{{#categorytree:Luksembùrg|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Luksembùrg →]: [[Luksembùrskô]]
|–
|-
| align="right" |25
|[[Łotwa]] - (''[[Eùropejskô Ùniô|EÙ]]'')
|{{#categorytree:Łotwa|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Łotwa →]: [[Łotewskô]]
|Łotwa<ref>{{sloworz.org|32931|40454}}</ref>
|-
| align="right" |26
|[[Madżarskô]] - (''[[Eùropejskô Ùniô|EÙ]]'')
|{{#categorytree:Madżarskô|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Madżarskô →]: –
|Wãgrë<ref>{{sloworz.org|5500|6163}}</ref>
|-
| align="right" |27
|[[Malta]] - (''[[Eùropejskô Ùniô|EÙ]]'')
|{{#categorytree:Malta|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Malta →]: –
|Malta<ref>{{sloworz.org|33229|40996}}</ref>
|-
| align="right" |28
|[[Niemieckô]] - (''[[Eùropejskô Ùniô|EÙ]]'')
|{{#categorytree:Miemieckô|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Niemieckô →]: [[Miemieckô]]
|Niemieckô<ref>{{sloworz.org|19537|22112}}</ref>; Miemcë<ref name=":4">{{sloworz.org|6305|7069}}</ref>; Niemcë<ref name=":4" />
|-
| align="right" |29
|[[Mònakò]]
|{{#categorytree:Mònakò|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Mònakò →]: –
|–
|-
| align="right" |30
|[[Niderlandë]] - (''[[Eùropejskô Ùniô|EÙ]]'')
|{{#categorytree:Niderlandë|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Niderlandë →]: –
|Holandiô
|-
| align="right" |31
|[[Nordowô Macedoniô]]
|{{#categorytree:Nordowô Macedoniô|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Nordowô_Macedoniô →]: [[Macedońskô]]; [[Macedoniô]]
|Macedoniô<ref name=":5">{{sloworz.org|33054|40686}}</ref>; téż Macedońskô<ref name=":5" />
|-
| align="right" |32
|[[Norweskô]]
|{{#categorytree:Norweskô|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Norweskô →]: [[Norge]]; [[Noreg]]; [[Kongeriket Norge]]; [[Kongeriket Noreg]]
|Norweskô<ref>{{sloworz.org|19815|22434}}</ref>
|-
| align="right" |33
|[[Pòlskô]] - (''[[Eùropejskô Ùniô|EÙ]]'')
|{{#categorytree:Pòlskô|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Pòlskô →]: –
|Pòlskô<ref>{{sloworz.org|13838|15813}}</ref>
|-
| align="right" |34
|[[Pòrtugalskô]] - (''[[Eùropejskô Ùniô|EÙ]]'')
|{{#categorytree:Pòrtugalskô|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Pòrtugalskô →]: –
|?
|-
| align="right" |35
|[[Rumùńskô]] - (''[[Eùropejskô Ùniô|EÙ]]'')
|{{#categorytree:Rumùńskô|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Rumùńskô →]: [[Rumùniô]]
|?
|-
| align="right" |36
|[[Ruskô]]
|{{#categorytree:Ruskô|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Ruskô →]: [[Ruskô Federacëjô]]
|Rusjô<ref>{{sloworz.org|19532|22107}}</ref>; Ruskô<ref>{{sloworz.org|3513|4008}}</ref>
|-
| align="right" |37
|[[San Marino]]
|{{#categorytree:San Marino|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=San_Marino →]: –
|–
|-
| align="right" |38
|[[Serbiô]]
|{{#categorytree:Serbskô|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Serbiô →]: [[Serbskô]]
|?
|-
| align="right" |39
|[[Słowackô]] - (''[[Eùropejskô Ùniô|EÙ]]'')
|{{#categorytree:Słowackô|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Słowackô →]: –
|?
|-
| align="right" |40
|[[Słoweniô]] - (''[[Eùropejskô Ùniô|EÙ]]'')
|{{#categorytree:Słoweniô|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Słoweniô →]: [[Słoweńskô]]
|?
|-
| align="right" |41
|[[Watikan]]
|{{#categorytree:Watikan|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Watikan →]: –
|?
|-
| align="right" |42
|[[Szpańskô]] - (''[[Eùropejskô Ùniô|EÙ]]'')
|{{#categorytree:Szpańskô|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Szpańskô →]: –
|Hiszpaniô<ref name=":6">{{sloworz.org|27545|32152}}</ref>; téż Szpaniô<ref name=":6" />, Szpańskô<ref name=":6" />
|-
| align="right" |43
|[[Szwajcariô]]
|{{#categorytree:Szwajcarskô|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Szwajcariô →]: [[Szwajcarskô]]
|?
|-
| align="right" |44
|[[Szwédzkô]] - (''[[Eùropejskô Ùniô|EÙ]]'')
|{{#categorytree:Szwédzkô|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Szwedzkô →]: –
|Szwédzkô<ref>{{sloworz.org|9954|11397}}</ref>
|-
| align="right" |45
|[[Ùkrajina]]
|{{#categorytree:Ùkrajina|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Ùkrajina →]: –
|Ùkrajińskô<ref name=":7">{{sloworz.org|19528|22103}}</ref> / Ùkrajina<ref name=":7" />
|-
| align="right" |46
|[[Wiôlgô Britaniô]]
|{{#categorytree:Wiôlgô Britaniô|mode=all|depth=0}}
|[https://csb.wikipedia.org/wiki/Specjalnô:Linkujące?namespace=&hidetrans=1&hidelinks=1&target=Wiôlgô_Britanijô →]: [[Wiôlgô Britanijô]]
|Wiôlgô Britaniô<ref>{{sloworz.org|19866|22486}}</ref>
|}
{{Aktualizacjô|Òstatnô=2026-05-15|Nastãpnô=+1 rok}}
== Przëpisë ==
{{Przëpisë}}
== Bùtnowé lënczi ==
{{Commons}}
[[Kategòrëjô:Eùropejsczé państwa|*]]
[[Kategòrëjô:Lëstë|Eùropejsczich państw]]
51rkc001k4i71tzi7zzcb1dio5wf1ad
Wiki:Pòrtal wëcmaniznë
4
1469
216495
215874
2026-10-05T04:36:40Z
Iketsi
3254
[[:Wiki:1000|Wiki:1000]]
216495
wikitext
text/x-wiki
__NOTOC__
{{Col3
|col1= === 🚧 Werk ===
* [[:Wiki:1000|Wiki:1000]]
* [[:Kategòrëjô:Do werifikacje|Do werifikacje]]
* [[:Kategòrëjô:Dodac òpisënk òdjimka|Dodac òpisënk òdjimka]]
* [[Wiki:Starnë brëkùjącé doczënieniô|Starnë brëkùjącé doczënieniô]]
* [[:Kategòrëjô:Artikle, jaczé nót je napisac òd nowa|Artikle, jaczé nót je napisac òd nowa]]
* [[:Kategòrëjô:Starnë z nieprzezdrzanyma dolmaczënkama|Starnë z nieprzezdrzanyma dolmaczënkama]]
|col2= === [[Przédnô starna]] ===
* [[Szablóna:Wiész të]]
* [[Szablóna:Articzel tidzenia]] <small>(+[[Wiki:Articzel tidzenia]])</small>
* [[Moduł:Random stub/dane]]
|col3= === Diskùsëjô ===
* [[Wiki:Karczma]]
* [[Wiki:Tôfla ògłosów|Tôfla ògłosów]]
* diskùsëjnô lësta: ([http://mail.wikipedia.org/mailman/listinfo/wikipl-l pòlskô])
* [https://discord.gg/xquqbPC6Y4%7C kaszëbsczi serwer Wikimediów] na [[Discord|Discordze]]
}}
{{Col3
|col1= === 🔨Nôrzãdzé ===
* [[Wiki:Szablónë]]
* [[:Kategòrëjô:Artikle do rëmniãcô]]
|col2= === [[Wikipediô|Ò Wikipedie]] ===
* [[Wiki:FAQ|FAQ]]
* [[Wiki:Czim Wikipedijô nie je|Czim Wikipedijô nie je]]
* [[Wiki:Terminologijô|Terminologijô]]
* [[Wiki:Werk ë deja Wiki|Co to je, ë jak fùnkcjonëje Wiki?]]
* [[Wiki:Neùtralny pòzdrzatk|Neùtralny pòzdrzatk]]
* [[Wiki:Midzëmòwnô kòòrdinacëjô|Midzëmòwnô kòòrdinacëjô]]
* [[Wiki:Zladënk całi Wikipediji|Zladënk całi Wikipediji]]
* [[Wiki:Normalizacëjô kaszëbsczi terminologiji]]
|col3= === Òbaczë téż ===
* [[Wiki:Statistika]]
* [[:Kategòrëjô:Nôpiérwi pò kaszëbskù]]
* ''[[m:List of articles all languages should have|List of articles all languages should have]]''
* ''[[m:Slavopedia/100 zapisis, ktor vse Slavju Vikipedias dolzx imat|100 zapisis, ktor vse Slavju Vikipedias dolzx imat]]''
}}
[[Kategòrëjô:Metastarnë Wikipedie]]
[[eu:Wikipedia:WikiMediari buruz gaurkotasun-albisteak]]
fnfd0s6z1kgrm57g0m4vcckkfzvhaf5
Kategòrëjô:Niderlandë
14
1493
216517
159082
2026-10-05T10:17:39Z
Terrus38
14026
Terrus38 przeniós starnã [[Kategòrëjô:Néderlandzkô]] do [[Kategòrëjô:Niderlandë]]: pòwszechno brëkòwóną pòżwą te kraju są Niderlandë, nié Néderlandzkô
159082
wikitext
text/x-wiki
[[Kategòrëjô:Eùropejsczé państwa]]
onlrkft29r1ccvdo7zdqkps4rkd41sy
Duńskô
0
1888
216484
213488
2026-10-04T19:38:35Z
DawnyTest
14843
grańca
216484
wikitext
text/x-wiki
{{Infobox-państwò|
gwôsné miono = Kongeriget Danmark |
miono = Królestwò Duńsczi |
miono-genitiw = Duńsczi |
fana = Flag_of_Denmark.svg |
herb = National coat of arms of Denmark.svg |
na karce = LocationDenmark.png |
mòtto = Forbundne, forpligtede, for Kongeriget Danmark |
jãzëk = [[Duńsczi jãzëk|duńsczi]] |
stolëca = Kòpenhaga |
fòrma państwa = Kònstitucëjnô mònarchijô |
wiéchrzëzna = 43.094 |
procent-wòdë = 1,6 |
lëdztwò = 5 748 769 | rok = 2017 |
dëtk = Króna | kòd dëtka = DKK |
czasowô cona = +1 |
swiãto = [[5 czerwińca]] |
himn = <center>[[Òbrôzk:United States Navy Band - Der er et yndigt land.ogg]]</center> [[Himn Duńsczi|Der er et yndigt land]] – państwòwi himn<br />(Je taczi snôżi krôj) <center>[[Òbrôzk:United States Navy Band - Kong Kristian stod ved højen mast.ogg]]</center> [[Kong Kristian]] – królewsczi himn <br />(Król Christian) |
kòd = DNK |
Internet = .dk |
telefón = +45 |Mònarcha=[[Fridrik X]]|Premiéra=Mette Frederiksen
}}
'''Duńskô''' ({{jãz.|da}} ''Danmark'') – je państwã w Nordowi [[Eùropa|Eùropie]], słëchającym do [[Eùropejskô Ùniô|Eùropejsczi Ùnie]]. Greńczë z [[Niemieckô|Niemcama]], długosc grańcë je òk. 70 km<ref>''[https://www.dw.com/en/germany-denmark-celebrate-border-centennial/a-57875715 Germany, Denmark celebrate border centennial]'' [online], Deutsche Welle [dost. 2026-10-04] ({{Jãz.|en}}).</ref>.
Stolëcznym gardã Duńsczi je [[Kòpenhaga]]. Jińszé wôżné gardë to: [[Odense]], [[Aalborg]] ë [[Aarhus]].
Dosc wiôlgą autonomijã òd Duńsczi mają [[Farersczé Òstrowë]] i [[Grenlandzkô]].
Duńskô je kònstitucyjną mònarchią. Królã òd 2024 je [[Fridrik X]].
== Òbaczë téż ==
* [[Kòpenhaga]]
* [[Grenlandiô]]
* [[Norweskô]]
* [[Niemieckô]]
== Przëpisë ==
{{Przëpisë}}
== Bùtnowé lënczi ==
{{Commons}}
{{Eùropa}}
{{Ùzémk artikla}}
{{Kòntrola}}
[[Kategòrëjô:Eùropejsczé państwa]]
[[Kategòrëjô:Duńskô| ]]
2ddtu7c0fm9tirva4cppmkeoqurximf
Szablóna:Eùropa
10
2386
216522
216383
2026-10-05T10:23:53Z
Terrus38
14026
216522
wikitext
text/x-wiki
{| style="clear:both; width:55em;margin: 1.5em auto; border:1px solid #CCC; background-color:#FCFCFC; font-size:smaller; text-align:center"
! style="background:#ccccff" align="center" | [[Państwò|Państwa]] w [[Eùropa|Eùropie]]
|-
| align="center" style="font-size: 90%" | [[Albańskô]] | [[Andorra|Andora]] | [[Aùstriô]] | [[Belgijskô|Belgiô]] | [[Biôłorus|Biôłoruskô]] | [[Bòsniô ë Hercegòwina]] | [[Bùłgariô|Bùłgarskô]] | [[Chòrwackô]] | [[Cyper]] | [[Czeskô Repùblika]] | [[Czôrnogóra]] | [[Duńskô]] | [[Estóńskô]] | [[Fińskô]] | [[Francjô]] | [[Greckô]] | [[Irlandiô]] | [[Islandiô]] | [[Italskô]] | [[Lëtewskô]] | [[Liechtenstein]] | [[Luksembùrskô]] | [[Łotewskô]] | [[Madżarskô]] | [[Malta]] | [[Miemieckô]] | [[Mòłdawskô]] | [[Mònakò]] | [[Niderlandë|Holandiô]] | [[Nordowô Macedoniô]] | [[Norweskô]] | [[Pòlskô]] | [[Pòrtugalskô]] | [[Rumùńskô]] | [[Ruskô]] | [[San Marino]] | [[Serbskô]] | [[Słoweniô|Słoweńskô]] | [[Słowackô]] | [[Szpańskô]] | [[Szwajcariô]] | [[Szwédzkô]] | [[Tëreckô]] | [[Ùkrajina]] | [[Watikan]] | [[Wiôlgô Britaniô]]
|-
| align="center" style="font-size: 85%" colspan="2" | '''Zanôléżné teritoria:''' [[Alandzczé Òstrowë]] | [[Farersczé Òstrowë]] | [[Gibraltar]] | [[Grenlandzkô]] | [[Guernsey]] | [[Jersey]] | [[Man]] | [[Svalbard]]
|-
| align="center" style="font-size: 85%" colspan="2" | '''Ògrańczoné ùznanié:''' [[Kòsowò]] | [[Nadedniestrzé]]
|}
<noinclude>
[[Kategòrëjô:Eùropa| ]]
[[Kategòrëjô:Szablónë]]
</noinclude>
blquzud8cna2pzysnd317il7m0b4noc
Niderlandë
0
3905
216461
213505
2026-10-04T13:10:14Z
DawnyTest
14843
216461
wikitext
text/x-wiki
{{Infobox-państwò|
gwôsné miono = Koninkrijk der Nederlanden |
miono = Królestwò Néderlandsczi |
miono-genitiw = Néderlandsczi |
fana = Flag of the Netherlands.svg|
herb = Royal coat of arms of the Netherlands.svg |
na karce = LocationNetherlands.svg |
mòtto = Je maintiendrai (Ùtrzëmam) |
jãzëk = [[hòlendersczi jãzëk|hòlendersczi]], flemsczi |
stolëca = Amsterdam|
fòrma państwa = kònstitucyjna mònarchia |
wiéchrzëzna = 41.543 |
lëdztwò = 17.100.000 | rok = 2017 |
dëtk = [[Eùro]] | kòd dëtka = EUR |
czasowô cona = +0 |
swiãto = 27 łżëkwiata<ref>[https://www.amsterdamsights.com/events/koningsdag.html King's Day] amsterdamsights.com [2025-08-20]</ref>|
himn = Wilhelmus van Nassouwe <center>[[Òbrôzk:United States Navy Band - Het Wilhelmus (tempo corrected).ogg]]</center> |
kòd = NL |
Internet = .nl |
telefón = +31 |Premiéra=Rob Jetten|Mònarcha=[[Wilhelm-Aleksander]]|aùtowi kòd=NL}}
'''Hòlandiô'''<ref>{{sloworz.org|27579|32202}}</ref> téż '''Néderlandzkô''' ({{jãz.|nl}} ''Nederland'') je państwã w Zôpadny [[Eùropa|Eùropie]], krôj [[Eùropejskô Ùniô|Eùropejsczi Ùnie]]. Do Hòlandie nôleżą też zamòrsczé teritoria w Americe, chtërë są aùtonomicznëmi krajama: Aruba, Curaçao i Sint Maarten.
Néderlandzkô je kònstitucyjną mònarchią. Przédnikã kraju òd 2013 je król [[Wilhelm-Aleksander]] z dinastëji Orańsczi-Nassau.
* stoleczny gard: [[Amsterdam]], le sedzba rządu je w [[Haga|Hadze]].
* lëdztwò: 17.100.475 mieszkańców ([[2017]])
* wiéchrzëzna: 41.543 km²
* dëtk: euro
* telefón: +31
* Internet: .nl
== Przëpisë ==
{{Przëpisë}}
== Bùtnowé lënczi ==
{{Commons}}
{{Eùropa}}
{{Euro}}
{{Ùzémk artikla}}
{{Kòntrola}}
[[Kategòrëjô:Eùropejsczé państwa]]
[[Kategòrëjô:Néderlandzkô| ]]
139papbreskk8f809aaq33i62auoo9h
216501
216461
2026-10-05T10:08:01Z
Terrus38
14026
Terrus38 przeniós starnã [[Néderlandzkô]] do [[Niderlandë]]: "Néderlandzkô" to fòrma znónô prakticzno blós z Wikipedie, pòwszechno ùżiwóną fòrmą są Niderlandë, zdrz. https://bibliotekacyfrowa.eu/Content/75801/82460.pdf, https://mojestrone.com/artykul/nato-rozwinie-swoj-system-n1312141, https://mojestrone.com/artykul/dzin-na-niderlandzczich-n2282927, https://biersztuba.wordpress.com/2021/04/30/ropsmenowie-z-erengrad-kaszebi-w-swiece-warhammera/
216461
wikitext
text/x-wiki
{{Infobox-państwò|
gwôsné miono = Koninkrijk der Nederlanden |
miono = Królestwò Néderlandsczi |
miono-genitiw = Néderlandsczi |
fana = Flag of the Netherlands.svg|
herb = Royal coat of arms of the Netherlands.svg |
na karce = LocationNetherlands.svg |
mòtto = Je maintiendrai (Ùtrzëmam) |
jãzëk = [[hòlendersczi jãzëk|hòlendersczi]], flemsczi |
stolëca = Amsterdam|
fòrma państwa = kònstitucyjna mònarchia |
wiéchrzëzna = 41.543 |
lëdztwò = 17.100.000 | rok = 2017 |
dëtk = [[Eùro]] | kòd dëtka = EUR |
czasowô cona = +0 |
swiãto = 27 łżëkwiata<ref>[https://www.amsterdamsights.com/events/koningsdag.html King's Day] amsterdamsights.com [2025-08-20]</ref>|
himn = Wilhelmus van Nassouwe <center>[[Òbrôzk:United States Navy Band - Het Wilhelmus (tempo corrected).ogg]]</center> |
kòd = NL |
Internet = .nl |
telefón = +31 |Premiéra=Rob Jetten|Mònarcha=[[Wilhelm-Aleksander]]|aùtowi kòd=NL}}
'''Hòlandiô'''<ref>{{sloworz.org|27579|32202}}</ref> téż '''Néderlandzkô''' ({{jãz.|nl}} ''Nederland'') je państwã w Zôpadny [[Eùropa|Eùropie]], krôj [[Eùropejskô Ùniô|Eùropejsczi Ùnie]]. Do Hòlandie nôleżą też zamòrsczé teritoria w Americe, chtërë są aùtonomicznëmi krajama: Aruba, Curaçao i Sint Maarten.
Néderlandzkô je kònstitucyjną mònarchią. Przédnikã kraju òd 2013 je król [[Wilhelm-Aleksander]] z dinastëji Orańsczi-Nassau.
* stoleczny gard: [[Amsterdam]], le sedzba rządu je w [[Haga|Hadze]].
* lëdztwò: 17.100.475 mieszkańców ([[2017]])
* wiéchrzëzna: 41.543 km²
* dëtk: euro
* telefón: +31
* Internet: .nl
== Przëpisë ==
{{Przëpisë}}
== Bùtnowé lënczi ==
{{Commons}}
{{Eùropa}}
{{Euro}}
{{Ùzémk artikla}}
{{Kòntrola}}
[[Kategòrëjô:Eùropejsczé państwa]]
[[Kategòrëjô:Néderlandzkô| ]]
139papbreskk8f809aaq33i62auoo9h
216509
216501
2026-10-05T10:12:57Z
Terrus38
14026
216509
wikitext
text/x-wiki
{{Infobox-państwò|
gwôsné miono = Koninkrijk der Nederlanden |
miono = Królestwò Niderlandów |
miono-genitiw = Niderlandów |
fana = Flag of the Netherlands.svg|
herb = Royal coat of arms of the Netherlands.svg |
na karce = LocationNetherlands.svg |
mòtto = Je maintiendrai (Ùtrzëmam) |
jãzëk = [[hòlendersczi jãzëk|hòlendersczi]], flemsczi |
stolëca = Amsterdam|
fòrma państwa = kònstitucyjna mònarchia |
wiéchrzëzna = 41.543 |
lëdztwò = 17.100.000 | rok = 2017 |
dëtk = [[Eùro]] | kòd dëtka = EUR |
czasowô cona = +0 |
swiãto = 27 łżëkwiata<ref>[https://www.amsterdamsights.com/events/koningsdag.html King's Day] amsterdamsights.com [2025-08-20]</ref>|
himn = Wilhelmus van Nassouwe <center>[[Òbrôzk:United States Navy Band - Het Wilhelmus (tempo corrected).ogg]]</center> |
kòd = NL |
Internet = .nl |
telefón = +31 |Premiéra=Rob Jetten|Mònarcha=[[Wilhelm-Aleksander]]|aùtowi kòd=NL}}
'''Holandiô''', téż '''Niderlandë''' ({{jãz.|nl}} ''Nederland'') – państwò w Zôpadny [[Eùropa|Eùropie]] nôleżącé do [[Eùropejskô Ùniô|Eùropejsczi Ùnie]]. Do Holandie nôleżą też zamòrsczé teritoria w Americe, chtërë są aùtonomicznyma krajama: Aruba, Curaçao i Sint Maarten.
Niderlandë są kònstitucyjną mònarchią. Głową państwa òd 2013 je król [[Wilhelm-Aleksander]] z dinastie Òrańsczi-Nassaù.
* stolëczny gard: [[Amsterdam]] (sedzba rządu je w [[Haga|Hadze]]).
* lëdztwò: 17.100.475 mieszkańców ([[2017]])
* wiéchrzëzna: 41.543 km²
* dëtk: euro
* telefón: +31
* Internet: .nl
== Przëpisë ==
{{Przëpisë}}
== Bùtnowé lënczi ==
{{Commons}}
{{Eùropa}}
{{Euro}}
{{Ùzémk artikla}}
{{Kòntrola}}
[[Kategòrëjô:Eùropejsczé państwa]]
[[Kategòrëjô:Niderlandë| ]]
t4a9s3mq7s8ib6jhrw130n151jkfnh6
Szablóna:Eùro
10
4481
216523
215766
2026-10-05T10:24:00Z
Terrus38
14026
216523
wikitext
text/x-wiki
{| style="clear:both; width:55em;margin: 1.5em auto; border:1px solid #CCC; background-color:#FCFCFC; font-size:smaller; text-align:center"
! style="background:#ccccff" align="center" | [[Państwò|Państwa]] z [[Eùro]]
|-
| style="font-size:90%" | '''Państwa Gòspòdarczi i Walutowi Ùnie'''
[[Aùstriô]] | [[Belgijskô|Belgiô]] | [[Bùłgariô]] | [[Chòrwackô]] | [[Cyper]] | [[Estóńskô]] | [[Fińskô]] | [[Francjô]] | [[Greckô]] | [[Irlandiô]] | [[Italskô]] | [[Lëtewskô]] | [[Luksembùrskô]] | [[Łotewskô]] | [[Malta]] | [[Miemieckô]] | [[Niderlandë|Holandiô]] | [[Pòrtugalskô|Pòrtugaliô]] | [[Słowackô]] | [[Słoweniô]] | [[Szpańskô]]
| rowspan=3 |[[Òbrôzk:Eurozone Internal.svg|120px|border]]
|-
| style="font-size:80%" |'''jiné państwa:''' [[Andora]] | [[Czôrnogóra]] | [[Kòsowò]] | [[Mònakò]] | [[San Marino]] | [[Watikan]]
|}<noinclude>[[Kategòrëjô:Navboxë]]</noinclude>
h7lf2z0x4ds20kle2o2yuhne3ar0dm1
Qin Shi Huang
0
5466
216500
205192
2026-10-05T08:05:08Z
Iketsi
3254
Copying from [[Category:Chinë]] to [[Category:Pòliticë]] using [[c:Help:Cat-a-lot|Cat-a-lot]]
216500
wikitext
text/x-wiki
[[Òbrôzk:Qinshihuangdi3.jpg|mały|Qin Shi Huang]]
'''Qin Shi Huang''' (ùr. [[260 p.n.e.]], ùm. [[210 p.n.e.]]) – zwóny czasã zwëczajno '''Pierszim Czezerã''' – pierszi czezer [[Chińsczé Czezerstwò|Chińsczégò Czezerstwa]], chtëren w [[221]] r. p.n.e. sparłãcził sëłą biôtkùjącé sã królestwa w òbéńdze [[Chinë|Chinów]]<ref>[https://www.national-geographic.pl/historia/qin-shi-huang-kim-byl-i-z-czego-zaslynal-pierwszy-cesarz-chin/ Qin Shi Huang – kim był pierwszy cesarz Chin?] National Geographic</ref>.
== Przëpisë ==
{{Przëpisë}}
== Bùtnowé lënczi ==
{{Commons}}
{{Ùzémk artikla}}
{{Kòntrola}}
[[Kategòrëjô:Chinë]]
[[Kategòrëjô:Pòliticë]]
k7sbisontt3cm3ei2p27bvds4cxguj6
Frizjô
0
6104
216511
201700
2026-10-05T10:14:31Z
Terrus38
14026
216511
wikitext
text/x-wiki
[[Òbrôzk:Frisian flag.svg|mały|Flaga Frizëjsczi]]
[[Òbrôzk:Exmorra 02.JPG|mały|Tablëca w dwóch jãzëkach przed môlëzną we Frizje]]
'''Frizjô''' (friz. ''Fryslân'') – to je prowincëjô w nordowëch [[Niderlandë|Niderlandach]] – w Zôpadny Eùropie. We Frizje są szkòłë w jaczich szkólny ùczą frizyjsczégò jãzëka.
== Bùtnowé lënczi ==
{{Commons}}
* [https://web.archive.org/web/20160304142319/http://zslipnica.info/fryzja2010.html Kaszëbi we Frizëjsce]
{{Ùzémk artikla}}
{{Kòntrola}}
[[Kategòrëjô:Niderlandë]]
gahdf0x4sbdjvtn1c350ai5qk2qyb0j
216512
216511
2026-10-05T10:14:52Z
Terrus38
14026
216512
wikitext
text/x-wiki
[[Òbrôzk:Frisian flag.svg|mały|Frizyjskô fana]]
[[Òbrôzk:Exmorra 02.JPG|mały|Dëbeltjãzëkòwô tôblëca przed môlëzną we Frizje]]
'''Frizjô''' (friz. ''Fryslân'') – to je prowincëjô w nordowëch [[Niderlandë|Niderlandach]] – w Zôpadny Eùropie. We Frizje są szkòłë w jaczich szkólny ùczą frizyjsczégò jãzëka.
== Bùtnowé lënczi ==
{{Commons}}
* [https://web.archive.org/web/20160304142319/http://zslipnica.info/fryzja2010.html Kaszëbi we Frizëjsce]
{{Ùzémk artikla}}
{{Kòntrola}}
[[Kategòrëjô:Niderlandë]]
tsclzcazflcpvzwoq9x2y34w3u369i3
216513
216512
2026-10-05T10:15:13Z
Terrus38
14026
216513
wikitext
text/x-wiki
[[Òbrôzk:Frisian flag.svg|mały|Frizyjskô fana]]
[[Òbrôzk:Exmorra 02.JPG|mały|Dëbeltjãzëkòwô tôblëca przed môlëzną we Frizje]]
'''Frizjô''' (friz. ''Fryslân'') – to je prowincëjô w nordowëch [[Niderlandë|Niderlandach]] – w Zôpadny Eùropie. We Frizje są szkòłë w jaczich szkólny ùczą frizyjsczégò jãzëka.
== Bùtnowé lënczi ==
{{Commons}}
* [https://web.archive.org/web/20160304142319/http://zslipnica.info/fryzja2010.html Kaszëbi we Frizje]
{{Ùzémk artikla}}
{{Kòntrola}}
[[Kategòrëjô:Niderlandë]]
7n3xbgq8c9jxs1e1wdk34fx451riyry
Otto von Bismarck
0
6412
216499
198510
2026-10-05T08:04:03Z
Iketsi
3254
Copying from [[Category:Miemcë]] to [[Category:Pòliticë]] using [[c:Help:Cat-a-lot|Cat-a-lot]]
216499
wikitext
text/x-wiki
[[Òbrôzk:BismarckArbeitszimmer1886rest.jpg|mały|Otto von Bismarck]]
'''Otto von Bismarck''' (1815–1898) – prësczi kanclérz, ùtwórca sparłãczonégò państwa, Miemiecczi Rzeszë. Ten ksyżã miôł swòje priwatné zrzeszenia z [[Kaszëbi|Kaszëbama]] bò pisôł, że w Bëtowszczi [[Zemia|Zemi]] w rozcygający sã wkół pùstoce czëc je le „wëcé wilków i Kaszëbów”. Dzélã [[Prësowie|prësczégò]] i bismarckòwsczégò na [[Pòmòrskô|Pòmòrsce]] mitu béł ùrëchlony pò wòjnie freńcëskò-prësczi, dzãka złotu wëgrónëch, gòspòdarczi rozwij Prës, òsoblëwò jegò wschódnëch, junczerzczich prowincëji, do chtërnëch barżi nôleżała [[Zôpadnô Pòmòrskô]], miéj [[Zôpadné Prësë]]. Òn béł [[Junker|junkrem]].
Derdowsczi mòże pòd amerikańsczim cëskiem napisôł: <blockquote>"Na wieczné czasë darząc gò fòlwarkã/Ònã pòsadłosc przezwalë Bismarkã"</blockquote>
== Bùtnowé lënczi ==
{{Commons}}
{{Ùzémk artikla}}
{{Kòntrola}}
[[Kategòrëjô:Miemcë]]
[[Kategòrëjô:Pòliticë]]
9xk7hq7ui5i8qqvgurzge8sg4vvmq2h
Slédny Sąd (òbrôz)
0
7897
216515
196967
2026-10-05T10:16:09Z
Terrus38
14026
216515
wikitext
text/x-wiki
'''Slédny Sąd''' – to je triptik (trzëdzélowy òbrôz) [[Niderlandë|niderlandzczégò]] malownika. Ten òbrôz namalowôł kòl 1467–1471 rokù [[Hans Memling]], a terô òn je w [[Nôrodné Mùzeum w Gduńskù|Nôrodnym Mùzeum w Gduńskù]].
<center>
<div style="border-collapse:collapse;border:1px solid lightgrey; padding:10px;width:490px;text-align:center">
[[Òbrôzk:Hans Memling 016.jpg|73px]]
[[Òbrôzk:Hans Memling 017.jpg|75px]]
[[Òbrôzk:Hans Memling 018.jpg|169px]]
[[Òbrôzk:Hans Memling 021.jpg|75px]]
[[Òbrôzk:Hans Memling 020.jpg|72px]]
''Slédny Sąd'', kòl 1467-1471 rokù. [[Nôrodné Mùzeum w Gduńskù]]
</div>
</center>
== Bùtnowé lënczi ==
{{Commons}}
{{Ùzémk artikla}}
[[Kategòrëjô:Kùńszt]]
[[Kategòrëjô:Gduńsk]]
[[Kategòrëjô:Niderlandë]]
k1pz9sy3fwq7t3ymdv2nx0hmhv744s3
Haga
0
9361
216514
198264
2026-10-05T10:15:36Z
Terrus38
14026
216514
wikitext
text/x-wiki
[[Òbrôzk:Cityscape of The Hague, viewed from Het Plein (The Square).jpg|mały|Haga]]
'''Haga''' – to je wiôldżi gard w [[Niderlandë|Niderlandach]] ë jich rząd mô tu sedzbã.
W [[2023]] rokù òna mia 560 000 mieszkańców<ref>[https://www.denhaag.nl/en/introducing-the-hague/the-hague-in-numbers/ The Hague in numbers] The Hague</ref>.
== Przëpisë ==
{{Przëpisë}}
== Bùtnowé lënczi ==
{{Commons}}
* [https://web.archive.org/web/20131023095458/http://www.denhaag.nl/home.htm Domôcô starna gardu]
{{Ùzémk artikla}}
[[Kategòrëjô:Niderlandë]]
bcjudhsbi4tajzztcfb1juayvj86xjn
Michael Jackson
0
11335
216493
216450
2026-10-05T00:01:29Z
Terrus38
14026
przëpisë dodóm pózni
216493
wikitext
text/x-wiki
{{Biogram infobox|miono=Michael Jackson|òbrôzk=Michael Jackson 1983 (3x4 cropped) (contrast).jpg|fùl miono=Michael Joseph Jackson|data narodzeniégò=[[29 zélnika]] [[1958]]|môl narodzeniégò=[[Gary (Indiana)|Gary]]|data smiercë=[[25 czerwińca]] [[2009]]|môl smiercë=[[Los Angeles]]|przëczëna smiercë=przedôwkòwanié propòfòlu|wark=artista mùzyk, spiéwôrz, tuniôrz, aktór, ùsôdzca, filantrop|nôrodnosc=amerikańskô|wëznanié=[[chrzescëjaństwò]]|małżeństwò=[[Lisa Marie Presley]] (1994-1996), </br>[[Deborah Jeanne Rowe]] (1996-1999)|dzecë=[[Michael Joseph Jackson Jr.]], [[Paris-Michael Katherine Jackson]], [[Prince Michael Jackson II]]|pòdpis=Michael Jackson signature.svg}}
'''Michael Joe Jackson''' (ùr. [[29 zélnika]] [[1958]] w [[Gary (Indiana)|Gary]], ùm. [[25 czerwińca]] [[2009]] w [[Los Angeles]]) – [[Zjednóné Kraje Americzi|amerikańsczi]] mùzyk a spiéwôrz mùzyczi pòp, R&B, soul, rock i funk, aùtór tekstów, estradowi artista, tuniôrz, aktór, ùsôdzca i filantrop. Spiéwôł tenorã, dispònowôł głosã o skalë trzech i pół òktawë. Pòzéwóny „królã pòpù”, trzimóny je za jednã òd nôbarżi ikònicznëch pòstacjów swiata kùlture XX stalatégò.
Dzãka swòjim mùzycznym wëstãpóm ë telediskóm spòpùlarizowôł charakteristiczné tuńcowé rëchë, jaczé stałë sã jegò rozpòznôwczim céchã. Jegò głos a sztil wpłiwôł na artistów wielnëch mùzycznëch gatënków. Jackson je nôbarżi nôdgrôdzónym artistą w historie pòpùlarny mùzyczi.
== Żëcopis ==
Jackson zaczął wëstãpòwac we wiekù piãc lat. Pòd dozorã rigòristicznégò òjca, Josepha Jacksona, Michael i czwórka jegò starszich bracynów ùtwòrza karno [[The Jackson 5]], jaczé pózni òstało przemionowóné na The Jacksons. Jich nôwikszim szlagróm słëchało ''I Want You Back'' (1969), ''Dancing Machine'' (1973), ''Blame It on the Boogie'' (1978), ''ABC'' (1970), and ''Who's Lovin' You'' (1969). Pierszi solowi albùm Michaela, ''Off the Wall'', òstôł wëpùszczony w 1979 i zajãdrzniôł czile szlagrama, taczima jak ''Don't Stop 'Til You Get Enough'', ''Rock With You'', a ''Off the Wall''. W 1983 wëszedł albùm ''Thriller''. Nawetka pò wicy jak 40 latach, òstôwô nôlepi przedôwającym sã albùmã na swiece a zamikô w se zacht jegò nôwikszich szlagrów, w tim ''Billie Jean''. Za ''Thriller'' zdobéł òsmë [[Nôdgroda Grammy|nôdgrodów Grammy]]. Michael rëgnął w promòcyjną turã albùmù ze swòjima bracynama mët. Òb nen cząd òdkrił, że cerpi na bielactwò, chòrosc, jakô sprôwia, co tracył melaninã w skórze. W gwësnym sztóce pòniechtërne òbrëmia jegò skórë stałë sã na tëli jasné, co ùżiwanié pòcemniwającégò makijażu ju nie bëło prakticzné – doprowadzëło to do ne, co przëbrôł „biôłi” wëzdrzatk — ta decyzja przëcygnã wiele kriticzi òd pùbliczi a mediów. W dodôwkù z pòwòdu wëbùchù pirotechniczi òb czas nagriwaniô reklamë Pepsi doznôł pòpieczeniów drëdżegò ë trzecégò stãpienia na skórze głowë, dlôte mùszôł brëkòwac przedłużeniów włosów a cziszów. Jegò trzecy solowi albùm, ''Bad'', wëpùszczony òstôł w 1987 i stanowił nôwikszi rozkòlib w jegò kariérze. Stôł sã drëdżim nôlepi przedôwającym sã albùmã wszechczasów a towarzącô mù tura bëła jedną òd nôwikszich czedëkòlwiek. ''Dangerous'', wëdóné trzë lata pózni, bëło téż kòmercyjną zwënégą. Jackson òstôwôł na czëpie swiata mùzyczi przez pònad trzë dekadë, wëdôwającë trzë pòsobné albùmë w 1995, 1997 a 2001. Òb czas swòjich turów pò swiece òdwiedzywôł dzecë w szpitalach a w swòjim żëcym przekôzôł wicy jak 300 milionów dolarów na humanitarné céle. Dzãka charitatiwnym kampanióm a swòjim gwôsnym frańtówkóm (taczim jak ''We Are the World'' ë ''What More Can I Give''), ùdało mù sã zebrac milionë dolarów dlô pòtrzebùjącëch. Do dzysdnia òstôwô nôwikszim filantropã òd wszetczich celebritów{{Pòtrzébny przëpis}}.
Na swòji parcelë, Neverland, dze zbùdowôł, midzë jinyma, zoò a park zôbawów, gòscył wielné familie a chòré dzecë. Niechtërne dzecë spãdzywałë z nim całé dnie, nawetka zasypiającë w jegò łóżkù. Jegò dobrziństwò òstało ale zakwestionowóné pò 1993 przez òbskôrżenié ò seksualné wëkòrzëstiwanié dzecy. Pózni wëszło na jôw, co nie bëło dokazów pòcwierdzywającëch òbskôrdżi i że bëłë òne mòtiwòwóné chãcą financowégò zwëskù. Cobë òstawic za sobą nieprzijemné doswiôdczenia jak nôrëchli i ùchilëc sã òd dłudżégò procesu, Jackson zawiarł ùgôdënk na 20 milionów dolarów. Spòwòdowało to negatiwny pòmión westrzód pùbliczny òpinii, jakô ùzna to za próbã ùcëszeniô òfiarë. To dało pòsobné òbskôrżenia. Przez wnet dekadã béł pòd nadzorã FBI z ti przëczënë, ale niżóden dokôz na jegò winã nie òstôł nalazłi. Sąd ùznôł Jacksona niewinnym nëch pòstãpnëch zarzëtów ò seksualné wëkòrzistanié{{Pòtrzébny przëpis}}.
W 1994 rokù òżenił sã z [[Lisą Marie Presley]], córką [[Elvis Presley|Elvisa Presleya]], równak zdënk nie béł ùdóny. Rozlezlë sã pò dwùch latach ale pòtikelë sã jesz przez jaczis czas pózni. 14 lëstopadnika 1996 Jackson zdôł sã ze swòją dermatolożką, Deborah Jeanne Rowe, z jaką miôł sëna, Michaela „Prince’a” Josepha (ùr. 1997), i córkã, Paris-Michael Katherine (ùr. 1998), rozlezlë sã równak w 1999 rokù. W 2002 Jacksonowi ùrodzył sã drëdżi syn, Prince „Blankett” Michael, jaczégò ùrodza mù zastãpczô matka, jaczi juwernota nie òsta ùpùblicznionô.
25 czerwińca 2009 rokù zamiarł z pòwòdu przedôwkòwaniô propòfòlu (chtërnégò stosowanié w domôcëch warënkach je zakôzóné) pòdónégò mù przez Conrada Murraya, priwatnégò lékarza Jacksona.
== Òbaczë téż ==
* [[Mùzyka]]
== Bùtnowé lënczi ==
{{Commons}}
{{Ùzémk artikla}}
{{DEFAULTSORT:Jackson, Michael}}
[[Kategòrëjô:Spiéwôcë|Jackson, Michael]]
8glf2dr72iwrtqc1brih3ugc1ioeb2m
Szablóna:Amerika
10
11685
216524
212682
2026-10-05T10:24:10Z
Terrus38
14026
216524
wikitext
text/x-wiki
{| style="clear:both; width:55em;margin: 1.5em auto; border:1px solid #CCC; background-color:#FCFCFC; font-size:smaller; text-align:center"
! style="background:#B0C4DE" align="center" | [[Państwò|Państwa]] i teritoria w [[Nordowô_Amerika|Nordowi]], Westrzédny i [[Pôłniowô Amerika|Pôłniowi Americe]]
|-
| align="left" style="font-size: 100%" style="background:#B0E0E6" | '''[[Nordowô Amerika]]''' | [[Kanada]] | [[Zjednóné Kraje Americzi]] | [[Grenlandiô]] | [[Bermudë]] ([[Wiôlgô Britaniô]]) | [[Saint-Pierre ë Miquelon]] ([[Francjô]])
|-
| align="left" style="font-size: 100%" | '''Westrzédnô Amerika''' | [[Belize]] | [[Gwatemala]] | [[Honduras]] | [[Kòstarika]] | [[Meksyk]] | [[Nikaragùa]] | [[Panama]] | [[Salwadór]]
|-
| align="left" style="font-size: 90%" style="background:#B0E0E6" | '''Karajibë''' | [[Antigùa i Barbùda]] | [[Bahamë]] | [[Barbados]] | [[Dóminika]] | [[Dóminikańskô Repùblika]] | [[Grenada]] | [[Hajiti]] | [[Jamajka]] | [[Kùba]] | [[Pòrtorikò]] ([[USA]]) | [[Saint Kitts i Nevis]] | [[Saint Lucia]] | [[Saint Vincent i Grenadinë]]
|-
| align="left" style="font-size: 100%" | '''[[Pôłniowô Amerika]]''' | [[Argentina]] | [[Bòliwiô]] | [[Brazylskô|Brazyliô]] | [[Chile]] | [[Ekwador|Ekwadór]] | [[Gùjana]] | [[Kòlumbiô]] | [[Paragwaj]] | [[Peru]] | [[Surinam]] | [[Trinidad ë Tobagò]] | [[Ùrugwaj]] | [[Wenezuelskô|Wenezuela]]
|-
| align="center" colspan="2" style="background:#B0E0E6" | <small> '''Zanôléżné teritoria:''' | [[Francjô]]: [[Gwadelupa]], [[Martinika]], [[Saint-Martin]]| [[Niderlandë]]: [[Aruba]], [[Bonaire]], [[Curaçao]], [[Saba]], [[Sint Eustatius]], [[Sint Maarten]] | [[Wiôlgô Britaniô]]: [[Anguilla]], [[Britijsczé Dzewiczé Òstrowë|B. Dzewiczé Òstrowë]], [[Kajmanë]], [[Montserrat]] | USA: [[Dzewiczé Òstrowë Zjednónëch Stanów|Dzewiczé Òstrowë]] </small>
|}
<noinclude>
[[Kategòrëjô:Pôłniowô_Amerika| ]]
[[Kategòrëjô:Nordowô_Amerika| ]]
</noinclude>
1dc6k95drtkxwjhyxvti8yt197rqnnz
Adriaan van Royen
0
11723
216516
203982
2026-10-05T10:16:56Z
Terrus38
14026
216516
wikitext
text/x-wiki
[[Òbrôzk:Adriaan-van-Royen.jpg|mały|Adriaan van Royen]]
'''Adriaan van Royen''' (ùr. [[11 lëstopadnika]] 1704 rokù – ùm. [[28 gromicznika]] 1779 rokù) – to béł lékôrz i bòtanik na Leideńsczim Uniwersytece w [[Niderlandë|Niderlandach]]. Adriaan van Royen pisôł ò [[Kaszëbskô wika|kaszëbsczi wice]] - w swòji pùblikacji i cytowôł pùblikacjã [[Jakùb Breyne|Jakùba Breyne]] - "Prodromus fasciculi rariorum plantarum ..". Òn napisôł m. in. ò ti wice (''Vicia cassubica'') - ''Vicia multiflora cassubica ...'', a wespółrobił z [[Karol Linneùsz|Karolã Linneùszã]] - i ten cytowôł m.in. pùblikacjã A. van Royen. Szlach ''Royena'' L. miôł pòzwã òd jegò [[Nôzwëskò|nôzwëska]], dzysô gò zwią ''Diospyros''.
== Wëbróné dokôzë ==
* [https://web.archive.org/web/20210719021137/http://www.botanicus.org/page/405470 ''Florae leydensis prodromus''] (1740, s. 364).
* ''Carmen elegiacum de amoribus et connubiis plantarum'' (1732).
== Bùtnowé lënczi ==
{{Commons}}
* [https://web.archive.org/web/20210412151728/https://viaf.org/viaf/7734115/ VIAF]
{{DEFAULTSORT:van Royen, Adriaan}}
[[Kategòrëjô:Bòtanika]]
[[Kategòrëjô:Niderlandë]]
be61s0ufoc9iss314wrdr1sqg3nt62a
Szablóna:Imagemap Miemieckô
10
12286
216525
190399
2026-10-05T10:25:50Z
Terrus38
14026
216525
wikitext
text/x-wiki
{{#tag:imagemap|
Òbrôzk:{{{Òbrôzk|{{{1|Karte Deutsche Bundesländer (nummeriert).svg}}}}}}{{!}}{{{Maße|{{{2|190px}}}}}}{{!}}{{{Alt|{{{3|Karte}}}}}}{{#if: {{{4|}}} | {{!}}{{{4}}}{{#if: {{{5|}}} | {{!}}{{{5}}} }} }}
circle 481 258 27 [[Berlëno]]
circle 189 198 27 [[Bremeńskô|Bremen]]
circle 181 155 18 [[Bremeńskô|Bremen]]
circle 271 155 27 [[Hambùrg]]
poly 182 121 59 137 58 152 86 172 80 243 60 245 61 261 79 287 122 267 137 277 136 307 169 299 158 266 184 258 188 274 207 262 213 275 203 284 228 344 249 358 236 378 253 386 309 359 308 311 336 305 321 231 361 212 331 174 290 171 253 170 251 154 223 120 [[Dolné Saksë]]
poly 208 566 201 510 269 462 308 493 361 475 394 477 438 520 526 632 528 668 460 711 486 761 472 774 338 787 290 793 243 768 276 756 269 688 302 648 285 612 273 570 253 545 231 545 [[Bajerë]]
circle 58 581 38 [[Saarskô]]
poly 198 117 150 24 157 2 192 1 241 19 343 52 350 65 322 111 322 144 306 170 287 170 280 135 247 149 226 117 [[Szlezwidzkô-Hòlsztińskô]]
poly 360 210 405 225 409 296 467 325 470 369 525 370 530 355 573 349 564 251 531 217 542 170 503 154 481 183 441 188 394 170 353 195 [[Brandenbùrgiô]]
poly 575 349 589 372 589 409 578 427 516 439 462 473 420 496 394 475 392 460 441 420 415 405 403 368 438 349 463 348 467 368 522 376 532 357 [[Saksë]]
poly 266 385 280 411 257 447 310 489 364 473 394 473 390 453 438 419 418 407 411 423 359 395 358 376 317 357 [[Turinga]]
poly 325 231 338 305 309 311 313 353 361 377 359 393 411 422 414 407 401 367 438 344 466 347 466 324 411 300 402 225 363 212 [[Sakso-Anhalt]]
poly 461 24 495 41 531 97 541 168 502 153 479 183 442 189 398 170 353 195 331 171 309 168 324 145 324 114 352 67 [[Meczelbòrskô-Przédné Pòmrë]]
poly 239 773 97 775 87 757 111 652 152 622 164 567 177 560 205 569 233 543 252 545 269 569 299 649 265 685 273 753 [[Badeniô-Wurtemberga]]
poly 145 442 121 519 156 519 163 564 178 557 206 568 199 510 266 461 256 444 273 413 264 384 250 389 233 380 243 358 233 350 189 370 [[Hesë]]
poly 7 327 3 406 26 473 59 476 124 424 140 444 188 366 221 358 227 345 198 284 207 276 207 269 188 279 182 265 161 266 171 298 135 309 136 274 120 268 70 289 [[Nordowô Nadreniô-Westfalëjô]]
poly 24 474 6 504 28 536 22 557 68 548 85 552 92 609 147 624 164 566 157 521 119 521 141 446 126 426 58 479 [[Nadreniô-Palatinat]]
poly 65 798 75 774 97 782 117 772 173 770 185 758 205 758 245 786 235 798 [[Szwajcarskô]]
poly 207 760 239 780 247 766 229 758 215 756 [[Bodeńsczé Jezoro]]
poly 237 796 241 774 251 770 263 774 271 784 279 798 295 788 293 770 315 774 333 788 365 780 373 764 399 766 439 766 465 776 467 752 459 736 447 708 497 676 509 664 515 650 545 666 579 644 587 622 589 796 343 798 [[Aùstriô]]
poly 3 568 17 578 27 572 37 542 27 534 19 528 17 502 9 500 0 520 [[Luksembùrg]]
poly 0 572 29 570 43 586 57 608 147 624 121 666 107 712 107 766 105 774 99 778 83 778 75 772 65 784 73 792 67 798 1 798 [[Francjô]]
poly 1 512 9 502 19 498 29 480 13 444 0 440 [[Belgijskô]]
poly 589 430 567 436 547 428 413 498 413 514 431 528 425 552 441 582 457 582 515 642 533 660 541 662 551 654 569 662 571 638 581 642 587 616 [[Czeskô Repùblika]]
poly 539 115 539 121 563 127 563 149 545 141 553 183 535 225 565 257 565 279 571 299 575 315 563 331 575 351 573 363 585 369 587 387 579 423 589 419 587 99 [[Pòlskô]]
poly 1 439 9 443 9 425 1 415 1 405 15 397 23 371 5 329 21 319 35 327 63 313 51 305 77 287 69 265 51 265 59 245 75 247 83 189 61 165 0 175 [[Niderlandë]]
poly 179 15 219 23 225 23 239 15 259 21 279 11 307 25 337 27 357 45 383 39 389 47 393 35 399 21 431 7 417 3 403 0 377 1 383 11 359 19 345 11 333 21 313 25 323 3 177 1 [[Duńskô]]
poly 573 0 589 9 589 1 [[Duńskô|Bòrnhòlm (do Duńsczi)]]
poly 513 127 523 133 537 133 541 135 561 149 557 123 539 121 519 121 [[Szczecyńsczi Wik]]
poly 125 84 127 94 135 92 135 86 137 82 [[Szlezwik-Holsztén|Helgòland (do SH)]]
poly 1 156 57 140 99 120 149 120 163 84 143 32 147 0 0 0 [[Nordowé Mòrzé]]
poly 267 24 275 54 311 68 325 64 331 50 339 52 349 56 353 64 345 82 331 100 325 104 337 104 349 102 369 86 397 90 411 78 419 54 455 58 465 42 485 34 487 44 503 46 507 56 501 64 521 80 519 92 539 112 549 110 585 96 589 8 567 2 431 0 435 12 419 14 395 36 397 48 389 54 383 44 363 50 349 40 319 30 329 18 335 10 343 6 341 0 325 0 313 34 301 28 289 24 279 14 277 6 269 6 273 16 [[Bôłt]]
}}<noinclude>
Diese Vorlage erzeugt eine [[Verweissensitive Grafik|anklickbare Karte]] (eine sogenannte [[Hilfe:Bilder#Imagemaps|Imagemap]]) von Deutschland mit den 16 Bundesländern und Stadtstaaten. Die Imagemap ist in erster Linie als Ergänzung zur [[Vorlage:Navigationsleiste Deutsche Länder|Navigationsleiste Deutsche Länder]] gedacht und soll die selben Links wie diese enthalten.
Verwendung:
<nowiki>{{</nowiki>{{PAGENAME}}|Òbrôzk.svg}}
<nowiki>{{</nowiki>{{PAGENAME}}|Òbrôzk.svg|left|281px}}
Es dürfen nur Bilder mit einer Basisgröße von 592 × 801 Pixeln eingesetzt werden. Die zur Verfügung stehenden Karten sind in der [[commons:Category:SVG maps of Germany|Kategorie ''SVG maps of Germany'']] sowie den dortigen Unterkategorien zu finden.
Für die Verwendung in Infoboxen (experimentell):
<nowiki>{{</nowiki>{{PAGENAME}}<nowiki>|Bild=…|Maße=left{{!}}190px|Alt=…}}</nowiki>
[[Kategorie:Vorlage:Deutschland|Imagemap]]
[[Kategorie:Vorlage:Verweissensitive Grafik|Deutschland]]
</noinclude>
16mvduzlnqmawfmxkxl1rmzi27dg4a9
Szablóna:Jãz./starna
10
13164
216457
216407
2026-10-04T12:16:43Z
DawnyTest
14843
ò
216457
wikitext
text/x-wiki
<includeonly>{{#switch: {{{1|}}}<!---->
|ar=arabsczi jãzëk<!--?-->
|be=biôłorusczi jãzëk
|bg=bułgarsczi jãzëk
|br=bretońsczi jãzëk
|bs=bòsniacczi jãzëk
|ca=katalońsczi jãzëk
|cs=czesczi jãzëk
|csb=kaszëbsczi jãzëk
|cnr=czôrnogórsczi jãzëk
|da=duńsczi jãzëk<!--dëńsczi jãzëk-->
|de=niemiecczi jãzëk
|dsb=dólnosorbsczi jãzëk<!-- dólnołuż. -->
|en=angelsczi jãzëk
|es=szpańsczi jãzëk
|et=estońsczi jãzëk
|fa=persczi jãzëk<!--{{RKJ|2013|132}}-->
|fi=fińsczi jãzëk
|fr=francësczi jãzëk
|gl=galisyjsczi jãzëk<!--?-->
|gmh=strzédno-wësok-niemiecczi<!--{{RKJ|2007|50}}-->
|gr=grecczi jãzëk<!--{{RKJ|2014|153}}-->
|grc=stôrogrecczi jãzëk<!--{{RKJ|2014|153}}-->
|gsw=szwajcarsczé gwarë<!--?-->
|hbs=serbòchòrwacczi jãzëk
|he=hebrajsczi jãzëk<!--?-->
|hr=chòrwacczi jãzëk<!--?-->
|hsb=górnosorbsczi jãzëk
|hu=wãdżersczi jãzëk
|hy=òrmiańsczi jãzëk<!--{{RKJ|2013|132}}-->
|is=islandzczi jãzëk<!--?-->
|it=italsczi jãzëk
|ja=japóńsczi jãzëk<!--{{RKJ|2014|161}}, téż japòńsczi {{RKJ|2013|132}}-->
|ka=grëzóńsczi jãzëk<!--grëzyńsczi w {{RKJ|2013|132}}; grëzóńsczi w {{RKJ|2007|42}}-->
|kl=grenlandzczi jãzëk<!--?-->
|kk=kazachsczi jãzëk<!--?-->
|ko=kòreańsczi jãzëk<!--{{RKJ|2013|132}}-->
|la=łacyńsczi jãzëk
|lt=lëtewsczi jãzëk
|lu=luksembùrsczi jãzëk<!--?-->
|lv=łotewsczi jãzëk
|lij-MC=mònegasczi dialekt<!--?-->
|ky=kirgisczi jãzëk<!--?-->
|mk=macedońsczi jãzëk
|nds=dólnoniemiecczi jãzëk<!--RKJ 2014 s. 92-->
|nl=hòlendersczi jãzëk<!--RKJ 2024 s.354; téż holandzczi, hòlandzczi, niderlandzczi<ref>RKJ 2015 s. 2016</ref>, néderlandczi, néderlandzczi, òlendersczi? -->
|no=norwesczi jãzëk
|pl=pòlsczi jãzëk
|pox=pòłabsczi jãzëk
|prg=prësczi jãzëk
|pt=pòrtugalsczi jãzëk
|rm=jãzëk romansz<!--?-->
|ro=rumùńsczi jãzëk
|ru=rusczi jãzëk
|sk=słowacczi jãzëk
|sl=słoweńsczi jãzëk
|sq=albańsczi jãzëk<!--{{RKJ|2021|264}}-->
|sr=serbsczi jãzëk
|sv=szwédzczi jãzëk
|szl=szląsczi etnolekt
|tg=tadżicczi jãzëk<!--?-->
|tk=turkmeńsczi jãzëk<!--?-->
|tr=tërecczi jãzëk<!--{{RKJ|2018|41}}-->
|uk=ùkrajińsczi jãzëk
|vi=wietnamsczi jãzëk<!--?-->
|yi=jãzëk jidisz<!--?-->
|zh=chińsczi jãzëk<!--{{RKJ|2024|354}}-->
<!---------------------------------------------------------->
|xpsi=prasłowiańsczi jãzëk<!--{{RKJ|2016|117}}-->
|#default={{{1|}}}
}}</includeonly><noinclude>
----
<code><nowiki>{{jãz./starna|csb}}</nowiki></code>
:{{jãz./starna|csb}}
----
<code><nowiki>{{jãz./starna|pl}}</nowiki></code>
:{{jãz./starna|pl}}
----
<code><nowiki>{{jãz./starna|de}}</nowiki></code>
:{{jãz./starna|de}}
----
<code><nowiki>{{jãz./starna|en}}</nowiki></code>
:{{jãz./starna|en}}
----
<code><nowiki>{{jãz./starna|es}}</nowiki></code>
:{{jãz./starna|es}}
----
</noinclude>
q2sv5caug5uwye9sh1fnhidh4zfz799
Szablóna:Kòlumnë
10
13414
216472
207014
2026-10-04T17:02:37Z
Iketsi
3254
+
216472
wikitext
text/x-wiki
<includeonly><div style="{{#if:{{{em|}}}|column-width:{{width em|{{{em|}}}}};}}{{#if:{{{number|}}}|column-count:{{{number|}}};}}column-gap:1em;{{{style|}}}" class="colonnes">
{{{1|}}}
</div></includeonly><noinclude>
<code>{{Kòlumnë|em=18|1=</code>
{{Kòlumnë|em=18|1=
* Banino
* Brusy
* Bydgoszcz
* Bytów
* Cewice
* Chmielno
* Chojnice
* Chwaszczyno
* Czersk
* Człuchów
* Dębogórze-Kosakowo
* Dziemiany
* Gdańsk
* Gdańskie Dni Kaszubskie
* Gdynia
* Góra
* Gościcino
* Grudziądz
* Hel
* Jastarnia
* Jastrzębia Góra
* Kartuzy
* Klub Studencki "Pomorania"
* Klub Turystyczny "Wanożnik"
* Kolbudy
* Konarzyny
* Kościerzyna
* Koszalin
* Krokowa
* Lębork
* Linia
* Lipnica
* Lipusz
* Luzino
* Łeba
* Łęczyce
* Łubiana
* Miastko
* Nowa Karczma
* Pelplin
* Pruszcz Gdański
* Przodkowo
* Przywidz
* Puck
* PZS Kłanino
* Reda
* Rumia
* Sianowo
* Sierakowice
* Słupsk
* Somonino
* Sopot
* Stargard
* Stężyca
* Strzelno
* Sulęczyno
* Szczecin
* Szemud
* Szymbark
* Tczew
* Toruń
* Tuchola
* Wejherowo
* Wiele - Karsin
* Wierzchucino
* Władysławowo
* Zblewo
* Zespół Pieśni i Tańca GDYNIA
* Żukowo
}}
----
<code>{{Kòlumnë|number=2|1=</code>
{{Kòlumnë|number=2|1=
* Banino
* Brusy
* Bydgoszcz
* Bytów
* Cewice
* Chmielno
* Chojnice
* Chwaszczyno
* Czersk
* Człuchów
* Dębogórze-Kosakowo
* Dziemiany
* Gdańsk
* Gdańskie Dni Kaszubskie
* Gdynia
* Góra
* Gościcino
* Grudziądz
* Hel
* Jastarnia
* Jastrzębia Góra
* Kartuzy
* Klub Studencki "Pomorania"
* Klub Turystyczny "Wanożnik"
* Kolbudy
* Konarzyny
* Kościerzyna
* Koszalin
* Krokowa
* Lębork
* Linia
* Lipnica
* Lipusz
* Luzino
* Łeba
* Łęczyce
* Łubiana
* Miastko
* Nowa Karczma
* Pelplin
* Pruszcz Gdański
* Przodkowo
* Przywidz
* Puck
* PZS Kłanino
* Reda
* Rumia
* Sianowo
* Sierakowice
* Słupsk
* Somonino
* Sopot
* Stargard
* Stężyca
* Strzelno
* Sulęczyno
* Szczecin
* Szemud
* Szymbark
* Tczew
* Toruń
* Tuchola
* Wejherowo
* Wiele - Karsin
* Wierzchucino
* Władysławowo
* Zblewo
* Zespół Pieśni i Tańca GDYNIA
* Żukowo
}}
</noinclude>
04znx149r9u6tdj0yj5unx3lvqyykuu
Szablóna:Wiész të
10
13421
216496
215717
2026-10-05T07:16:47Z
Terrus38
14026
nowi tidzéń, nowé artikle
216496
wikitext
text/x-wiki
<div style="font-size: 1.4em; font-weight: bold; margin-top: 0.75em; margin-bottom: 0.5em; border-bottom: 1px solid #a2a9b1; padding-bottom: 0.25em;">Òd nowëch i slédno rozbùdowónëch artiklów…</div>
<div style="display: flex; flex-direction: row-reverse; align-items: flex-start; margin-top: 15px;">
<div style="flex-shrink: 0; width: 170px; text-align: right;">[[File:Michael Jackson in 1983.jpg|150px|link=|alt=]]</div>
<div style="flex-grow: 1; padding-right: 10px;">
<ul style="margin: 0; padding-left: 20px;">
<li>…dlôcz '''[[Michael Jackson]]''' mùszôł naszac czisze? <small> (''na òdjimkù'') </small></li>
<li>…jaczé stanowiszcze w lotniczi linie KLM zajimô [[Wilem-Aleksander]]?</li>
<li>…że '''[[bòsniacczi jãzëk]]''' czedës béł zapisowóny arabsczim pismã?</li>
<li>…na jaczi ôrt dzejają'''[[Gazomiérz|gazomierze]]'''?</li>
<li>…czedë pòwstôł sztandard '''[[czôrnogórsczi jãzëk|czôrnogórsczégò jãzëka]]'''?</li>
</ul>
</div>
</div>
6lkgcucv8y2ciwfh83t617w23a4z5eq
216497
216496
2026-10-05T07:17:00Z
Terrus38
14026
216497
wikitext
text/x-wiki
<div style="font-size: 1.4em; font-weight: bold; margin-top: 0.75em; margin-bottom: 0.5em; border-bottom: 1px solid #a2a9b1; padding-bottom: 0.25em;">Òd nowëch i slédno rozbùdowónëch artiklów…</div>
<div style="display: flex; flex-direction: row-reverse; align-items: flex-start; margin-top: 15px;">
<div style="flex-shrink: 0; width: 170px; text-align: right;">[[File:Michael Jackson in 1983.jpg|150px|link=|alt=]]</div>
<div style="flex-grow: 1; padding-right: 10px;">
<ul style="margin: 0; padding-left: 20px;">
<li>…dlôcz '''[[Michael Jackson]]''' mùszôł naszac czisze? <small> (''na òdjimkù'') </small></li>
<li>…jaczé stanowiszcze w lotniczi linie KLM zajimô [[Wilem-Aleksander]]?</li>
<li>…że '''[[bòsniacczi jãzëk]]''' czedës béł zapisowóny arabsczim pismã?</li>
<li>…na jaczi ôrt dzejają '''[[Gazomiérz|gazomierze]]'''?</li>
<li>…czedë pòwstôł sztandard '''[[czôrnogórsczi jãzëk|czôrnogórsczégò jãzëka]]'''?</li>
</ul>
</div>
</div>
8tbn8al1mcn5jy1guy1h6q6k83ie7af
Szablóna:Articzel tidzenia
10
13427
216498
216400
2026-10-05T07:18:38Z
Terrus38
14026
nowi articzel tidzenia
216498
wikitext
text/x-wiki
<noinclude>* [[Wiki:Articzel tidzenia]] [[Kategòrëjô:Szablónë]]</noinclude><div style="margin-top: 1em;">
[[File:Jelgava aerial view.jpg|200px|right|link=Jelgava|alt=Widzënk Jelgavë z wiodra]]
<div style="font-weight: bold; font-size: 1.4em;">[[Jelgava]]</div>
<div style="margin-top: 0.5em; line-height: 1.6; font-size: 1.25em;">'''Jelgava''' (rus. Елгава, dôwni Митава, niem. Mitau, pòl. Jełgawa, dôwni Mitawa) – gard we westrzédnym dzélu Łotwë, kòl 45 km na pôłniowi zôpôd òd Ridżi, przë ùscym rzéczi Driksë do Lielupe, wëdzeloné miasto, sedzba novadsu Jelgava (niewchòdzącô w jegò skłôd).
W òbrëmim dzysdniowi Jelgavë w X wiekù pòwsta òsada Liwów. W XIII stalatim, inflanckô wietew krzëżacczégò zôkònu, zarządzónô przez krajewégò méstra Kònrada von Mandera rozpòczã bùdacjã zómkù w nym môlu, pòzwónégò Mitau. Mitau béł grańcznym zómkã, z jaczégò ricérzowie zôkònu colemało òrganizowelë wëprawë procëm Liwóm i Semigalóm jaż do 1290. Pózni znaczënk zómkù ùrósł jesz barżi z pòwòdu rozwiju lëtewsczégò państwa na pôłnim. Lëtwinóm ùdało sã splundrowac Mitau w 1345.
</div>
<div style="margin-top: 1em; font-size: 1.25em; font-weight: bold;">[[Jelgava|» Czëtôj dali...]]</div>
</div>
lud5jbwoj5t871jou2coc5etfw1lp8e
Szablóna:Etikéta
10
14185
216465
216456
2026-10-04T13:35:00Z
Iketsi
3254
216465
wikitext
text/x-wiki
<includeonly>{{#invoke:Wikidata labelmul|getLabel
|item={{{item|{{{1|}}}}}}
|lang={{{lang|csb}}}
|link={{{link|mul}}}
|capitalization={{{capitalization|}}}
|show_id={{{show_id|}}}
|fallback={{{fallback|}}}
|show_lang={{{show_lang|}}}
|show_qid={{{show_qid|}}}
|edit={{{edit|}}}
|missing={{{missing|}}}
}}</includeonly><noinclude>
{| class="wikitable"
|+
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=1 (csb = Wikipòdôwczi)'''
|-
|{{ExampleRow|__template=Etikéta|Q2}}
|-
|{{ExampleRow|__template=Etikéta|Q2|show_lang=always}}
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=1 (csb ≠ Wikipòdôwczi)'''
|-
{{ExampleRow|__template=Etikéta|Q1}}
|-
{{ExampleRow|__template=Etikéta|Q1|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q1|link=wikidata}}
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=0'''
|-
{{ExampleRow|__template=Etikéta|Q141566673}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=1 (csb)'''
|-
{{ExampleRow|__template=Etikéta|Q107659597}}
|-
{{ExampleRow|__template=Etikéta|Q107659597|link=none}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=1 (mul)'''
|-
{{ExampleRow|__template=Etikéta|Q42}}
|-
{{ExampleRow|__template=Etikéta|Q42|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q42|missing=plain}}
|-
{{ExampleRow|__template=Etikéta|Q42|fallback=mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|fallback=en}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_qid=fallback-not-mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback-not-mul}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=0'''
|-
{{ExampleRow|__template=Etikéta|Q989898}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=zh}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=fo}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=zh|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q989898|show_qid=fallback-not-mul}}
|}
{| class="wikitable"
|+ Przeczerowania
|-
{{ExampleRow|__template=Etikéta|Q12345678}}
|}
[[Kategòrëjô:Szablónë]]
</noinclude>
rweawn3mniam1xss2yqd0zxs4na4j7u
216466
216465
2026-10-04T13:57:18Z
Iketsi
3254
+
216466
wikitext
text/x-wiki
<includeonly>{{#invoke:Wikidata labelmul|getLabel
|item={{{item|{{{1|}}}}}}
|lang={{{lang|csb}}}
|link={{{link|}}}
|capitalization={{{capitalization|}}}
|show_id={{{show_id|}}}
|fallback={{{fallback|}}}
|show_lang={{{show_lang|}}}
|show_qid={{{show_qid|}}}
|edit={{{edit|}}}
|article={{{article|}}}
}}</includeonly><noinclude>
{| class="wikitable"
|+
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=1 (csb = Wikipòdôwczi)'''
|-
|{{ExampleRow|__template=Etikéta|Q2}}
|-
|{{ExampleRow|__template=Etikéta|Q2|show_lang=always}}
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=1 (csb ≠ Wikipòdôwczi)'''
|-
{{ExampleRow|__template=Etikéta|Q1}}
|-
{{ExampleRow|__template=Etikéta|Q1|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q1|link=wikidata}}
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=0'''
|-
{{ExampleRow|__template=Etikéta|Q141566673}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=1 (csb)'''
|-
{{ExampleRow|__template=Etikéta|Q107659597}}
|-
{{ExampleRow|__template=Etikéta|Q107659597|link=none}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=1 (mul)'''
|-
{{ExampleRow|__template=Etikéta|Q42}}
|-
{{ExampleRow|__template=Etikéta|Q42|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q42|link=mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|edit=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|edit=fallback-no-mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|missing=plain}}
|-
{{ExampleRow|__template=Etikéta|Q42|fallback=mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|fallback=en}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_qid=fallback-not-mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback-not-mul}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=0'''
|-
{{ExampleRow|__template=Etikéta|Q989898}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=zh}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=fo}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=zh|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q989898|show_qid=fallback-not-mul}}
|}
{| class="wikitable"
|+ Przeczerowania
|-
{{ExampleRow|__template=Etikéta|Q12345678}}
|}
[[Kategòrëjô:Szablónë]]
</noinclude>
oibla1l0z3lthhve6xy0t8xo4g8eyj1
216473
216466
2026-10-04T17:37:39Z
Iketsi
3254
+preset
216473
wikitext
text/x-wiki
<includeonly>{{#invoke:Wikidata labelmul|getLabel
|item={{{item|{{{1|}}}}}}
|lang={{#switch:{{{preset|}}}
|#default={{{lang|csb}}}
}}
|link={{#switch:{{{preset|}}}
|#default={{{link|}}}
}}
|capitalization={{#switch:{{{preset|}}}
|#default={{{capitalization|}}}
}}
|show_id={{#switch:{{{preset|}}}
|#default={{{show_id|}}}
}}
|fallback={{{fallback|}}}
|show_lang={{#switch:{{{preset|}}}
|1k=fallback
|#default={{{show_lang|}}}
}}
|show_qid={{#switch:{{{preset|}}}
|#default={{{show_qid|}}}
}}
|edit={{#switch:{{{preset|}}}
|1k=fallback
|#default={{{edit|}}}
}}
|article={{{article|}}}
}}
</includeonly><noinclude>
{| class="wikitable"
|+
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=1 (csb = Wikipòdôwczi)'''
|-
|{{ExampleRow|__template=Etikéta|Q2}}
|-
|{{ExampleRow|__template=Etikéta|Q2|show_lang=always}}
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=1 (csb ≠ Wikipòdôwczi)'''
|-
{{ExampleRow|__template=Etikéta|Q1}}
|-
{{ExampleRow|__template=Etikéta|Q1|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q1|link=wikidata}}
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=0'''
|-
{{ExampleRow|__template=Etikéta|Q141566673}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=1 (csb)'''
|-
{{ExampleRow|__template=Etikéta|Q107659597}}
|-
{{ExampleRow|__template=Etikéta|Q107659597|link=none}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=1 (mul)'''
|-
{{ExampleRow|__template=Etikéta|Q42}}
|-
{{ExampleRow|__template=Etikéta|Q42|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q42|link=mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|edit=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|edit=fallback-no-mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|missing=plain}}
|-
{{ExampleRow|__template=Etikéta|Q42|fallback=mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|fallback=en}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_qid=fallback-not-mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback-not-mul}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=0'''
|-
{{ExampleRow|__template=Etikéta|Q989898}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=zh}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=fo}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=zh|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q989898|show_qid=fallback-not-mul}}
|}
{| class="wikitable"
|+ Przeczerowania
|-
{{ExampleRow|__template=Etikéta|Q12345678}}
|}
[[Kategòrëjô:Szablónë]]
</noinclude>
6izvvqph1oetgtgamopao91t1mu712o
216474
216473
2026-10-04T17:40:51Z
Iketsi
3254
1k: show_lang=fallback-no-mul
216474
wikitext
text/x-wiki
<includeonly>{{#invoke:Wikidata labelmul|getLabel
|item={{{item|{{{1|}}}}}}
|lang={{#switch:{{{preset|}}}
|#default={{{lang|csb}}}
}}
|link={{#switch:{{{preset|}}}
|#default={{{link|}}}
}}
|capitalization={{#switch:{{{preset|}}}
|#default={{{capitalization|}}}
}}
|show_id={{#switch:{{{preset|}}}
|#default={{{show_id|}}}
}}
|fallback={{{fallback|}}}
|show_lang={{#switch:{{{preset|}}}
|1k=fallback-no-mul
|#default={{{show_lang|}}}
}}
|show_qid={{#switch:{{{preset|}}}
|#default={{{show_qid|}}}
}}
|edit={{#switch:{{{preset|}}}
|1k=fallback
|#default={{{edit|}}}
}}
|article={{{article|}}}
}}
</includeonly><noinclude>
{| class="wikitable"
|+
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=1 (csb = Wikipòdôwczi)'''
|-
|{{ExampleRow|__template=Etikéta|Q2}}
|-
|{{ExampleRow|__template=Etikéta|Q2|show_lang=always}}
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=1 (csb ≠ Wikipòdôwczi)'''
|-
{{ExampleRow|__template=Etikéta|Q1}}
|-
{{ExampleRow|__template=Etikéta|Q1|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q1|link=wikidata}}
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=0'''
|-
{{ExampleRow|__template=Etikéta|Q141566673}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=1 (csb)'''
|-
{{ExampleRow|__template=Etikéta|Q107659597}}
|-
{{ExampleRow|__template=Etikéta|Q107659597|link=none}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=1 (mul)'''
|-
{{ExampleRow|__template=Etikéta|Q42}}
|-
{{ExampleRow|__template=Etikéta|Q42|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q42|link=mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|edit=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|edit=fallback-no-mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|missing=plain}}
|-
{{ExampleRow|__template=Etikéta|Q42|fallback=mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|fallback=en}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_qid=fallback-not-mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback-not-mul}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=0'''
|-
{{ExampleRow|__template=Etikéta|Q989898}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=zh}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=fo}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=zh|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q989898|show_qid=fallback-not-mul}}
|}
{| class="wikitable"
|+ Przeczerowania
|-
{{ExampleRow|__template=Etikéta|Q12345678}}
|}
[[Kategòrëjô:Szablónë]]
</noinclude>
hckrg4x82db1twz1xkh66iftuoeubd8
216480
216474
2026-10-04T19:01:07Z
Iketsi
3254
+
216480
wikitext
text/x-wiki
<includeonly>{{#invoke:Wikidata labelmul|getLabel
|item={{{item|{{{1|}}}}}}
|lang={{#switch:{{{preset|}}}
|#default={{{lang|csb}}}
}}
|link={{#switch:{{{preset|}}}
|#default={{{link|}}}
}}
|capitalization={{#switch:{{{preset|}}}
|#default={{{capitalization|}}}
}}
|show_id={{#switch:{{{preset|}}}
|#default={{{show_id|}}}
}}
|fallback={{{fallback|}}}
|show_lang={{#switch:{{{preset|}}}
|1k|1kat=fallback-no-mul
|#default={{{show_lang|}}}
}}
|show_qid={{#switch:{{{preset|}}}
|#default={{{show_qid|}}}
}}
|edit={{#switch:{{{preset|}}}
|1k|1kat=fallback
|#default={{{edit|}}}
}}
|article={{{article|}}}
|category_mode={{#switch:{{{preset|}}}
|1kat=rawname
|#default={{{show_qid|}}}
}}
|category_label={{{category_label|}}}
}}
</includeonly><noinclude>
{| class="wikitable"
|+
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=1 (csb = Wikipòdôwczi)'''
|-
|{{ExampleRow|__template=Etikéta|Q2}}
|-
|{{ExampleRow|__template=Etikéta|Q2|show_lang=always}}
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=1 (csb ≠ Wikipòdôwczi)'''
|-
{{ExampleRow|__template=Etikéta|Q1}}
|-
{{ExampleRow|__template=Etikéta|Q1|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q1|link=wikidata}}
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=0'''
|-
{{ExampleRow|__template=Etikéta|Q141566673}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=1 (csb)'''
|-
{{ExampleRow|__template=Etikéta|Q107659597}}
|-
{{ExampleRow|__template=Etikéta|Q107659597|link=none}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=1 (mul)'''
|-
{{ExampleRow|__template=Etikéta|Q42}}
|-
{{ExampleRow|__template=Etikéta|Q42|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q42|link=mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|edit=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|edit=fallback-no-mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|missing=plain}}
|-
{{ExampleRow|__template=Etikéta|Q42|fallback=mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|fallback=en}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_qid=fallback-not-mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback-not-mul}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=0'''
|-
{{ExampleRow|__template=Etikéta|Q989898}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=zh}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=fo}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=zh|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q989898|show_qid=fallback-not-mul}}
|}
{| class="wikitable"
|+ Przeczerowania
|-
{{ExampleRow|__template=Etikéta|Q12345678}}
|}
{| class="wikitable"
|+ Kategòrie
|-
{{ExampleRow|__template=Etikéta|Q5820551}}
|-
{{ExampleRow|__template=Etikéta|Q5820551|category_mode=link}}
|-
{{ExampleRow|__template=Etikéta|Q5820551|category_mode=rawfull}}
|-
{{ExampleRow|__template=Etikéta|Q5820551|category_mode=rawname}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|category_mode=link}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|category_mode=rawfull}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|category_mode=rawfull|fallback=en}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|category_mode=}}
|}
</noinclude>
cer8zf0sghvmofjrdab4whbo0gszoti
216483
216480
2026-10-04T19:32:55Z
Iketsi
3254
1kat=true
216483
wikitext
text/x-wiki
<includeonly>{{#invoke:Wikidata labelmul|getLabel
|item={{{item|{{{1|}}}}}}
|lang={{#switch:{{{preset|}}}
|#default={{{lang|csb}}}
}}
|link={{#switch:{{{preset|}}}
|1kat=none
|#default={{{link|}}}
}}
|capitalization={{#switch:{{{preset|}}}
|#default={{{capitalization|}}}
}}
|show_id={{#switch:{{{preset|}}}
|#default={{{show_id|}}}
}}
|fallback={{{fallback|}}}
|show_lang={{#switch:{{{preset|}}}
|1k|1kat=fallback-no-mul
|#default={{{show_lang|}}}
}}
|show_qid={{#switch:{{{preset|}}}
|#default={{{show_qid|}}}
}}
|edit={{#switch:{{{preset|}}}
|1k|1kat=fallback
|#default={{{edit|}}}
}}
|article={{{article|}}}
|category_mode={{#switch:{{{preset|}}}
|#default={{{show_qid|}}}
}}
|category_label={{{category_label|}}}
|strip_namespace={{#switch:{{{preset|}}}
|1kat=true
|#default={{{strip_namespace|}}}
}}
}}
</includeonly><noinclude>
{| class="wikitable"
|+
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=1 (csb = Wikipòdôwczi)'''
|-
|{{ExampleRow|__template=Etikéta|Q2}}
|-
|{{ExampleRow|__template=Etikéta|Q2|show_lang=always}}
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=1 (csb ≠ Wikipòdôwczi)'''
|-
{{ExampleRow|__template=Etikéta|Q1}}
|-
{{ExampleRow|__template=Etikéta|Q1|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q1|link=wikidata}}
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=0'''
|-
{{ExampleRow|__template=Etikéta|Q141566673}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=1 (csb)'''
|-
{{ExampleRow|__template=Etikéta|Q107659597}}
|-
{{ExampleRow|__template=Etikéta|Q107659597|link=none}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=1 (mul)'''
|-
{{ExampleRow|__template=Etikéta|Q42}}
|-
{{ExampleRow|__template=Etikéta|Q42|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q42|link=mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|edit=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|edit=fallback-no-mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|missing=plain}}
|-
{{ExampleRow|__template=Etikéta|Q42|fallback=mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|fallback=en}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_qid=fallback-not-mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback-not-mul}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=0'''
|-
{{ExampleRow|__template=Etikéta|Q989898}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=zh}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=fo}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=zh|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q989898|show_qid=fallback-not-mul}}
|}
{| class="wikitable"
|+ Przeczerowania
|-
{{ExampleRow|__template=Etikéta|Q12345678}}
|}
{| class="wikitable"
|+ Kategòrie
|-
{{ExampleRow|__template=Etikéta|Q5820551}}
|-
{{ExampleRow|__template=Etikéta|Q5820551|link=none|category_mode=link}}
|-
{{ExampleRow|__template=Etikéta|Q5820551|strip_namespace=true|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|category_mode=link}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|category_mode=rawfull}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|category_mode=rawfull|fallback=en}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|category_mode=active}}
|-
{{ExampleRow|__template=Etikéta|Q15647814|category_mode=link}}
|}
</noinclude>
3xftmmlktvnke399bq72tofqfimar3c
216485
216483
2026-10-04T19:46:28Z
Iketsi
3254
1k=mul
216485
wikitext
text/x-wiki
<includeonly>{{#invoke:Wikidata labelmul|getLabel
|item={{{item|{{{1|}}}}}}
|lang={{#switch:{{{preset|}}}
|#default={{{lang|csb}}}
}}
|link={{#switch:{{{preset|}}}
|1k=mul
|1kat=none
|#default={{{link|}}}
}}
|capitalization={{#switch:{{{preset|}}}
|#default={{{capitalization|}}}
}}
|show_id={{#switch:{{{preset|}}}
|#default={{{show_id|}}}
}}
|fallback={{{fallback|}}}
|show_lang={{#switch:{{{preset|}}}
|1k|1kat=fallback-no-mul
|#default={{{show_lang|}}}
}}
|show_qid={{#switch:{{{preset|}}}
|#default={{{show_qid|}}}
}}
|edit={{#switch:{{{preset|}}}
|1k|1kat=fallback
|#default={{{edit|}}}
}}
|article={{{article|}}}
|category_mode={{#switch:{{{preset|}}}
|#default={{{show_qid|}}}
}}
|category_label={{{category_label|}}}
|strip_namespace={{#switch:{{{preset|}}}
|1kat=true
|#default={{{strip_namespace|}}}
}}
}}
</includeonly><noinclude>
{| class="wikitable"
|+
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=1 (csb = Wikipòdôwczi)'''
|-
|{{ExampleRow|__template=Etikéta|Q2}}
|-
|{{ExampleRow|__template=Etikéta|Q2|show_lang=always}}
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=1 (csb ≠ Wikipòdôwczi)'''
|-
{{ExampleRow|__template=Etikéta|Q1}}
|-
{{ExampleRow|__template=Etikéta|Q1|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q1|link=wikidata}}
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=0'''
|-
{{ExampleRow|__template=Etikéta|Q141566673}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=1 (csb)'''
|-
{{ExampleRow|__template=Etikéta|Q107659597}}
|-
{{ExampleRow|__template=Etikéta|Q107659597|link=none}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=1 (mul)'''
|-
{{ExampleRow|__template=Etikéta|Q42}}
|-
{{ExampleRow|__template=Etikéta|Q42|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q42|link=mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|edit=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|edit=fallback-no-mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|missing=plain}}
|-
{{ExampleRow|__template=Etikéta|Q42|fallback=mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|fallback=en}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_qid=fallback-not-mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback-not-mul}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=0'''
|-
{{ExampleRow|__template=Etikéta|Q989898}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=zh}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=fo}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=zh|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q989898|show_qid=fallback-not-mul}}
|}
{| class="wikitable"
|+ Przeczerowania
|-
{{ExampleRow|__template=Etikéta|Q12345678}}
|}
{| class="wikitable"
|+ Kategòrie
|-
{{ExampleRow|__template=Etikéta|Q5820551}}
|-
{{ExampleRow|__template=Etikéta|Q5820551|link=none|category_mode=link}}
|-
{{ExampleRow|__template=Etikéta|Q5820551|strip_namespace=true|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|category_mode=link}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|category_mode=rawfull}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|category_mode=rawfull|fallback=en}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|category_mode=active}}
|-
{{ExampleRow|__template=Etikéta|Q15647814|category_mode=link}}
|}
</noinclude>
keof38850pqf2rocj6v0egps1wgluy9
216487
216485
2026-10-04T19:55:46Z
Iketsi
3254
+
216487
wikitext
text/x-wiki
<includeonly>{{#invoke:Wikidata labelmul|getLabel
|item={{{item|{{{1|}}}}}}
|lang={{#switch:{{{preset|}}}
|#default={{{lang|csb}}}
}}
|link={{#switch:{{{preset|}}}
|1k=mul
|1kat=none
|#default={{{link|}}}
}}
|capitalization={{#switch:{{{preset|}}}
|#default={{{capitalization|}}}
}}
|show_id={{#switch:{{{preset|}}}
|#default={{{show_id|}}}
}}
|fallback={{{fallback|}}}
|1k|1kat=mul,pl,en
|show_lang={{#switch:{{{preset|}}}
|1k|1kat=fallback-no-mul
|#default={{{show_lang|}}}
}}
|show_qid={{#switch:{{{preset|}}}
|#default={{{show_qid|}}}
}}
|edit={{#switch:{{{preset|}}}
|1k|1kat=fallback
|#default={{{edit|}}}
}}
|article={{{article|}}}
|category_mode={{#switch:{{{preset|}}}
|#default={{{show_qid|}}}
}}
|category_label={{{category_label|}}}
|strip_namespace={{#switch:{{{preset|}}}
|1kat=true
|#default={{{strip_namespace|}}}
}}
}}
</includeonly><noinclude>
{| class="wikitable"
|+
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=1 (csb = Wikipòdôwczi)'''
|-
|{{ExampleRow|__template=Etikéta|Q2}}
|-
|{{ExampleRow|__template=Etikéta|Q2|show_lang=always}}
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=1 (csb ≠ Wikipòdôwczi)'''
|-
{{ExampleRow|__template=Etikéta|Q1}}
|-
{{ExampleRow|__template=Etikéta|Q1|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q1|link=wikidata}}
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=0'''
|-
{{ExampleRow|__template=Etikéta|Q141566673}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=1 (csb)'''
|-
{{ExampleRow|__template=Etikéta|Q107659597}}
|-
{{ExampleRow|__template=Etikéta|Q107659597|link=none}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=1 (mul)'''
|-
{{ExampleRow|__template=Etikéta|Q42}}
|-
{{ExampleRow|__template=Etikéta|Q42|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q42|link=mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|edit=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|edit=fallback-no-mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|missing=plain}}
|-
{{ExampleRow|__template=Etikéta|Q42|fallback=mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|fallback=en}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_qid=fallback-not-mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback-not-mul}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=0'''
|-
{{ExampleRow|__template=Etikéta|Q989898}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=zh}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=fo}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=zh|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q989898|show_qid=fallback-not-mul}}
|}
{| class="wikitable"
|+ Przeczerowania
|-
{{ExampleRow|__template=Etikéta|Q12345678}}
|}
{| class="wikitable"
|+ Kategòrie
|-
{{ExampleRow|__template=Etikéta|Q5820551}}
|-
{{ExampleRow|__template=Etikéta|Q5820551|link=none|category_mode=link}}
|-
{{ExampleRow|__template=Etikéta|Q5820551|strip_namespace=true|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|category_mode=link}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|category_mode=rawfull}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|category_mode=rawfull|fallback=en}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|category_mode=active}}
|-
{{ExampleRow|__template=Etikéta|Q15647814|category_mode=link}}
|}
</noinclude>
dpjlsc6vhvukwhewv98sb2n74z3z4ek
216488
216487
2026-10-04T19:58:33Z
Iketsi
3254
fallback
216488
wikitext
text/x-wiki
<includeonly>{{#invoke:Wikidata labelmul|getLabel
|item={{{item|{{{1|}}}}}}
|lang={{#switch:{{{preset|}}}
|#default={{{lang|csb}}}
}}
|link={{#switch:{{{preset|}}}
|1k=mul
|1kat=none
|#default={{{link|}}}
}}
|capitalization={{#switch:{{{preset|}}}
|#default={{{capitalization|}}}
}}
|show_id={{#switch:{{{preset|}}}
|#default={{{show_id|}}}
}}
|fallback={{{fallback|}}}{{#switch:{{{preset|}}}
|1k|1kat=mul,pl,en
|#default={{{fallback|}}}
}}
|show_lang={{#switch:{{{preset|}}}
|1k|1kat=fallback-no-mul
|#default={{{show_lang|}}}
}}
|show_qid={{#switch:{{{preset|}}}
|#default={{{show_qid|}}}
}}
|edit={{#switch:{{{preset|}}}
|1k|1kat=fallback
|#default={{{edit|}}}
}}
|article={{{article|}}}
|category_mode={{#switch:{{{preset|}}}
|#default={{{show_qid|}}}
}}
|category_label={{{category_label|}}}
|strip_namespace={{#switch:{{{preset|}}}
|1kat=true
|#default={{{strip_namespace|}}}
}}
}}
</includeonly><noinclude>
{| class="wikitable"
|+
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=1 (csb = Wikipòdôwczi)'''
|-
|{{ExampleRow|__template=Etikéta|Q2}}
|-
|{{ExampleRow|__template=Etikéta|Q2|show_lang=always}}
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=1 (csb ≠ Wikipòdôwczi)'''
|-
{{ExampleRow|__template=Etikéta|Q1}}
|-
{{ExampleRow|__template=Etikéta|Q1|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q1|link=wikidata}}
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=0'''
|-
{{ExampleRow|__template=Etikéta|Q141566673}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=1 (csb)'''
|-
{{ExampleRow|__template=Etikéta|Q107659597}}
|-
{{ExampleRow|__template=Etikéta|Q107659597|link=none}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=1 (mul)'''
|-
{{ExampleRow|__template=Etikéta|Q42}}
|-
{{ExampleRow|__template=Etikéta|Q42|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q42|link=mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|edit=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|edit=fallback-no-mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|missing=plain}}
|-
{{ExampleRow|__template=Etikéta|Q42|fallback=mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|fallback=en}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_qid=fallback-not-mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback-not-mul}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=0'''
|-
{{ExampleRow|__template=Etikéta|Q989898}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=zh}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=fo}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=zh|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q989898|show_qid=fallback-not-mul}}
|}
{| class="wikitable"
|+ Przeczerowania
|-
{{ExampleRow|__template=Etikéta|Q12345678}}
|}
{| class="wikitable"
|+ Kategòrie
|-
{{ExampleRow|__template=Etikéta|Q5820551}}
|-
{{ExampleRow|__template=Etikéta|Q5820551|link=none|category_mode=link}}
|-
{{ExampleRow|__template=Etikéta|Q5820551|strip_namespace=true|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|show_lang=fallback|category_mode=link}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|category_mode=rawfull}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|category_mode=rawfull|fallback=en}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|category_mode=active}}
|-
{{ExampleRow|__template=Etikéta|Q15647814|category_mode=link}}
|}
</noinclude>
bb978mwwfnxnrpoxc4kcb64eq3t4x2q
216489
216488
2026-10-04T20:11:53Z
Iketsi
3254
" "
216489
wikitext
text/x-wiki
<includeonly>{{#invoke:Wikidata labelmul|getLabel
|item={{{item|{{{1|}}}}}}
|lang={{#switch:{{{preset|}}}
|#default={{{lang|csb}}}
}}
|link={{#switch:{{{preset|}}}
|1k=mul
|1kat=none
|#default={{{link|}}}
}}
|capitalization={{#switch:{{{preset|}}}
|#default={{{capitalization|}}}
}}
|show_id={{#switch:{{{preset|}}}
|#default={{{show_id|}}}
}}
|fallback={{{fallback|}}}{{#switch:{{{preset|}}}
|1k|1kat=mul,pl,en
|#default={{{fallback|}}}
}}
|show_lang={{#switch:{{{preset|}}}
|1k | 1kat=fallback-no-mul
|#default={{{show_lang|}}}
}}
|show_qid={{#switch:{{{preset|}}}
|#default={{{show_qid|}}}
}}
|edit={{#switch:{{{preset|}}}
|1k | 1kat=fallback
|#default={{{edit|}}}
}}
|article={{{article|}}}
|category_mode={{#switch:{{{preset|}}}
|#default={{{show_qid|}}}
}}
|category_label={{{category_label|}}}
|strip_namespace={{#switch:{{{preset|}}}
|1kat=true
|#default={{{strip_namespace|}}}
}}
}}
</includeonly><noinclude>
{| class="wikitable"
|+
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=1 (csb = Wikipòdôwczi)'''
|-
|{{ExampleRow|__template=Etikéta|Q2}}
|-
|{{ExampleRow|__template=Etikéta|Q2|show_lang=always}}
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=1 (csb ≠ Wikipòdôwczi)'''
|-
{{ExampleRow|__template=Etikéta|Q1}}
|-
{{ExampleRow|__template=Etikéta|Q1|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q1|link=wikidata}}
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=0'''
|-
{{ExampleRow|__template=Etikéta|Q141566673}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=1 (csb)'''
|-
{{ExampleRow|__template=Etikéta|Q107659597}}
|-
{{ExampleRow|__template=Etikéta|Q107659597|link=none}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=1 (mul)'''
|-
{{ExampleRow|__template=Etikéta|Q42}}
|-
{{ExampleRow|__template=Etikéta|Q42|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q42|link=mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|edit=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|edit=fallback-no-mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|missing=plain}}
|-
{{ExampleRow|__template=Etikéta|Q42|fallback=mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|fallback=en}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_qid=fallback-not-mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback-not-mul}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=0'''
|-
{{ExampleRow|__template=Etikéta|Q989898}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=zh}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=fo}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=zh|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q989898|show_qid=fallback-not-mul}}
|}
{| class="wikitable"
|+ Przeczerowania
|-
{{ExampleRow|__template=Etikéta|Q12345678}}
|}
{| class="wikitable"
|+ Kategòrie
|-
{{ExampleRow|__template=Etikéta|Q5820551}}
|-
{{ExampleRow|__template=Etikéta|Q5820551|link=none|category_mode=link}}
|-
{{ExampleRow|__template=Etikéta|Q5820551|strip_namespace=true|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|show_lang=fallback|category_mode=link}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|category_mode=rawfull}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|category_mode=rawfull|fallback=en}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|category_mode=active}}
|-
{{ExampleRow|__template=Etikéta|Q15647814|category_mode=link}}
|}
</noinclude>
6uhretxkobclm29hmgbt83ek4wm6dve
216490
216489
2026-10-04T20:14:48Z
Iketsi
3254
category_mode
216490
wikitext
text/x-wiki
<includeonly>{{#invoke:Wikidata labelmul|getLabel
|item={{{item|{{{1|}}}}}}
|lang={{#switch:{{{preset|}}}
|#default={{{lang|csb}}}
}}
|link={{#switch:{{{preset|}}}
|1k=mul
|1kat=none
|#default={{{link|}}}
}}
|capitalization={{#switch:{{{preset|}}}
|#default={{{capitalization|}}}
}}
|show_id={{#switch:{{{preset|}}}
|#default={{{show_id|}}}
}}
|fallback={{{fallback|}}}{{#switch:{{{preset|}}}
|1k|1kat=mul,pl,en
|#default={{{fallback|}}}
}}
|show_lang={{#switch:{{{preset|}}}
|1k | 1kat = fallback-no-mul
|#default={{{show_lang|}}}
}}
|show_qid={{#switch:{{{preset|}}}
|#default={{{show_qid|}}}
}}
|edit={{#switch:{{{preset|}}}
|1k | 1kat = fallback
|#default={{{edit|}}}
}}
|article={{{article|}}}
|category_mode={{#switch:{{{preset|}}}
|#default={{{category_mode|}}}
}}
|category_label={{{category_label|}}}
|strip_namespace={{#switch:{{{preset|}}}
|1kat=true
|#default={{{strip_namespace|}}}
}}
}}
</includeonly><noinclude>
{| class="wikitable"
|+
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=1 (csb = Wikipòdôwczi)'''
|-
|{{ExampleRow|__template=Etikéta|Q2}}
|-
|{{ExampleRow|__template=Etikéta|Q2|show_lang=always}}
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=1 (csb ≠ Wikipòdôwczi)'''
|-
{{ExampleRow|__template=Etikéta|Q1}}
|-
{{ExampleRow|__template=Etikéta|Q1|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q1|link=wikidata}}
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=0'''
|-
{{ExampleRow|__template=Etikéta|Q141566673}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=1 (csb)'''
|-
{{ExampleRow|__template=Etikéta|Q107659597}}
|-
{{ExampleRow|__template=Etikéta|Q107659597|link=none}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=1 (mul)'''
|-
{{ExampleRow|__template=Etikéta|Q42}}
|-
{{ExampleRow|__template=Etikéta|Q42|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q42|link=mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|edit=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|edit=fallback-no-mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|missing=plain}}
|-
{{ExampleRow|__template=Etikéta|Q42|fallback=mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|fallback=en}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_qid=fallback-not-mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback-not-mul}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=0'''
|-
{{ExampleRow|__template=Etikéta|Q989898}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=zh}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=fo}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=zh|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q989898|show_qid=fallback-not-mul}}
|}
{| class="wikitable"
|+ Przeczerowania
|-
{{ExampleRow|__template=Etikéta|Q12345678}}
|}
{| class="wikitable"
|+ Kategòrie
|-
{{ExampleRow|__template=Etikéta|Q5820551}}
|-
{{ExampleRow|__template=Etikéta|Q5820551|link=none|category_mode=link}}
|-
{{ExampleRow|__template=Etikéta|Q5820551|strip_namespace=true|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|show_lang=fallback|category_mode=link}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|category_mode=rawfull}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|category_mode=rawfull|fallback=en}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|category_mode=active}}
|-
{{ExampleRow|__template=Etikéta|Q15647814|category_mode=link}}
|}
</noinclude>
3pahd7bzxfhkysz233kfoufd9xv87eh
216491
216490
2026-10-04T20:15:59Z
Iketsi
3254
t
216491
wikitext
text/x-wiki
<includeonly>{{#invoke:Wikidata labelmul|getLabel
|item={{{item|{{{1|}}}}}}
|lang={{#switch:{{{preset|}}}
|#default={{{lang|csb}}}
}}
|link={{#switch:{{{preset|}}}
|1k=mul
|1kat=none
|#default={{{link|}}}
}}
|capitalization={{#switch:{{{preset|}}}
|#default={{{capitalization|}}}
}}
|show_id={{#switch:{{{preset|}}}
|#default={{{show_id|}}}
}}
|fallback={{{fallback|}}}{{#switch:{{{preset|}}}
|1k|1kat=mul,pl,en
|#default={{{fallback|}}}
}}
|show_lang={{#switch:{{{preset|}}}
|1k | 1kat = fallback-not-mul
|#default={{{show_lang|}}}
}}
|show_qid={{#switch:{{{preset|}}}
|#default={{{show_qid|}}}
}}
|edit={{#switch:{{{preset|}}}
|1k | 1kat = fallback
|#default={{{edit|}}}
}}
|article={{{article|}}}
|category_mode={{#switch:{{{preset|}}}
|#default={{{category_mode|}}}
}}
|category_label={{{category_label|}}}
|strip_namespace={{#switch:{{{preset|}}}
|1kat=true
|#default={{{strip_namespace|}}}
}}
}}
</includeonly><noinclude>
{| class="wikitable"
|+
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=1 (csb = Wikipòdôwczi)'''
|-
|{{ExampleRow|__template=Etikéta|Q2}}
|-
|{{ExampleRow|__template=Etikéta|Q2|show_lang=always}}
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=1 (csb ≠ Wikipòdôwczi)'''
|-
{{ExampleRow|__template=Etikéta|Q1}}
|-
{{ExampleRow|__template=Etikéta|Q1|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q1|link=wikidata}}
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=0'''
|-
{{ExampleRow|__template=Etikéta|Q141566673}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=1 (csb)'''
|-
{{ExampleRow|__template=Etikéta|Q107659597}}
|-
{{ExampleRow|__template=Etikéta|Q107659597|link=none}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=1 (mul)'''
|-
{{ExampleRow|__template=Etikéta|Q42}}
|-
{{ExampleRow|__template=Etikéta|Q42|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q42|link=mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|edit=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|edit=fallback-not-mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|missing=plain}}
|-
{{ExampleRow|__template=Etikéta|Q42|fallback=mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|fallback=en}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_qid=fallback-not-mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback-not-mul}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=0'''
|-
{{ExampleRow|__template=Etikéta|Q989898}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=zh}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=fo}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=zh|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q989898|show_qid=fallback-not-mul}}
|}
{| class="wikitable"
|+ Przeczerowania
|-
{{ExampleRow|__template=Etikéta|Q12345678}}
|}
{| class="wikitable"
|+ Kategòrie
|-
{{ExampleRow|__template=Etikéta|Q5820551}}
|-
{{ExampleRow|__template=Etikéta|Q5820551|link=none|category_mode=link}}
|-
{{ExampleRow|__template=Etikéta|Q5820551|strip_namespace=true|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|show_lang=fallback|category_mode=link}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|category_mode=rawfull}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|category_mode=rawfull|fallback=en}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|category_mode=active}}
|-
{{ExampleRow|__template=Etikéta|Q15647814|category_mode=link}}
|}
</noinclude>
2yxs33oztvcifou0d918j8en6im7vwo
216492
216491
2026-10-04T21:56:22Z
Iketsi
3254
-
216492
wikitext
text/x-wiki
<includeonly>{{#invoke:Wikidata labelmul|getLabel
|item={{{item|{{{1|}}}}}}
|lang={{#switch:{{{preset|}}}
|#default={{{lang|csb}}}
}}
|link={{#switch:{{{preset|}}}
|1k=mul
|1kat=none
|#default={{{link|}}}
}}
|capitalization={{#switch:{{{preset|}}}
|#default={{{capitalization|}}}
}}
|show_id={{#switch:{{{preset|}}}
|#default={{{show_id|}}}
}}
|fallback={{{fallback|}}}{{#switch:{{{preset|}}}
|1k|1kat=mul,pl,en
|#default={{{fallback|}}}
}}
|show_lang={{#switch:{{{preset|}}}
|1k | 1kat = fallback-not-mul
|#default={{{show_lang|}}}
}}
|show_qid={{#switch:{{{preset|}}}
|#default={{{show_qid|}}}
}}
|edit={{#switch:{{{preset|}}}
|1k | 1kat = fallback
|#default={{{edit|}}}
}}
|article={{{article|}}}
|category_mode={{#switch:{{{preset|}}}
|#default={{{category_mode|}}}
}}
|category_label={{{category_label|}}}
|strip_namespace={{#switch:{{{preset|}}}
|1kat=true
|#default={{{strip_namespace|}}}
}}
}}</includeonly><noinclude>
{| class="wikitable"
|+
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=1 (csb = Wikipòdôwczi)'''
|-
|{{ExampleRow|__template=Etikéta|Q2}}
|-
|{{ExampleRow|__template=Etikéta|Q2|show_lang=always}}
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=1 (csb ≠ Wikipòdôwczi)'''
|-
{{ExampleRow|__template=Etikéta|Q1}}
|-
{{ExampleRow|__template=Etikéta|Q1|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q1|link=wikidata}}
|-
|colspan="2" align="middle"| '''artikel=1; etikéta=0'''
|-
{{ExampleRow|__template=Etikéta|Q141566673}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=1 (csb)'''
|-
{{ExampleRow|__template=Etikéta|Q107659597}}
|-
{{ExampleRow|__template=Etikéta|Q107659597|link=none}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=1 (mul)'''
|-
{{ExampleRow|__template=Etikéta|Q42}}
|-
{{ExampleRow|__template=Etikéta|Q42|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q42|link=mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|edit=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|edit=fallback-not-mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|missing=plain}}
|-
{{ExampleRow|__template=Etikéta|Q42|fallback=mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|fallback=en}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_qid=fallback-not-mul}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q42|show_lang=fallback-not-mul}}
|-
|colspan="2" align="middle"| '''artikel=0; etikéta=0'''
|-
{{ExampleRow|__template=Etikéta|Q989898}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=zh}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=fo}}
|-
{{ExampleRow|__template=Etikéta|Q989898|fallback=zh|show_qid=fallback}}
|-
{{ExampleRow|__template=Etikéta|Q989898|show_qid=fallback-not-mul}}
|}
{| class="wikitable"
|+ Przeczerowania
|-
{{ExampleRow|__template=Etikéta|Q12345678}}
|}
{| class="wikitable"
|+ Kategòrie
|-
{{ExampleRow|__template=Etikéta|Q5820551}}
|-
{{ExampleRow|__template=Etikéta|Q5820551|link=none|category_mode=link}}
|-
{{ExampleRow|__template=Etikéta|Q5820551|strip_namespace=true|link=none}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|show_lang=fallback|category_mode=link}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|category_mode=rawfull}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|category_mode=rawfull|fallback=en}}
|-
{{ExampleRow|__template=Etikéta|Q5613274|category_mode=active}}
|-
{{ExampleRow|__template=Etikéta|Q15647814|category_mode=link}}
|}
</noinclude>
2o2jvs5npc55dq1gos55h0qmzq21gcj
Moduł:Wikidata labelmul
828
14186
216458
216454
2026-10-04T12:58:56Z
Iketsi
3254
test
216458
Scribunto
text/plain
--[[
__ __ _ _ __ ___ _ _ _ _ _ _ _
| \/ | ___ __| |_ _| | ___ \ \ / (_) | _(_) __| | __ _| |_ __ _ | | __ _| |__ ___| |
| |\/| |/ _ \ / _` | | | | |/ _ (_) \ /\ / /| | |/ / |/ _` |/ _` | __/ _` | | |/ _` | '_ \ / _ \ |
| | | | (_) | (_| | |_| | | __/_ \ V V / | | <| | (_| | (_| | || (_| | | | (_| | |_) | __/ |
|_| |_|\___/ \__,_|\__,_|_|\___(_) \_/\_/ |_|_|\_\_|\__,_|\__,_|\__\__,_| |_|\__,_|_.__/ \___|_|
This module is intended to be the engine behind "Template:Label".
This module was copied from Commons; please ask for changes there.
Please do not modify this code without applying the changes first at
"Module:Wikidata label/sandbox" and testing at
"Module:Wikidata label/testcases".
Authors and maintainers:
* User:Jarekt – original version
* User:Iketsi – improved fallback logic
]]
require('strict') -- used for debugging purposes as it detects cases of unintended global variables
--=============================================
--=== Internal functions ======================
--=============================================
---------------------------------------------------------------------------
-- Normalize input arguments by converting them all to lower case and
-- replacing space with "_" in the argument name. Also empty strings are
-- converted to nils. Arguments are collected from arguments passed to the
-- module and if missing from the template that calls the module
local function getArgs(frame)
local function normalize_input_args(input_args, output_args)
for name, value in pairs( input_args ) do
value = mw.text.trim(value) -- trim whitespaces from the beggining and the end of the string
if value ~= '' then -- nuke empty strings
if type(name)=='string' then
name = string.gsub( string.lower(name), ' ', '_')
end
output_args[name] = value
end
end
return output_args
end
local args = {}
args = normalize_input_args(frame:getParent().args, args)
args = normalize_input_args(frame.args, args)
return args
end
---------------------------------------------------------------------------
-- Function allowing for consistent treatment of boolean-like wikitext input.
-- It works similarly to Module:Yesno but does not assume val is a string
local function yesno(val, default)
if type(val) == 'boolean' then
return val
elseif type(val) == 'number' then
if val == 1 then
return true
elseif val == 0 then
return false
end
elseif type(val) == 'string' then
val = mw.ustring.lower(val) -- put in lower case
if val == 'no' or val == 'n' or val == 'false' or val == '0' then
return false
elseif val == 'yes' or val == 'y' or val == 'true' or val == '1' then
return true
end
end
return default
end
-------------------------------------------------------------------------
-- get message in a given language
-- INPUTS:
-- * msg - name of a message. For it to work [[MediaWiki:msg]] page need to be set up
-- * lang - translate message to language "lang"
-- * default - string to return in case this module is moved to a project where this message is not set
-- OUTPUT:
-- * translated message
local function getMessage(msg, lang, default)
msg = mw.message.new(msg):inLanguage(lang):plain()
return (msg == nil and default) or msg
end
local function normalizeLanguageCode(code)
if type(code) ~= 'string' then
return nil
end
code = mw.text.trim(code)
if code == '' then
return nil
end
return mw.ustring.lower(mw.ustring.gsub(code, '_', '-'))
end
local function appendUniqueLanguage(langList, seen, code)
code = normalizeLanguageCode(code)
if code and not seen[code] then
seen[code] = true
table.insert(langList, code)
end
end
local function getLabelLanguages(lang, fallback)
local requested_lang = normalizeLanguageCode(lang)
local langList = {}
local seen = {}
fallback = normalizeLanguageCode(fallback)
if not fallback then
fallback = 'default'
end
appendUniqueLanguage(langList, seen, requested_lang)
if fallback == 'none' then
return langList, requested_lang
end
if fallback == 'default' then
appendUniqueLanguage(langList, seen, 'mul')
for _, language in ipairs(mw.language.getFallbacksFor(requested_lang)) do
appendUniqueLanguage(langList, seen, language)
end
return langList, requested_lang
end
for _, language in ipairs(mw.text.split(fallback, ',', true)) do
appendUniqueLanguage(langList, seen, language)
end
return langList, requested_lang
end
local function getLabelInLanguages(item, entity, langList)
for _, language in ipairs(langList) do
local label
if entity then
label = entity:getLabel(language)
else
label = mw.wikibase.getLabelByLang(item, language)
end
if label then
return label, language
end
end
end
local function getDescriptionInLanguages(item, entity, langList)
if entity and entity.descriptions then
for _, language in ipairs(langList) do
if entity.descriptions[language] then
return entity.descriptions[language].value
end
end
else
for _, language in ipairs(langList) do
local desc = mw.wikibase.getDescriptionByLang(item, language)
if desc then
return desc
end
end
end
end
local function isFallbackLabel(requested_lang, label_lang)
return label_lang ~= nil and label_lang ~= requested_lang
end
local function isNonMulFallback(requested_lang, label_lang)
return label_lang ~= nil and label_lang ~= requested_lang and label_lang ~= 'mul'
end
local function shouldShowLanguage(show_lang, requested_lang, label_lang)
show_lang = normalizeLanguageCode(show_lang) or 'fallback-not-mul'
if not label_lang then
return false
elseif show_lang == 'always' then
return true
elseif show_lang == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif show_lang == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function shouldShowQid(show_qid, requested_lang, label_lang)
show_qid = normalizeLanguageCode(show_qid) or 'never'
if show_qid == 'always' then
return label_lang ~= nil
elseif show_qid == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif show_qid == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function shouldShowEdit(edit, requested_lang, label_lang)
edit = normalizeLanguageCode(edit) or 'fallback-not-mul'
if edit == 'always' then
return true
elseif edit == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif edit == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function renderFallbackMarker(label_lang, item, show_lang, show_qid, requested_lang)
local show_language = shouldShowLanguage(show_lang, requested_lang, label_lang)
local show_qid = shouldShowQid(show_qid, requested_lang, label_lang)
local marker = {}
if show_qid then
table.insert(marker, '[[d:' .. item .. '|' .. mw.text.nowiki(item) .. ']]')
end
if show_language then
table.insert(marker, mw.text.nowiki(label_lang))
end
if #marker == 0 then
return ''
end
return '<sup class="wikidata-label-marker" lang="en" dir="ltr">('
.. table.concat(marker, ' · ')
.. ')</sup>'
end
local function renderLabelEditLink(item, requested_lang)
local url = 'https://www.wikidata.org/wiki/Special:SetLabelDescriptionAliases/'
.. item
.. '/'
.. mw.uri.encode(requested_lang, 'PATH')
.. '?uselang='
.. mw.uri.encode(requested_lang, 'QUERY')
local tooltip = getMessage('Translate', requested_lang, 'Translate')
tooltip = mw.text.nowiki(tooltip)
return '<span class="plainlinks wikidata-label-edit">['
.. url
.. ' <span title="' .. tooltip .. '">🏷</span>]</span>'
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * lang - language of the project
-- OUTPUT:
-- * sitelink
local function getSitelink(item, entity, lang)
if entity and entity.getSitelink then -- if we have entity then use it
return entity:getSitelink(lang .. 'wiki')
else -- if no entity then use different function
return mw.wikibase.getSitelink(item, lang .. 'wiki')
end
end
local function canUseLocalLink(link_type, requested_lang, label_lang)
link_type = normalizeLanguageCode(link_type) or 'default'
if link_type == 'default' then
return label_lang == requested_lang
elseif link_type == 'mul' then
return label_lang == requested_lang or label_lang == 'mul'
elseif link_type == 'all' then
return label_lang ~= nil
end
return false
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * prop - property for which to return the best statment
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function getBestStatementsValue(item, entity, prop)
local statments
if entity then
statments = entity:getBestStatements(prop)
else
statments = mw.wikibase.getBestStatements(item, prop)
end
for _, statment in ipairs(statments) do
if statment and statment.mainsnak.datavalue.value then
return statment.mainsnak.datavalue.value
end
end
end
---------------------------------------------------------------------------
-- change capitalization of the label
-- INPUTS:
-- * label - label string
-- * capitalization - capitalization to be applied: allowed values are "tc", "lc",
-- "uc", "lcfirst", and "ucfirst". Any other value will return original string
-- * lang - language of the label
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function apply_capitalization(label, capitalization, lang)
capitalization = string.lower(capitalization or 'none')
if capitalization == 'none' then
return label
elseif capitalization == 'uc' then
return mw.language.new(lang):uc(label)
elseif capitalization == 'lc' then
return mw.language.new(lang):lc(label)
elseif capitalization == 'tc' then -- title case
local new_label = {}
for _, word in ipairs(mw.text.split(label, ' ')) do
table.insert(new_label, mw.language.new(lang):ucfirst(word))
end
return table.concat(new_label, ' ')
elseif capitalization == 'ucfirst' then
return mw.language.new(lang):ucfirst(label)
elseif capitalization == 'lcfirst' then
return mw.language.new(lang):lcfirst(label)
end
return label
end
--[[-------------------------------------------------------------------------
get link based on user preference
INPUTS:
* link_type - can be :
* "wikidata" - link to wikidata
* "wikipedia" - link to wikipedia (language dependent)
* "wikidata talk" - link to wikidata talk page
* "commons" - link to commons (try sitelink then commons category then commons gallery)
* "commonscat" - link to commons (try commons category then commons gallery)
* "-" - means no link
* item - entity ID (always provided)
* entity - whole entity. It can be nil if whole entity is not loaded
* langList - language fallback list for preferred language (required)
OUTPUT:
* link - link to the wikimedia page
]]
local function getLink(link_type, item, entity, requested_lang)
local link, eLink
link_type = mw.ustring.lower(link_type or 'default')
local item_type = mw.ustring.sub(item, 1, 1) -- first letter prefix of item entity ID: 'Q', 'P' or 'M'
if item_type == 'M' then
eLink='c:Special:EntityPage/'..item
elseif item_type == 'Q' then
eLink='d:'..item -- wikibase entity page link
elseif item_type == 'P' then
eLink='d:Property:'..item -- wikibase entity page link
else
eLink='d:Special:EntityPage/'..item
end
if link_type == '-' or link_type == 'none' then -- allow different link formats
return '' -- no link
elseif link_type == 'wikidata' or item_type == 'M' then
return eLink -- link to wikibase entity page
elseif link_type == 'wikidata talk' and item_type == 'P' then
return 'd:Property talk:'.. item -- link to wikidata property talk page
elseif link_type == 'wikidata talk' then
return 'd:Talk:'..item -- link to wikidata talk page
elseif link_type == 'commons' or link_type == 'commonscat' then
--[[
When link_type == 'commons' we try the following links (in specified order):
1) commons sitelink
2) P373 "Commons Category" claims
3) P935 "Commons Gallery" claims
Since most items have a commons sitelink we never have to look for claims
When link_type == 'commonscat' we try to maximize chances of commons link being a category, so we
try the following links (in specified order):
1) commons sitelink, which is kept if it points to a category
2) P373 "Commons Category" claims
3) commons sitelink (which does not point to a category)
4) P935 "Commons Gallery" claims
Since most pages have a commons sitelink we never have to look for claims
]]
local sLink = getSitelink(item, entity, 'commons') -- look for sitelink to commons
if sLink then
sLink = 'c:'..sLink
if (link_type == 'commons') or (link_type == 'commonscat' and mw.ustring.find(sLink, 'Category:')) then
link = sLink
end
end
if not link then -- try linking to P373 "Commons Category"
local cat = getBestStatementsValue(item, entity, 'P373')
link = (cat ~= nil and 'c:Category:' .. cat) or nil
end
link = link or sLink
if not link then -- try linking to P935 "Commons Gallery"
link = getBestStatementsValue(item, entity, 'P935')
end
return link or eLink
end
local sitelink = getSitelink(item, entity, requested_lang)
if sitelink then
return ':' .. requested_lang .. ':' .. sitelink
end
return eLink
end
--=============================================
--=== External functions ======================
--=============================================
local p = {}
--======================================================================
--=== API functions for use from other Scribunto modules ===============
--======================================================================
--[[
_getLabel
This function returns a label translated to desired language, created based on wikidata
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - desired language of the label
3: link_type - link style. Possible values (case-insensitive): "wikipedia", "wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc" (upper case), "lc" (lower case), "ucfirst" (upper case for the first letter),
"lcfirst" (lower case for the first letter), or 'none' (default)
Error Handling:
Bad q-id will result in displayed error
]]
function p._getLabel(item, lang, link_type, capitalization, show_id, fallback, show_lang, edit, show_qid, article)
local entity, s, link, label, language, desc
local label_lang, requested_lang, langList, output
local local_title
-- clean up the input parameters
if type(item) ~= 'string' then -- "item" is not a q-id
entity = item -- "item" must be the entity
if not entity or not entity.id then
return '<strong class="error">Wikidata label: missing or invalid item</strong>'
end
item = entity.id -- look-up q-id
elseif tonumber(item) then -- if it is just the number then add "Q" in front
item = 'Q'..item
end
item = mw.ustring.gsub(mw.ustring.upper(item), 'PROPERTY:P', 'P') -- make all the properties the same and capitalize
if link_type == 'no' then
link_type = 'none'
end
link_type = normalizeLanguageCode(link_type) or 'default'
requested_lang = normalizeLanguageCode(lang)
if not requested_lang then
requested_lang = mw.getCurrentFrame():callParserFunction("int","lang")
requested_lang = normalizeLanguageCode(requested_lang)
end
if not requested_lang then
requested_lang = 'en'
end
langList, requested_lang = getLabelLanguages(requested_lang, fallback)
label, label_lang = getLabelInLanguages(item, entity, langList)
if label then -- wikitext-escape the label if we have one
label = mw.text.nowiki(label)
end
if not label then -- no labels found, so just show the q-id
label = item
elseif show_id then -- add id
show_id = yesno(show_id,false)
if show_id then
local wordsep = getMessage('Word-separator', requested_lang, ' ')
local id = mw.message.new('parentheses', item):inLanguage(requested_lang):plain()
id = (id~=nil and id) or ('('..item..')') -- in case this module is moved to a project where {{int:parenthesis}} is not set
label = label .. wordsep .. "<small>" .. id .. "</small>"
end
end
label = apply_capitalization(label, capitalization, requested_lang)
-- look for description
desc = getDescriptionInLanguages(item, entity, langList)
if desc and link_type ~= '-' and link_type ~= 'none' then -- wikitext-escape the description if we have one
desc = mw.text.nowiki(desc) -- add description as hover text
label = '<span title="' .. desc .. '">' .. label .. '</span>'
end
local_title = article
if not local_title or local_title == '' then
local_title = getSitelink(item, entity, requested_lang)
end
if link_type == '-' or link_type == 'none' then
output = label
elseif link_type == 'wikidata' then
output = '[[d:' .. item .. '|' .. label .. ']]'
elseif link_type == 'olddefault' then
if local_title then
output = '[[' .. local_title .. '|' .. label .. ']]'
else
output = '[[d:' .. item .. '|' .. label .. ']]'
end
elseif canUseLocalLink(link_type, requested_lang, label_lang) and local_title then
output = '[[' .. local_title .. '|' .. label .. ']]'
else
output = label
end
output = output .. renderFallbackMarker(
label_lang,
item,
show_lang,
show_qid,
requested_lang
)
if shouldShowEdit(edit, requested_lang, label_lang) then
output = output .. renderLabelEditLink(item, requested_lang)
end
return output
end
--[[-------------------------------------------------------------------------------
_sitelinks
This function returns a table of sitelinks for a single project organized by language
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - (case-insensitive) one of: "wikipedia", "wikisource", "wikiquote", "wikibooks", "wikinews",
"wikiversity", "wikivoyage", "wiktionary", "commons", "mediawiki", "wikispecies", "wikidata", etc.
Output:
Table of sitelinks with language fields
Output:
Table of sitelinks with language fields
See also
* [https://foundation.wikimedia.org/wiki/Special:SiteMatrix] for the full list of supported interwikis.
* [https://dumps.wikimedia.org/backup-index.html] for the full list of sitecodes (used in database dumps).
]]
function p._sitelinks(item, project)
local entity, sitelink
-- get entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
-- convert from english project name to proproject code
local projLUT = {
wikipedia = 'wiki', commons = 'commonswiki',
foundation = 'foundationwiki', mediawiki = 'mediawikiwiki',
wikispecies = 'specieswiki', wikidata = 'wikidatawiki',
incubator = 'incubatorwiki',oldwikisource = 'sourceswiki',
}
local langLUT = {
-- These are not language codes before the 'wiki' or 'wikiversity' suffix in a sitecode:
foundation = '~', commons = '~',-- they will be skipped
incubator = '~', meta = '~',
mediawiki = '~', sources = '~',
species = '~', beta = '~',
-- Legacy language codes used in sitecodes, remapped to standard Wikimedia language codes:
-- See [https://meta.wikimedia.org/wiki/Special_language_codes](https://meta.wikimedia.org/wiki/Special_language_codes) for details
als = 'gsw', bat_smg = 'sgs',
fiu_vro = 'vro', be_x_old = 'be-tarask',
roa_rup = 'rup', zh_classical = 'lzh',
zh_yue = 'yue', zh_min_nan = 'nan',
zh_wuu = 'wuu', no = 'nb',
}
project = project:lower()
project = projLUT[project] or project -- correct the project name
local n = project:len()
local linkTable = {}
if entity and entity.sitelinks then -- See if entity exists, and that it has sitelinks
for _, sitelink in pairs(entity.sitelinks) do -- loop over all sitelinks
local site = sitelink.site
local m = site:len() - n
local proj = site:sub(m +1) -- project part of the siteID
if proj == project then -- proj matches desired "project"
local lang = site:sub(1, m) -- language part of the siteID
lang = langLUT[lang] or lang:gsub('_','-')
if lang ~= '~' then -- proj matches desired "project"
linkTable[lang] = sitelink.title
end
end
end
end
return linkTable
end
--[[----------------------------------------------------------------
_aliases
This function returns a table of aliases for a single language
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Table of aliases with language fields
]]
function p._aliases(item, lang)
local entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
local aliasTable = {}
if entity and entity.aliases then-- See if there is an entity and that is has aliases
if entity.aliases[lang] then-- See if it has English Aliases
for _, alias in pairs(entity.aliases[lang]) do -- Make a loop around the English aliases
table.insert(aliasTable, alias.value)-- Create a table of English aliases
end
end
end
return aliasTable
end
--======================================================================
--=== Invoke functions for use from wikitext, e.g., templates ==========
---=====================================================================
--[[
getLabel
This function returns a label translated to desired language, created based on wikidata
Usage:
{{#invoke:Wikidata label|getLabel|item=Q...|lang=..|link_style=..|capitalization=..}}
Parameters
1: wikidata's item's q-id (required)
2: language (optional; default {{int:lang}})
3: link_style: "wikipedia" (default), "Wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc", "lc", "tc", "ucfirst", "lcfirst"
Error Handling:
Bad q-id will result in displayed error
]]
function p.getLabel(frame)
local args = getArgs(frame)
return p._getLabel(
args.item,
args.lang,
args.link,
args.capitalization,
args.show_id,
args.fallback,
args.show_lang,
args.edit,
args.show_qid,
args.article
)
end
--[[-------------------------------------------------------------------------------
sitelinks
This function returns a comma separated list of sitelinks for a single project organized by language
Its main purpose is to help with testing of _sitelinks function.
Usage:
{{#invoke:Wikidata label|sitelinks|item=Q...|project=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - "wikipedia" (or "wiki"), "wikisource", "wikiquote", "wikibooks",
"wikinews", "wikiversity", "wikivoyage", "wiktionary", etc.
Output:
comma separated list
]]
function p.sitelinks(frame)
local args = getArgs(frame)
local sitelinks = p._sitelinks(args.item, args.project)
local sitelinkList = {}
for lang, sitelink in pairs(sitelinks) do
table.insert(sitelinkList, (lang=='' and sitelink) or (lang .. ':' .. sitelink))
end
return table.concat(sitelinkList, ', ')
end
--[[----------------------------------------------------------------------------
aliases
This function returns a comma separated list of aliases for a single language
Its main purpose is to help with testing of _aliases function.
Usage:
{{#invoke:Wikidata label|aliases|item=Q...|lang=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Comma separated list
]]
function p.aliases(frame)
local args = getArgs(frame)
return table.concat(p._aliases(args.item, args.lang), ', ')
end
return p
5bqtl6kwzr4vg29zbaxyhgyq65l8cyr
216462
216458
2026-10-04T13:18:08Z
Iketsi
3254
+ [[]]
216462
Scribunto
text/plain
--[[
__ __ _ _ __ ___ _ _ _ _ _ _ _
| \/ | ___ __| |_ _| | ___ \ \ / (_) | _(_) __| | __ _| |_ __ _ | | __ _| |__ ___| |
| |\/| |/ _ \ / _` | | | | |/ _ (_) \ /\ / /| | |/ / |/ _` |/ _` | __/ _` | | |/ _` | '_ \ / _ \ |
| | | | (_) | (_| | |_| | | __/_ \ V V / | | <| | (_| | (_| | || (_| | | | (_| | |_) | __/ |
|_| |_|\___/ \__,_|\__,_|_|\___(_) \_/\_/ |_|_|\_\_|\__,_|\__,_|\__\__,_| |_|\__,_|_.__/ \___|_|
This module is intended to be the engine behind "Template:Label".
This module was copied from Commons; please ask for changes there.
Please do not modify this code without applying the changes first at
"Module:Wikidata label/sandbox" and testing at
"Module:Wikidata label/testcases".
Authors and maintainers:
* User:Jarekt – original version
* User:Iketsi – improved fallback logic
]]
require('strict') -- used for debugging purposes as it detects cases of unintended global variables
--=============================================
--=== Internal functions ======================
--=============================================
---------------------------------------------------------------------------
-- Normalize input arguments by converting them all to lower case and
-- replacing space with "_" in the argument name. Also empty strings are
-- converted to nils. Arguments are collected from arguments passed to the
-- module and if missing from the template that calls the module
local function getArgs(frame)
local function normalize_input_args(input_args, output_args)
for name, value in pairs( input_args ) do
value = mw.text.trim(value) -- trim whitespaces from the beggining and the end of the string
if value ~= '' then -- nuke empty strings
if type(name)=='string' then
name = string.gsub( string.lower(name), ' ', '_')
end
output_args[name] = value
end
end
return output_args
end
local args = {}
args = normalize_input_args(frame:getParent().args, args)
args = normalize_input_args(frame.args, args)
return args
end
---------------------------------------------------------------------------
-- Function allowing for consistent treatment of boolean-like wikitext input.
-- It works similarly to Module:Yesno but does not assume val is a string
local function yesno(val, default)
if type(val) == 'boolean' then
return val
elseif type(val) == 'number' then
if val == 1 then
return true
elseif val == 0 then
return false
end
elseif type(val) == 'string' then
val = mw.ustring.lower(val) -- put in lower case
if val == 'no' or val == 'n' or val == 'false' or val == '0' then
return false
elseif val == 'yes' or val == 'y' or val == 'true' or val == '1' then
return true
end
end
return default
end
-------------------------------------------------------------------------
-- get message in a given language
-- INPUTS:
-- * msg - name of a message. For it to work [[MediaWiki:msg]] page need to be set up
-- * lang - translate message to language "lang"
-- * default - string to return in case this module is moved to a project where this message is not set
-- OUTPUT:
-- * translated message
local function getMessage(msg, lang, default)
msg = mw.message.new(msg):inLanguage(lang):plain()
return (msg == nil and default) or msg
end
local function normalizeLanguageCode(code)
if type(code) ~= 'string' then
return nil
end
code = mw.text.trim(code)
if code == '' then
return nil
end
return mw.ustring.lower(mw.ustring.gsub(code, '_', '-'))
end
local function appendUniqueLanguage(langList, seen, code)
code = normalizeLanguageCode(code)
if code and not seen[code] then
seen[code] = true
table.insert(langList, code)
end
end
local function getLabelLanguages(lang, fallback)
local requested_lang = normalizeLanguageCode(lang)
local langList = {}
local seen = {}
fallback = normalizeLanguageCode(fallback)
if not fallback then
fallback = 'default'
end
appendUniqueLanguage(langList, seen, requested_lang)
if fallback == 'none' then
return langList, requested_lang
end
if fallback == 'default' then
appendUniqueLanguage(langList, seen, 'mul')
for _, language in ipairs(mw.language.getFallbacksFor(requested_lang)) do
appendUniqueLanguage(langList, seen, language)
end
return langList, requested_lang
end
for _, language in ipairs(mw.text.split(fallback, ',', true)) do
appendUniqueLanguage(langList, seen, language)
end
return langList, requested_lang
end
local function getLabelInLanguages(item, entity, langList)
for _, language in ipairs(langList) do
local label
if entity then
label = entity:getLabel(language)
else
label = mw.wikibase.getLabelByLang(item, language)
end
if label then
return label, language
end
end
end
local function getDescriptionInLanguages(item, entity, langList)
if entity and entity.descriptions then
for _, language in ipairs(langList) do
if entity.descriptions[language] then
return entity.descriptions[language].value
end
end
else
for _, language in ipairs(langList) do
local desc = mw.wikibase.getDescriptionByLang(item, language)
if desc then
return desc
end
end
end
end
local function isFallbackLabel(requested_lang, label_lang)
return label_lang ~= nil and label_lang ~= requested_lang
end
local function isNonMulFallback(requested_lang, label_lang)
return label_lang ~= nil and label_lang ~= requested_lang and label_lang ~= 'mul'
end
local function shouldShowLanguage(show_lang, requested_lang, label_lang)
show_lang = normalizeLanguageCode(show_lang) or 'fallback-not-mul'
if not label_lang then
return false
elseif show_lang == 'always' then
return true
elseif show_lang == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif show_lang == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function shouldShowQid(show_qid, requested_lang, label_lang)
show_qid = normalizeLanguageCode(show_qid) or 'never'
if show_qid == 'always' then
return label_lang ~= nil
elseif show_qid == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif show_qid == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function shouldShowEdit(edit, requested_lang, label_lang)
edit = normalizeLanguageCode(edit) or 'fallback-not-mul'
if edit == 'always' then
return true
elseif edit == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif edit == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function renderFallbackMarker(label_lang, item, show_lang, show_qid, requested_lang)
local show_language = shouldShowLanguage(show_lang, requested_lang, label_lang)
local show_qid = shouldShowQid(show_qid, requested_lang, label_lang)
local marker = {}
if show_qid then
table.insert(marker, '[[d:' .. item .. '|' .. mw.text.nowiki(item) .. ']]')
end
if show_language then
table.insert(marker, mw.text.nowiki(label_lang))
end
if #marker == 0 then
return ''
end
return '<sup class="wikidata-label-marker" lang="en" dir="ltr">('
.. table.concat(marker, ' · ')
.. ')</sup>'
end
local function renderLabelEditLink(item, requested_lang)
local url = 'https://www.wikidata.org/wiki/Special:SetLabelDescriptionAliases/'
.. item
.. '/'
.. mw.uri.encode(requested_lang, 'PATH')
.. '?uselang='
.. mw.uri.encode(requested_lang, 'QUERY')
local tooltip = getMessage('Translate', requested_lang, 'Translate')
tooltip = mw.text.nowiki(tooltip)
return '<span class="plainlinks wikidata-label-edit">['
.. url
.. ' <span title="' .. tooltip .. '">🏷</span>]</span>'
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * lang - language of the project
-- OUTPUT:
-- * sitelink
local function getSitelink(item, entity, lang)
if entity and entity.getSitelink then -- if we have entity then use it
return entity:getSitelink(lang .. 'wiki')
else -- if no entity then use different function
return mw.wikibase.getSitelink(item, lang .. 'wiki')
end
end
local function canUseLocalLink(link_type, requested_lang, label_lang)
link_type = normalizeLanguageCode(link_type) or 'default'
if link_type == 'default' then
return label_lang == requested_lang
elseif link_type == 'mul' then
return label_lang == requested_lang or label_lang == 'mul'
elseif link_type == 'all' then
return label_lang ~= nil
end
return false
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * prop - property for which to return the best statment
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function getBestStatementsValue(item, entity, prop)
local statments
if entity then
statments = entity:getBestStatements(prop)
else
statments = mw.wikibase.getBestStatements(item, prop)
end
for _, statment in ipairs(statments) do
if statment and statment.mainsnak.datavalue.value then
return statment.mainsnak.datavalue.value
end
end
end
---------------------------------------------------------------------------
-- change capitalization of the label
-- INPUTS:
-- * label - label string
-- * capitalization - capitalization to be applied: allowed values are "tc", "lc",
-- "uc", "lcfirst", and "ucfirst". Any other value will return original string
-- * lang - language of the label
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function apply_capitalization(label, capitalization, lang)
capitalization = string.lower(capitalization or 'none')
if capitalization == 'none' then
return label
elseif capitalization == 'uc' then
return mw.language.new(lang):uc(label)
elseif capitalization == 'lc' then
return mw.language.new(lang):lc(label)
elseif capitalization == 'tc' then -- title case
local new_label = {}
for _, word in ipairs(mw.text.split(label, ' ')) do
table.insert(new_label, mw.language.new(lang):ucfirst(word))
end
return table.concat(new_label, ' ')
elseif capitalization == 'ucfirst' then
return mw.language.new(lang):ucfirst(label)
elseif capitalization == 'lcfirst' then
return mw.language.new(lang):lcfirst(label)
end
return label
end
--[[-------------------------------------------------------------------------
get link based on user preference
INPUTS:
* link_type - can be :
* "wikidata" - link to wikidata
* "wikipedia" - link to wikipedia (language dependent)
* "wikidata talk" - link to wikidata talk page
* "commons" - link to commons (try sitelink then commons category then commons gallery)
* "commonscat" - link to commons (try commons category then commons gallery)
* "-" - means no link
* item - entity ID (always provided)
* entity - whole entity. It can be nil if whole entity is not loaded
* langList - language fallback list for preferred language (required)
OUTPUT:
* link - link to the wikimedia page
]]
local function getLink(link_type, item, entity, requested_lang)
local link, eLink
link_type = mw.ustring.lower(link_type or 'default')
local item_type = mw.ustring.sub(item, 1, 1) -- first letter prefix of item entity ID: 'Q', 'P' or 'M'
if item_type == 'M' then
eLink='c:Special:EntityPage/'..item
elseif item_type == 'Q' then
eLink='d:'..item -- wikibase entity page link
elseif item_type == 'P' then
eLink='d:Property:'..item -- wikibase entity page link
else
eLink='d:Special:EntityPage/'..item
end
if link_type == '-' or link_type == 'none' then -- allow different link formats
return '' -- no link
elseif link_type == 'wikidata' or item_type == 'M' then
return eLink -- link to wikibase entity page
elseif link_type == 'wikidata talk' and item_type == 'P' then
return 'd:Property talk:'.. item -- link to wikidata property talk page
elseif link_type == 'wikidata talk' then
return 'd:Talk:'..item -- link to wikidata talk page
elseif link_type == 'commons' or link_type == 'commonscat' then
--[[
When link_type == 'commons' we try the following links (in specified order):
1) commons sitelink
2) P373 "Commons Category" claims
3) P935 "Commons Gallery" claims
Since most items have a commons sitelink we never have to look for claims
When link_type == 'commonscat' we try to maximize chances of commons link being a category, so we
try the following links (in specified order):
1) commons sitelink, which is kept if it points to a category
2) P373 "Commons Category" claims
3) commons sitelink (which does not point to a category)
4) P935 "Commons Gallery" claims
Since most pages have a commons sitelink we never have to look for claims
]]
local sLink = getSitelink(item, entity, 'commons') -- look for sitelink to commons
if sLink then
sLink = 'c:'..sLink
if (link_type == 'commons') or (link_type == 'commonscat' and mw.ustring.find(sLink, 'Category:')) then
link = sLink
end
end
if not link then -- try linking to P373 "Commons Category"
local cat = getBestStatementsValue(item, entity, 'P373')
link = (cat ~= nil and 'c:Category:' .. cat) or nil
end
link = link or sLink
if not link then -- try linking to P935 "Commons Gallery"
link = getBestStatementsValue(item, entity, 'P935')
end
return link or eLink
end
local sitelink = getSitelink(item, entity, requested_lang)
if sitelink then
return ':' .. requested_lang .. ':' .. sitelink
end
return eLink
end
--=============================================
--=== External functions ======================
--=============================================
local p = {}
--======================================================================
--=== API functions for use from other Scribunto modules ===============
--======================================================================
--[[
_getLabel
This function returns a label translated to desired language, created based on wikidata
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - desired language of the label
3: link_type - link style. Possible values (case-insensitive): "wikipedia", "wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc" (upper case), "lc" (lower case), "ucfirst" (upper case for the first letter),
"lcfirst" (lower case for the first letter), or 'none' (default)
Error Handling:
Bad q-id will result in displayed error
]]
function p._getLabel(item, lang, link_type, capitalization, show_id, fallback, show_lang, edit, show_qid, article)
local entity, s, link, label, language, desc
local label_lang, requested_lang, langList, output
local local_title
-- clean up the input parameters
if type(item) ~= 'string' then -- "item" is not a q-id
entity = item -- "item" must be the entity
if not entity or not entity.id then
return '<strong class="error">Wikidata label: missing or invalid item</strong>'
end
item = entity.id -- look-up q-id
elseif tonumber(item) then -- if it is just the number then add "Q" in front
item = 'Q'..item
end
item = mw.ustring.gsub(mw.ustring.upper(item), 'PROPERTY:P', 'P') -- make all the properties the same and capitalize
if link_type == 'no' then
link_type = 'none'
end
link_type = normalizeLanguageCode(link_type) or 'default'
requested_lang = normalizeLanguageCode(lang)
if not requested_lang then
requested_lang = mw.getCurrentFrame():callParserFunction("int","lang")
requested_lang = normalizeLanguageCode(requested_lang)
end
if not requested_lang then
requested_lang = 'en'
end
langList, requested_lang = getLabelLanguages(requested_lang, fallback)
label, label_lang = getLabelInLanguages(item, entity, langList)
if label then -- wikitext-escape the label if we have one
label = mw.text.nowiki(label)
end
if not label then -- no labels found, so just show the q-id
label = item
elseif show_id then -- add id
show_id = yesno(show_id,false)
if show_id then
local wordsep = getMessage('Word-separator', requested_lang, ' ')
local id = mw.message.new('parentheses', item):inLanguage(requested_lang):plain()
id = (id~=nil and id) or ('('..item..')') -- in case this module is moved to a project where {{int:parenthesis}} is not set
label = label .. wordsep .. "<small>" .. id .. "</small>"
end
end
label = apply_capitalization(label, capitalization, requested_lang)
-- look for description
desc = getDescriptionInLanguages(item, entity, langList)
if desc and link_type ~= '-' and link_type ~= 'none' then -- wikitext-escape the description if we have one
desc = mw.text.nowiki(desc) -- add description as hover text
label = '<span title="' .. desc .. '">' .. label .. '</span>'
end
local_title = article
if not local_title or local_title == '' then
local_title = getSitelink(item, entity, requested_lang)
end
if (not local_title or local_title == '')
and label_lang == requested_lang then
local_title = label
end
if link_type == '-' or link_type == 'none' then
output = label
elseif link_type == 'wikidata' then
output = '[[d:' .. item .. '|' .. label .. ']]'
elseif link_type == 'olddefault' then
if local_title then
output = '[[' .. local_title .. '|' .. label .. ']]'
else
output = '[[d:' .. item .. '|' .. label .. ']]'
end
elseif canUseLocalLink(link_type, requested_lang, label_lang) and local_title then
output = '[[' .. local_title .. '|' .. label .. ']]'
else
output = label
end
output = output .. renderFallbackMarker(
label_lang,
item,
show_lang,
show_qid,
requested_lang
)
if shouldShowEdit(edit, requested_lang, label_lang) then
output = output .. renderLabelEditLink(item, requested_lang)
end
return output
end
--[[-------------------------------------------------------------------------------
_sitelinks
This function returns a table of sitelinks for a single project organized by language
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - (case-insensitive) one of: "wikipedia", "wikisource", "wikiquote", "wikibooks", "wikinews",
"wikiversity", "wikivoyage", "wiktionary", "commons", "mediawiki", "wikispecies", "wikidata", etc.
Output:
Table of sitelinks with language fields
Output:
Table of sitelinks with language fields
See also
* [https://foundation.wikimedia.org/wiki/Special:SiteMatrix] for the full list of supported interwikis.
* [https://dumps.wikimedia.org/backup-index.html] for the full list of sitecodes (used in database dumps).
]]
function p._sitelinks(item, project)
local entity, sitelink
-- get entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
-- convert from english project name to proproject code
local projLUT = {
wikipedia = 'wiki', commons = 'commonswiki',
foundation = 'foundationwiki', mediawiki = 'mediawikiwiki',
wikispecies = 'specieswiki', wikidata = 'wikidatawiki',
incubator = 'incubatorwiki',oldwikisource = 'sourceswiki',
}
local langLUT = {
-- These are not language codes before the 'wiki' or 'wikiversity' suffix in a sitecode:
foundation = '~', commons = '~',-- they will be skipped
incubator = '~', meta = '~',
mediawiki = '~', sources = '~',
species = '~', beta = '~',
-- Legacy language codes used in sitecodes, remapped to standard Wikimedia language codes:
-- See [https://meta.wikimedia.org/wiki/Special_language_codes](https://meta.wikimedia.org/wiki/Special_language_codes) for details
als = 'gsw', bat_smg = 'sgs',
fiu_vro = 'vro', be_x_old = 'be-tarask',
roa_rup = 'rup', zh_classical = 'lzh',
zh_yue = 'yue', zh_min_nan = 'nan',
zh_wuu = 'wuu', no = 'nb',
}
project = project:lower()
project = projLUT[project] or project -- correct the project name
local n = project:len()
local linkTable = {}
if entity and entity.sitelinks then -- See if entity exists, and that it has sitelinks
for _, sitelink in pairs(entity.sitelinks) do -- loop over all sitelinks
local site = sitelink.site
local m = site:len() - n
local proj = site:sub(m +1) -- project part of the siteID
if proj == project then -- proj matches desired "project"
local lang = site:sub(1, m) -- language part of the siteID
lang = langLUT[lang] or lang:gsub('_','-')
if lang ~= '~' then -- proj matches desired "project"
linkTable[lang] = sitelink.title
end
end
end
end
return linkTable
end
--[[----------------------------------------------------------------
_aliases
This function returns a table of aliases for a single language
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Table of aliases with language fields
]]
function p._aliases(item, lang)
local entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
local aliasTable = {}
if entity and entity.aliases then-- See if there is an entity and that is has aliases
if entity.aliases[lang] then-- See if it has English Aliases
for _, alias in pairs(entity.aliases[lang]) do -- Make a loop around the English aliases
table.insert(aliasTable, alias.value)-- Create a table of English aliases
end
end
end
return aliasTable
end
--======================================================================
--=== Invoke functions for use from wikitext, e.g., templates ==========
---=====================================================================
--[[
getLabel
This function returns a label translated to desired language, created based on wikidata
Usage:
{{#invoke:Wikidata label|getLabel|item=Q...|lang=..|link_style=..|capitalization=..}}
Parameters
1: wikidata's item's q-id (required)
2: language (optional; default {{int:lang}})
3: link_style: "wikipedia" (default), "Wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc", "lc", "tc", "ucfirst", "lcfirst"
Error Handling:
Bad q-id will result in displayed error
]]
function p.getLabel(frame)
local args = getArgs(frame)
return p._getLabel(
args.item,
args.lang,
args.link,
args.capitalization,
args.show_id,
args.fallback,
args.show_lang,
args.edit,
args.show_qid,
args.article
)
end
--[[-------------------------------------------------------------------------------
sitelinks
This function returns a comma separated list of sitelinks for a single project organized by language
Its main purpose is to help with testing of _sitelinks function.
Usage:
{{#invoke:Wikidata label|sitelinks|item=Q...|project=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - "wikipedia" (or "wiki"), "wikisource", "wikiquote", "wikibooks",
"wikinews", "wikiversity", "wikivoyage", "wiktionary", etc.
Output:
comma separated list
]]
function p.sitelinks(frame)
local args = getArgs(frame)
local sitelinks = p._sitelinks(args.item, args.project)
local sitelinkList = {}
for lang, sitelink in pairs(sitelinks) do
table.insert(sitelinkList, (lang=='' and sitelink) or (lang .. ':' .. sitelink))
end
return table.concat(sitelinkList, ', ')
end
--[[----------------------------------------------------------------------------
aliases
This function returns a comma separated list of aliases for a single language
Its main purpose is to help with testing of _aliases function.
Usage:
{{#invoke:Wikidata label|aliases|item=Q...|lang=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Comma separated list
]]
function p.aliases(frame)
local args = getArgs(frame)
return table.concat(p._aliases(args.item, args.lang), ', ')
end
return p
nbajv97bkzh0bxnl7lby3gj7yapr7e3
216463
216462
2026-10-04T13:23:53Z
Iketsi
3254
+
216463
Scribunto
text/plain
--[[
__ __ _ _ __ ___ _ _ _ _ _ _ _
| \/ | ___ __| |_ _| | ___ \ \ / (_) | _(_) __| | __ _| |_ __ _ | | __ _| |__ ___| |
| |\/| |/ _ \ / _` | | | | |/ _ (_) \ /\ / /| | |/ / |/ _` |/ _` | __/ _` | | |/ _` | '_ \ / _ \ |
| | | | (_) | (_| | |_| | | __/_ \ V V / | | <| | (_| | (_| | || (_| | | | (_| | |_) | __/ |
|_| |_|\___/ \__,_|\__,_|_|\___(_) \_/\_/ |_|_|\_\_|\__,_|\__,_|\__\__,_| |_|\__,_|_.__/ \___|_|
This module is intended to be the engine behind "Template:Label".
This module was copied from Commons; please ask for changes there.
Please do not modify this code without applying the changes first at
"Module:Wikidata label/sandbox" and testing at
"Module:Wikidata label/testcases".
Authors and maintainers:
* User:Jarekt – original version
* User:Iketsi – improved fallback logic
]]
require('strict') -- used for debugging purposes as it detects cases of unintended global variables
--=============================================
--=== Internal functions ======================
--=============================================
---------------------------------------------------------------------------
-- Normalize input arguments by converting them all to lower case and
-- replacing space with "_" in the argument name. Also empty strings are
-- converted to nils. Arguments are collected from arguments passed to the
-- module and if missing from the template that calls the module
local function getArgs(frame)
local function normalize_input_args(input_args, output_args)
for name, value in pairs( input_args ) do
value = mw.text.trim(value) -- trim whitespaces from the beggining and the end of the string
if value ~= '' then -- nuke empty strings
if type(name)=='string' then
name = string.gsub( string.lower(name), ' ', '_')
end
output_args[name] = value
end
end
return output_args
end
local args = {}
args = normalize_input_args(frame:getParent().args, args)
args = normalize_input_args(frame.args, args)
return args
end
---------------------------------------------------------------------------
-- Function allowing for consistent treatment of boolean-like wikitext input.
-- It works similarly to Module:Yesno but does not assume val is a string
local function yesno(val, default)
if type(val) == 'boolean' then
return val
elseif type(val) == 'number' then
if val == 1 then
return true
elseif val == 0 then
return false
end
elseif type(val) == 'string' then
val = mw.ustring.lower(val) -- put in lower case
if val == 'no' or val == 'n' or val == 'false' or val == '0' then
return false
elseif val == 'yes' or val == 'y' or val == 'true' or val == '1' then
return true
end
end
return default
end
-------------------------------------------------------------------------
-- get message in a given language
-- INPUTS:
-- * msg - name of a message. For it to work [[MediaWiki:msg]] page need to be set up
-- * lang - translate message to language "lang"
-- * default - string to return in case this module is moved to a project where this message is not set
-- OUTPUT:
-- * translated message
local function getMessage(msg, lang, default)
msg = mw.message.new(msg):inLanguage(lang):plain()
return (msg == nil and default) or msg
end
local function normalizeLanguageCode(code)
if type(code) ~= 'string' then
return nil
end
code = mw.text.trim(code)
if code == '' then
return nil
end
return mw.ustring.lower(mw.ustring.gsub(code, '_', '-'))
end
local function appendUniqueLanguage(langList, seen, code)
code = normalizeLanguageCode(code)
if code and not seen[code] then
seen[code] = true
table.insert(langList, code)
end
end
local function getLabelLanguages(lang, fallback)
local requested_lang = normalizeLanguageCode(lang)
local langList = {}
local seen = {}
fallback = normalizeLanguageCode(fallback)
if not fallback then
fallback = 'default'
end
appendUniqueLanguage(langList, seen, requested_lang)
if fallback == 'none' then
return langList, requested_lang
end
if fallback == 'default' then
appendUniqueLanguage(langList, seen, 'mul')
for _, language in ipairs(mw.language.getFallbacksFor(requested_lang)) do
appendUniqueLanguage(langList, seen, language)
end
return langList, requested_lang
end
for _, language in ipairs(mw.text.split(fallback, ',', true)) do
appendUniqueLanguage(langList, seen, language)
end
return langList, requested_lang
end
local function getLabelInLanguages(item, entity, langList)
for _, language in ipairs(langList) do
local label
if entity then
label = entity:getLabel(language)
else
label = mw.wikibase.getLabelByLang(item, language)
end
if label then
return label, language
end
end
end
local function getDescriptionInLanguages(item, entity, langList)
if entity and entity.descriptions then
for _, language in ipairs(langList) do
if entity.descriptions[language] then
return entity.descriptions[language].value
end
end
else
for _, language in ipairs(langList) do
local desc = mw.wikibase.getDescriptionByLang(item, language)
if desc then
return desc
end
end
end
end
local function isFallbackLabel(requested_lang, label_lang)
return label_lang ~= nil and label_lang ~= requested_lang
end
local function isNonMulFallback(requested_lang, label_lang)
return label_lang ~= nil and label_lang ~= requested_lang and label_lang ~= 'mul'
end
local function shouldShowLanguage(show_lang, requested_lang, label_lang)
show_lang = normalizeLanguageCode(show_lang) or 'fallback-not-mul'
if not label_lang then
return false
elseif show_lang == 'always' then
return true
elseif show_lang == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif show_lang == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function shouldShowQid(show_qid, requested_lang, label_lang)
show_qid = normalizeLanguageCode(show_qid) or 'never'
if show_qid == 'always' then
return label_lang ~= nil
elseif show_qid == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif show_qid == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function shouldShowEdit(edit, requested_lang, label_lang)
edit = normalizeLanguageCode(edit) or 'fallback-not-mul'
if edit == 'always' then
return true
elseif edit == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif edit == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function renderFallbackMarker(label_lang, item, show_lang, show_qid, requested_lang)
local show_language = shouldShowLanguage(show_lang, requested_lang, label_lang)
local show_qid = shouldShowQid(show_qid, requested_lang, label_lang)
local marker = {}
if show_qid then
table.insert(marker, '[[d:' .. item .. '|' .. mw.text.nowiki(item) .. ']]')
end
if show_language then
table.insert(marker, mw.text.nowiki(label_lang))
end
if #marker == 0 then
return ''
end
return '<sup class="wikidata-label-marker" lang="en" dir="ltr">('
.. table.concat(marker, ' · ')
.. ')</sup>'
end
local function renderLabelEditLink(item, requested_lang)
local url = 'https://www.wikidata.org/wiki/Special:SetLabelDescriptionAliases/'
.. item
.. '/'
.. mw.uri.encode(requested_lang, 'PATH')
.. '?uselang='
.. mw.uri.encode(requested_lang, 'QUERY')
local tooltip = getMessage('Translate', requested_lang, 'Translate')
tooltip = mw.text.nowiki(tooltip)
return '<span class="plainlinks wikidata-label-edit">['
.. url
.. ' <span title="' .. tooltip .. '">🏷</span>]</span>'
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * lang - language of the project
-- OUTPUT:
-- * sitelink
local function getSitelink(item, entity, lang)
if entity and entity.getSitelink then -- if we have entity then use it
return entity:getSitelink(lang .. 'wiki')
else -- if no entity then use different function
return mw.wikibase.getSitelink(item, lang .. 'wiki')
end
end
local function canUseLocalLink(link_type, requested_lang, label_lang)
link_type = normalizeLanguageCode(link_type) or 'default'
if link_type == 'default' then
return label_lang == requested_lang
elseif link_type == 'mul' then
return label_lang == requested_lang or label_lang == 'mul'
elseif link_type == 'all' then
return label_lang ~= nil
end
return false
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * prop - property for which to return the best statment
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function getBestStatementsValue(item, entity, prop)
local statments
if entity then
statments = entity:getBestStatements(prop)
else
statments = mw.wikibase.getBestStatements(item, prop)
end
for _, statment in ipairs(statments) do
if statment and statment.mainsnak.datavalue.value then
return statment.mainsnak.datavalue.value
end
end
end
---------------------------------------------------------------------------
-- change capitalization of the label
-- INPUTS:
-- * label - label string
-- * capitalization - capitalization to be applied: allowed values are "tc", "lc",
-- "uc", "lcfirst", and "ucfirst". Any other value will return original string
-- * lang - language of the label
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function apply_capitalization(label, capitalization, lang)
capitalization = string.lower(capitalization or 'none')
if capitalization == 'none' then
return label
elseif capitalization == 'uc' then
return mw.language.new(lang):uc(label)
elseif capitalization == 'lc' then
return mw.language.new(lang):lc(label)
elseif capitalization == 'tc' then -- title case
local new_label = {}
for _, word in ipairs(mw.text.split(label, ' ')) do
table.insert(new_label, mw.language.new(lang):ucfirst(word))
end
return table.concat(new_label, ' ')
elseif capitalization == 'ucfirst' then
return mw.language.new(lang):ucfirst(label)
elseif capitalization == 'lcfirst' then
return mw.language.new(lang):lcfirst(label)
end
return label
end
--[[-------------------------------------------------------------------------
get link based on user preference
INPUTS:
* link_type - can be :
* "wikidata" - link to wikidata
* "wikipedia" - link to wikipedia (language dependent)
* "wikidata talk" - link to wikidata talk page
* "commons" - link to commons (try sitelink then commons category then commons gallery)
* "commonscat" - link to commons (try commons category then commons gallery)
* "-" - means no link
* item - entity ID (always provided)
* entity - whole entity. It can be nil if whole entity is not loaded
* langList - language fallback list for preferred language (required)
OUTPUT:
* link - link to the wikimedia page
]]
local function getLink(link_type, item, entity, requested_lang)
local link, eLink
link_type = mw.ustring.lower(link_type or 'default')
local item_type = mw.ustring.sub(item, 1, 1) -- first letter prefix of item entity ID: 'Q', 'P' or 'M'
if item_type == 'M' then
eLink='c:Special:EntityPage/'..item
elseif item_type == 'Q' then
eLink='d:'..item -- wikibase entity page link
elseif item_type == 'P' then
eLink='d:Property:'..item -- wikibase entity page link
else
eLink='d:Special:EntityPage/'..item
end
if link_type == '-' or link_type == 'none' then -- allow different link formats
return '' -- no link
elseif link_type == 'wikidata' or item_type == 'M' then
return eLink -- link to wikibase entity page
elseif link_type == 'wikidata talk' and item_type == 'P' then
return 'd:Property talk:'.. item -- link to wikidata property talk page
elseif link_type == 'wikidata talk' then
return 'd:Talk:'..item -- link to wikidata talk page
elseif link_type == 'commons' or link_type == 'commonscat' then
--[[
When link_type == 'commons' we try the following links (in specified order):
1) commons sitelink
2) P373 "Commons Category" claims
3) P935 "Commons Gallery" claims
Since most items have a commons sitelink we never have to look for claims
When link_type == 'commonscat' we try to maximize chances of commons link being a category, so we
try the following links (in specified order):
1) commons sitelink, which is kept if it points to a category
2) P373 "Commons Category" claims
3) commons sitelink (which does not point to a category)
4) P935 "Commons Gallery" claims
Since most pages have a commons sitelink we never have to look for claims
]]
local sLink = getSitelink(item, entity, 'commons') -- look for sitelink to commons
if sLink then
sLink = 'c:'..sLink
if (link_type == 'commons') or (link_type == 'commonscat' and mw.ustring.find(sLink, 'Category:')) then
link = sLink
end
end
if not link then -- try linking to P373 "Commons Category"
local cat = getBestStatementsValue(item, entity, 'P373')
link = (cat ~= nil and 'c:Category:' .. cat) or nil
end
link = link or sLink
if not link then -- try linking to P935 "Commons Gallery"
link = getBestStatementsValue(item, entity, 'P935')
end
return link or eLink
end
local sitelink = getSitelink(item, entity, requested_lang)
if sitelink then
return ':' .. requested_lang .. ':' .. sitelink
end
return eLink
end
--=============================================
--=== External functions ======================
--=============================================
local p = {}
--======================================================================
--=== API functions for use from other Scribunto modules ===============
--======================================================================
--[[
_getLabel
This function returns a label translated to desired language, created based on wikidata
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - desired language of the label
3: link_type - link style. Possible values (case-insensitive): "wikipedia", "wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc" (upper case), "lc" (lower case), "ucfirst" (upper case for the first letter),
"lcfirst" (lower case for the first letter), or 'none' (default)
Error Handling:
Bad q-id will result in displayed error
]]
function p._getLabel(item, lang, link_type, capitalization, show_id, fallback, show_lang, edit, show_qid, article)
local entity, s, link, label, language, desc
local label_lang, requested_lang, langList, output
local local_title, raw_label
-- clean up the input parameters
if type(item) ~= 'string' then -- "item" is not a q-id
entity = item -- "item" must be the entity
if not entity or not entity.id then
return '<strong class="error">Wikidata label: missing or invalid item</strong>'
end
item = entity.id -- look-up q-id
elseif tonumber(item) then -- if it is just the number then add "Q" in front
item = 'Q'..item
end
item = mw.ustring.gsub(mw.ustring.upper(item), 'PROPERTY:P', 'P') -- make all the properties the same and capitalize
if link_type == 'no' then
link_type = 'none'
end
link_type = normalizeLanguageCode(link_type) or 'default'
requested_lang = normalizeLanguageCode(lang)
if not requested_lang then
requested_lang = mw.getCurrentFrame():callParserFunction("int","lang")
requested_lang = normalizeLanguageCode(requested_lang)
end
if not requested_lang then
requested_lang = 'en'
end
langList, requested_lang = getLabelLanguages(requested_lang, fallback)
label, label_lang = getLabelInLanguages(item, entity, langList)
raw_label = label
if label then -- wikitext-escape the label if we have one
label = mw.text.nowiki(label)
end
if not label then -- no labels found, so just show the q-id
label = item
elseif show_id then -- add id
show_id = yesno(show_id,false)
if show_id then
local wordsep = getMessage('Word-separator', requested_lang, ' ')
local id = mw.message.new('parentheses', item):inLanguage(requested_lang):plain()
id = (id~=nil and id) or ('('..item..')') -- in case this module is moved to a project where {{int:parenthesis}} is not set
label = label .. wordsep .. "<small>" .. id .. "</small>"
end
end
label = apply_capitalization(label, capitalization, requested_lang)
-- look for description
desc = getDescriptionInLanguages(item, entity, langList)
if desc and link_type ~= '-' and link_type ~= 'none' then -- wikitext-escape the description if we have one
desc = mw.text.nowiki(desc) -- add description as hover text
label = '<span title="' .. desc .. '">' .. label .. '</span>'
end
local_title = article
if not local_title or local_title == '' then
local_title = getSitelink(item, entity, requested_lang)
end
if (not local_title or local_title == '')
and label_lang == requested_lang
and raw_label then
local_title = raw_label
end
if link_type == '-' or link_type == 'none' then
output = label
elseif link_type == 'wikidata' then
output = '[[d:' .. item .. '|' .. label .. ']]'
elseif link_type == 'olddefault' then
if local_title then
output = '[[' .. local_title .. '|' .. label .. ']]'
else
output = '[[d:' .. item .. '|' .. label .. ']]'
end
elseif canUseLocalLink(link_type, requested_lang, label_lang) and local_title then
output = '[[' .. local_title .. '|' .. label .. ']]'
else
output = label
end
output = output .. renderFallbackMarker(
label_lang,
item,
show_lang,
show_qid,
requested_lang
)
if shouldShowEdit(edit, requested_lang, label_lang) then
output = output .. renderLabelEditLink(item, requested_lang)
end
return output
end
--[[-------------------------------------------------------------------------------
_sitelinks
This function returns a table of sitelinks for a single project organized by language
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - (case-insensitive) one of: "wikipedia", "wikisource", "wikiquote", "wikibooks", "wikinews",
"wikiversity", "wikivoyage", "wiktionary", "commons", "mediawiki", "wikispecies", "wikidata", etc.
Output:
Table of sitelinks with language fields
Output:
Table of sitelinks with language fields
See also
* [https://foundation.wikimedia.org/wiki/Special:SiteMatrix] for the full list of supported interwikis.
* [https://dumps.wikimedia.org/backup-index.html] for the full list of sitecodes (used in database dumps).
]]
function p._sitelinks(item, project)
local entity, sitelink
-- get entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
-- convert from english project name to proproject code
local projLUT = {
wikipedia = 'wiki', commons = 'commonswiki',
foundation = 'foundationwiki', mediawiki = 'mediawikiwiki',
wikispecies = 'specieswiki', wikidata = 'wikidatawiki',
incubator = 'incubatorwiki',oldwikisource = 'sourceswiki',
}
local langLUT = {
-- These are not language codes before the 'wiki' or 'wikiversity' suffix in a sitecode:
foundation = '~', commons = '~',-- they will be skipped
incubator = '~', meta = '~',
mediawiki = '~', sources = '~',
species = '~', beta = '~',
-- Legacy language codes used in sitecodes, remapped to standard Wikimedia language codes:
-- See [https://meta.wikimedia.org/wiki/Special_language_codes](https://meta.wikimedia.org/wiki/Special_language_codes) for details
als = 'gsw', bat_smg = 'sgs',
fiu_vro = 'vro', be_x_old = 'be-tarask',
roa_rup = 'rup', zh_classical = 'lzh',
zh_yue = 'yue', zh_min_nan = 'nan',
zh_wuu = 'wuu', no = 'nb',
}
project = project:lower()
project = projLUT[project] or project -- correct the project name
local n = project:len()
local linkTable = {}
if entity and entity.sitelinks then -- See if entity exists, and that it has sitelinks
for _, sitelink in pairs(entity.sitelinks) do -- loop over all sitelinks
local site = sitelink.site
local m = site:len() - n
local proj = site:sub(m +1) -- project part of the siteID
if proj == project then -- proj matches desired "project"
local lang = site:sub(1, m) -- language part of the siteID
lang = langLUT[lang] or lang:gsub('_','-')
if lang ~= '~' then -- proj matches desired "project"
linkTable[lang] = sitelink.title
end
end
end
end
return linkTable
end
--[[----------------------------------------------------------------
_aliases
This function returns a table of aliases for a single language
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Table of aliases with language fields
]]
function p._aliases(item, lang)
local entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
local aliasTable = {}
if entity and entity.aliases then-- See if there is an entity and that is has aliases
if entity.aliases[lang] then-- See if it has English Aliases
for _, alias in pairs(entity.aliases[lang]) do -- Make a loop around the English aliases
table.insert(aliasTable, alias.value)-- Create a table of English aliases
end
end
end
return aliasTable
end
--======================================================================
--=== Invoke functions for use from wikitext, e.g., templates ==========
---=====================================================================
--[[
getLabel
This function returns a label translated to desired language, created based on wikidata
Usage:
{{#invoke:Wikidata label|getLabel|item=Q...|lang=..|link_style=..|capitalization=..}}
Parameters
1: wikidata's item's q-id (required)
2: language (optional; default {{int:lang}})
3: link_style: "wikipedia" (default), "Wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc", "lc", "tc", "ucfirst", "lcfirst"
Error Handling:
Bad q-id will result in displayed error
]]
function p.getLabel(frame)
local args = getArgs(frame)
return p._getLabel(
args.item,
args.lang,
args.link,
args.capitalization,
args.show_id,
args.fallback,
args.show_lang,
args.edit,
args.show_qid,
args.article
)
end
--[[-------------------------------------------------------------------------------
sitelinks
This function returns a comma separated list of sitelinks for a single project organized by language
Its main purpose is to help with testing of _sitelinks function.
Usage:
{{#invoke:Wikidata label|sitelinks|item=Q...|project=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - "wikipedia" (or "wiki"), "wikisource", "wikiquote", "wikibooks",
"wikinews", "wikiversity", "wikivoyage", "wiktionary", etc.
Output:
comma separated list
]]
function p.sitelinks(frame)
local args = getArgs(frame)
local sitelinks = p._sitelinks(args.item, args.project)
local sitelinkList = {}
for lang, sitelink in pairs(sitelinks) do
table.insert(sitelinkList, (lang=='' and sitelink) or (lang .. ':' .. sitelink))
end
return table.concat(sitelinkList, ', ')
end
--[[----------------------------------------------------------------------------
aliases
This function returns a comma separated list of aliases for a single language
Its main purpose is to help with testing of _aliases function.
Usage:
{{#invoke:Wikidata label|aliases|item=Q...|lang=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Comma separated list
]]
function p.aliases(frame)
local args = getArgs(frame)
return table.concat(p._aliases(args.item, args.lang), ', ')
end
return p
nzko454y8eoylh6cn60p8svoq72opxp
216464
216463
2026-10-04T13:32:28Z
Iketsi
3254
+
216464
Scribunto
text/plain
--[[
__ __ _ _ __ ___ _ _ _ _ _ _ _
| \/ | ___ __| |_ _| | ___ \ \ / (_) | _(_) __| | __ _| |_ __ _ | | __ _| |__ ___| |
| |\/| |/ _ \ / _` | | | | |/ _ (_) \ /\ / /| | |/ / |/ _` |/ _` | __/ _` | | |/ _` | '_ \ / _ \ |
| | | | (_) | (_| | |_| | | __/_ \ V V / | | <| | (_| | (_| | || (_| | | | (_| | |_) | __/ |
|_| |_|\___/ \__,_|\__,_|_|\___(_) \_/\_/ |_|_|\_\_|\__,_|\__,_|\__\__,_| |_|\__,_|_.__/ \___|_|
This module is intended to be the engine behind "Template:Label".
This module was copied from Commons; please ask for changes there.
Please do not modify this code without applying the changes first at
"Module:Wikidata label/sandbox" and testing at
"Module:Wikidata label/testcases".
Authors and maintainers:
* User:Jarekt – original version
* User:Iketsi – improved fallback logic
]]
require('strict') -- used for debugging purposes as it detects cases of unintended global variables
--=============================================
--=== Internal functions ======================
--=============================================
---------------------------------------------------------------------------
-- Normalize input arguments by converting them all to lower case and
-- replacing space with "_" in the argument name. Also empty strings are
-- converted to nils. Arguments are collected from arguments passed to the
-- module and if missing from the template that calls the module
local function getArgs(frame)
local function normalize_input_args(input_args, output_args)
for name, value in pairs( input_args ) do
value = mw.text.trim(value) -- trim whitespaces from the beggining and the end of the string
if value ~= '' then -- nuke empty strings
if type(name)=='string' then
name = string.gsub( string.lower(name), ' ', '_')
end
output_args[name] = value
end
end
return output_args
end
local args = {}
args = normalize_input_args(frame:getParent().args, args)
args = normalize_input_args(frame.args, args)
return args
end
---------------------------------------------------------------------------
-- Function allowing for consistent treatment of boolean-like wikitext input.
-- It works similarly to Module:Yesno but does not assume val is a string
local function yesno(val, default)
if type(val) == 'boolean' then
return val
elseif type(val) == 'number' then
if val == 1 then
return true
elseif val == 0 then
return false
end
elseif type(val) == 'string' then
val = mw.ustring.lower(val) -- put in lower case
if val == 'no' or val == 'n' or val == 'false' or val == '0' then
return false
elseif val == 'yes' or val == 'y' or val == 'true' or val == '1' then
return true
end
end
return default
end
-------------------------------------------------------------------------
-- get message in a given language
-- INPUTS:
-- * msg - name of a message. For it to work [[MediaWiki:msg]] page need to be set up
-- * lang - translate message to language "lang"
-- * default - string to return in case this module is moved to a project where this message is not set
-- OUTPUT:
-- * translated message
local function getMessage(msg, lang, default)
msg = mw.message.new(msg):inLanguage(lang):plain()
return (msg == nil and default) or msg
end
local function normalizeLanguageCode(code)
if type(code) ~= 'string' then
return nil
end
code = mw.text.trim(code)
if code == '' then
return nil
end
return mw.ustring.lower(mw.ustring.gsub(code, '_', '-'))
end
local function appendUniqueLanguage(langList, seen, code)
code = normalizeLanguageCode(code)
if code and not seen[code] then
seen[code] = true
table.insert(langList, code)
end
end
local function getLabelLanguages(lang, fallback)
local requested_lang = normalizeLanguageCode(lang)
local langList = {}
local seen = {}
fallback = normalizeLanguageCode(fallback)
if not fallback then
fallback = 'default'
end
appendUniqueLanguage(langList, seen, requested_lang)
if fallback == 'none' then
return langList, requested_lang
end
if fallback == 'default' then
appendUniqueLanguage(langList, seen, 'mul')
for _, language in ipairs(mw.language.getFallbacksFor(requested_lang)) do
appendUniqueLanguage(langList, seen, language)
end
return langList, requested_lang
end
for _, language in ipairs(mw.text.split(fallback, ',', true)) do
appendUniqueLanguage(langList, seen, language)
end
return langList, requested_lang
end
local function getLabelInLanguages(item, entity, langList)
for _, language in ipairs(langList) do
local label
if entity then
label = entity:getLabel(language)
else
label = mw.wikibase.getLabelByLang(item, language)
end
if label then
return label, language
end
end
end
local function getDescriptionInLanguages(item, entity, langList)
if entity and entity.descriptions then
for _, language in ipairs(langList) do
if entity.descriptions[language] then
return entity.descriptions[language].value
end
end
else
for _, language in ipairs(langList) do
local desc = mw.wikibase.getDescriptionByLang(item, language)
if desc then
return desc
end
end
end
end
local function isFallbackLabel(requested_lang, label_lang)
return label_lang ~= nil and label_lang ~= requested_lang
end
local function isNonMulFallback(requested_lang, label_lang)
return label_lang ~= nil and label_lang ~= requested_lang and label_lang ~= 'mul'
end
local function shouldShowLanguage(show_lang, requested_lang, label_lang)
show_lang = normalizeLanguageCode(show_lang) or 'fallback-not-mul'
if not label_lang then
return false
elseif show_lang == 'always' then
return true
elseif show_lang == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif show_lang == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function shouldShowQid(show_qid, requested_lang, label_lang)
show_qid = normalizeLanguageCode(show_qid) or 'never'
if show_qid == 'always' then
return label_lang ~= nil
elseif show_qid == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif show_qid == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function shouldShowEdit(edit, requested_lang, label_lang)
edit = normalizeLanguageCode(edit) or 'fallback-not-mul'
if edit == 'always' then
return true
elseif edit == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif edit == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function renderFallbackMarker(label_lang, item, show_lang, show_qid, requested_lang)
local show_language = shouldShowLanguage(show_lang, requested_lang, label_lang)
local show_qid = shouldShowQid(show_qid, requested_lang, label_lang)
local marker = {}
if show_qid then
table.insert(marker, '[[d:' .. item .. '|' .. mw.text.nowiki(item) .. ']]')
end
if show_language then
table.insert(marker, mw.text.nowiki(label_lang))
end
if #marker == 0 then
return ''
end
return '<sup class="wikidata-label-marker" lang="en" dir="ltr">('
.. table.concat(marker, ' · ')
.. ')</sup>'
end
local function renderLabelEditLink(item, requested_lang)
local url = 'https://www.wikidata.org/wiki/Special:SetLabelDescriptionAliases/'
.. item
.. '/'
.. mw.uri.encode(requested_lang, 'PATH')
.. '?uselang='
.. mw.uri.encode(requested_lang, 'QUERY')
local tooltip = getMessage('Translate', requested_lang, 'Translate')
tooltip = mw.text.nowiki(tooltip)
return '<span class="plainlinks wikidata-label-edit">['
.. url
.. ' <span title="' .. tooltip .. '">🏷</span>]</span>'
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * lang - language of the project
-- OUTPUT:
-- * sitelink
local function getSitelink(item, entity, lang)
if entity and entity.getSitelink then -- if we have entity then use it
return entity:getSitelink(lang .. 'wiki')
else -- if no entity then use different function
return mw.wikibase.getSitelink(item, lang .. 'wiki')
end
end
local function canUseLocalLink(link_type, requested_lang, label_lang)
link_type = normalizeLanguageCode(link_type) or 'default'
if link_type == 'default' then
return label_lang == requested_lang
elseif link_type == 'mul' then
return label_lang == requested_lang or label_lang == 'mul'
elseif link_type == 'all' then
return label_lang ~= nil
end
return false
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * prop - property for which to return the best statment
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function getBestStatementsValue(item, entity, prop)
local statments
if entity then
statments = entity:getBestStatements(prop)
else
statments = mw.wikibase.getBestStatements(item, prop)
end
for _, statment in ipairs(statments) do
if statment and statment.mainsnak.datavalue.value then
return statment.mainsnak.datavalue.value
end
end
end
---------------------------------------------------------------------------
-- change capitalization of the label
-- INPUTS:
-- * label - label string
-- * capitalization - capitalization to be applied: allowed values are "tc", "lc",
-- "uc", "lcfirst", and "ucfirst". Any other value will return original string
-- * lang - language of the label
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function apply_capitalization(label, capitalization, lang)
capitalization = string.lower(capitalization or 'none')
if capitalization == 'none' then
return label
elseif capitalization == 'uc' then
return mw.language.new(lang):uc(label)
elseif capitalization == 'lc' then
return mw.language.new(lang):lc(label)
elseif capitalization == 'tc' then -- title case
local new_label = {}
for _, word in ipairs(mw.text.split(label, ' ')) do
table.insert(new_label, mw.language.new(lang):ucfirst(word))
end
return table.concat(new_label, ' ')
elseif capitalization == 'ucfirst' then
return mw.language.new(lang):ucfirst(label)
elseif capitalization == 'lcfirst' then
return mw.language.new(lang):lcfirst(label)
end
return label
end
--[[-------------------------------------------------------------------------
get link based on user preference
INPUTS:
* link_type - can be :
* "wikidata" - link to wikidata
* "wikipedia" - link to wikipedia (language dependent)
* "wikidata talk" - link to wikidata talk page
* "commons" - link to commons (try sitelink then commons category then commons gallery)
* "commonscat" - link to commons (try commons category then commons gallery)
* "-" - means no link
* item - entity ID (always provided)
* entity - whole entity. It can be nil if whole entity is not loaded
* langList - language fallback list for preferred language (required)
OUTPUT:
* link - link to the wikimedia page
]]
local function getLink(link_type, item, entity, requested_lang)
local link, eLink
link_type = mw.ustring.lower(link_type or 'default')
local item_type = mw.ustring.sub(item, 1, 1) -- first letter prefix of item entity ID: 'Q', 'P' or 'M'
if item_type == 'M' then
eLink='c:Special:EntityPage/'..item
elseif item_type == 'Q' then
eLink='d:'..item -- wikibase entity page link
elseif item_type == 'P' then
eLink='d:Property:'..item -- wikibase entity page link
else
eLink='d:Special:EntityPage/'..item
end
if link_type == '-' or link_type == 'none' then -- allow different link formats
return '' -- no link
elseif link_type == 'wikidata' or item_type == 'M' then
return eLink -- link to wikibase entity page
elseif link_type == 'wikidata talk' and item_type == 'P' then
return 'd:Property talk:'.. item -- link to wikidata property talk page
elseif link_type == 'wikidata talk' then
return 'd:Talk:'..item -- link to wikidata talk page
elseif link_type == 'commons' or link_type == 'commonscat' then
--[[
When link_type == 'commons' we try the following links (in specified order):
1) commons sitelink
2) P373 "Commons Category" claims
3) P935 "Commons Gallery" claims
Since most items have a commons sitelink we never have to look for claims
When link_type == 'commonscat' we try to maximize chances of commons link being a category, so we
try the following links (in specified order):
1) commons sitelink, which is kept if it points to a category
2) P373 "Commons Category" claims
3) commons sitelink (which does not point to a category)
4) P935 "Commons Gallery" claims
Since most pages have a commons sitelink we never have to look for claims
]]
local sLink = getSitelink(item, entity, 'commons') -- look for sitelink to commons
if sLink then
sLink = 'c:'..sLink
if (link_type == 'commons') or (link_type == 'commonscat' and mw.ustring.find(sLink, 'Category:')) then
link = sLink
end
end
if not link then -- try linking to P373 "Commons Category"
local cat = getBestStatementsValue(item, entity, 'P373')
link = (cat ~= nil and 'c:Category:' .. cat) or nil
end
link = link or sLink
if not link then -- try linking to P935 "Commons Gallery"
link = getBestStatementsValue(item, entity, 'P935')
end
return link or eLink
end
local sitelink = getSitelink(item, entity, requested_lang)
if sitelink then
return ':' .. requested_lang .. ':' .. sitelink
end
return eLink
end
--=============================================
--=== External functions ======================
--=============================================
local p = {}
--======================================================================
--=== API functions for use from other Scribunto modules ===============
--======================================================================
--[[
_getLabel
This function returns a label translated to desired language, created based on wikidata
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - desired language of the label
3: link_type - link style. Possible values (case-insensitive): "wikipedia", "wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc" (upper case), "lc" (lower case), "ucfirst" (upper case for the first letter),
"lcfirst" (lower case for the first letter), or 'none' (default)
Error Handling:
Bad q-id will result in displayed error
]]
function p._getLabel(item, lang, link_type, capitalization, show_id, fallback, show_lang, edit, show_qid, article)
local entity, s, link, label, language, desc
local label_lang, requested_lang, langList, output
local local_title, raw_label
-- clean up the input parameters
if type(item) ~= 'string' then -- "item" is not a q-id
entity = item -- "item" must be the entity
if not entity or not entity.id then
return '<strong class="error">Wikidata label: missing or invalid item</strong>'
end
item = entity.id -- look-up q-id
elseif tonumber(item) then -- if it is just the number then add "Q" in front
item = 'Q'..item
end
item = mw.ustring.gsub(mw.ustring.upper(item), 'PROPERTY:P', 'P') -- make all the properties the same and capitalize
if link_type == 'no' then
link_type = 'none'
end
link_type = normalizeLanguageCode(link_type) or 'default'
requested_lang = normalizeLanguageCode(lang)
if not requested_lang then
requested_lang = mw.getCurrentFrame():callParserFunction("int","lang")
requested_lang = normalizeLanguageCode(requested_lang)
end
if not requested_lang then
requested_lang = 'en'
end
langList, requested_lang = getLabelLanguages(requested_lang, fallback)
label, label_lang = getLabelInLanguages(item, entity, langList)
raw_label = label
if label then -- wikitext-escape the label if we have one
label = mw.text.nowiki(label)
end
if not label then -- no labels found, so just show the q-id
label = item
elseif show_id then -- add id
show_id = yesno(show_id,false)
if show_id then
local wordsep = getMessage('Word-separator', requested_lang, ' ')
local id = mw.message.new('parentheses', item):inLanguage(requested_lang):plain()
id = (id~=nil and id) or ('('..item..')') -- in case this module is moved to a project where {{int:parenthesis}} is not set
label = label .. wordsep .. "<small>" .. id .. "</small>"
end
end
label = apply_capitalization(label, capitalization, requested_lang)
-- look for description
desc = getDescriptionInLanguages(item, entity, langList)
if desc and link_type ~= '-' and link_type ~= 'none' then -- wikitext-escape the description if we have one
desc = mw.text.nowiki(desc) -- add description as hover text
label = '<span title="' .. desc .. '">' .. label .. '</span>'
end
local_title = article
if not local_title or local_title == '' then
local_title = getSitelink(item, entity, requested_lang)
end
if (not local_title or local_title == '')
and raw_label
and (
label_lang == requested_lang
or (link_type == 'mul' and label_lang == 'mul')
)
then
local_title = raw_label
end
if link_type == '-' or link_type == 'none' then
output = label
elseif link_type == 'wikidata' then
output = '[[d:' .. item .. '|' .. label .. ']]'
elseif link_type == 'olddefault' then
if local_title then
output = '[[' .. local_title .. '|' .. label .. ']]'
else
output = '[[d:' .. item .. '|' .. label .. ']]'
end
elseif canUseLocalLink(link_type, requested_lang, label_lang) and local_title then
output = '[[' .. local_title .. '|' .. label .. ']]'
else
output = label
end
output = output .. renderFallbackMarker(
label_lang,
item,
show_lang,
show_qid,
requested_lang
)
if shouldShowEdit(edit, requested_lang, label_lang) then
output = output .. renderLabelEditLink(item, requested_lang)
end
return output
end
--[[-------------------------------------------------------------------------------
_sitelinks
This function returns a table of sitelinks for a single project organized by language
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - (case-insensitive) one of: "wikipedia", "wikisource", "wikiquote", "wikibooks", "wikinews",
"wikiversity", "wikivoyage", "wiktionary", "commons", "mediawiki", "wikispecies", "wikidata", etc.
Output:
Table of sitelinks with language fields
Output:
Table of sitelinks with language fields
See also
* [https://foundation.wikimedia.org/wiki/Special:SiteMatrix] for the full list of supported interwikis.
* [https://dumps.wikimedia.org/backup-index.html] for the full list of sitecodes (used in database dumps).
]]
function p._sitelinks(item, project)
local entity, sitelink
-- get entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
-- convert from english project name to proproject code
local projLUT = {
wikipedia = 'wiki', commons = 'commonswiki',
foundation = 'foundationwiki', mediawiki = 'mediawikiwiki',
wikispecies = 'specieswiki', wikidata = 'wikidatawiki',
incubator = 'incubatorwiki',oldwikisource = 'sourceswiki',
}
local langLUT = {
-- These are not language codes before the 'wiki' or 'wikiversity' suffix in a sitecode:
foundation = '~', commons = '~',-- they will be skipped
incubator = '~', meta = '~',
mediawiki = '~', sources = '~',
species = '~', beta = '~',
-- Legacy language codes used in sitecodes, remapped to standard Wikimedia language codes:
-- See [https://meta.wikimedia.org/wiki/Special_language_codes](https://meta.wikimedia.org/wiki/Special_language_codes) for details
als = 'gsw', bat_smg = 'sgs',
fiu_vro = 'vro', be_x_old = 'be-tarask',
roa_rup = 'rup', zh_classical = 'lzh',
zh_yue = 'yue', zh_min_nan = 'nan',
zh_wuu = 'wuu', no = 'nb',
}
project = project:lower()
project = projLUT[project] or project -- correct the project name
local n = project:len()
local linkTable = {}
if entity and entity.sitelinks then -- See if entity exists, and that it has sitelinks
for _, sitelink in pairs(entity.sitelinks) do -- loop over all sitelinks
local site = sitelink.site
local m = site:len() - n
local proj = site:sub(m +1) -- project part of the siteID
if proj == project then -- proj matches desired "project"
local lang = site:sub(1, m) -- language part of the siteID
lang = langLUT[lang] or lang:gsub('_','-')
if lang ~= '~' then -- proj matches desired "project"
linkTable[lang] = sitelink.title
end
end
end
end
return linkTable
end
--[[----------------------------------------------------------------
_aliases
This function returns a table of aliases for a single language
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Table of aliases with language fields
]]
function p._aliases(item, lang)
local entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
local aliasTable = {}
if entity and entity.aliases then-- See if there is an entity and that is has aliases
if entity.aliases[lang] then-- See if it has English Aliases
for _, alias in pairs(entity.aliases[lang]) do -- Make a loop around the English aliases
table.insert(aliasTable, alias.value)-- Create a table of English aliases
end
end
end
return aliasTable
end
--======================================================================
--=== Invoke functions for use from wikitext, e.g., templates ==========
---=====================================================================
--[[
getLabel
This function returns a label translated to desired language, created based on wikidata
Usage:
{{#invoke:Wikidata label|getLabel|item=Q...|lang=..|link_style=..|capitalization=..}}
Parameters
1: wikidata's item's q-id (required)
2: language (optional; default {{int:lang}})
3: link_style: "wikipedia" (default), "Wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc", "lc", "tc", "ucfirst", "lcfirst"
Error Handling:
Bad q-id will result in displayed error
]]
function p.getLabel(frame)
local args = getArgs(frame)
return p._getLabel(
args.item,
args.lang,
args.link,
args.capitalization,
args.show_id,
args.fallback,
args.show_lang,
args.edit,
args.show_qid,
args.article
)
end
--[[-------------------------------------------------------------------------------
sitelinks
This function returns a comma separated list of sitelinks for a single project organized by language
Its main purpose is to help with testing of _sitelinks function.
Usage:
{{#invoke:Wikidata label|sitelinks|item=Q...|project=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - "wikipedia" (or "wiki"), "wikisource", "wikiquote", "wikibooks",
"wikinews", "wikiversity", "wikivoyage", "wiktionary", etc.
Output:
comma separated list
]]
function p.sitelinks(frame)
local args = getArgs(frame)
local sitelinks = p._sitelinks(args.item, args.project)
local sitelinkList = {}
for lang, sitelink in pairs(sitelinks) do
table.insert(sitelinkList, (lang=='' and sitelink) or (lang .. ':' .. sitelink))
end
return table.concat(sitelinkList, ', ')
end
--[[----------------------------------------------------------------------------
aliases
This function returns a comma separated list of aliases for a single language
Its main purpose is to help with testing of _aliases function.
Usage:
{{#invoke:Wikidata label|aliases|item=Q...|lang=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Comma separated list
]]
function p.aliases(frame)
local args = getArgs(frame)
return table.concat(p._aliases(args.item, args.lang), ', ')
end
return p
9fcu2o2cp6nh0sx4aict3pabusagi17
216475
216464
2026-10-04T18:10:29Z
Iketsi
3254
cat
216475
Scribunto
text/plain
--[[
__ __ _ _ __ ___ _ _ _ _ _ _ _
| \/ | ___ __| |_ _| | ___ \ \ / (_) | _(_) __| | __ _| |_ __ _ | | __ _| |__ ___| |
| |\/| |/ _ \ / _` | | | | |/ _ (_) \ /\ / /| | |/ / |/ _` |/ _` | __/ _` | | |/ _` | '_ \ / _ \ |
| | | | (_) | (_| | |_| | | __/_ \ V V / | | <| | (_| | (_| | || (_| | | | (_| | |_) | __/ |
|_| |_|\___/ \__,_|\__,_|_|\___(_) \_/\_/ |_|_|\_\_|\__,_|\__,_|\__\__,_| |_|\__,_|_.__/ \___|_|
This module is intended to be the engine behind "Template:Label".
This module was copied from Commons; please ask for changes there.
Please do not modify this code without applying the changes first at
"Module:Wikidata label/sandbox" and testing at
"Module:Wikidata label/testcases".
Authors and maintainers:
* User:Jarekt – original version
* User:Iketsi – improved fallback logic
]]
require('strict') -- used for debugging purposes as it detects cases of unintended global variables
--=============================================
--=== Internal functions ======================
--=============================================
---------------------------------------------------------------------------
-- Normalize input arguments by converting them all to lower case and
-- replacing space with "_" in the argument name. Also empty strings are
-- converted to nils. Arguments are collected from arguments passed to the
-- module and if missing from the template that calls the module
local function getArgs(frame)
local function normalize_input_args(input_args, output_args)
for name, value in pairs( input_args ) do
value = mw.text.trim(value) -- trim whitespaces from the beginning and the end of the string
if value ~= '' then -- nuke empty strings
if type(name)=='string' then
name = string.gsub( string.lower(name), ' ', '_')
end
output_args[name] = value
end
end
return output_args
end
local args = {}
args = normalize_input_args(frame:getParent().args, args)
args = normalize_input_args(frame.args, args)
return args
end
---------------------------------------------------------------------------
-- Function allowing for consistent treatment of boolean-like wikitext input.
-- It works similarly to Module:Yesno but does not assume val is a string
local function yesno(val, default)
if type(val) == 'boolean' then
return val
elseif type(val) == 'number' then
if val == 1 then
return true
elseif val == 0 then
return false
end
elseif type(val) == 'string' then
val = mw.ustring.lower(val) -- put in lower case
if val == 'no' or val == 'n' or val == 'false' or val == '0' then
return false
elseif val == 'yes' or val == 'y' or val == 'true' or val == '1' then
return true
end
end
return default
end
-------------------------------------------------------------------------
-- get message in a given language
-- INPUTS:
-- * msg - name of a message. For it to work [[MediaWiki:msg]] page need to be set up
-- * lang - translate message to language "lang"
-- * default - string to return in case this module is moved to a project where this message is not set
-- OUTPUT:
-- * translated message
local function getMessage(msg, lang, default)
msg = mw.message.new(msg):inLanguage(lang):plain()
return (msg == nil and default) or msg
end
local function normalizeLanguageCode(code)
if type(code) ~= 'string' then
return nil
end
code = mw.text.trim(code)
if code == '' then
return nil
end
return mw.ustring.lower(mw.ustring.gsub(code, '_', '-'))
end
local function normalizeWikitextMode(mode)
mode = normalizeLanguageCode(mode) or 'plaintext'
if mode == 'active' then
return 'active'
end
return 'plaintext'
end
local function renderWikitext(value, mode)
if normalizeWikitextMode(mode) == 'active' then
return value
end
return mw.text.nowiki(value)
end
local function appendUniqueLanguage(langList, seen, code)
code = normalizeLanguageCode(code)
if code and not seen[code] then
seen[code] = true
table.insert(langList, code)
end
end
local function getLabelLanguages(lang, fallback)
local requested_lang = normalizeLanguageCode(lang)
local langList = {}
local seen = {}
fallback = normalizeLanguageCode(fallback)
if not fallback then
fallback = 'default'
end
appendUniqueLanguage(langList, seen, requested_lang)
if fallback == 'none' then
return langList, requested_lang
end
if fallback == 'default' then
appendUniqueLanguage(langList, seen, 'mul')
for _, language in ipairs(mw.language.getFallbacksFor(requested_lang)) do
appendUniqueLanguage(langList, seen, language)
end
return langList, requested_lang
end
for _, language in ipairs(mw.text.split(fallback, ',', true)) do
appendUniqueLanguage(langList, seen, language)
end
return langList, requested_lang
end
local function getLabelInLanguages(item, entity, langList)
for _, language in ipairs(langList) do
local label
if entity then
label = entity:getLabel(language)
else
label = mw.wikibase.getLabelByLang(item, language)
end
if label then
return label, language
end
end
end
local function getDescriptionInLanguages(item, entity, langList)
if entity and entity.descriptions then
for _, language in ipairs(langList) do
if entity.descriptions[language] then
return entity.descriptions[language].value
end
end
else
for _, language in ipairs(langList) do
local desc = mw.wikibase.getDescriptionByLang(item, language)
if desc then
return desc
end
end
end
end
local function isFallbackLabel(requested_lang, label_lang)
return label_lang ~= nil and label_lang ~= requested_lang
end
local function isNonMulFallback(requested_lang, label_lang)
return label_lang ~= nil and label_lang ~= requested_lang and label_lang ~= 'mul'
end
local function shouldShowLanguage(show_lang, requested_lang, label_lang)
show_lang = normalizeLanguageCode(show_lang) or 'fallback-not-mul'
if not label_lang then
return false
elseif show_lang == 'always' then
return true
elseif show_lang == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif show_lang == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function shouldShowQid(show_qid, requested_lang, label_lang)
show_qid = normalizeLanguageCode(show_qid) or 'never'
if show_qid == 'always' then
return label_lang ~= nil
elseif show_qid == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif show_qid == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function shouldShowEdit(edit, requested_lang, label_lang)
edit = normalizeLanguageCode(edit) or 'fallback-not-mul'
if edit == 'always' then
return true
elseif edit == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif edit == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function renderFallbackMarker(label_lang, item, show_lang, show_qid, requested_lang)
local show_language = shouldShowLanguage(show_lang, requested_lang, label_lang)
local show_qid = shouldShowQid(show_qid, requested_lang, label_lang)
local marker = {}
if show_qid then
table.insert(marker, '[[d:' .. item .. '|' .. mw.text.nowiki(item) .. ']]')
end
if show_language then
table.insert(marker, mw.text.nowiki(label_lang))
end
if #marker == 0 then
return ''
end
return '<sup class="wikidata-label-marker" lang="en" dir="ltr">('
.. table.concat(marker, ' · ')
.. ')</sup>'
end
local function renderLabelEditLink(item, requested_lang)
local url = 'https://www.wikidata.org/wiki/Special:SetLabelDescriptionAliases/'
.. item
.. '/'
.. mw.uri.encode(requested_lang, 'PATH')
.. '?uselang='
.. mw.uri.encode(requested_lang, 'QUERY')
local tooltip = getMessage('Translate', requested_lang, 'Translate')
tooltip = mw.text.nowiki(tooltip)
return '<span class="plainlinks wikidata-label-edit">['
.. url
.. ' <span title="' .. tooltip .. '">🏷</span>]</span>'
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * lang - language of the project
-- OUTPUT:
-- * sitelink
local function getSitelink(item, entity, lang)
if entity and entity.getSitelink then -- if we have entity then use it
return entity:getSitelink(lang .. 'wiki')
else -- if no entity then use different function
return mw.wikibase.getSitelink(item, lang .. 'wiki')
end
end
local function canUseLocalLink(link_type, requested_lang, label_lang)
link_type = normalizeLanguageCode(link_type) or 'default'
if link_type == 'default' then
return label_lang == requested_lang
elseif link_type == 'mul' then
return label_lang == requested_lang or label_lang == 'mul'
elseif link_type == 'all' then
return label_lang ~= nil
end
return false
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * prop - property for which to return the best statment
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function getBestStatementsValue(item, entity, prop)
local statments
if entity then
statments = entity:getBestStatements(prop)
else
statments = mw.wikibase.getBestStatements(item, prop)
end
for _, statment in ipairs(statments) do
if statment and statment.mainsnak.datavalue.value then
return statment.mainsnak.datavalue.value
end
end
end
---------------------------------------------------------------------------
-- change capitalization of the label
-- INPUTS:
-- * label - label string
-- * capitalization - capitalization to be applied: allowed values are "tc", "lc",
-- "uc", "lcfirst", and "ucfirst". Any other value will return original string
-- * lang - language of the label
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function apply_capitalization(label, capitalization, lang)
capitalization = string.lower(capitalization or 'none')
if capitalization == 'none' then
return label
elseif capitalization == 'uc' then
return mw.language.new(lang):uc(label)
elseif capitalization == 'lc' then
return mw.language.new(lang):lc(label)
elseif capitalization == 'tc' then -- title case
local new_label = {}
for _, word in ipairs(mw.text.split(label, ' ')) do
table.insert(new_label, mw.language.new(lang):ucfirst(word))
end
return table.concat(new_label, ' ')
elseif capitalization == 'ucfirst' then
return mw.language.new(lang):ucfirst(label)
elseif capitalization == 'lcfirst' then
return mw.language.new(lang):lcfirst(label)
end
return label
end
--[[-------------------------------------------------------------------------
get link based on user preference
INPUTS:
* link_type - can be :
* "wikidata" - link to wikidata
* "wikipedia" - link to wikipedia (language dependent)
* "wikidata talk" - link to wikidata talk page
* "commons" - link to commons (try sitelink then commons category then commons gallery)
* "commonscat" - link to commons (try commons category then commons gallery)
* "-" - means no link
* item - entity ID (always provided)
* entity - whole entity. It can be nil if whole entity is not loaded
* langList - language fallback list for preferred language (required)
OUTPUT:
* link - link to the wikimedia page
]]
local function getLink(link_type, item, entity, requested_lang)
local link, eLink
link_type = mw.ustring.lower(link_type or 'default')
local item_type = mw.ustring.sub(item, 1, 1) -- first letter prefix of item entity ID: 'Q', 'P' or 'M'
if item_type == 'M' then
eLink='c:Special:EntityPage/'..item
elseif item_type == 'Q' then
eLink='d:'..item -- wikibase entity page link
elseif item_type == 'P' then
eLink='d:Property:'..item -- wikibase entity page link
else
eLink='d:Special:EntityPage/'..item
end
if link_type == '-' or link_type == 'none' then -- allow different link formats
return '' -- no link
elseif link_type == 'wikidata' or item_type == 'M' then
return eLink -- link to wikibase entity page
elseif link_type == 'wikidata talk' and item_type == 'P' then
return 'd:Property talk:'.. item -- link to wikidata property talk page
elseif link_type == 'wikidata talk' then
return 'd:Talk:'..item -- link to wikidata talk page
elseif link_type == 'commons' or link_type == 'commonscat' then
--[[
When link_type == 'commons' we try the following links (in specified order):
1) commons sitelink
2) P373 "Commons Category" claims
3) P935 "Commons Gallery" claims
Since most items have a commons sitelink we never have to look for claims
When link_type == 'commonscat' we try to maximize chances of commons link being a category, so we
try the following links (in specified order):
1) commons sitelink, which is kept if it points to a category
2) P373 "Commons Category" claims
3) commons sitelink (which does not point to a category)
4) P935 "Commons Gallery" claims
Since most pages have a commons sitelink we never have to look for claims
]]
local sLink = getSitelink(item, entity, 'commons') -- look for sitelink to commons
if sLink then
sLink = 'c:'..sLink
if (link_type == 'commons') or (link_type == 'commonscat' and mw.ustring.find(sLink, 'Category:')) then
link = sLink
end
end
if not link then -- try linking to P373 "Commons Category"
local cat = getBestStatementsValue(item, entity, 'P373')
link = (cat ~= nil and 'c:Category:' .. cat) or nil
end
link = link or sLink
if not link then -- try linking to P935 "Commons Gallery"
link = getBestStatementsValue(item, entity, 'P935')
end
return link or eLink
end
local sitelink = getSitelink(item, entity, requested_lang)
if sitelink then
return ':' .. requested_lang .. ':' .. sitelink
end
return eLink
end
--=============================================
--=== External functions ======================
--=============================================
local p = {}
--======================================================================
--=== API functions for use from other Scribunto modules ===============
--======================================================================
--[[
_getLabel
This function returns a label translated to desired language, created based on wikidata
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - desired language of the label
3: link_type - link style. Possible values (case-insensitive): "wikipedia", "wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc" (upper case), "lc" (lower case), "ucfirst" (upper case for the first letter),
"lcfirst" (lower case for the first letter), or 'none' (default)
Error Handling:
Bad q-id will result in displayed error
]]
function p._getLabel(item, lang, link_type, capitalization, show_id, fallback, show_lang, edit, show_qid, article, category_mode, link_mode, category_label)
local entity, s, link, label, language, desc
local label_lang, requested_lang, langList, output
local local_title, raw_label
-- clean up the input parameters
if type(item) ~= 'string' then -- "item" is not a q-id
entity = item -- "item" must be the entity
if not entity or not entity.id then
return '<strong class="error">Wikidata label: missing or invalid item</strong>'
end
item = entity.id -- look-up q-id
elseif tonumber(item) then -- if it is just the number then add "Q" in front
item = 'Q'..item
end
item = mw.ustring.gsub(mw.ustring.upper(item), 'PROPERTY:P', 'P') -- make all the properties the same and capitalize
if link_type == 'no' then
link_type = 'none'
end
link_type = normalizeLanguageCode(link_type) or 'default'
requested_lang = normalizeLanguageCode(lang)
if not requested_lang then
requested_lang = mw.getCurrentFrame():callParserFunction("int","lang")
requested_lang = normalizeLanguageCode(requested_lang)
end
if not requested_lang then
requested_lang = 'en'
end
langList, requested_lang = getLabelLanguages(requested_lang, fallback)
label, label_lang = getLabelInLanguages(item, entity, langList)
raw_label = label
if label then -- wikitext-escape the label if we have one
label = mw.text.nowiki(label)
end
if not label then -- no labels found, so just show the q-id
label = item
elseif show_id then -- add id
show_id = yesno(show_id,false)
if show_id then
local wordsep = getMessage('Word-separator', requested_lang, ' ')
local id = mw.message.new('parentheses', item):inLanguage(requested_lang):plain()
id = (id~=nil and id) or ('('..item..')') -- in case this module is moved to a project where {{int:parenthesis}} is not set
label = label .. wordsep .. "<small>" .. id .. "</small>"
end
end
label = apply_capitalization(label, capitalization, requested_lang)
-- look for description
desc = getDescriptionInLanguages(item, entity, langList)
if desc and link_type ~= '-' and link_type ~= 'none' then -- wikitext-escape the description if we have one
desc = mw.text.nowiki(desc) -- add description as hover text
label = '<span title="' .. desc .. '">' .. label .. '</span>'
end
local_title = article
if not local_title or local_title == '' then
local_title = getSitelink(item, entity, requested_lang)
end
if (not local_title or local_title == '')
and raw_label
and (
label_lang == requested_lang
or (link_type == 'mul' and label_lang == 'mul')
)
then
local_title = raw_label
end
if category_label and category_label ~= '' then
label = renderWikitext(category_label, category_mode)
end
if link_type == '-' or link_type == 'none' then
output = label
elseif link_type == 'wikidata' then
output = '[[d:' .. item .. '|' .. label .. ']]'
elseif link_type == 'olddefault' then
if local_title then
output = '[[' .. renderWikitext(local_title, link_mode) .. '|' .. label .. ']]'
else
output = '[[d:' .. item .. '|' .. label .. ']]'
end
elseif canUseLocalLink(link_type, requested_lang, label_lang) and local_title then
output = '[[' .. renderWikitext(local_title, link_mode) .. '|' .. label .. ']]'
else
output = label
end
output = output .. renderFallbackMarker(
label_lang,
item,
show_lang,
show_qid,
requested_lang
)
if shouldShowEdit(edit, requested_lang, label_lang) then
output = output .. renderLabelEditLink(item, requested_lang)
end
return output
end
--[[-------------------------------------------------------------------------------
_sitelinks
This function returns a table of sitelinks for a single project organized by language
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - (case-insensitive) one of: "wikipedia", "wikisource", "wikiquote", "wikibooks", "wikinews",
"wikiversity", "wikivoyage", "wiktionary", "commons", "mediawiki", "wikispecies", "wikidata", etc.
Output:
Table of sitelinks with language fields
Output:
Table of sitelinks with language fields
See also
* [https://foundation.wikimedia.org/wiki/Special:SiteMatrix] for the full list of supported interwikis.
* [https://dumps.wikimedia.org/backup-index.html] for the full list of sitecodes (used in database dumps).
]]
function p._sitelinks(item, project)
local entity, sitelink
-- get entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
-- convert from english project name to proproject code
local projLUT = {
wikipedia = 'wiki', commons = 'commonswiki',
foundation = 'foundationwiki', mediawiki = 'mediawikiwiki',
wikispecies = 'specieswiki', wikidata = 'wikidatawiki',
incubator = 'incubatorwiki',oldwikisource = 'sourceswiki',
}
local langLUT = {
-- These are not language codes before the 'wiki' or 'wikiversity' suffix in a sitecode:
foundation = '~', commons = '~',-- they will be skipped
incubator = '~', meta = '~',
mediawiki = '~', sources = '~',
species = '~', beta = '~',
-- Legacy language codes used in sitecodes, remapped to standard Wikimedia language codes:
-- See [https://meta.wikimedia.org/wiki/Special_language_codes](https://meta.wikimedia.org/wiki/Special_language_codes) for details
als = 'gsw', bat_smg = 'sgs',
fiu_vro = 'vro', be_x_old = 'be-tarask',
roa_rup = 'rup', zh_classical = 'lzh',
zh_yue = 'yue', zh_min_nan = 'nan',
zh_wuu = 'wuu', no = 'nb',
}
project = project:lower()
project = projLUT[project] or project -- correct the project name
local n = project:len()
local linkTable = {}
if entity and entity.sitelinks then -- See if entity exists, and that it has sitelinks
for _, sitelink in pairs(entity.sitelinks) do -- loop over all sitelinks
local site = sitelink.site
local m = site:len() - n
local proj = site:sub(m +1) -- project part of the siteID
if proj == project then -- proj matches desired "project"
local lang = site:sub(1, m) -- language part of the siteID
lang = langLUT[lang] or lang:gsub('_','-')
if lang ~= '~' then -- proj matches desired "project"
linkTable[lang] = sitelink.title
end
end
end
end
return linkTable
end
--[[----------------------------------------------------------------
_aliases
This function returns a table of aliases for a single language
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Table of aliases with language fields
]]
function p._aliases(item, lang)
local entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
local aliasTable = {}
if entity and entity.aliases then-- See if there is an entity and that it has aliases
if entity.aliases[lang] then-- See if it has English Aliases
for _, alias in pairs(entity.aliases[lang]) do -- Make a loop around the English aliases
table.insert(aliasTable, alias.value)-- Create a table of English aliases
end
end
end
return aliasTable
end
--======================================================================
--=== Invoke functions for use from wikitext, e.g., templates ==========
---=====================================================================
--[[
getLabel
This function returns a label translated to desired language, created based on wikidata
Usage:
{{#invoke:Wikidata label|getLabel|item=Q...|lang=..|link_style=..|capitalization=..}}
Parameters
1: wikidata's item's q-id (required)
2: language (optional; default {{int:lang}})
3: link_style: "wikipedia" (default), "Wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc", "lc", "tc", "ucfirst", "lcfirst"
Error Handling:
Bad q-id will result in displayed error
]]
function p.getLabel(frame)
local args = getArgs(frame)
return p._getLabel(
args.item,
args.lang,
args.link,
args.capitalization,
args.show_id,
args.fallback,
args.show_lang,
args.edit,
args.show_qid,
args.article,
args.category_mode,
args.link_mode,
args.category_label
)
end
--[[-------------------------------------------------------------------------------
sitelinks
This function returns a comma separated list of sitelinks for a single project organized by language
Its main purpose is to help with testing of _sitelinks function.
Usage:
{{#invoke:Wikidata label|sitelinks|item=Q...|project=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - "wikipedia" (or "wiki"), "wikisource", "wikiquote", "wikibooks",
"wikinews", "wikiversity", "wikivoyage", "wiktionary", etc.
Output:
comma separated list
]]
function p.sitelinks(frame)
local args = getArgs(frame)
local sitelinks = p._sitelinks(args.item, args.project)
local sitelinkList = {}
for lang, sitelink in pairs(sitelinks) do
table.insert(sitelinkList, (lang=='' and sitelink) or (lang .. ':' .. sitelink))
end
return table.concat(sitelinkList, ', ')
end
--[[----------------------------------------------------------------------------
aliases
This function returns a comma separated list of aliases for a single language
Its main purpose is to help with testing of _aliases function.
Usage:
{{#invoke:Wikidata label|aliases|item=Q...|lang=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Comma separated list
]]
function p.aliases(frame)
local args = getArgs(frame)
return table.concat(p._aliases(args.item, args.lang), ', ')
end
return p
2w2gs97hwip24g42z193k0aqkx1lgtq
216476
216475
2026-10-04T18:25:09Z
Iketsi
3254
test
216476
Scribunto
text/plain
--[[
__ __ _ _ __ ___ _ _ _ _ _ _ _
| \/ | ___ __| |_ _| | ___ \ \ / (_) | _(_) __| | __ _| |_ __ _ | | __ _| |__ ___| |
| |\/| |/ _ \ / _` | | | | |/ _ (_) \ /\ / /| | |/ / |/ _` |/ _` | __/ _` | | |/ _` | '_ \ / _ \ |
| | | | (_) | (_| | |_| | | __/_ \ V V / | | <| | (_| | (_| | || (_| | | | (_| | |_) | __/ |
|_| |_|\___/ \__,_|\__,_|_|\___(_) \_/\_/ |_|_|\_\_|\__,_|\__,_|\__\__,_| |_|\__,_|_.__/ \___|_|
This module is intended to be the engine behind "Template:Label".
This module was copied from Commons; please ask for changes there.
Please do not modify this code without applying the changes first at
"Module:Wikidata label/sandbox" and testing at
"Module:Wikidata label/testcases".
Authors and maintainers:
* User:Jarekt – original version
* User:Iketsi – improved fallback logic
]]
require('strict') -- used for debugging purposes as it detects cases of unintended global variables
--=============================================
--=== Internal functions ======================
--=============================================
---------------------------------------------------------------------------
-- Normalize input arguments by converting them all to lower case and
-- replacing space with "_" in the argument name. Also empty strings are
-- converted to nils. Arguments are collected from arguments passed to the
-- module and if missing from the template that calls the module
local function getArgs(frame)
local function normalize_input_args(input_args, output_args)
for name, value in pairs( input_args ) do
value = mw.text.trim(value) -- trim whitespaces from the beginning and the end of the string
if value ~= '' then -- nuke empty strings
if type(name)=='string' then
name = string.gsub( string.lower(name), ' ', '_')
end
output_args[name] = value
end
end
return output_args
end
local args = {}
args = normalize_input_args(frame:getParent().args, args)
args = normalize_input_args(frame.args, args)
return args
end
---------------------------------------------------------------------------
-- Function allowing for consistent treatment of boolean-like wikitext input.
-- It works similarly to Module:Yesno but does not assume val is a string
local function yesno(val, default)
if type(val) == 'boolean' then
return val
elseif type(val) == 'number' then
if val == 1 then
return true
elseif val == 0 then
return false
end
elseif type(val) == 'string' then
val = mw.ustring.lower(val) -- put in lower case
if val == 'no' or val == 'n' or val == 'false' or val == '0' then
return false
elseif val == 'yes' or val == 'y' or val == 'true' or val == '1' then
return true
end
end
return default
end
-------------------------------------------------------------------------
-- get message in a given language
-- INPUTS:
-- * msg - name of a message. For it to work [[MediaWiki:msg]] page need to be set up
-- * lang - translate message to language "lang"
-- * default - string to return in case this module is moved to a project where this message is not set
-- OUTPUT:
-- * translated message
local function getMessage(msg, lang, default)
msg = mw.message.new(msg):inLanguage(lang):plain()
return (msg == nil and default) or msg
end
local function normalizeLanguageCode(code)
if type(code) ~= 'string' then
return nil
end
code = mw.text.trim(code)
if code == '' then
return nil
end
return mw.ustring.lower(mw.ustring.gsub(code, '_', '-'))
end
local function normalizeCategoryMode(mode)
mode = normalizeLanguageCode(mode) or 'plaintext'
if mode == 'active' then
return 'active'
end
return 'plaintext'
end
local function getPlaintextLinkTarget(value)
local title = mw.title.new(value)
if title then
return title.prefixedText
end
return nil
end
local function appendUniqueLanguage(langList, seen, code)
code = normalizeLanguageCode(code)
if code and not seen[code] then
seen[code] = true
table.insert(langList, code)
end
end
local function getLabelLanguages(lang, fallback)
local requested_lang = normalizeLanguageCode(lang)
local langList = {}
local seen = {}
fallback = normalizeLanguageCode(fallback)
if not fallback then
fallback = 'default'
end
appendUniqueLanguage(langList, seen, requested_lang)
if fallback == 'none' then
return langList, requested_lang
end
if fallback == 'default' then
appendUniqueLanguage(langList, seen, 'mul')
for _, language in ipairs(mw.language.getFallbacksFor(requested_lang)) do
appendUniqueLanguage(langList, seen, language)
end
return langList, requested_lang
end
for _, language in ipairs(mw.text.split(fallback, ',', true)) do
appendUniqueLanguage(langList, seen, language)
end
return langList, requested_lang
end
local function getLabelInLanguages(item, entity, langList)
for _, language in ipairs(langList) do
local label
if entity then
label = entity:getLabel(language)
else
label = mw.wikibase.getLabelByLang(item, language)
end
if label then
return label, language
end
end
end
local function getDescriptionInLanguages(item, entity, langList)
if entity and entity.descriptions then
for _, language in ipairs(langList) do
if entity.descriptions[language] then
return entity.descriptions[language].value
end
end
else
for _, language in ipairs(langList) do
local desc = mw.wikibase.getDescriptionByLang(item, language)
if desc then
return desc
end
end
end
end
local function isFallbackLabel(requested_lang, label_lang)
return label_lang ~= nil and label_lang ~= requested_lang
end
local function isNonMulFallback(requested_lang, label_lang)
return label_lang ~= nil and label_lang ~= requested_lang and label_lang ~= 'mul'
end
local function shouldShowLanguage(show_lang, requested_lang, label_lang)
show_lang = normalizeLanguageCode(show_lang) or 'fallback-not-mul'
if not label_lang then
return false
elseif show_lang == 'always' then
return true
elseif show_lang == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif show_lang == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function shouldShowQid(show_qid, requested_lang, label_lang)
show_qid = normalizeLanguageCode(show_qid) or 'never'
if show_qid == 'always' then
return label_lang ~= nil
elseif show_qid == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif show_qid == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function shouldShowEdit(edit, requested_lang, label_lang)
edit = normalizeLanguageCode(edit) or 'fallback-not-mul'
if edit == 'always' then
return true
elseif edit == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif edit == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function renderFallbackMarker(label_lang, item, show_lang, show_qid, requested_lang)
local show_language = shouldShowLanguage(show_lang, requested_lang, label_lang)
local show_qid = shouldShowQid(show_qid, requested_lang, label_lang)
local marker = {}
if show_qid then
table.insert(marker, '[[d:' .. item .. '|' .. mw.text.nowiki(item) .. ']]')
end
if show_language then
table.insert(marker, mw.text.nowiki(label_lang))
end
if #marker == 0 then
return ''
end
return '<sup class="wikidata-label-marker" lang="en" dir="ltr">('
.. table.concat(marker, ' · ')
.. ')</sup>'
end
local function renderLabelEditLink(item, requested_lang)
local url = 'https://www.wikidata.org/wiki/Special:SetLabelDescriptionAliases/'
.. item
.. '/'
.. mw.uri.encode(requested_lang, 'PATH')
.. '?uselang='
.. mw.uri.encode(requested_lang, 'QUERY')
local tooltip = getMessage('Translate', requested_lang, 'Translate')
tooltip = mw.text.nowiki(tooltip)
return '<span class="plainlinks wikidata-label-edit">['
.. url
.. ' <span title="' .. tooltip .. '">🏷</span>]</span>'
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * lang - language of the project
-- OUTPUT:
-- * sitelink
local function getSitelink(item, entity, lang)
if entity and entity.getSitelink then -- if we have entity then use it
return entity:getSitelink(lang .. 'wiki')
else -- if no entity then use different function
return mw.wikibase.getSitelink(item, lang .. 'wiki')
end
end
local function canUseLocalLink(link_type, requested_lang, label_lang)
link_type = normalizeLanguageCode(link_type) or 'default'
if link_type == 'default' then
return label_lang == requested_lang
elseif link_type == 'mul' then
return label_lang == requested_lang or label_lang == 'mul'
elseif link_type == 'all' then
return label_lang ~= nil
end
return false
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * prop - property for which to return the best statment
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function getBestStatementsValue(item, entity, prop)
local statments
if entity then
statments = entity:getBestStatements(prop)
else
statments = mw.wikibase.getBestStatements(item, prop)
end
for _, statment in ipairs(statments) do
if statment and statment.mainsnak.datavalue.value then
return statment.mainsnak.datavalue.value
end
end
end
---------------------------------------------------------------------------
-- change capitalization of the label
-- INPUTS:
-- * label - label string
-- * capitalization - capitalization to be applied: allowed values are "tc", "lc",
-- "uc", "lcfirst", and "ucfirst". Any other value will return original string
-- * lang - language of the label
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function apply_capitalization(label, capitalization, lang)
capitalization = string.lower(capitalization or 'none')
if capitalization == 'none' then
return label
elseif capitalization == 'uc' then
return mw.language.new(lang):uc(label)
elseif capitalization == 'lc' then
return mw.language.new(lang):lc(label)
elseif capitalization == 'tc' then -- title case
local new_label = {}
for _, word in ipairs(mw.text.split(label, ' ')) do
table.insert(new_label, mw.language.new(lang):ucfirst(word))
end
return table.concat(new_label, ' ')
elseif capitalization == 'ucfirst' then
return mw.language.new(lang):ucfirst(label)
elseif capitalization == 'lcfirst' then
return mw.language.new(lang):lcfirst(label)
end
return label
end
--[[-------------------------------------------------------------------------
get link based on user preference
INPUTS:
* link_type - can be :
* "wikidata" - link to wikidata
* "wikipedia" - link to wikipedia (language dependent)
* "wikidata talk" - link to wikidata talk page
* "commons" - link to commons (try sitelink then commons category then commons gallery)
* "commonscat" - link to commons (try commons category then commons gallery)
* "-" - means no link
* item - entity ID (always provided)
* entity - whole entity. It can be nil if whole entity is not loaded
* langList - language fallback list for preferred language (required)
OUTPUT:
* link - link to the wikimedia page
]]
local function getLink(link_type, item, entity, requested_lang)
local link, eLink
link_type = mw.ustring.lower(link_type or 'default')
local item_type = mw.ustring.sub(item, 1, 1) -- first letter prefix of item entity ID: 'Q', 'P' or 'M'
if item_type == 'M' then
eLink='c:Special:EntityPage/'..item
elseif item_type == 'Q' then
eLink='d:'..item -- wikibase entity page link
elseif item_type == 'P' then
eLink='d:Property:'..item -- wikibase entity page link
else
eLink='d:Special:EntityPage/'..item
end
if link_type == '-' or link_type == 'none' then -- allow different link formats
return '' -- no link
elseif link_type == 'wikidata' or item_type == 'M' then
return eLink -- link to wikibase entity page
elseif link_type == 'wikidata talk' and item_type == 'P' then
return 'd:Property talk:'.. item -- link to wikidata property talk page
elseif link_type == 'wikidata talk' then
return 'd:Talk:'..item -- link to wikidata talk page
elseif link_type == 'commons' or link_type == 'commonscat' then
--[[
When link_type == 'commons' we try the following links (in specified order):
1) commons sitelink
2) P373 "Commons Category" claims
3) P935 "Commons Gallery" claims
Since most items have a commons sitelink we never have to look for claims
When link_type == 'commonscat' we try to maximize chances of commons link being a category, so we
try the following links (in specified order):
1) commons sitelink, which is kept if it points to a category
2) P373 "Commons Category" claims
3) commons sitelink (which does not point to a category)
4) P935 "Commons Gallery" claims
Since most pages have a commons sitelink we never have to look for claims
]]
local sLink = getSitelink(item, entity, 'commons') -- look for sitelink to commons
if sLink then
sLink = 'c:'..sLink
if (link_type == 'commons') or (link_type == 'commonscat' and mw.ustring.find(sLink, 'Category:')) then
link = sLink
end
end
if not link then -- try linking to P373 "Commons Category"
local cat = getBestStatementsValue(item, entity, 'P373')
link = (cat ~= nil and 'c:Category:' .. cat) or nil
end
link = link or sLink
if not link then -- try linking to P935 "Commons Gallery"
link = getBestStatementsValue(item, entity, 'P935')
end
return link or eLink
end
local sitelink = getSitelink(item, entity, requested_lang)
if sitelink then
return ':' .. requested_lang .. ':' .. sitelink
end
return eLink
end
--=============================================
--=== External functions ======================
--=============================================
local p = {}
--======================================================================
--=== API functions for use from other Scribunto modules ===============
--======================================================================
--[[
_getLabel
This function returns a label translated to desired language, created based on wikidata
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - desired language of the label
3: link_type - link style. Possible values (case-insensitive): "wikipedia", "wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc" (upper case), "lc" (lower case), "ucfirst" (upper case for the first letter),
"lcfirst" (lower case for the first letter), or 'none' (default)
Error Handling:
Bad q-id will result in displayed error
]]
function p._getLabel(item, lang, link_type, capitalization, show_id, fallback, show_lang, edit, show_qid, article, category_mode, category_label)
local entity, s, link, label, language, desc
local label_lang, requested_lang, langList, output
local local_title, raw_label, local_label
-- clean up the input parameters
if type(item) ~= 'string' then -- "item" is not a q-id
entity = item -- "item" must be the entity
if not entity or not entity.id then
return '<strong class="error">Wikidata label: missing or invalid item</strong>'
end
item = entity.id -- look-up q-id
elseif tonumber(item) then -- if it is just the number then add "Q" in front
item = 'Q'..item
end
item = mw.ustring.gsub(mw.ustring.upper(item), 'PROPERTY:P', 'P') -- make all the properties the same and capitalize
if link_type == 'no' then
link_type = 'none'
end
link_type = normalizeLanguageCode(link_type) or 'default'
requested_lang = normalizeLanguageCode(lang)
if not requested_lang then
requested_lang = mw.getCurrentFrame():callParserFunction("int","lang")
requested_lang = normalizeLanguageCode(requested_lang)
end
if not requested_lang then
requested_lang = 'en'
end
langList, requested_lang = getLabelLanguages(requested_lang, fallback)
label, label_lang = getLabelInLanguages(item, entity, langList)
raw_label = label
if label then -- wikitext-escape the label if we have one
label = mw.text.nowiki(label)
end
if not label then -- no labels found, so just show the q-id
label = item
elseif show_id then -- add id
show_id = yesno(show_id,false)
if show_id then
local wordsep = getMessage('Word-separator', requested_lang, ' ')
local id = mw.message.new('parentheses', item):inLanguage(requested_lang):plain()
id = (id~=nil and id) or ('('..item..')') -- in case this module is moved to a project where {{int:parenthesis}} is not set
label = label .. wordsep .. "<small>" .. id .. "</small>"
end
end
label = apply_capitalization(label, capitalization, requested_lang)
-- look for description
desc = getDescriptionInLanguages(item, entity, langList)
if desc and link_type ~= '-' and link_type ~= 'none' then -- wikitext-escape the description if we have one
desc = mw.text.nowiki(desc) -- add description as hover text
label = '<span title="' .. desc .. '">' .. label .. '</span>'
end
local_title = article
if not local_title or local_title == '' then
local_title = getSitelink(item, entity, requested_lang)
end
if (not local_title or local_title == '')
and raw_label
and (
label_lang == requested_lang
or (link_type == 'mul' and label_lang == 'mul')
)
then
local_title = raw_label
end
local_label = label
if category_label and category_label ~= '' then
if normalizeCategoryMode(category_mode) == 'active' then
local_label = category_label
else
local_label = mw.text.nowiki(category_label)
end
end
if local_title and normalizeCategoryMode(category_mode) == 'plaintext' then
local_title = getPlaintextLinkTarget(local_title)
end
if link_type == '-' or link_type == 'none' then
output = label
elseif link_type == 'wikidata' then
output = '[[d:' .. item .. '|' .. label .. ']]'
elseif link_type == 'olddefault' then
if local_title then
output = '[[' .. local_title .. '|' .. local_label .. ']]'
else
output = '[[d:' .. item .. '|' .. label .. ']]'
end
elseif canUseLocalLink(link_type, requested_lang, label_lang) and local_title then
output = '[[' .. local_title .. '|' .. local_label .. ']]'
else
output = label
end
output = output .. renderFallbackMarker(
label_lang,
item,
show_lang,
show_qid,
requested_lang
)
if shouldShowEdit(edit, requested_lang, label_lang) then
output = output .. renderLabelEditLink(item, requested_lang)
end
return output
end
--[[-------------------------------------------------------------------------------
_sitelinks
This function returns a table of sitelinks for a single project organized by language
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - (case-insensitive) one of: "wikipedia", "wikisource", "wikiquote", "wikibooks", "wikinews",
"wikiversity", "wikivoyage", "wiktionary", "commons", "mediawiki", "wikispecies", "wikidata", etc.
Output:
Table of sitelinks with language fields
Output:
Table of sitelinks with language fields
See also
* [https://foundation.wikimedia.org/wiki/Special:SiteMatrix] for the full list of supported interwikis.
* [https://dumps.wikimedia.org/backup-index.html] for the full list of sitecodes (used in database dumps).
]]
function p._sitelinks(item, project)
local entity, sitelink
-- get entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
-- convert from english project name to proproject code
local projLUT = {
wikipedia = 'wiki', commons = 'commonswiki',
foundation = 'foundationwiki', mediawiki = 'mediawikiwiki',
wikispecies = 'specieswiki', wikidata = 'wikidatawiki',
incubator = 'incubatorwiki',oldwikisource = 'sourceswiki',
}
local langLUT = {
-- These are not language codes before the 'wiki' or 'wikiversity' suffix in a sitecode:
foundation = '~', commons = '~',-- they will be skipped
incubator = '~', meta = '~',
mediawiki = '~', sources = '~',
species = '~', beta = '~',
-- Legacy language codes used in sitecodes, remapped to standard Wikimedia language codes:
-- See [https://meta.wikimedia.org/wiki/Special_language_codes](https://meta.wikimedia.org/wiki/Special_language_codes) for details
als = 'gsw', bat_smg = 'sgs',
fiu_vro = 'vro', be_x_old = 'be-tarask',
roa_rup = 'rup', zh_classical = 'lzh',
zh_yue = 'yue', zh_min_nan = 'nan',
zh_wuu = 'wuu', no = 'nb',
}
project = project:lower()
project = projLUT[project] or project -- correct the project name
local n = project:len()
local linkTable = {}
if entity and entity.sitelinks then -- See if entity exists, and that it has sitelinks
for _, sitelink in pairs(entity.sitelinks) do -- loop over all sitelinks
local site = sitelink.site
local m = site:len() - n
local proj = site:sub(m +1) -- project part of the siteID
if proj == project then -- proj matches desired "project"
local lang = site:sub(1, m) -- language part of the siteID
lang = langLUT[lang] or lang:gsub('_','-')
if lang ~= '~' then -- proj matches desired "project"
linkTable[lang] = sitelink.title
end
end
end
end
return linkTable
end
--[[----------------------------------------------------------------
_aliases
This function returns a table of aliases for a single language
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Table of aliases with language fields
]]
function p._aliases(item, lang)
local entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
local aliasTable = {}
if entity and entity.aliases then-- See if there is an entity and that it has aliases
if entity.aliases[lang] then-- See if it has English Aliases
for _, alias in pairs(entity.aliases[lang]) do -- Make a loop around the English aliases
table.insert(aliasTable, alias.value)-- Create a table of English aliases
end
end
end
return aliasTable
end
--======================================================================
--=== Invoke functions for use from wikitext, e.g., templates ==========
---=====================================================================
--[[
getLabel
This function returns a label translated to desired language, created based on wikidata
Usage:
{{#invoke:Wikidata label|getLabel|item=Q...|lang=..|link_style=..|capitalization=..}}
Parameters
1: wikidata's item's q-id (required)
2: language (optional; default {{int:lang}})
3: link_style: "wikipedia" (default), "Wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc", "lc", "tc", "ucfirst", "lcfirst"
Error Handling:
Bad q-id will result in displayed error
]]
function p.getLabel(frame)
local args = getArgs(frame)
return p._getLabel(
args.item,
args.lang,
args.link,
args.capitalization,
args.show_id,
args.fallback,
args.show_lang,
args.edit,
args.show_qid,
args.article,
args.category_mode,
args.category_label
)
end
--[[-------------------------------------------------------------------------------
sitelinks
This function returns a comma separated list of sitelinks for a single project organized by language
Its main purpose is to help with testing of _sitelinks function.
Usage:
{{#invoke:Wikidata label|sitelinks|item=Q...|project=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - "wikipedia" (or "wiki"), "wikisource", "wikiquote", "wikibooks",
"wikinews", "wikiversity", "wikivoyage", "wiktionary", etc.
Output:
comma separated list
]]
function p.sitelinks(frame)
local args = getArgs(frame)
local sitelinks = p._sitelinks(args.item, args.project)
local sitelinkList = {}
for lang, sitelink in pairs(sitelinks) do
table.insert(sitelinkList, (lang=='' and sitelink) or (lang .. ':' .. sitelink))
end
return table.concat(sitelinkList, ', ')
end
--[[----------------------------------------------------------------------------
aliases
This function returns a comma separated list of aliases for a single language
Its main purpose is to help with testing of _aliases function.
Usage:
{{#invoke:Wikidata label|aliases|item=Q...|lang=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Comma separated list
]]
function p.aliases(frame)
local args = getArgs(frame)
return table.concat(p._aliases(args.item, args.lang), ', ')
end
return p
k3v1k4aotdboc4ofsx41ctjqnigc3ac
216477
216476
2026-10-04T18:30:02Z
Iketsi
3254
test
216477
Scribunto
text/plain
--[[
__ __ _ _ __ ___ _ _ _ _ _ _ _
| \/ | ___ __| |_ _| | ___ \ \ / (_) | _(_) __| | __ _| |_ __ _ | | __ _| |__ ___| |
| |\/| |/ _ \ / _` | | | | |/ _ (_) \ /\ / /| | |/ / |/ _` |/ _` | __/ _` | | |/ _` | '_ \ / _ \ |
| | | | (_) | (_| | |_| | | __/_ \ V V / | | <| | (_| | (_| | || (_| | | | (_| | |_) | __/ |
|_| |_|\___/ \__,_|\__,_|_|\___(_) \_/\_/ |_|_|\_\_|\__,_|\__,_|\__\__,_| |_|\__,_|_.__/ \___|_|
This module is intended to be the engine behind "Template:Label".
This module was copied from Commons; please ask for changes there.
Please do not modify this code without applying the changes first at
"Module:Wikidata label/sandbox" and testing at
"Module:Wikidata label/testcases".
Authors and maintainers:
* User:Jarekt – original version
* User:Iketsi – improved fallback logic
]]
require('strict') -- used for debugging purposes as it detects cases of unintended global variables
--=============================================
--=== Internal functions ======================
--=============================================
---------------------------------------------------------------------------
-- Normalize input arguments by converting them all to lower case and
-- replacing space with "_" in the argument name. Also empty strings are
-- converted to nils. Arguments are collected from arguments passed to the
-- module and if missing from the template that calls the module
local function getArgs(frame)
local function normalize_input_args(input_args, output_args)
for name, value in pairs( input_args ) do
value = mw.text.trim(value) -- trim whitespaces from the beginning and the end of the string
if value ~= '' then -- nuke empty strings
if type(name)=='string' then
name = string.gsub( string.lower(name), ' ', '_')
end
output_args[name] = value
end
end
return output_args
end
local args = {}
args = normalize_input_args(frame:getParent().args, args)
args = normalize_input_args(frame.args, args)
return args
end
---------------------------------------------------------------------------
-- Function allowing for consistent treatment of boolean-like wikitext input.
-- It works similarly to Module:Yesno but does not assume val is a string
local function yesno(val, default)
if type(val) == 'boolean' then
return val
elseif type(val) == 'number' then
if val == 1 then
return true
elseif val == 0 then
return false
end
elseif type(val) == 'string' then
val = mw.ustring.lower(val) -- put in lower case
if val == 'no' or val == 'n' or val == 'false' or val == '0' then
return false
elseif val == 'yes' or val == 'y' or val == 'true' or val == '1' then
return true
end
end
return default
end
-------------------------------------------------------------------------
-- get message in a given language
-- INPUTS:
-- * msg - name of a message. For it to work [[MediaWiki:msg]] page need to be set up
-- * lang - translate message to language "lang"
-- * default - string to return in case this module is moved to a project where this message is not set
-- OUTPUT:
-- * translated message
local function getMessage(msg, lang, default)
msg = mw.message.new(msg):inLanguage(lang):plain()
return (msg == nil and default) or msg
end
local function normalizeLanguageCode(code)
if type(code) ~= 'string' then
return nil
end
code = mw.text.trim(code)
if code == '' then
return nil
end
return mw.ustring.lower(mw.ustring.gsub(code, '_', '-'))
end
local function normalizeCategoryMode(mode)
mode = normalizeLanguageCode(mode) or 'plaintext'
if mode == 'active' then
return 'active'
end
return 'plaintext'
end
local function getPlaintextLinkTarget(value)
local title = mw.title.new(value)
if title then
return title.prefixedText, title.namespace == 14
end
return nil, false
end
local function getActiveLinkTarget(value)
local title = mw.title.new(value)
if title and title.namespace == 14 then
return ':' .. value
end
return value
end
local function appendUniqueLanguage(langList, seen, code)
code = normalizeLanguageCode(code)
if code and not seen[code] then
seen[code] = true
table.insert(langList, code)
end
end
local function getLabelLanguages(lang, fallback)
local requested_lang = normalizeLanguageCode(lang)
local langList = {}
local seen = {}
fallback = normalizeLanguageCode(fallback)
if not fallback then
fallback = 'default'
end
appendUniqueLanguage(langList, seen, requested_lang)
if fallback == 'none' then
return langList, requested_lang
end
if fallback == 'default' then
appendUniqueLanguage(langList, seen, 'mul')
for _, language in ipairs(mw.language.getFallbacksFor(requested_lang)) do
appendUniqueLanguage(langList, seen, language)
end
return langList, requested_lang
end
for _, language in ipairs(mw.text.split(fallback, ',', true)) do
appendUniqueLanguage(langList, seen, language)
end
return langList, requested_lang
end
local function getLabelInLanguages(item, entity, langList)
for _, language in ipairs(langList) do
local label
if entity then
label = entity:getLabel(language)
else
label = mw.wikibase.getLabelByLang(item, language)
end
if label then
return label, language
end
end
end
local function getDescriptionInLanguages(item, entity, langList)
if entity and entity.descriptions then
for _, language in ipairs(langList) do
if entity.descriptions[language] then
return entity.descriptions[language].value
end
end
else
for _, language in ipairs(langList) do
local desc = mw.wikibase.getDescriptionByLang(item, language)
if desc then
return desc
end
end
end
end
local function isFallbackLabel(requested_lang, label_lang)
return label_lang ~= nil and label_lang ~= requested_lang
end
local function isNonMulFallback(requested_lang, label_lang)
return label_lang ~= nil and label_lang ~= requested_lang and label_lang ~= 'mul'
end
local function shouldShowLanguage(show_lang, requested_lang, label_lang)
show_lang = normalizeLanguageCode(show_lang) or 'fallback-not-mul'
if not label_lang then
return false
elseif show_lang == 'always' then
return true
elseif show_lang == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif show_lang == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function shouldShowQid(show_qid, requested_lang, label_lang)
show_qid = normalizeLanguageCode(show_qid) or 'never'
if show_qid == 'always' then
return label_lang ~= nil
elseif show_qid == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif show_qid == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function shouldShowEdit(edit, requested_lang, label_lang)
edit = normalizeLanguageCode(edit) or 'fallback-not-mul'
if edit == 'always' then
return true
elseif edit == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif edit == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function renderFallbackMarker(label_lang, item, show_lang, show_qid, requested_lang)
local show_language = shouldShowLanguage(show_lang, requested_lang, label_lang)
local show_qid = shouldShowQid(show_qid, requested_lang, label_lang)
local marker = {}
if show_qid then
table.insert(marker, '[[d:' .. item .. '|' .. mw.text.nowiki(item) .. ']]')
end
if show_language then
table.insert(marker, mw.text.nowiki(label_lang))
end
if #marker == 0 then
return ''
end
return '<sup class="wikidata-label-marker" lang="en" dir="ltr">('
.. table.concat(marker, ' · ')
.. ')</sup>'
end
local function renderLabelEditLink(item, requested_lang)
local url = 'https://www.wikidata.org/wiki/Special:SetLabelDescriptionAliases/'
.. item
.. '/'
.. mw.uri.encode(requested_lang, 'PATH')
.. '?uselang='
.. mw.uri.encode(requested_lang, 'QUERY')
local tooltip = getMessage('Translate', requested_lang, 'Translate')
tooltip = mw.text.nowiki(tooltip)
return '<span class="plainlinks wikidata-label-edit">['
.. url
.. ' <span title="' .. tooltip .. '">🏷</span>]</span>'
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * lang - language of the project
-- OUTPUT:
-- * sitelink
local function getSitelink(item, entity, lang)
if entity and entity.getSitelink then -- if we have entity then use it
return entity:getSitelink(lang .. 'wiki')
else -- if no entity then use different function
return mw.wikibase.getSitelink(item, lang .. 'wiki')
end
end
local function canUseLocalLink(link_type, requested_lang, label_lang)
link_type = normalizeLanguageCode(link_type) or 'default'
if link_type == 'default' then
return label_lang == requested_lang
elseif link_type == 'mul' then
return label_lang == requested_lang or label_lang == 'mul'
elseif link_type == 'all' then
return label_lang ~= nil
end
return false
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * prop - property for which to return the best statment
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function getBestStatementsValue(item, entity, prop)
local statments
if entity then
statments = entity:getBestStatements(prop)
else
statments = mw.wikibase.getBestStatements(item, prop)
end
for _, statment in ipairs(statments) do
if statment and statment.mainsnak.datavalue.value then
return statment.mainsnak.datavalue.value
end
end
end
---------------------------------------------------------------------------
-- change capitalization of the label
-- INPUTS:
-- * label - label string
-- * capitalization - capitalization to be applied: allowed values are "tc", "lc",
-- "uc", "lcfirst", and "ucfirst". Any other value will return original string
-- * lang - language of the label
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function apply_capitalization(label, capitalization, lang)
capitalization = string.lower(capitalization or 'none')
if capitalization == 'none' then
return label
elseif capitalization == 'uc' then
return mw.language.new(lang):uc(label)
elseif capitalization == 'lc' then
return mw.language.new(lang):lc(label)
elseif capitalization == 'tc' then -- title case
local new_label = {}
for _, word in ipairs(mw.text.split(label, ' ')) do
table.insert(new_label, mw.language.new(lang):ucfirst(word))
end
return table.concat(new_label, ' ')
elseif capitalization == 'ucfirst' then
return mw.language.new(lang):ucfirst(label)
elseif capitalization == 'lcfirst' then
return mw.language.new(lang):lcfirst(label)
end
return label
end
--[[-------------------------------------------------------------------------
get link based on user preference
INPUTS:
* link_type - can be :
* "wikidata" - link to wikidata
* "wikipedia" - link to wikipedia (language dependent)
* "wikidata talk" - link to wikidata talk page
* "commons" - link to commons (try sitelink then commons category then commons gallery)
* "commonscat" - link to commons (try commons category then commons gallery)
* "-" - means no link
* item - entity ID (always provided)
* entity - whole entity. It can be nil if whole entity is not loaded
* langList - language fallback list for preferred language (required)
OUTPUT:
* link - link to the wikimedia page
]]
local function getLink(link_type, item, entity, requested_lang)
local link, eLink
link_type = mw.ustring.lower(link_type or 'default')
local item_type = mw.ustring.sub(item, 1, 1) -- first letter prefix of item entity ID: 'Q', 'P' or 'M'
if item_type == 'M' then
eLink='c:Special:EntityPage/'..item
elseif item_type == 'Q' then
eLink='d:'..item -- wikibase entity page link
elseif item_type == 'P' then
eLink='d:Property:'..item -- wikibase entity page link
else
eLink='d:Special:EntityPage/'..item
end
if link_type == '-' or link_type == 'none' then -- allow different link formats
return '' -- no link
elseif link_type == 'wikidata' or item_type == 'M' then
return eLink -- link to wikibase entity page
elseif link_type == 'wikidata talk' and item_type == 'P' then
return 'd:Property talk:'.. item -- link to wikidata property talk page
elseif link_type == 'wikidata talk' then
return 'd:Talk:'..item -- link to wikidata talk page
elseif link_type == 'commons' or link_type == 'commonscat' then
--[[
When link_type == 'commons' we try the following links (in specified order):
1) commons sitelink
2) P373 "Commons Category" claims
3) P935 "Commons Gallery" claims
Since most items have a commons sitelink we never have to look for claims
When link_type == 'commonscat' we try to maximize chances of commons link being a category, so we
try the following links (in specified order):
1) commons sitelink, which is kept if it points to a category
2) P373 "Commons Category" claims
3) commons sitelink (which does not point to a category)
4) P935 "Commons Gallery" claims
Since most pages have a commons sitelink we never have to look for claims
]]
local sLink = getSitelink(item, entity, 'commons') -- look for sitelink to commons
if sLink then
sLink = 'c:'..sLink
if (link_type == 'commons') or (link_type == 'commonscat' and mw.ustring.find(sLink, 'Category:')) then
link = sLink
end
end
if not link then -- try linking to P373 "Commons Category"
local cat = getBestStatementsValue(item, entity, 'P373')
link = (cat ~= nil and 'c:Category:' .. cat) or nil
end
link = link or sLink
if not link then -- try linking to P935 "Commons Gallery"
link = getBestStatementsValue(item, entity, 'P935')
end
return link or eLink
end
local sitelink = getSitelink(item, entity, requested_lang)
if sitelink then
return ':' .. requested_lang .. ':' .. sitelink
end
return eLink
end
--=============================================
--=== External functions ======================
--=============================================
local p = {}
--======================================================================
--=== API functions for use from other Scribunto modules ===============
--======================================================================
--[[
_getLabel
This function returns a label translated to desired language, created based on wikidata
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - desired language of the label
3: link_type - link style. Possible values (case-insensitive): "wikipedia", "wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc" (upper case), "lc" (lower case), "ucfirst" (upper case for the first letter),
"lcfirst" (lower case for the first letter), or 'none' (default)
Error Handling:
Bad q-id will result in displayed error
]]
function p._getLabel(item, lang, link_type, capitalization, show_id, fallback, show_lang, edit, show_qid, article, category_mode, category_label)
local entity, s, link, label, language, desc
local label_lang, requested_lang, langList, output
local local_title, raw_label, local_label, is_category
-- clean up the input parameters
if type(item) ~= 'string' then -- "item" is not a q-id
entity = item -- "item" must be the entity
if not entity or not entity.id then
return '<strong class="error">Wikidata label: missing or invalid item</strong>'
end
item = entity.id -- look-up q-id
elseif tonumber(item) then -- if it is just the number then add "Q" in front
item = 'Q'..item
end
item = mw.ustring.gsub(mw.ustring.upper(item), 'PROPERTY:P', 'P') -- make all the properties the same and capitalize
if link_type == 'no' then
link_type = 'none'
end
link_type = normalizeLanguageCode(link_type) or 'default'
requested_lang = normalizeLanguageCode(lang)
if not requested_lang then
requested_lang = mw.getCurrentFrame():callParserFunction("int","lang")
requested_lang = normalizeLanguageCode(requested_lang)
end
if not requested_lang then
requested_lang = 'en'
end
langList, requested_lang = getLabelLanguages(requested_lang, fallback)
label, label_lang = getLabelInLanguages(item, entity, langList)
raw_label = label
if label then -- wikitext-escape the label if we have one
label = mw.text.nowiki(label)
end
if not label then -- no labels found, so just show the q-id
label = item
elseif show_id then -- add id
show_id = yesno(show_id,false)
if show_id then
local wordsep = getMessage('Word-separator', requested_lang, ' ')
local id = mw.message.new('parentheses', item):inLanguage(requested_lang):plain()
id = (id~=nil and id) or ('('..item..')') -- in case this module is moved to a project where {{int:parenthesis}} is not set
label = label .. wordsep .. "<small>" .. id .. "</small>"
end
end
label = apply_capitalization(label, capitalization, requested_lang)
-- look for description
desc = getDescriptionInLanguages(item, entity, langList)
if desc and link_type ~= '-' and link_type ~= 'none' then -- wikitext-escape the description if we have one
desc = mw.text.nowiki(desc) -- add description as hover text
label = '<span title="' .. desc .. '">' .. label .. '</span>'
end
local_title = article
if not local_title or local_title == '' then
local_title = getSitelink(item, entity, requested_lang)
end
if (not local_title or local_title == '')
and raw_label
and (
label_lang == requested_lang
or (link_type == 'mul' and label_lang == 'mul')
)
then
local_title = raw_label
end
local_label = label
if category_label and category_label ~= '' then
if normalizeCategoryMode(category_mode) == 'active' then
local_label = category_label
else
local_label = mw.text.nowiki(category_label)
end
end
if local_title then
if normalizeCategoryMode(category_mode) == 'active' then
local_title = getActiveLinkTarget(local_title)
else
local_title, is_category = getPlaintextLinkTarget(local_title)
if local_title and is_category then
local_title = ':' .. local_title
end
end
end
if link_type == '-' or link_type == 'none' then
output = label
elseif link_type == 'wikidata' then
output = '[[d:' .. item .. '|' .. label .. ']]'
elseif link_type == 'olddefault' then
if local_title then
output = '[[' .. local_title .. '|' .. local_label .. ']]'
else
output = '[[d:' .. item .. '|' .. label .. ']]'
end
elseif canUseLocalLink(link_type, requested_lang, label_lang) and local_title then
output = '[[' .. local_title .. '|' .. local_label .. ']]'
else
output = label
end
output = output .. renderFallbackMarker(
label_lang,
item,
show_lang,
show_qid,
requested_lang
)
if shouldShowEdit(edit, requested_lang, label_lang) then
output = output .. renderLabelEditLink(item, requested_lang)
end
return output
end
--[[-------------------------------------------------------------------------------
_sitelinks
This function returns a table of sitelinks for a single project organized by language
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - (case-insensitive) one of: "wikipedia", "wikisource", "wikiquote", "wikibooks", "wikinews",
"wikiversity", "wikivoyage", "wiktionary", "commons", "mediawiki", "wikispecies", "wikidata", etc.
Output:
Table of sitelinks with language fields
Output:
Table of sitelinks with language fields
See also
* [https://foundation.wikimedia.org/wiki/Special:SiteMatrix] for the full list of supported interwikis.
* [https://dumps.wikimedia.org/backup-index.html] for the full list of sitecodes (used in database dumps).
]]
function p._sitelinks(item, project)
local entity, sitelink
-- get entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
-- convert from english project name to proproject code
local projLUT = {
wikipedia = 'wiki', commons = 'commonswiki',
foundation = 'foundationwiki', mediawiki = 'mediawikiwiki',
wikispecies = 'specieswiki', wikidata = 'wikidatawiki',
incubator = 'incubatorwiki',oldwikisource = 'sourceswiki',
}
local langLUT = {
-- These are not language codes before the 'wiki' or 'wikiversity' suffix in a sitecode:
foundation = '~', commons = '~',-- they will be skipped
incubator = '~', meta = '~',
mediawiki = '~', sources = '~',
species = '~', beta = '~',
-- Legacy language codes used in sitecodes, remapped to standard Wikimedia language codes:
-- See [https://meta.wikimedia.org/wiki/Special_language_codes](https://meta.wikimedia.org/wiki/Special_language_codes) for details
als = 'gsw', bat_smg = 'sgs',
fiu_vro = 'vro', be_x_old = 'be-tarask',
roa_rup = 'rup', zh_classical = 'lzh',
zh_yue = 'yue', zh_min_nan = 'nan',
zh_wuu = 'wuu', no = 'nb',
}
project = project:lower()
project = projLUT[project] or project -- correct the project name
local n = project:len()
local linkTable = {}
if entity and entity.sitelinks then -- See if entity exists, and that it has sitelinks
for _, sitelink in pairs(entity.sitelinks) do -- loop over all sitelinks
local site = sitelink.site
local m = site:len() - n
local proj = site:sub(m +1) -- project part of the siteID
if proj == project then -- proj matches desired "project"
local lang = site:sub(1, m) -- language part of the siteID
lang = langLUT[lang] or lang:gsub('_','-')
if lang ~= '~' then -- proj matches desired "project"
linkTable[lang] = sitelink.title
end
end
end
end
return linkTable
end
--[[----------------------------------------------------------------
_aliases
This function returns a table of aliases for a single language
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Table of aliases with language fields
]]
function p._aliases(item, lang)
local entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
local aliasTable = {}
if entity and entity.aliases then-- See if there is an entity and that it has aliases
if entity.aliases[lang] then-- See if it has English Aliases
for _, alias in pairs(entity.aliases[lang]) do -- Make a loop around the English aliases
table.insert(aliasTable, alias.value)-- Create a table of English aliases
end
end
end
return aliasTable
end
--======================================================================
--=== Invoke functions for use from wikitext, e.g., templates ==========
---=====================================================================
--[[
getLabel
This function returns a label translated to desired language, created based on wikidata
Usage:
{{#invoke:Wikidata label|getLabel|item=Q...|lang=..|link_style=..|capitalization=..}}
Parameters
1: wikidata's item's q-id (required)
2: language (optional; default {{int:lang}})
3: link_style: "wikipedia" (default), "Wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc", "lc", "tc", "ucfirst", "lcfirst"
Error Handling:
Bad q-id will result in displayed error
]]
function p.getLabel(frame)
local args = getArgs(frame)
return p._getLabel(
args.item,
args.lang,
args.link,
args.capitalization,
args.show_id,
args.fallback,
args.show_lang,
args.edit,
args.show_qid,
args.article,
args.category_mode,
args.category_label
)
end
--[[-------------------------------------------------------------------------------
sitelinks
This function returns a comma separated list of sitelinks for a single project organized by language
Its main purpose is to help with testing of _sitelinks function.
Usage:
{{#invoke:Wikidata label|sitelinks|item=Q...|project=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - "wikipedia" (or "wiki"), "wikisource", "wikiquote", "wikibooks",
"wikinews", "wikiversity", "wikivoyage", "wiktionary", etc.
Output:
comma separated list
]]
function p.sitelinks(frame)
local args = getArgs(frame)
local sitelinks = p._sitelinks(args.item, args.project)
local sitelinkList = {}
for lang, sitelink in pairs(sitelinks) do
table.insert(sitelinkList, (lang=='' and sitelink) or (lang .. ':' .. sitelink))
end
return table.concat(sitelinkList, ', ')
end
--[[----------------------------------------------------------------------------
aliases
This function returns a comma separated list of aliases for a single language
Its main purpose is to help with testing of _aliases function.
Usage:
{{#invoke:Wikidata label|aliases|item=Q...|lang=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Comma separated list
]]
function p.aliases(frame)
local args = getArgs(frame)
return table.concat(p._aliases(args.item, args.lang), ', ')
end
return p
6zyv5z56uu9pmeciux53z2xliupdlo2
216478
216477
2026-10-04T18:39:25Z
Iketsi
3254
test
216478
Scribunto
text/plain
--[[
__ __ _ _ __ ___ _ _ _ _ _ _ _
| \/ | ___ __| |_ _| | ___ \ \ / (_) | _(_) __| | __ _| |_ __ _ | | __ _| |__ ___| |
| |\/| |/ _ \ / _` | | | | |/ _ (_) \ /\ / /| | |/ / |/ _` |/ _` | __/ _` | | |/ _` | '_ \ / _ \ |
| | | | (_) | (_| | |_| | | __/_ \ V V / | | <| | (_| | (_| | || (_| | | | (_| | |_) | __/ |
|_| |_|\___/ \__,_|\__,_|_|\___(_) \_/\_/ |_|_|\_\_|\__,_|\__,_|\__\__,_| |_|\__,_|_.__/ \___|_|
This module is intended to be the engine behind "Template:Label".
This module was copied from Commons; please ask for changes there.
Please do not modify this code without applying the changes first at
"Module:Wikidata label/sandbox" and testing at
"Module:Wikidata label/testcases".
Authors and maintainers:
* User:Jarekt – original version
* User:Iketsi – improved fallback logic
]]
require('strict') -- used for debugging purposes as it detects cases of unintended global variables
--=============================================
--=== Internal functions ======================
--=============================================
---------------------------------------------------------------------------
-- Normalize input arguments by converting them all to lower case and
-- replacing space with "_" in the argument name. Also empty strings are
-- converted to nils. Arguments are collected from arguments passed to the
-- module and if missing from the template that calls the module
local function getArgs(frame)
local function normalize_input_args(input_args, output_args)
for name, value in pairs( input_args ) do
value = mw.text.trim(value) -- trim whitespaces from the beginning and the end of the string
if value ~= '' then -- nuke empty strings
if type(name)=='string' then
name = string.gsub( string.lower(name), ' ', '_')
end
output_args[name] = value
end
end
return output_args
end
local args = {}
args = normalize_input_args(frame:getParent().args, args)
args = normalize_input_args(frame.args, args)
return args
end
---------------------------------------------------------------------------
-- Function allowing for consistent treatment of boolean-like wikitext input.
-- It works similarly to Module:Yesno but does not assume val is a string
local function yesno(val, default)
if type(val) == 'boolean' then
return val
elseif type(val) == 'number' then
if val == 1 then
return true
elseif val == 0 then
return false
end
elseif type(val) == 'string' then
val = mw.ustring.lower(val) -- put in lower case
if val == 'no' or val == 'n' or val == 'false' or val == '0' then
return false
elseif val == 'yes' or val == 'y' or val == 'true' or val == '1' then
return true
end
end
return default
end
-------------------------------------------------------------------------
-- get message in a given language
-- INPUTS:
-- * msg - name of a message. For it to work [[MediaWiki:msg]] page need to be set up
-- * lang - translate message to language "lang"
-- * default - string to return in case this module is moved to a project where this message is not set
-- OUTPUT:
-- * translated message
local function getMessage(msg, lang, default)
msg = mw.message.new(msg):inLanguage(lang):plain()
return (msg == nil and default) or msg
end
local function normalizeLanguageCode(code)
if type(code) ~= 'string' then
return nil
end
code = mw.text.trim(code)
if code == '' then
return nil
end
return mw.ustring.lower(mw.ustring.gsub(code, '_', '-'))
end
local function normalizeCategoryMode(mode)
mode = normalizeLanguageCode(mode) or 'link'
if mode == 'plaintext' or mode == 'active' or mode == 'link' then
return mode
end
return 'link'
end
local function renderCategory(category, category_label, category_mode)
category_mode = normalizeCategoryMode(category_mode)
if category_mode == 'plaintext' then
return mw.text.nowiki(category)
end
if category_label and category_label ~= '' then
if category_mode == 'active' then
return '[[' .. category .. '|' .. category_label .. ']]'
end
return '[[:' .. category .. '|' .. category_label .. ']]'
end
if category_mode == 'active' then
return '[[' .. category .. ']]'
end
return '[[:' .. category .. ']]'
end
local function appendUniqueLanguage(langList, seen, code)
code = normalizeLanguageCode(code)
if code and not seen[code] then
seen[code] = true
table.insert(langList, code)
end
end
local function getLabelLanguages(lang, fallback)
local requested_lang = normalizeLanguageCode(lang)
local langList = {}
local seen = {}
fallback = normalizeLanguageCode(fallback)
if not fallback then
fallback = 'default'
end
appendUniqueLanguage(langList, seen, requested_lang)
if fallback == 'none' then
return langList, requested_lang
end
if fallback == 'default' then
appendUniqueLanguage(langList, seen, 'mul')
for _, language in ipairs(mw.language.getFallbacksFor(requested_lang)) do
appendUniqueLanguage(langList, seen, language)
end
return langList, requested_lang
end
for _, language in ipairs(mw.text.split(fallback, ',', true)) do
appendUniqueLanguage(langList, seen, language)
end
return langList, requested_lang
end
local function getLabelInLanguages(item, entity, langList)
for _, language in ipairs(langList) do
local label
if entity then
label = entity:getLabel(language)
else
label = mw.wikibase.getLabelByLang(item, language)
end
if label then
return label, language
end
end
end
local function getDescriptionInLanguages(item, entity, langList)
if entity and entity.descriptions then
for _, language in ipairs(langList) do
if entity.descriptions[language] then
return entity.descriptions[language].value
end
end
else
for _, language in ipairs(langList) do
local desc = mw.wikibase.getDescriptionByLang(item, language)
if desc then
return desc
end
end
end
end
local function isFallbackLabel(requested_lang, label_lang)
return label_lang ~= nil and label_lang ~= requested_lang
end
local function isNonMulFallback(requested_lang, label_lang)
return label_lang ~= nil and label_lang ~= requested_lang and label_lang ~= 'mul'
end
local function shouldShowLanguage(show_lang, requested_lang, label_lang)
show_lang = normalizeLanguageCode(show_lang) or 'fallback-not-mul'
if not label_lang then
return false
elseif show_lang == 'always' then
return true
elseif show_lang == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif show_lang == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function shouldShowQid(show_qid, requested_lang, label_lang)
show_qid = normalizeLanguageCode(show_qid) or 'never'
if show_qid == 'always' then
return label_lang ~= nil
elseif show_qid == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif show_qid == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function shouldShowEdit(edit, requested_lang, label_lang)
edit = normalizeLanguageCode(edit) or 'fallback-not-mul'
if edit == 'always' then
return true
elseif edit == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif edit == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function renderFallbackMarker(label_lang, item, show_lang, show_qid, requested_lang)
local show_language = shouldShowLanguage(show_lang, requested_lang, label_lang)
local show_qid = shouldShowQid(show_qid, requested_lang, label_lang)
local marker = {}
if show_qid then
table.insert(marker, '[[d:' .. item .. '|' .. mw.text.nowiki(item) .. ']]')
end
if show_language then
table.insert(marker, mw.text.nowiki(label_lang))
end
if #marker == 0 then
return ''
end
return '<sup class="wikidata-label-marker" lang="en" dir="ltr">('
.. table.concat(marker, ' · ')
.. ')</sup>'
end
local function renderLabelEditLink(item, requested_lang)
local url = 'https://www.wikidata.org/wiki/Special:SetLabelDescriptionAliases/'
.. item
.. '/'
.. mw.uri.encode(requested_lang, 'PATH')
.. '?uselang='
.. mw.uri.encode(requested_lang, 'QUERY')
local tooltip = getMessage('Translate', requested_lang, 'Translate')
tooltip = mw.text.nowiki(tooltip)
return '<span class="plainlinks wikidata-label-edit">['
.. url
.. ' <span title="' .. tooltip .. '">🏷</span>]</span>'
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * lang - language of the project
-- OUTPUT:
-- * sitelink
local function getSitelink(item, entity, lang)
if entity and entity.getSitelink then -- if we have entity then use it
return entity:getSitelink(lang .. 'wiki')
else -- if no entity then use different function
return mw.wikibase.getSitelink(item, lang .. 'wiki')
end
end
local function canUseLocalLink(link_type, requested_lang, label_lang)
link_type = normalizeLanguageCode(link_type) or 'default'
if link_type == 'default' then
return label_lang == requested_lang
elseif link_type == 'mul' then
return label_lang == requested_lang or label_lang == 'mul'
elseif link_type == 'all' then
return label_lang ~= nil
end
return false
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * prop - property for which to return the best statment
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function getBestStatementsValue(item, entity, prop)
local statments
if entity then
statments = entity:getBestStatements(prop)
else
statments = mw.wikibase.getBestStatements(item, prop)
end
for _, statment in ipairs(statments) do
if statment and statment.mainsnak.datavalue.value then
return statment.mainsnak.datavalue.value
end
end
end
---------------------------------------------------------------------------
-- change capitalization of the label
-- INPUTS:
-- * label - label string
-- * capitalization - capitalization to be applied: allowed values are "tc", "lc",
-- "uc", "lcfirst", and "ucfirst". Any other value will return original string
-- * lang - language of the label
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function apply_capitalization(label, capitalization, lang)
capitalization = string.lower(capitalization or 'none')
if capitalization == 'none' then
return label
elseif capitalization == 'uc' then
return mw.language.new(lang):uc(label)
elseif capitalization == 'lc' then
return mw.language.new(lang):lc(label)
elseif capitalization == 'tc' then -- title case
local new_label = {}
for _, word in ipairs(mw.text.split(label, ' ')) do
table.insert(new_label, mw.language.new(lang):ucfirst(word))
end
return table.concat(new_label, ' ')
elseif capitalization == 'ucfirst' then
return mw.language.new(lang):ucfirst(label)
elseif capitalization == 'lcfirst' then
return mw.language.new(lang):lcfirst(label)
end
return label
end
--[[-------------------------------------------------------------------------
get link based on user preference
INPUTS:
* link_type - can be :
* "wikidata" - link to wikidata
* "wikipedia" - link to wikipedia (language dependent)
* "wikidata talk" - link to wikidata talk page
* "commons" - link to commons (try sitelink then commons category then commons gallery)
* "commonscat" - link to commons (try commons category then commons gallery)
* "-" - means no link
* item - entity ID (always provided)
* entity - whole entity. It can be nil if whole entity is not loaded
* langList - language fallback list for preferred language (required)
OUTPUT:
* link - link to the wikimedia page
]]
local function getLink(link_type, item, entity, requested_lang)
local link, eLink
link_type = mw.ustring.lower(link_type or 'default')
local item_type = mw.ustring.sub(item, 1, 1) -- first letter prefix of item entity ID: 'Q', 'P' or 'M'
if item_type == 'M' then
eLink='c:Special:EntityPage/'..item
elseif item_type == 'Q' then
eLink='d:'..item -- wikibase entity page link
elseif item_type == 'P' then
eLink='d:Property:'..item -- wikibase entity page link
else
eLink='d:Special:EntityPage/'..item
end
if link_type == '-' or link_type == 'none' then -- allow different link formats
return '' -- no link
elseif link_type == 'wikidata' or item_type == 'M' then
return eLink -- link to wikibase entity page
elseif link_type == 'wikidata talk' and item_type == 'P' then
return 'd:Property talk:'.. item -- link to wikidata property talk page
elseif link_type == 'wikidata talk' then
return 'd:Talk:'..item -- link to wikidata talk page
elseif link_type == 'commons' or link_type == 'commonscat' then
--[[
When link_type == 'commons' we try the following links (in specified order):
1) commons sitelink
2) P373 "Commons Category" claims
3) P935 "Commons Gallery" claims
Since most items have a commons sitelink we never have to look for claims
When link_type == 'commonscat' we try to maximize chances of commons link being a category, so we
try the following links (in specified order):
1) commons sitelink, which is kept if it points to a category
2) P373 "Commons Category" claims
3) commons sitelink (which does not point to a category)
4) P935 "Commons Gallery" claims
Since most pages have a commons sitelink we never have to look for claims
]]
local sLink = getSitelink(item, entity, 'commons') -- look for sitelink to commons
if sLink then
sLink = 'c:'..sLink
if (link_type == 'commons') or (link_type == 'commonscat' and mw.ustring.find(sLink, 'Category:')) then
link = sLink
end
end
if not link then -- try linking to P373 "Commons Category"
local cat = getBestStatementsValue(item, entity, 'P373')
link = (cat ~= nil and 'c:Category:' .. cat) or nil
end
link = link or sLink
if not link then -- try linking to P935 "Commons Gallery"
link = getBestStatementsValue(item, entity, 'P935')
end
return link or eLink
end
local sitelink = getSitelink(item, entity, requested_lang)
if sitelink then
return ':' .. requested_lang .. ':' .. sitelink
end
return eLink
end
--=============================================
--=== External functions ======================
--=============================================
local p = {}
--======================================================================
--=== API functions for use from other Scribunto modules ===============
--======================================================================
--[[
_getLabel
This function returns a label translated to desired language, created based on wikidata
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - desired language of the label
3: link_type - link style. Possible values (case-insensitive): "wikipedia", "wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc" (upper case), "lc" (lower case), "ucfirst" (upper case for the first letter),
"lcfirst" (lower case for the first letter), or 'none' (default)
Error Handling:
Bad q-id will result in displayed error
]]
function p._getLabel(item, lang, link_type, capitalization, show_id, fallback, show_lang, edit, show_qid, article, category_mode, category_label)
local entity, s, link, label, language, desc
local label_lang, requested_lang, langList, output
local local_title, raw_label
-- clean up the input parameters
if type(item) ~= 'string' then -- "item" is not a q-id
entity = item -- "item" must be the entity
if not entity or not entity.id then
return '<strong class="error">Wikidata label: missing or invalid item</strong>'
end
item = entity.id -- look-up q-id
elseif tonumber(item) then -- if it is just the number then add "Q" in front
item = 'Q'..item
end
item = mw.ustring.gsub(mw.ustring.upper(item), 'PROPERTY:P', 'P') -- make all the properties the same and capitalize
if link_type == 'no' then
link_type = 'none'
end
link_type = normalizeLanguageCode(link_type) or 'default'
requested_lang = normalizeLanguageCode(lang)
if not requested_lang then
requested_lang = mw.getCurrentFrame():callParserFunction("int","lang")
requested_lang = normalizeLanguageCode(requested_lang)
end
if not requested_lang then
requested_lang = 'en'
end
langList, requested_lang = getLabelLanguages(requested_lang, fallback)
label, label_lang = getLabelInLanguages(item, entity, langList)
raw_label = label
if label then -- wikitext-escape the label if we have one
label = mw.text.nowiki(label)
end
if not label then -- no labels found, so just show the q-id
label = item
elseif show_id then -- add id
show_id = yesno(show_id,false)
if show_id then
local wordsep = getMessage('Word-separator', requested_lang, ' ')
local id = mw.message.new('parentheses', item):inLanguage(requested_lang):plain()
id = (id~=nil and id) or ('('..item..')') -- in case this module is moved to a project where {{int:parenthesis}} is not set
label = label .. wordsep .. "<small>" .. id .. "</small>"
end
end
label = apply_capitalization(label, capitalization, requested_lang)
-- look for description
desc = getDescriptionInLanguages(item, entity, langList)
if desc and link_type ~= '-' and link_type ~= 'none' then -- wikitext-escape the description if we have one
desc = mw.text.nowiki(desc) -- add description as hover text
label = '<span title="' .. desc .. '">' .. label .. '</span>'
end
local_title = article
if not local_title or local_title == '' then
local_title = getSitelink(item, entity, requested_lang)
end
if (not local_title or local_title == '')
and raw_label
and (
label_lang == requested_lang
or (link_type == 'mul' and label_lang == 'mul')
)
then
local_title = raw_label
end
if local_title and mw.ustring.sub(local_title, 1, 9) == 'Category:' then
output = renderCategory(local_title, category_label or raw_label, category_mode)
elseif link_type == '-' or link_type == 'none' then
output = label
elseif link_type == 'wikidata' then
output = '[[d:' .. item .. '|' .. label .. ']]'
elseif link_type == 'olddefault' then
if local_title then
output = '[[' .. local_title .. '|' .. label .. ']]'
else
output = '[[d:' .. item .. '|' .. label .. ']]'
end
elseif canUseLocalLink(link_type, requested_lang, label_lang) and local_title then
output = '[[' .. local_title .. '|' .. label .. ']]'
else
output = label
end
output = output .. renderFallbackMarker(
label_lang,
item,
show_lang,
show_qid,
requested_lang
)
if shouldShowEdit(edit, requested_lang, label_lang) then
output = output .. renderLabelEditLink(item, requested_lang)
end
return output
end
--[[-------------------------------------------------------------------------------
_sitelinks
This function returns a table of sitelinks for a single project organized by language
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - (case-insensitive) one of: "wikipedia", "wikisource", "wikiquote", "wikibooks", "wikinews",
"wikiversity", "wikivoyage", "wiktionary", "commons", "mediawiki", "wikispecies", "wikidata", etc.
Output:
Table of sitelinks with language fields
Output:
Table of sitelinks with language fields
See also
* [https://foundation.wikimedia.org/wiki/Special:SiteMatrix] for the full list of supported interwikis.
* [https://dumps.wikimedia.org/backup-index.html] for the full list of sitecodes (used in database dumps).
]]
function p._sitelinks(item, project)
local entity, sitelink
-- get entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
-- convert from english project name to proproject code
local projLUT = {
wikipedia = 'wiki', commons = 'commonswiki',
foundation = 'foundationwiki', mediawiki = 'mediawikiwiki',
wikispecies = 'specieswiki', wikidata = 'wikidatawiki',
incubator = 'incubatorwiki',oldwikisource = 'sourceswiki',
}
local langLUT = {
-- These are not language codes before the 'wiki' or 'wikiversity' suffix in a sitecode:
foundation = '~', commons = '~',-- they will be skipped
incubator = '~', meta = '~',
mediawiki = '~', sources = '~',
species = '~', beta = '~',
-- Legacy language codes used in sitecodes, remapped to standard Wikimedia language codes:
-- See [https://meta.wikimedia.org/wiki/Special_language_codes](https://meta.wikimedia.org/wiki/Special_language_codes) for details
als = 'gsw', bat_smg = 'sgs',
fiu_vro = 'vro', be_x_old = 'be-tarask',
roa_rup = 'rup', zh_classical = 'lzh',
zh_yue = 'yue', zh_min_nan = 'nan',
zh_wuu = 'wuu', no = 'nb',
}
project = project:lower()
project = projLUT[project] or project -- correct the project name
local n = project:len()
local linkTable = {}
if entity and entity.sitelinks then -- See if entity exists, and that it has sitelinks
for _, sitelink in pairs(entity.sitelinks) do -- loop over all sitelinks
local site = sitelink.site
local m = site:len() - n
local proj = site:sub(m +1) -- project part of the siteID
if proj == project then -- proj matches desired "project"
local lang = site:sub(1, m) -- language part of the siteID
lang = langLUT[lang] or lang:gsub('_','-')
if lang ~= '~' then -- proj matches desired "project"
linkTable[lang] = sitelink.title
end
end
end
end
return linkTable
end
--[[----------------------------------------------------------------
_aliases
This function returns a table of aliases for a single language
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Table of aliases with language fields
]]
function p._aliases(item, lang)
local entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
local aliasTable = {}
if entity and entity.aliases then-- See if there is an entity and that it has aliases
if entity.aliases[lang] then-- See if it has English Aliases
for _, alias in pairs(entity.aliases[lang]) do -- Make a loop around the English aliases
table.insert(aliasTable, alias.value)-- Create a table of English aliases
end
end
end
return aliasTable
end
--======================================================================
--=== Invoke functions for use from wikitext, e.g., templates ==========
---=====================================================================
--[[
getLabel
This function returns a label translated to desired language, created based on wikidata
Usage:
{{#invoke:Wikidata label|getLabel|item=Q...|lang=..|link_style=..|capitalization=..}}
Parameters
1: wikidata's item's q-id (required)
2: language (optional; default {{int:lang}})
3: link_style: "wikipedia" (default), "Wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc", "lc", "tc", "ucfirst", "lcfirst"
Error Handling:
Bad q-id will result in displayed error
]]
function p.getLabel(frame)
local args = getArgs(frame)
return p._getLabel(
args.item,
args.lang,
args.link,
args.capitalization,
args.show_id,
args.fallback,
args.show_lang,
args.edit,
args.show_qid,
args.article,
args.category_mode,
args.category_label
)
end
--[[-------------------------------------------------------------------------------
sitelinks
This function returns a comma separated list of sitelinks for a single project organized by language
Its main purpose is to help with testing of _sitelinks function.
Usage:
{{#invoke:Wikidata label|sitelinks|item=Q...|project=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - "wikipedia" (or "wiki"), "wikisource", "wikiquote", "wikibooks",
"wikinews", "wikiversity", "wikivoyage", "wiktionary", etc.
Output:
comma separated list
]]
function p.sitelinks(frame)
local args = getArgs(frame)
local sitelinks = p._sitelinks(args.item, args.project)
local sitelinkList = {}
for lang, sitelink in pairs(sitelinks) do
table.insert(sitelinkList, (lang=='' and sitelink) or (lang .. ':' .. sitelink))
end
return table.concat(sitelinkList, ', ')
end
--[[----------------------------------------------------------------------------
aliases
This function returns a comma separated list of aliases for a single language
Its main purpose is to help with testing of _aliases function.
Usage:
{{#invoke:Wikidata label|aliases|item=Q...|lang=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Comma separated list
]]
function p.aliases(frame)
local args = getArgs(frame)
return table.concat(p._aliases(args.item, args.lang), ', ')
end
return p
m6fwqpi2q7m5g6crp3b3k0d7ycpxikt
216479
216478
2026-10-04T18:51:45Z
Iketsi
3254
rawfull; rawname
216479
Scribunto
text/plain
--[[
__ __ _ _ __ ___ _ _ _ _ _ _ _
| \/ | ___ __| |_ _| | ___ \ \ / (_) | _(_) __| | __ _| |_ __ _ | | __ _| |__ ___| |
| |\/| |/ _ \ / _` | | | | |/ _ (_) \ /\ / /| | |/ / |/ _` |/ _` | __/ _` | | |/ _` | '_ \ / _ \ |
| | | | (_) | (_| | |_| | | __/_ \ V V / | | <| | (_| | (_| | || (_| | | | (_| | |_) | __/ |
|_| |_|\___/ \__,_|\__,_|_|\___(_) \_/\_/ |_|_|\_\_|\__,_|\__,_|\__\__,_| |_|\__,_|_.__/ \___|_|
This module is intended to be the engine behind "Template:Label".
This module was copied from Commons; please ask for changes there.
Please do not modify this code without applying the changes first at
"Module:Wikidata label/sandbox" and testing at
"Module:Wikidata label/testcases".
Authors and maintainers:
* User:Jarekt – original version
* User:Iketsi – improved fallback logic
]]
require('strict') -- used for debugging purposes as it detects cases of unintended global variables
--=============================================
--=== Internal functions ======================
--=============================================
---------------------------------------------------------------------------
-- Normalize input arguments by converting them all to lower case and
-- replacing space with "_" in the argument name. Also empty strings are
-- converted to nils. Arguments are collected from arguments passed to the
-- module and if missing from the template that calls the module
local function getArgs(frame)
local function normalize_input_args(input_args, output_args)
for name, value in pairs( input_args ) do
value = mw.text.trim(value) -- trim whitespaces from the beginning and the end of the string
if value ~= '' then -- nuke empty strings
if type(name)=='string' then
name = string.gsub( string.lower(name), ' ', '_')
end
output_args[name] = value
end
end
return output_args
end
local args = {}
args = normalize_input_args(frame:getParent().args, args)
args = normalize_input_args(frame.args, args)
return args
end
---------------------------------------------------------------------------
-- Function allowing for consistent treatment of boolean-like wikitext input.
-- It works similarly to Module:Yesno but does not assume val is a string
local function yesno(val, default)
if type(val) == 'boolean' then
return val
elseif type(val) == 'number' then
if val == 1 then
return true
elseif val == 0 then
return false
end
elseif type(val) == 'string' then
val = mw.ustring.lower(val) -- put in lower case
if val == 'no' or val == 'n' or val == 'false' or val == '0' then
return false
elseif val == 'yes' or val == 'y' or val == 'true' or val == '1' then
return true
end
end
return default
end
-------------------------------------------------------------------------
-- get message in a given language
-- INPUTS:
-- * msg - name of a message. For it to work [[MediaWiki:msg]] page need to be set up
-- * lang - translate message to language "lang"
-- * default - string to return in case this module is moved to a project where this message is not set
-- OUTPUT:
-- * translated message
local function getMessage(msg, lang, default)
msg = mw.message.new(msg):inLanguage(lang):plain()
return (msg == nil and default) or msg
end
local function normalizeLanguageCode(code)
if type(code) ~= 'string' then
return nil
end
code = mw.text.trim(code)
if code == '' then
return nil
end
return mw.ustring.lower(mw.ustring.gsub(code, '_', '-'))
end
local function normalizeCategoryMode(mode)
mode = normalizeLanguageCode(mode) or 'link'
if mode == 'link' or mode == 'active' or mode == 'rawfull' or mode == 'rawname' then
return mode
end
return 'link'
end
local function renderCategoryTitle(title, label, category_mode)
category_mode = normalizeCategoryMode(category_mode)
if category_mode == 'rawfull' then
return mw.text.nowiki(title)
elseif category_mode == 'rawname' then
local category_name = mw.ustring.gsub(title, '^[^:]*:', '')
return mw.text.nowiki(category_name)
elseif category_mode == 'active' then
return '[[' .. title .. '|' .. label .. ']]'
end
return '[[:' .. title .. '|' .. label .. ']]'
end
local function appendUniqueLanguage(langList, seen, code)
code = normalizeLanguageCode(code)
if code and not seen[code] then
seen[code] = true
table.insert(langList, code)
end
end
local function getLabelLanguages(lang, fallback)
local requested_lang = normalizeLanguageCode(lang)
local langList = {}
local seen = {}
fallback = normalizeLanguageCode(fallback)
if not fallback then
fallback = 'default'
end
appendUniqueLanguage(langList, seen, requested_lang)
if fallback == 'none' then
return langList, requested_lang
end
if fallback == 'default' then
appendUniqueLanguage(langList, seen, 'mul')
for _, language in ipairs(mw.language.getFallbacksFor(requested_lang)) do
appendUniqueLanguage(langList, seen, language)
end
return langList, requested_lang
end
for _, language in ipairs(mw.text.split(fallback, ',', true)) do
appendUniqueLanguage(langList, seen, language)
end
return langList, requested_lang
end
local function getLabelInLanguages(item, entity, langList)
for _, language in ipairs(langList) do
local label
if entity then
label = entity:getLabel(language)
else
label = mw.wikibase.getLabelByLang(item, language)
end
if label then
return label, language
end
end
end
local function getDescriptionInLanguages(item, entity, langList)
if entity and entity.descriptions then
for _, language in ipairs(langList) do
if entity.descriptions[language] then
return entity.descriptions[language].value
end
end
else
for _, language in ipairs(langList) do
local desc = mw.wikibase.getDescriptionByLang(item, language)
if desc then
return desc
end
end
end
end
local function isFallbackLabel(requested_lang, label_lang)
return label_lang ~= nil and label_lang ~= requested_lang
end
local function isNonMulFallback(requested_lang, label_lang)
return label_lang ~= nil and label_lang ~= requested_lang and label_lang ~= 'mul'
end
local function shouldShowLanguage(show_lang, requested_lang, label_lang)
show_lang = normalizeLanguageCode(show_lang) or 'fallback-not-mul'
if not label_lang then
return false
elseif show_lang == 'always' then
return true
elseif show_lang == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif show_lang == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function shouldShowQid(show_qid, requested_lang, label_lang)
show_qid = normalizeLanguageCode(show_qid) or 'never'
if show_qid == 'always' then
return label_lang ~= nil
elseif show_qid == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif show_qid == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function shouldShowEdit(edit, requested_lang, label_lang)
edit = normalizeLanguageCode(edit) or 'fallback-not-mul'
if edit == 'always' then
return true
elseif edit == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif edit == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function renderFallbackMarker(label_lang, item, show_lang, show_qid, requested_lang)
local show_language = shouldShowLanguage(show_lang, requested_lang, label_lang)
local show_qid = shouldShowQid(show_qid, requested_lang, label_lang)
local marker = {}
if show_qid then
table.insert(marker, '[[d:' .. item .. '|' .. mw.text.nowiki(item) .. ']]')
end
if show_language then
table.insert(marker, mw.text.nowiki(label_lang))
end
if #marker == 0 then
return ''
end
return '<sup class="wikidata-label-marker" lang="en" dir="ltr">('
.. table.concat(marker, ' · ')
.. ')</sup>'
end
local function renderLabelEditLink(item, requested_lang)
local url = 'https://www.wikidata.org/wiki/Special:SetLabelDescriptionAliases/'
.. item
.. '/'
.. mw.uri.encode(requested_lang, 'PATH')
.. '?uselang='
.. mw.uri.encode(requested_lang, 'QUERY')
local tooltip = getMessage('Translate', requested_lang, 'Translate')
tooltip = mw.text.nowiki(tooltip)
return '<span class="plainlinks wikidata-label-edit">['
.. url
.. ' <span title="' .. tooltip .. '">🏷</span>]</span>'
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * lang - language of the project
-- OUTPUT:
-- * sitelink
local function getSitelink(item, entity, lang)
if entity and entity.getSitelink then -- if we have entity then use it
return entity:getSitelink(lang .. 'wiki')
else -- if no entity then use different function
return mw.wikibase.getSitelink(item, lang .. 'wiki')
end
end
local function canUseLocalLink(link_type, requested_lang, label_lang)
link_type = normalizeLanguageCode(link_type) or 'default'
if link_type == 'default' then
return label_lang == requested_lang
elseif link_type == 'mul' then
return label_lang == requested_lang or label_lang == 'mul'
elseif link_type == 'all' then
return label_lang ~= nil
end
return false
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * prop - property for which to return the best statment
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function getBestStatementsValue(item, entity, prop)
local statments
if entity then
statments = entity:getBestStatements(prop)
else
statments = mw.wikibase.getBestStatements(item, prop)
end
for _, statment in ipairs(statments) do
if statment and statment.mainsnak.datavalue.value then
return statment.mainsnak.datavalue.value
end
end
end
local function hasBestStatementValue(item, entity, prop, expected_value)
local statments
if entity then
statments = entity:getBestStatements(prop)
else
statments = mw.wikibase.getBestStatements(item, prop)
end
for _, statment in ipairs(statments) do
if statment
and statment.mainsnak
and statment.mainsnak.datavalue
and statment.mainsnak.datavalue.value
and statment.mainsnak.datavalue.value.id == expected_value
then
return true
end
end
return false
end
---------------------------------------------------------------------------
-- change capitalization of the label
-- INPUTS:
-- * label - label string
-- * capitalization - capitalization to be applied: allowed values are "tc", "lc",
-- "uc", "lcfirst", and "ucfirst". Any other value will return original string
-- * lang - language of the label
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function apply_capitalization(label, capitalization, lang)
capitalization = string.lower(capitalization or 'none')
if capitalization == 'none' then
return label
elseif capitalization == 'uc' then
return mw.language.new(lang):uc(label)
elseif capitalization == 'lc' then
return mw.language.new(lang):lc(label)
elseif capitalization == 'tc' then -- title case
local new_label = {}
for _, word in ipairs(mw.text.split(label, ' ')) do
table.insert(new_label, mw.language.new(lang):ucfirst(word))
end
return table.concat(new_label, ' ')
elseif capitalization == 'ucfirst' then
return mw.language.new(lang):ucfirst(label)
elseif capitalization == 'lcfirst' then
return mw.language.new(lang):lcfirst(label)
end
return label
end
--[[-------------------------------------------------------------------------
get link based on user preference
INPUTS:
* link_type - can be :
* "wikidata" - link to wikidata
* "wikipedia" - link to wikipedia (language dependent)
* "wikidata talk" - link to wikidata talk page
* "commons" - link to commons (try sitelink then commons category then commons gallery)
* "commonscat" - link to commons (try commons category then commons gallery)
* "-" - means no link
* item - entity ID (always provided)
* entity - whole entity. It can be nil if whole entity is not loaded
* langList - language fallback list for preferred language (required)
OUTPUT:
* link - link to the wikimedia page
]]
local function getLink(link_type, item, entity, requested_lang)
local link, eLink
link_type = mw.ustring.lower(link_type or 'default')
local item_type = mw.ustring.sub(item, 1, 1) -- first letter prefix of item entity ID: 'Q', 'P' or 'M'
if item_type == 'M' then
eLink='c:Special:EntityPage/'..item
elseif item_type == 'Q' then
eLink='d:'..item -- wikibase entity page link
elseif item_type == 'P' then
eLink='d:Property:'..item -- wikibase entity page link
else
eLink='d:Special:EntityPage/'..item
end
if link_type == '-' or link_type == 'none' then -- allow different link formats
return '' -- no link
elseif link_type == 'wikidata' or item_type == 'M' then
return eLink -- link to wikibase entity page
elseif link_type == 'wikidata talk' and item_type == 'P' then
return 'd:Property talk:'.. item -- link to wikidata property talk page
elseif link_type == 'wikidata talk' then
return 'd:Talk:'..item -- link to wikidata talk page
elseif link_type == 'commons' or link_type == 'commonscat' then
--[[
When link_type == 'commons' we try the following links (in specified order):
1) commons sitelink
2) P373 "Commons Category" claims
3) P935 "Commons Gallery" claims
Since most items have a commons sitelink we never have to look for claims
When link_type == 'commonscat' we try to maximize chances of commons link being a category, so we
try the following links (in specified order):
1) commons sitelink, which is kept if it points to a category
2) P373 "Commons Category" claims
3) commons sitelink (which does not point to a category)
4) P935 "Commons Gallery" claims
Since most pages have a commons sitelink we never have to look for claims
]]
local sLink = getSitelink(item, entity, 'commons') -- look for sitelink to commons
if sLink then
sLink = 'c:'..sLink
if (link_type == 'commons') or (link_type == 'commonscat' and mw.ustring.find(sLink, 'Category:')) then
link = sLink
end
end
if not link then -- try linking to P373 "Commons Category"
local cat = getBestStatementsValue(item, entity, 'P373')
link = (cat ~= nil and 'c:Category:' .. cat) or nil
end
link = link or sLink
if not link then -- try linking to P935 "Commons Gallery"
link = getBestStatementsValue(item, entity, 'P935')
end
return link or eLink
end
local sitelink = getSitelink(item, entity, requested_lang)
if sitelink then
return ':' .. requested_lang .. ':' .. sitelink
end
return eLink
end
--=============================================
--=== External functions ======================
--=============================================
local p = {}
--======================================================================
--=== API functions for use from other Scribunto modules ===============
--======================================================================
--[[
_getLabel
This function returns a label translated to desired language, created based on wikidata
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - desired language of the label
3: link_type - link style. Possible values (case-insensitive): "wikipedia", "wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc" (upper case), "lc" (lower case), "ucfirst" (upper case for the first letter),
"lcfirst" (lower case for the first letter), or 'none' (default)
Error Handling:
Bad q-id will result in displayed error
]]
function p._getLabel(item, lang, link_type, capitalization, show_id, fallback, show_lang, edit, show_qid, article, category_mode, category_label)
local entity, s, link, label, language, desc
local label_lang, requested_lang, langList, output
local local_title, raw_label
local is_wikimedia_category, category_link_label
-- clean up the input parameters
if type(item) ~= 'string' then -- "item" is not a q-id
entity = item -- "item" must be the entity
if not entity or not entity.id then
return '<strong class="error">Wikidata label: missing or invalid item</strong>'
end
item = entity.id -- look-up q-id
elseif tonumber(item) then -- if it is just the number then add "Q" in front
item = 'Q'..item
end
item = mw.ustring.gsub(mw.ustring.upper(item), 'PROPERTY:P', 'P') -- make all the properties the same and capitalize
if link_type == 'no' then
link_type = 'none'
end
link_type = normalizeLanguageCode(link_type) or 'default'
requested_lang = normalizeLanguageCode(lang)
if not requested_lang then
requested_lang = mw.getCurrentFrame():callParserFunction("int","lang")
requested_lang = normalizeLanguageCode(requested_lang)
end
if not requested_lang then
requested_lang = 'en'
end
langList, requested_lang = getLabelLanguages(requested_lang, fallback)
label, label_lang = getLabelInLanguages(item, entity, langList)
raw_label = label
if label then -- wikitext-escape the label if we have one
label = mw.text.nowiki(label)
end
if not label then -- no labels found, so just show the q-id
label = item
elseif show_id then -- add id
show_id = yesno(show_id,false)
if show_id then
local wordsep = getMessage('Word-separator', requested_lang, ' ')
local id = mw.message.new('parentheses', item):inLanguage(requested_lang):plain()
id = (id~=nil and id) or ('('..item..')') -- in case this module is moved to a project where {{int:parenthesis}} is not set
label = label .. wordsep .. "<small>" .. id .. "</small>"
end
end
label = apply_capitalization(label, capitalization, requested_lang)
-- look for description
desc = getDescriptionInLanguages(item, entity, langList)
if desc and link_type ~= '-' and link_type ~= 'none' then -- wikitext-escape the description if we have one
desc = mw.text.nowiki(desc) -- add description as hover text
label = '<span title="' .. desc .. '">' .. label .. '</span>'
end
local_title = article
if not local_title or local_title == '' then
local_title = getSitelink(item, entity, requested_lang)
end
if (not local_title or local_title == '')
and raw_label
and (
label_lang == requested_lang
or (link_type == 'mul' and label_lang == 'mul')
)
then
local_title = raw_label
end
is_wikimedia_category = hasBestStatementValue(
item,
entity,
'P31',
'Q4167836'
)
category_link_label = label
if category_label and category_label ~= '' then
category_link_label = mw.text.nowiki(category_label)
end
if is_wikimedia_category and local_title then
if link_type == '-' or link_type == 'none' then
output = mw.text.nowiki(local_title)
else
output = renderCategoryTitle(
local_title,
category_link_label,
category_mode
)
end
elseif link_type == '-' or link_type == 'none' then
output = label
elseif link_type == 'wikidata' then
output = '[[d:' .. item .. '|' .. label .. ']]'
elseif link_type == 'olddefault' then
if local_title then
output = '[[' .. local_title .. '|' .. label .. ']]'
else
output = '[[d:' .. item .. '|' .. label .. ']]'
end
elseif canUseLocalLink(link_type, requested_lang, label_lang) and local_title then
output = '[[' .. local_title .. '|' .. label .. ']]'
else
output = label
end
output = output .. renderFallbackMarker(
label_lang,
item,
show_lang,
show_qid,
requested_lang
)
if shouldShowEdit(edit, requested_lang, label_lang) then
output = output .. renderLabelEditLink(item, requested_lang)
end
return output
end
--[[-------------------------------------------------------------------------------
_sitelinks
This function returns a table of sitelinks for a single project organized by language
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - (case-insensitive) one of: "wikipedia", "wikisource", "wikiquote", "wikibooks", "wikinews",
"wikiversity", "wikivoyage", "wiktionary", "commons", "mediawiki", "wikispecies", "wikidata", etc.
Output:
Table of sitelinks with language fields
Output:
Table of sitelinks with language fields
See also
* [https://foundation.wikimedia.org/wiki/Special:SiteMatrix] for the full list of supported interwikis.
* [https://dumps.wikimedia.org/backup-index.html] for the full list of sitecodes (used in database dumps).
]]
function p._sitelinks(item, project)
local entity, sitelink
-- get entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
-- convert from english project name to proproject code
local projLUT = {
wikipedia = 'wiki', commons = 'commonswiki',
foundation = 'foundationwiki', mediawiki = 'mediawikiwiki',
wikispecies = 'specieswiki', wikidata = 'wikidatawiki',
incubator = 'incubatorwiki',oldwikisource = 'sourceswiki',
}
local langLUT = {
-- These are not language codes before the 'wiki' or 'wikiversity' suffix in a sitecode:
foundation = '~', commons = '~',-- they will be skipped
incubator = '~', meta = '~',
mediawiki = '~', sources = '~',
species = '~', beta = '~',
-- Legacy language codes used in sitecodes, remapped to standard Wikimedia language codes:
-- See [https://meta.wikimedia.org/wiki/Special_language_codes](https://meta.wikimedia.org/wiki/Special_language_codes) for details
als = 'gsw', bat_smg = 'sgs',
fiu_vro = 'vro', be_x_old = 'be-tarask',
roa_rup = 'rup', zh_classical = 'lzh',
zh_yue = 'yue', zh_min_nan = 'nan',
zh_wuu = 'wuu', no = 'nb',
}
project = project:lower()
project = projLUT[project] or project -- correct the project name
local n = project:len()
local linkTable = {}
if entity and entity.sitelinks then -- See if entity exists, and that it has sitelinks
for _, sitelink in pairs(entity.sitelinks) do -- loop over all sitelinks
local site = sitelink.site
local m = site:len() - n
local proj = site:sub(m +1) -- project part of the siteID
if proj == project then -- proj matches desired "project"
local lang = site:sub(1, m) -- language part of the siteID
lang = langLUT[lang] or lang:gsub('_','-')
if lang ~= '~' then -- proj matches desired "project"
linkTable[lang] = sitelink.title
end
end
end
end
return linkTable
end
--[[----------------------------------------------------------------
_aliases
This function returns a table of aliases for a single language
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Table of aliases with language fields
]]
function p._aliases(item, lang)
local entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
local aliasTable = {}
if entity and entity.aliases then-- See if there is an entity and that it has aliases
if entity.aliases[lang] then-- See if it has English Aliases
for _, alias in pairs(entity.aliases[lang]) do -- Make a loop around the English aliases
table.insert(aliasTable, alias.value)-- Create a table of English aliases
end
end
end
return aliasTable
end
--======================================================================
--=== Invoke functions for use from wikitext, e.g., templates ==========
---=====================================================================
--[[
getLabel
This function returns a label translated to desired language, created based on wikidata
Usage:
{{#invoke:Wikidata label|getLabel|item=Q...|lang=..|link_style=..|capitalization=..}}
Parameters
1: wikidata's item's q-id (required)
2: language (optional; default {{int:lang}})
3: link_style: "wikipedia" (default), "Wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc", "lc", "tc", "ucfirst", "lcfirst"
Error Handling:
Bad q-id will result in displayed error
]]
function p.getLabel(frame)
local args = getArgs(frame)
return p._getLabel(
args.item,
args.lang,
args.link,
args.capitalization,
args.show_id,
args.fallback,
args.show_lang,
args.edit,
args.show_qid,
args.article,
args.category_mode,
args.category_label
)
end
--[[-------------------------------------------------------------------------------
sitelinks
This function returns a comma separated list of sitelinks for a single project organized by language
Its main purpose is to help with testing of _sitelinks function.
Usage:
{{#invoke:Wikidata label|sitelinks|item=Q...|project=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - "wikipedia" (or "wiki"), "wikisource", "wikiquote", "wikibooks",
"wikinews", "wikiversity", "wikivoyage", "wiktionary", etc.
Output:
comma separated list
]]
function p.sitelinks(frame)
local args = getArgs(frame)
local sitelinks = p._sitelinks(args.item, args.project)
local sitelinkList = {}
for lang, sitelink in pairs(sitelinks) do
table.insert(sitelinkList, (lang=='' and sitelink) or (lang .. ':' .. sitelink))
end
return table.concat(sitelinkList, ', ')
end
--[[----------------------------------------------------------------------------
aliases
This function returns a comma separated list of aliases for a single language
Its main purpose is to help with testing of _aliases function.
Usage:
{{#invoke:Wikidata label|aliases|item=Q...|lang=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Comma separated list
]]
function p.aliases(frame)
local args = getArgs(frame)
return table.concat(p._aliases(args.item, args.lang), ', ')
end
return p
ow5tbrv3kwga7aw9vtv4t202d22u6sn
216481
216479
2026-10-04T19:21:58Z
Iketsi
3254
test
216481
Scribunto
text/plain
--[[
__ __ _ _ __ ___ _ _ _ _ _ _ _
| \/ | ___ __| |_ _| | ___ \ \ / (_) | _(_) __| | __ _| |_ __ _ | | __ _| |__ ___| |
| |\/| |/ _ \ / _` | | | | |/ _ (_) \ /\ / /| | |/ / |/ _` |/ _` | __/ _` | | |/ _` | '_ \ / _ \ |
| | | | (_) | (_| | |_| | | __/_ \ V V / | | <| | (_| | (_| | || (_| | | | (_| | |_) | __/ |
|_| |_|\___/ \__,_|\__,_|_|\___(_) \_/\_/ |_|_|\_\_|\__,_|\__,_|\__\__,_| |_|\__,_|_.__/ \___|_|
This module is intended to be the engine behind "Template:Label".
This module was copied from Commons; please ask for changes there.
Please do not modify this code without applying the changes first at
"Module:Wikidata label/sandbox" and testing at
"Module:Wikidata label/testcases".
Authors and maintainers:
* User:Jarekt – original version
* User:Iketsi – improved fallback logic
]]
require('strict') -- used for debugging purposes as it detects cases of unintended global variables
--=============================================
--=== Internal functions ======================
--=============================================
---------------------------------------------------------------------------
-- Normalize input arguments by converting them all to lower case and
-- replacing space with "_" in the argument name. Also empty strings are
-- converted to nils. Arguments are collected from arguments passed to the
-- module and if missing from the template that calls the module
local function getArgs(frame)
local function normalize_input_args(input_args, output_args)
for name, value in pairs( input_args ) do
value = mw.text.trim(value) -- trim whitespaces from the beginning and the end of the string
if value ~= '' then -- nuke empty strings
if type(name)=='string' then
name = string.gsub( string.lower(name), ' ', '_')
end
output_args[name] = value
end
end
return output_args
end
local args = {}
args = normalize_input_args(frame:getParent().args, args)
args = normalize_input_args(frame.args, args)
return args
end
---------------------------------------------------------------------------
-- Function allowing for consistent treatment of boolean-like wikitext input.
-- It works similarly to Module:Yesno but does not assume val is a string
local function yesno(val, default)
if type(val) == 'boolean' then
return val
elseif type(val) == 'number' then
if val == 1 then
return true
elseif val == 0 then
return false
end
elseif type(val) == 'string' then
val = mw.ustring.lower(val) -- put in lower case
if val == 'no' or val == 'n' or val == 'false' or val == '0' then
return false
elseif val == 'yes' or val == 'y' or val == 'true' or val == '1' then
return true
end
end
return default
end
-------------------------------------------------------------------------
-- get message in a given language
-- INPUTS:
-- * msg - name of a message. For it to work [[MediaWiki:msg]] page need to be set up
-- * lang - translate message to language "lang"
-- * default - string to return in case this module is moved to a project where this message is not set
-- OUTPUT:
-- * translated message
local function getMessage(msg, lang, default)
msg = mw.message.new(msg):inLanguage(lang):plain()
return (msg == nil and default) or msg
end
local function normalizeLanguageCode(code)
if type(code) ~= 'string' then
return nil
end
code = mw.text.trim(code)
if code == '' then
return nil
end
return mw.ustring.lower(mw.ustring.gsub(code, '_', '-'))
end
local function normalizeCategoryMode(mode)
mode = normalizeLanguageCode(mode) or 'link'
if mode == 'active' then
return 'active'
end
return 'link'
end
local function renderLocalLink(title, label, category_mode)
if normalizeCategoryMode(category_mode) == 'active' then
return '[[' .. title .. '|' .. label .. ']]'
end
return '[[:' .. title .. '|' .. label .. ']]'
end
local function stripNamespace(value)
if type(value) ~= 'string' then
return value
end
return mw.ustring.gsub(value, '^[^:]*:', '')
end
local function appendUniqueLanguage(langList, seen, code)
code = normalizeLanguageCode(code)
if code and not seen[code] then
seen[code] = true
table.insert(langList, code)
end
end
local function getLabelLanguages(lang, fallback)
local requested_lang = normalizeLanguageCode(lang)
local langList = {}
local seen = {}
fallback = normalizeLanguageCode(fallback)
if not fallback then
fallback = 'default'
end
appendUniqueLanguage(langList, seen, requested_lang)
if fallback == 'none' then
return langList, requested_lang
end
if fallback == 'default' then
appendUniqueLanguage(langList, seen, 'mul')
for _, language in ipairs(mw.language.getFallbacksFor(requested_lang)) do
appendUniqueLanguage(langList, seen, language)
end
return langList, requested_lang
end
for _, language in ipairs(mw.text.split(fallback, ',', true)) do
appendUniqueLanguage(langList, seen, language)
end
return langList, requested_lang
end
local function getLabelInLanguages(item, entity, langList)
for _, language in ipairs(langList) do
local label
if entity then
label = entity:getLabel(language)
else
label = mw.wikibase.getLabelByLang(item, language)
end
if label then
return label, language
end
end
end
local function getDescriptionInLanguages(item, entity, langList)
if entity and entity.descriptions then
for _, language in ipairs(langList) do
if entity.descriptions[language] then
return entity.descriptions[language].value
end
end
else
for _, language in ipairs(langList) do
local desc = mw.wikibase.getDescriptionByLang(item, language)
if desc then
return desc
end
end
end
end
local function isFallbackLabel(requested_lang, label_lang)
return label_lang ~= nil and label_lang ~= requested_lang
end
local function isNonMulFallback(requested_lang, label_lang)
return label_lang ~= nil and label_lang ~= requested_lang and label_lang ~= 'mul'
end
local function shouldShowLanguage(show_lang, requested_lang, label_lang)
show_lang = normalizeLanguageCode(show_lang) or 'fallback-not-mul'
if not label_lang then
return false
elseif show_lang == 'always' then
return true
elseif show_lang == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif show_lang == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function shouldShowQid(show_qid, requested_lang, label_lang)
show_qid = normalizeLanguageCode(show_qid) or 'never'
if show_qid == 'always' then
return label_lang ~= nil
elseif show_qid == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif show_qid == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function shouldShowEdit(edit, requested_lang, label_lang)
edit = normalizeLanguageCode(edit) or 'fallback-not-mul'
if edit == 'always' then
return true
elseif edit == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif edit == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function renderFallbackMarker(label_lang, item, show_lang, show_qid, requested_lang)
local show_language = shouldShowLanguage(show_lang, requested_lang, label_lang)
local show_qid = shouldShowQid(show_qid, requested_lang, label_lang)
local marker = {}
if show_qid then
table.insert(marker, '[[d:' .. item .. '|' .. mw.text.nowiki(item) .. ']]')
end
if show_language then
table.insert(marker, mw.text.nowiki(label_lang))
end
if #marker == 0 then
return ''
end
return '<sup class="wikidata-label-marker" lang="en" dir="ltr">('
.. table.concat(marker, ' · ')
.. ')</sup>'
end
local function renderLabelEditLink(item, requested_lang)
local url = 'https://www.wikidata.org/wiki/Special:SetLabelDescriptionAliases/'
.. item
.. '/'
.. mw.uri.encode(requested_lang, 'PATH')
.. '?uselang='
.. mw.uri.encode(requested_lang, 'QUERY')
local tooltip = getMessage('Translate', requested_lang, 'Translate')
tooltip = mw.text.nowiki(tooltip)
return '<span class="plainlinks wikidata-label-edit">['
.. url
.. ' <span title="' .. tooltip .. '">🏷</span>]</span>'
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * lang - language of the project
-- OUTPUT:
-- * sitelink
local function getSitelink(item, entity, lang)
if entity and entity.getSitelink then -- if we have entity then use it
return entity:getSitelink(lang .. 'wiki')
else -- if no entity then use different function
return mw.wikibase.getSitelink(item, lang .. 'wiki')
end
end
local function canUseLocalLink(link_type, requested_lang, label_lang)
link_type = normalizeLanguageCode(link_type) or 'default'
if link_type == 'default' then
return label_lang == requested_lang
elseif link_type == 'mul' then
return label_lang == requested_lang or label_lang == 'mul'
elseif link_type == 'all' then
return label_lang ~= nil
end
return false
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * prop - property for which to return the best statment
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function getBestStatementsValue(item, entity, prop)
local statments
if entity then
statments = entity:getBestStatements(prop)
else
statments = mw.wikibase.getBestStatements(item, prop)
end
for _, statment in ipairs(statments) do
if statment and statment.mainsnak.datavalue.value then
return statment.mainsnak.datavalue.value
end
end
end
---------------------------------------------------------------------------
-- change capitalization of the label
-- INPUTS:
-- * label - label string
-- * capitalization - capitalization to be applied: allowed values are "tc", "lc",
-- "uc", "lcfirst", and "ucfirst". Any other value will return original string
-- * lang - language of the label
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function apply_capitalization(label, capitalization, lang)
capitalization = string.lower(capitalization or 'none')
if capitalization == 'none' then
return label
elseif capitalization == 'uc' then
return mw.language.new(lang):uc(label)
elseif capitalization == 'lc' then
return mw.language.new(lang):lc(label)
elseif capitalization == 'tc' then -- title case
local new_label = {}
for _, word in ipairs(mw.text.split(label, ' ')) do
table.insert(new_label, mw.language.new(lang):ucfirst(word))
end
return table.concat(new_label, ' ')
elseif capitalization == 'ucfirst' then
return mw.language.new(lang):ucfirst(label)
elseif capitalization == 'lcfirst' then
return mw.language.new(lang):lcfirst(label)
end
return label
end
--[[-------------------------------------------------------------------------
get link based on user preference
INPUTS:
* link_type - can be :
* "wikidata" - link to wikidata
* "wikipedia" - link to wikipedia (language dependent)
* "wikidata talk" - link to wikidata talk page
* "commons" - link to commons (try sitelink then commons category then commons gallery)
* "commonscat" - link to commons (try commons category then commons gallery)
* "-" - means no link
* item - entity ID (always provided)
* entity - whole entity. It can be nil if whole entity is not loaded
* langList - language fallback list for preferred language (required)
OUTPUT:
* link - link to the wikimedia page
]]
local function getLink(link_type, item, entity, requested_lang)
local link, eLink
link_type = mw.ustring.lower(link_type or 'default')
local item_type = mw.ustring.sub(item, 1, 1) -- first letter prefix of item entity ID: 'Q', 'P' or 'M'
if item_type == 'M' then
eLink='c:Special:EntityPage/'..item
elseif item_type == 'Q' then
eLink='d:'..item -- wikibase entity page link
elseif item_type == 'P' then
eLink='d:Property:'..item -- wikibase entity page link
else
eLink='d:Special:EntityPage/'..item
end
if link_type == '-' or link_type == 'none' then -- allow different link formats
return '' -- no link
elseif link_type == 'wikidata' or item_type == 'M' then
return eLink -- link to wikibase entity page
elseif link_type == 'wikidata talk' and item_type == 'P' then
return 'd:Property talk:'.. item -- link to wikidata property talk page
elseif link_type == 'wikidata talk' then
return 'd:Talk:'..item -- link to wikidata talk page
elseif link_type == 'commons' or link_type == 'commonscat' then
--[[
When link_type == 'commons' we try the following links (in specified order):
1) commons sitelink
2) P373 "Commons Category" claims
3) P935 "Commons Gallery" claims
Since most items have a commons sitelink we never have to look for claims
When link_type == 'commonscat' we try to maximize chances of commons link being a category, so we
try the following links (in specified order):
1) commons sitelink, which is kept if it points to a category
2) P373 "Commons Category" claims
3) commons sitelink (which does not point to a category)
4) P935 "Commons Gallery" claims
Since most pages have a commons sitelink we never have to look for claims
]]
local sLink = getSitelink(item, entity, 'commons') -- look for sitelink to commons
if sLink then
sLink = 'c:'..sLink
if (link_type == 'commons') or (link_type == 'commonscat' and mw.ustring.find(sLink, 'Category:')) then
link = sLink
end
end
if not link then -- try linking to P373 "Commons Category"
local cat = getBestStatementsValue(item, entity, 'P373')
link = (cat ~= nil and 'c:Category:' .. cat) or nil
end
link = link or sLink
if not link then -- try linking to P935 "Commons Gallery"
link = getBestStatementsValue(item, entity, 'P935')
end
return link or eLink
end
local sitelink = getSitelink(item, entity, requested_lang)
if sitelink then
return ':' .. requested_lang .. ':' .. sitelink
end
return eLink
end
--=============================================
--=== External functions ======================
--=============================================
local p = {}
--======================================================================
--=== API functions for use from other Scribunto modules ===============
--======================================================================
--[[
_getLabel
This function returns a label translated to desired language, created based on wikidata
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - desired language of the label
3: link_type - link style. Possible values (case-insensitive): "wikipedia", "wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc" (upper case), "lc" (lower case), "ucfirst" (upper case for the first letter),
"lcfirst" (lower case for the first letter), or 'none' (default)
Error Handling:
Bad q-id will result in displayed error
]]
function p._getLabel(item, lang, link_type, capitalization, show_id, fallback, show_lang, edit, show_qid, article, category_mode, category_label, strip_namespace)
local entity, s, link, label, language, desc
local label_lang, requested_lang, langList, output
local local_title, raw_label, local_link_label
-- clean up the input parameters
if type(item) ~= 'string' then -- "item" is not a q-id
entity = item -- "item" must be the entity
if not entity or not entity.id then
return '<strong class="error">Wikidata label: missing or invalid item</strong>'
end
item = entity.id -- look-up q-id
elseif tonumber(item) then -- if it is just the number then add "Q" in front
item = 'Q'..item
end
item = mw.ustring.gsub(mw.ustring.upper(item), 'PROPERTY:P', 'P') -- make all the properties the same and capitalize
if link_type == 'no' then
link_type = 'none'
end
link_type = normalizeLanguageCode(link_type) or 'default'
requested_lang = normalizeLanguageCode(lang)
if not requested_lang then
requested_lang = mw.getCurrentFrame():callParserFunction("int","lang")
requested_lang = normalizeLanguageCode(requested_lang)
end
if not requested_lang then
requested_lang = 'en'
end
langList, requested_lang = getLabelLanguages(requested_lang, fallback)
label, label_lang = getLabelInLanguages(item, entity, langList)
raw_label = label
if label then -- wikitext-escape the label if we have one
label = mw.text.nowiki(label)
end
if not label then -- no labels found, so just show the q-id
label = item
elseif show_id then -- add id
show_id = yesno(show_id,false)
if show_id then
local wordsep = getMessage('Word-separator', requested_lang, ' ')
local id = mw.message.new('parentheses', item):inLanguage(requested_lang):plain()
id = (id~=nil and id) or ('('..item..')') -- in case this module is moved to a project where {{int:parenthesis}} is not set
label = label .. wordsep .. "<small>" .. id .. "</small>"
end
end
label = apply_capitalization(label, capitalization, requested_lang)
-- look for description
desc = getDescriptionInLanguages(item, entity, langList)
if desc and link_type ~= '-' and link_type ~= 'none' then -- wikitext-escape the description if we have one
desc = mw.text.nowiki(desc) -- add description as hover text
label = '<span title="' .. desc .. '">' .. label .. '</span>'
end
local_title = article
if not local_title or local_title == '' then
local_title = getSitelink(item, entity, requested_lang)
end
if (not local_title or local_title == '')
and raw_label
and (
label_lang == requested_lang
or (link_type == 'mul' and label_lang == 'mul')
)
then
local_title = raw_label
end
local_link_label = category_label or label
if yesno(strip_namespace, false) then
local_link_label = stripNamespace(local_link_label)
end
if link_type == '-' or link_type == 'none' then
if local_title then
output = mw.text.nowiki(local_title)
else
output = label
end
elseif link_type == 'wikidata' then
output = '[[d:' .. item .. '|' .. label .. ']]'
elseif link_type == 'olddefault' then
if local_title then
output = renderLocalLink(local_title, local_link_label, category_mode)
else
output = '[[d:' .. item .. '|' .. label .. ']]'
end
elseif canUseLocalLink(link_type, requested_lang, label_lang) and local_title then
output = renderLocalLink(local_title, local_link_label, category_mode)
else
output = label
end
output = output .. renderFallbackMarker(
label_lang,
item,
show_lang,
show_qid,
requested_lang
)
if shouldShowEdit(edit, requested_lang, label_lang) then
output = output .. renderLabelEditLink(item, requested_lang)
end
return output
end
--[[-------------------------------------------------------------------------------
_sitelinks
This function returns a table of sitelinks for a single project organized by language
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - (case-insensitive) one of: "wikipedia", "wikisource", "wikiquote", "wikibooks", "wikinews",
"wikiversity", "wikivoyage", "wiktionary", "commons", "mediawiki", "wikispecies", "wikidata", etc.
Output:
Table of sitelinks with language fields
Output:
Table of sitelinks with language fields
See also
* [https://foundation.wikimedia.org/wiki/Special:SiteMatrix] for the full list of supported interwikis.
* [https://dumps.wikimedia.org/backup-index.html] for the full list of sitecodes (used in database dumps).
]]
function p._sitelinks(item, project)
local entity, sitelink
-- get entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
-- convert from english project name to proproject code
local projLUT = {
wikipedia = 'wiki', commons = 'commonswiki',
foundation = 'foundationwiki', mediawiki = 'mediawikiwiki',
wikispecies = 'specieswiki', wikidata = 'wikidatawiki',
incubator = 'incubatorwiki',oldwikisource = 'sourceswiki',
}
local langLUT = {
-- These are not language codes before the 'wiki' or 'wikiversity' suffix in a sitecode:
foundation = '~', commons = '~',-- they will be skipped
incubator = '~', meta = '~',
mediawiki = '~', sources = '~',
species = '~', beta = '~',
-- Legacy language codes used in sitecodes, remapped to standard Wikimedia language codes:
-- See [https://meta.wikimedia.org/wiki/Special_language_codes](https://meta.wikimedia.org/wiki/Special_language_codes) for details
als = 'gsw', bat_smg = 'sgs',
fiu_vro = 'vro', be_x_old = 'be-tarask',
roa_rup = 'rup', zh_classical = 'lzh',
zh_yue = 'yue', zh_min_nan = 'nan',
zh_wuu = 'wuu', no = 'nb',
}
project = project:lower()
project = projLUT[project] or project -- correct the project name
local n = project:len()
local linkTable = {}
if entity and entity.sitelinks then -- See if entity exists, and that it has sitelinks
for _, sitelink in pairs(entity.sitelinks) do -- loop over all sitelinks
local site = sitelink.site
local m = site:len() - n
local proj = site:sub(m +1) -- project part of the siteID
if proj == project then -- proj matches desired "project"
local lang = site:sub(1, m) -- language part of the siteID
lang = langLUT[lang] or lang:gsub('_','-')
if lang ~= '~' then -- proj matches desired "project"
linkTable[lang] = sitelink.title
end
end
end
end
return linkTable
end
--[[----------------------------------------------------------------
_aliases
This function returns a table of aliases for a single language
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Table of aliases with language fields
]]
function p._aliases(item, lang)
local entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
local aliasTable = {}
if entity and entity.aliases then-- See if there is an entity and that it has aliases
if entity.aliases[lang] then-- See if it has English Aliases
for _, alias in pairs(entity.aliases[lang]) do -- Make a loop around the English aliases
table.insert(aliasTable, alias.value)-- Create a table of English aliases
end
end
end
return aliasTable
end
--======================================================================
--=== Invoke functions for use from wikitext, e.g., templates ==========
---=====================================================================
--[[
getLabel
This function returns a label translated to desired language, created based on wikidata
Usage:
{{#invoke:Wikidata label|getLabel|item=Q...|lang=..|link_style=..|capitalization=..}}
Parameters
1: wikidata's item's q-id (required)
2: language (optional; default {{int:lang}})
3: link_style: "wikipedia" (default), "Wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc", "lc", "tc", "ucfirst", "lcfirst"
Error Handling:
Bad q-id will result in displayed error
]]
function p.getLabel(frame)
local args = getArgs(frame)
return p._getLabel(
args.item,
args.lang,
args.link,
args.capitalization,
args.show_id,
args.fallback,
args.show_lang,
args.edit,
args.show_qid,
args.article,
args.category_mode,
args.category_label,
args.strip_namespace
)
end
--[[-------------------------------------------------------------------------------
sitelinks
This function returns a comma separated list of sitelinks for a single project organized by language
Its main purpose is to help with testing of _sitelinks function.
Usage:
{{#invoke:Wikidata label|sitelinks|item=Q...|project=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - "wikipedia" (or "wiki"), "wikisource", "wikiquote", "wikibooks",
"wikinews", "wikiversity", "wikivoyage", "wiktionary", etc.
Output:
comma separated list
]]
function p.sitelinks(frame)
local args = getArgs(frame)
local sitelinks = p._sitelinks(args.item, args.project)
local sitelinkList = {}
for lang, sitelink in pairs(sitelinks) do
table.insert(sitelinkList, (lang=='' and sitelink) or (lang .. ':' .. sitelink))
end
return table.concat(sitelinkList, ', ')
end
--[[----------------------------------------------------------------------------
aliases
This function returns a comma separated list of aliases for a single language
Its main purpose is to help with testing of _aliases function.
Usage:
{{#invoke:Wikidata label|aliases|item=Q...|lang=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Comma separated list
]]
function p.aliases(frame)
local args = getArgs(frame)
return table.concat(p._aliases(args.item, args.lang), ', ')
end
return p
dtrm9v1ecw2l6jp3xaq6v9u4rwuv4x0
216482
216481
2026-10-04T19:27:51Z
Iketsi
3254
link=none; strip_namespace=true
216482
Scribunto
text/plain
--[[
__ __ _ _ __ ___ _ _ _ _ _ _ _
| \/ | ___ __| |_ _| | ___ \ \ / (_) | _(_) __| | __ _| |_ __ _ | | __ _| |__ ___| |
| |\/| |/ _ \ / _` | | | | |/ _ (_) \ /\ / /| | |/ / |/ _` |/ _` | __/ _` | | |/ _` | '_ \ / _ \ |
| | | | (_) | (_| | |_| | | __/_ \ V V / | | <| | (_| | (_| | || (_| | | | (_| | |_) | __/ |
|_| |_|\___/ \__,_|\__,_|_|\___(_) \_/\_/ |_|_|\_\_|\__,_|\__,_|\__\__,_| |_|\__,_|_.__/ \___|_|
This module is intended to be the engine behind "Template:Label".
This module was copied from Commons; please ask for changes there.
Please do not modify this code without applying the changes first at
"Module:Wikidata label/sandbox" and testing at
"Module:Wikidata label/testcases".
Authors and maintainers:
* User:Jarekt – original version
* User:Iketsi – improved fallback logic
]]
require('strict') -- used for debugging purposes as it detects cases of unintended global variables
--=============================================
--=== Internal functions ======================
--=============================================
---------------------------------------------------------------------------
-- Normalize input arguments by converting them all to lower case and
-- replacing space with "_" in the argument name. Also empty strings are
-- converted to nils. Arguments are collected from arguments passed to the
-- module and if missing from the template that calls the module
local function getArgs(frame)
local function normalize_input_args(input_args, output_args)
for name, value in pairs( input_args ) do
value = mw.text.trim(value) -- trim whitespaces from the beginning and the end of the string
if value ~= '' then -- nuke empty strings
if type(name)=='string' then
name = string.gsub( string.lower(name), ' ', '_')
end
output_args[name] = value
end
end
return output_args
end
local args = {}
args = normalize_input_args(frame:getParent().args, args)
args = normalize_input_args(frame.args, args)
return args
end
---------------------------------------------------------------------------
-- Function allowing for consistent treatment of boolean-like wikitext input.
-- It works similarly to Module:Yesno but does not assume val is a string
local function yesno(val, default)
if type(val) == 'boolean' then
return val
elseif type(val) == 'number' then
if val == 1 then
return true
elseif val == 0 then
return false
end
elseif type(val) == 'string' then
val = mw.ustring.lower(val) -- put in lower case
if val == 'no' or val == 'n' or val == 'false' or val == '0' then
return false
elseif val == 'yes' or val == 'y' or val == 'true' or val == '1' then
return true
end
end
return default
end
-------------------------------------------------------------------------
-- get message in a given language
-- INPUTS:
-- * msg - name of a message. For it to work [[MediaWiki:msg]] page need to be set up
-- * lang - translate message to language "lang"
-- * default - string to return in case this module is moved to a project where this message is not set
-- OUTPUT:
-- * translated message
local function getMessage(msg, lang, default)
msg = mw.message.new(msg):inLanguage(lang):plain()
return (msg == nil and default) or msg
end
local function normalizeLanguageCode(code)
if type(code) ~= 'string' then
return nil
end
code = mw.text.trim(code)
if code == '' then
return nil
end
return mw.ustring.lower(mw.ustring.gsub(code, '_', '-'))
end
local function normalizeCategoryMode(mode)
mode = normalizeLanguageCode(mode) or 'link'
if mode == 'active' then
return 'active'
end
return 'link'
end
local function renderLocalLink(title, label, category_mode)
if normalizeCategoryMode(category_mode) == 'active' then
return '[[' .. title .. '|' .. label .. ']]'
end
return '[[:' .. title .. '|' .. label .. ']]'
end
local function stripNamespace(value)
if type(value) ~= 'string' then
return value
end
return mw.ustring.gsub(value, '^[^:]*:', '')
end
local function appendUniqueLanguage(langList, seen, code)
code = normalizeLanguageCode(code)
if code and not seen[code] then
seen[code] = true
table.insert(langList, code)
end
end
local function getLabelLanguages(lang, fallback)
local requested_lang = normalizeLanguageCode(lang)
local langList = {}
local seen = {}
fallback = normalizeLanguageCode(fallback)
if not fallback then
fallback = 'default'
end
appendUniqueLanguage(langList, seen, requested_lang)
if fallback == 'none' then
return langList, requested_lang
end
if fallback == 'default' then
appendUniqueLanguage(langList, seen, 'mul')
for _, language in ipairs(mw.language.getFallbacksFor(requested_lang)) do
appendUniqueLanguage(langList, seen, language)
end
return langList, requested_lang
end
for _, language in ipairs(mw.text.split(fallback, ',', true)) do
appendUniqueLanguage(langList, seen, language)
end
return langList, requested_lang
end
local function getLabelInLanguages(item, entity, langList)
for _, language in ipairs(langList) do
local label
if entity then
label = entity:getLabel(language)
else
label = mw.wikibase.getLabelByLang(item, language)
end
if label then
return label, language
end
end
end
local function getDescriptionInLanguages(item, entity, langList)
if entity and entity.descriptions then
for _, language in ipairs(langList) do
if entity.descriptions[language] then
return entity.descriptions[language].value
end
end
else
for _, language in ipairs(langList) do
local desc = mw.wikibase.getDescriptionByLang(item, language)
if desc then
return desc
end
end
end
end
local function isFallbackLabel(requested_lang, label_lang)
return label_lang ~= nil and label_lang ~= requested_lang
end
local function isNonMulFallback(requested_lang, label_lang)
return label_lang ~= nil and label_lang ~= requested_lang and label_lang ~= 'mul'
end
local function shouldShowLanguage(show_lang, requested_lang, label_lang)
show_lang = normalizeLanguageCode(show_lang) or 'fallback-not-mul'
if not label_lang then
return false
elseif show_lang == 'always' then
return true
elseif show_lang == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif show_lang == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function shouldShowQid(show_qid, requested_lang, label_lang)
show_qid = normalizeLanguageCode(show_qid) or 'never'
if show_qid == 'always' then
return label_lang ~= nil
elseif show_qid == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif show_qid == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function shouldShowEdit(edit, requested_lang, label_lang)
edit = normalizeLanguageCode(edit) or 'fallback-not-mul'
if edit == 'always' then
return true
elseif edit == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif edit == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function renderFallbackMarker(label_lang, item, show_lang, show_qid, requested_lang)
local show_language = shouldShowLanguage(show_lang, requested_lang, label_lang)
local show_qid = shouldShowQid(show_qid, requested_lang, label_lang)
local marker = {}
if show_qid then
table.insert(marker, '[[d:' .. item .. '|' .. mw.text.nowiki(item) .. ']]')
end
if show_language then
table.insert(marker, mw.text.nowiki(label_lang))
end
if #marker == 0 then
return ''
end
return '<sup class="wikidata-label-marker" lang="en" dir="ltr">('
.. table.concat(marker, ' · ')
.. ')</sup>'
end
local function renderLabelEditLink(item, requested_lang)
local url = 'https://www.wikidata.org/wiki/Special:SetLabelDescriptionAliases/'
.. item
.. '/'
.. mw.uri.encode(requested_lang, 'PATH')
.. '?uselang='
.. mw.uri.encode(requested_lang, 'QUERY')
local tooltip = getMessage('Translate', requested_lang, 'Translate')
tooltip = mw.text.nowiki(tooltip)
return '<span class="plainlinks wikidata-label-edit">['
.. url
.. ' <span title="' .. tooltip .. '">🏷</span>]</span>'
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * lang - language of the project
-- OUTPUT:
-- * sitelink
local function getSitelink(item, entity, lang)
if entity and entity.getSitelink then -- if we have entity then use it
return entity:getSitelink(lang .. 'wiki')
else -- if no entity then use different function
return mw.wikibase.getSitelink(item, lang .. 'wiki')
end
end
local function canUseLocalLink(link_type, requested_lang, label_lang)
link_type = normalizeLanguageCode(link_type) or 'default'
if link_type == 'default' then
return label_lang == requested_lang
elseif link_type == 'mul' then
return label_lang == requested_lang or label_lang == 'mul'
elseif link_type == 'all' then
return label_lang ~= nil
end
return false
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * prop - property for which to return the best statment
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function getBestStatementsValue(item, entity, prop)
local statments
if entity then
statments = entity:getBestStatements(prop)
else
statments = mw.wikibase.getBestStatements(item, prop)
end
for _, statment in ipairs(statments) do
if statment and statment.mainsnak.datavalue.value then
return statment.mainsnak.datavalue.value
end
end
end
---------------------------------------------------------------------------
-- change capitalization of the label
-- INPUTS:
-- * label - label string
-- * capitalization - capitalization to be applied: allowed values are "tc", "lc",
-- "uc", "lcfirst", and "ucfirst". Any other value will return original string
-- * lang - language of the label
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function apply_capitalization(label, capitalization, lang)
capitalization = string.lower(capitalization or 'none')
if capitalization == 'none' then
return label
elseif capitalization == 'uc' then
return mw.language.new(lang):uc(label)
elseif capitalization == 'lc' then
return mw.language.new(lang):lc(label)
elseif capitalization == 'tc' then -- title case
local new_label = {}
for _, word in ipairs(mw.text.split(label, ' ')) do
table.insert(new_label, mw.language.new(lang):ucfirst(word))
end
return table.concat(new_label, ' ')
elseif capitalization == 'ucfirst' then
return mw.language.new(lang):ucfirst(label)
elseif capitalization == 'lcfirst' then
return mw.language.new(lang):lcfirst(label)
end
return label
end
--[[-------------------------------------------------------------------------
get link based on user preference
INPUTS:
* link_type - can be :
* "wikidata" - link to wikidata
* "wikipedia" - link to wikipedia (language dependent)
* "wikidata talk" - link to wikidata talk page
* "commons" - link to commons (try sitelink then commons category then commons gallery)
* "commonscat" - link to commons (try commons category then commons gallery)
* "-" - means no link
* item - entity ID (always provided)
* entity - whole entity. It can be nil if whole entity is not loaded
* langList - language fallback list for preferred language (required)
OUTPUT:
* link - link to the wikimedia page
]]
local function getLink(link_type, item, entity, requested_lang)
local link, eLink
link_type = mw.ustring.lower(link_type or 'default')
local item_type = mw.ustring.sub(item, 1, 1) -- first letter prefix of item entity ID: 'Q', 'P' or 'M'
if item_type == 'M' then
eLink='c:Special:EntityPage/'..item
elseif item_type == 'Q' then
eLink='d:'..item -- wikibase entity page link
elseif item_type == 'P' then
eLink='d:Property:'..item -- wikibase entity page link
else
eLink='d:Special:EntityPage/'..item
end
if link_type == '-' or link_type == 'none' then -- allow different link formats
return '' -- no link
elseif link_type == 'wikidata' or item_type == 'M' then
return eLink -- link to wikibase entity page
elseif link_type == 'wikidata talk' and item_type == 'P' then
return 'd:Property talk:'.. item -- link to wikidata property talk page
elseif link_type == 'wikidata talk' then
return 'd:Talk:'..item -- link to wikidata talk page
elseif link_type == 'commons' or link_type == 'commonscat' then
--[[
When link_type == 'commons' we try the following links (in specified order):
1) commons sitelink
2) P373 "Commons Category" claims
3) P935 "Commons Gallery" claims
Since most items have a commons sitelink we never have to look for claims
When link_type == 'commonscat' we try to maximize chances of commons link being a category, so we
try the following links (in specified order):
1) commons sitelink, which is kept if it points to a category
2) P373 "Commons Category" claims
3) commons sitelink (which does not point to a category)
4) P935 "Commons Gallery" claims
Since most pages have a commons sitelink we never have to look for claims
]]
local sLink = getSitelink(item, entity, 'commons') -- look for sitelink to commons
if sLink then
sLink = 'c:'..sLink
if (link_type == 'commons') or (link_type == 'commonscat' and mw.ustring.find(sLink, 'Category:')) then
link = sLink
end
end
if not link then -- try linking to P373 "Commons Category"
local cat = getBestStatementsValue(item, entity, 'P373')
link = (cat ~= nil and 'c:Category:' .. cat) or nil
end
link = link or sLink
if not link then -- try linking to P935 "Commons Gallery"
link = getBestStatementsValue(item, entity, 'P935')
end
return link or eLink
end
local sitelink = getSitelink(item, entity, requested_lang)
if sitelink then
return ':' .. requested_lang .. ':' .. sitelink
end
return eLink
end
--=============================================
--=== External functions ======================
--=============================================
local p = {}
--======================================================================
--=== API functions for use from other Scribunto modules ===============
--======================================================================
--[[
_getLabel
This function returns a label translated to desired language, created based on wikidata
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - desired language of the label
3: link_type - link style. Possible values (case-insensitive): "wikipedia", "wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc" (upper case), "lc" (lower case), "ucfirst" (upper case for the first letter),
"lcfirst" (lower case for the first letter), or 'none' (default)
Error Handling:
Bad q-id will result in displayed error
]]
function p._getLabel(item, lang, link_type, capitalization, show_id, fallback, show_lang, edit, show_qid, article, category_mode, category_label, strip_namespace)
local entity, s, link, label, language, desc
local label_lang, requested_lang, langList, output
local local_title, raw_label, local_link_label
-- clean up the input parameters
if type(item) ~= 'string' then -- "item" is not a q-id
entity = item -- "item" must be the entity
if not entity or not entity.id then
return '<strong class="error">Wikidata label: missing or invalid item</strong>'
end
item = entity.id -- look-up q-id
elseif tonumber(item) then -- if it is just the number then add "Q" in front
item = 'Q'..item
end
item = mw.ustring.gsub(mw.ustring.upper(item), 'PROPERTY:P', 'P') -- make all the properties the same and capitalize
if link_type == 'no' then
link_type = 'none'
end
link_type = normalizeLanguageCode(link_type) or 'default'
requested_lang = normalizeLanguageCode(lang)
if not requested_lang then
requested_lang = mw.getCurrentFrame():callParserFunction("int","lang")
requested_lang = normalizeLanguageCode(requested_lang)
end
if not requested_lang then
requested_lang = 'en'
end
langList, requested_lang = getLabelLanguages(requested_lang, fallback)
label, label_lang = getLabelInLanguages(item, entity, langList)
raw_label = label
if label then -- wikitext-escape the label if we have one
label = mw.text.nowiki(label)
end
if not label then -- no labels found, so just show the q-id
label = item
elseif show_id then -- add id
show_id = yesno(show_id,false)
if show_id then
local wordsep = getMessage('Word-separator', requested_lang, ' ')
local id = mw.message.new('parentheses', item):inLanguage(requested_lang):plain()
id = (id~=nil and id) or ('('..item..')') -- in case this module is moved to a project where {{int:parenthesis}} is not set
label = label .. wordsep .. "<small>" .. id .. "</small>"
end
end
label = apply_capitalization(label, capitalization, requested_lang)
-- look for description
desc = getDescriptionInLanguages(item, entity, langList)
if desc and link_type ~= '-' and link_type ~= 'none' then -- wikitext-escape the description if we have one
desc = mw.text.nowiki(desc) -- add description as hover text
label = '<span title="' .. desc .. '">' .. label .. '</span>'
end
local_title = article
if not local_title or local_title == '' then
local_title = getSitelink(item, entity, requested_lang)
end
if (not local_title or local_title == '')
and raw_label
and (
label_lang == requested_lang
or (link_type == 'mul' and label_lang == 'mul')
)
then
local_title = raw_label
end
local_link_label = category_label or label
if yesno(strip_namespace, false) then
local_link_label = stripNamespace(local_link_label)
end
if link_type == '-' or link_type == 'none' then
if local_title then
if yesno(strip_namespace, false) then
output = mw.text.nowiki(stripNamespace(local_title))
else
output = mw.text.nowiki(local_title)
end
else
output = label
end
elseif link_type == 'wikidata' then
output = '[[d:' .. item .. '|' .. label .. ']]'
elseif link_type == 'olddefault' then
if local_title then
output = renderLocalLink(local_title, local_link_label, category_mode)
else
output = '[[d:' .. item .. '|' .. label .. ']]'
end
elseif canUseLocalLink(link_type, requested_lang, label_lang) and local_title then
output = renderLocalLink(local_title, local_link_label, category_mode)
else
output = label
end
output = output .. renderFallbackMarker(
label_lang,
item,
show_lang,
show_qid,
requested_lang
)
if shouldShowEdit(edit, requested_lang, label_lang) then
output = output .. renderLabelEditLink(item, requested_lang)
end
return output
end
--[[-------------------------------------------------------------------------------
_sitelinks
This function returns a table of sitelinks for a single project organized by language
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - (case-insensitive) one of: "wikipedia", "wikisource", "wikiquote", "wikibooks", "wikinews",
"wikiversity", "wikivoyage", "wiktionary", "commons", "mediawiki", "wikispecies", "wikidata", etc.
Output:
Table of sitelinks with language fields
Output:
Table of sitelinks with language fields
See also
* [https://foundation.wikimedia.org/wiki/Special:SiteMatrix] for the full list of supported interwikis.
* [https://dumps.wikimedia.org/backup-index.html] for the full list of sitecodes (used in database dumps).
]]
function p._sitelinks(item, project)
local entity, sitelink
-- get entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
-- convert from english project name to proproject code
local projLUT = {
wikipedia = 'wiki', commons = 'commonswiki',
foundation = 'foundationwiki', mediawiki = 'mediawikiwiki',
wikispecies = 'specieswiki', wikidata = 'wikidatawiki',
incubator = 'incubatorwiki',oldwikisource = 'sourceswiki',
}
local langLUT = {
-- These are not language codes before the 'wiki' or 'wikiversity' suffix in a sitecode:
foundation = '~', commons = '~',-- they will be skipped
incubator = '~', meta = '~',
mediawiki = '~', sources = '~',
species = '~', beta = '~',
-- Legacy language codes used in sitecodes, remapped to standard Wikimedia language codes:
-- See [https://meta.wikimedia.org/wiki/Special_language_codes](https://meta.wikimedia.org/wiki/Special_language_codes) for details
als = 'gsw', bat_smg = 'sgs',
fiu_vro = 'vro', be_x_old = 'be-tarask',
roa_rup = 'rup', zh_classical = 'lzh',
zh_yue = 'yue', zh_min_nan = 'nan',
zh_wuu = 'wuu', no = 'nb',
}
project = project:lower()
project = projLUT[project] or project -- correct the project name
local n = project:len()
local linkTable = {}
if entity and entity.sitelinks then -- See if entity exists, and that it has sitelinks
for _, sitelink in pairs(entity.sitelinks) do -- loop over all sitelinks
local site = sitelink.site
local m = site:len() - n
local proj = site:sub(m +1) -- project part of the siteID
if proj == project then -- proj matches desired "project"
local lang = site:sub(1, m) -- language part of the siteID
lang = langLUT[lang] or lang:gsub('_','-')
if lang ~= '~' then -- proj matches desired "project"
linkTable[lang] = sitelink.title
end
end
end
end
return linkTable
end
--[[----------------------------------------------------------------
_aliases
This function returns a table of aliases for a single language
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Table of aliases with language fields
]]
function p._aliases(item, lang)
local entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
local aliasTable = {}
if entity and entity.aliases then-- See if there is an entity and that it has aliases
if entity.aliases[lang] then-- See if it has English Aliases
for _, alias in pairs(entity.aliases[lang]) do -- Make a loop around the English aliases
table.insert(aliasTable, alias.value)-- Create a table of English aliases
end
end
end
return aliasTable
end
--======================================================================
--=== Invoke functions for use from wikitext, e.g., templates ==========
---=====================================================================
--[[
getLabel
This function returns a label translated to desired language, created based on wikidata
Usage:
{{#invoke:Wikidata label|getLabel|item=Q...|lang=..|link_style=..|capitalization=..}}
Parameters
1: wikidata's item's q-id (required)
2: language (optional; default {{int:lang}})
3: link_style: "wikipedia" (default), "Wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc", "lc", "tc", "ucfirst", "lcfirst"
Error Handling:
Bad q-id will result in displayed error
]]
function p.getLabel(frame)
local args = getArgs(frame)
return p._getLabel(
args.item,
args.lang,
args.link,
args.capitalization,
args.show_id,
args.fallback,
args.show_lang,
args.edit,
args.show_qid,
args.article,
args.category_mode,
args.category_label,
args.strip_namespace
)
end
--[[-------------------------------------------------------------------------------
sitelinks
This function returns a comma separated list of sitelinks for a single project organized by language
Its main purpose is to help with testing of _sitelinks function.
Usage:
{{#invoke:Wikidata label|sitelinks|item=Q...|project=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - "wikipedia" (or "wiki"), "wikisource", "wikiquote", "wikibooks",
"wikinews", "wikiversity", "wikivoyage", "wiktionary", etc.
Output:
comma separated list
]]
function p.sitelinks(frame)
local args = getArgs(frame)
local sitelinks = p._sitelinks(args.item, args.project)
local sitelinkList = {}
for lang, sitelink in pairs(sitelinks) do
table.insert(sitelinkList, (lang=='' and sitelink) or (lang .. ':' .. sitelink))
end
return table.concat(sitelinkList, ', ')
end
--[[----------------------------------------------------------------------------
aliases
This function returns a comma separated list of aliases for a single language
Its main purpose is to help with testing of _aliases function.
Usage:
{{#invoke:Wikidata label|aliases|item=Q...|lang=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Comma separated list
]]
function p.aliases(frame)
local args = getArgs(frame)
return table.concat(p._aliases(args.item, args.lang), ', ')
end
return p
mpfxppvwe7ywz581meawisu2842jbqr
216486
216482
2026-10-04T19:53:22Z
Iketsi
3254
test
216486
Scribunto
text/plain
--[[
__ __ _ _ __ ___ _ _ _ _ _ _ _
| \/ | ___ __| |_ _| | ___ \ \ / (_) | _(_) __| | __ _| |_ __ _ | | __ _| |__ ___| |
| |\/| |/ _ \ / _` | | | | |/ _ (_) \ /\ / /| | |/ / |/ _` |/ _` | __/ _` | | |/ _` | '_ \ / _ \ |
| | | | (_) | (_| | |_| | | __/_ \ V V / | | <| | (_| | (_| | || (_| | | | (_| | |_) | __/ |
|_| |_|\___/ \__,_|\__,_|_|\___(_) \_/\_/ |_|_|\_\_|\__,_|\__,_|\__\__,_| |_|\__,_|_.__/ \___|_|
This module is intended to be the engine behind "Template:Label".
This module was copied from Commons; please ask for changes there.
Please do not modify this code without applying the changes first at
"Module:Wikidata label/sandbox" and testing at
"Module:Wikidata label/testcases".
Authors and maintainers:
* User:Jarekt – original version
* User:Iketsi – improved fallback logic
]]
require('strict') -- used for debugging purposes as it detects cases of unintended global variables
--=============================================
--=== Internal functions ======================
--=============================================
---------------------------------------------------------------------------
-- Normalize input arguments by converting them all to lower case and
-- replacing space with "_" in the argument name. Also empty strings are
-- converted to nils. Arguments are collected from arguments passed to the
-- module and if missing from the template that calls the module
local function getArgs(frame)
local function normalize_input_args(input_args, output_args)
for name, value in pairs( input_args ) do
value = mw.text.trim(value) -- trim whitespaces from the beginning and the end of the string
if value ~= '' then -- nuke empty strings
if type(name)=='string' then
name = string.gsub( string.lower(name), ' ', '_')
end
output_args[name] = value
end
end
return output_args
end
local args = {}
args = normalize_input_args(frame:getParent().args, args)
args = normalize_input_args(frame.args, args)
return args
end
---------------------------------------------------------------------------
-- Function allowing for consistent treatment of boolean-like wikitext input.
-- It works similarly to Module:Yesno but does not assume val is a string
local function yesno(val, default)
if type(val) == 'boolean' then
return val
elseif type(val) == 'number' then
if val == 1 then
return true
elseif val == 0 then
return false
end
elseif type(val) == 'string' then
val = mw.ustring.lower(val) -- put in lower case
if val == 'no' or val == 'n' or val == 'false' or val == '0' then
return false
elseif val == 'yes' or val == 'y' or val == 'true' or val == '1' then
return true
end
end
return default
end
-------------------------------------------------------------------------
-- get message in a given language
-- INPUTS:
-- * msg - name of a message. For it to work [[MediaWiki:msg]] page need to be set up
-- * lang - translate message to language "lang"
-- * default - string to return in case this module is moved to a project where this message is not set
-- OUTPUT:
-- * translated message
local function getMessage(msg, lang, default)
msg = mw.message.new(msg):inLanguage(lang):plain()
return (msg == nil and default) or msg
end
local function normalizeLanguageCode(code)
if type(code) ~= 'string' then
return nil
end
code = mw.text.trim(code)
if code == '' then
return nil
end
return mw.ustring.lower(mw.ustring.gsub(code, '_', '-'))
end
local function normalizeCategoryMode(mode)
mode = normalizeLanguageCode(mode) or 'link'
if mode == 'active' then
return 'active'
end
return 'link'
end
local function renderLocalLink(title, label, category_mode)
if normalizeCategoryMode(category_mode) == 'active' then
return '[[' .. title .. '|' .. label .. ']]'
end
return '[[:' .. title .. '|' .. label .. ']]'
end
local function stripNamespace(value)
if type(value) ~= 'string' then
return value
end
return mw.ustring.gsub(value, '^[^:]*:', '')
end
local function appendUniqueLanguage(langList, seen, code)
code = normalizeLanguageCode(code)
if code and not seen[code] then
seen[code] = true
table.insert(langList, code)
end
end
local function getLabelLanguages(lang, fallback)
local requested_lang = normalizeLanguageCode(lang)
local langList = {}
local seen = {}
fallback = normalizeLanguageCode(fallback)
if not fallback then
fallback = 'default'
end
appendUniqueLanguage(langList, seen, requested_lang)
if fallback == 'none' then
return langList, requested_lang
end
if fallback == 'default' then
appendUniqueLanguage(langList, seen, 'mul')
for _, language in ipairs(mw.language.getFallbacksFor(requested_lang)) do
appendUniqueLanguage(langList, seen, language)
end
return langList, requested_lang
end
for _, language in ipairs(mw.text.split(fallback, ',', true)) do
appendUniqueLanguage(langList, seen, language)
end
return langList, requested_lang
end
local function getLabelInLanguages(item, entity, langList)
for _, language in ipairs(langList) do
local label
if entity then
label = entity:getLabel(language)
else
label = mw.wikibase.getLabelByLang(item, language)
end
if label then
return label, language
end
end
end
local function getDescriptionInLanguages(item, entity, langList)
if entity and entity.descriptions then
for _, language in ipairs(langList) do
if entity.descriptions[language] then
return entity.descriptions[language].value
end
end
else
for _, language in ipairs(langList) do
local desc = mw.wikibase.getDescriptionByLang(item, language)
if desc then
return desc
end
end
end
end
local function isFallbackLabel(requested_lang, label_lang)
return label_lang ~= nil and label_lang ~= requested_lang
end
local function isNonMulFallback(requested_lang, label_lang)
return label_lang ~= nil and label_lang ~= requested_lang and label_lang ~= 'mul'
end
local function shouldShowLanguage(show_lang, requested_lang, label_lang)
show_lang = normalizeLanguageCode(show_lang) or 'fallback-not-mul'
if not label_lang then
return false
elseif show_lang == 'always' then
return true
elseif show_lang == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif show_lang == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function shouldShowQid(show_qid, requested_lang, label_lang)
show_qid = normalizeLanguageCode(show_qid) or 'never'
if show_qid == 'always' then
return label_lang ~= nil
elseif show_qid == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif show_qid == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function shouldShowEdit(edit, requested_lang, label_lang)
edit = normalizeLanguageCode(edit) or 'fallback-not-mul'
if edit == 'always' then
return true
elseif edit == 'fallback' then
return isFallbackLabel(requested_lang, label_lang)
elseif edit == 'fallback-not-mul' then
return isNonMulFallback(requested_lang, label_lang)
end
return false
end
local function renderFallbackMarker(label_lang, item, show_lang, show_qid, requested_lang)
local show_language = shouldShowLanguage(show_lang, requested_lang, label_lang)
local show_qid = shouldShowQid(show_qid, requested_lang, label_lang)
local marker = {}
if show_qid then
table.insert(marker, '[[d:' .. item .. '|' .. mw.text.nowiki(item) .. ']]')
end
if show_language then
table.insert(marker, mw.text.nowiki(label_lang))
end
if #marker == 0 then
return ''
end
return '<sup class="wikidata-label-marker" lang="en" dir="ltr">('
.. table.concat(marker, ' · ')
.. ')</sup>'
end
local function renderLabelEditLink(item, requested_lang)
local url = 'https://www.wikidata.org/wiki/Special:SetLabelDescriptionAliases/'
.. item
.. '/'
.. mw.uri.encode(requested_lang, 'PATH')
.. '?uselang='
.. mw.uri.encode(requested_lang, 'QUERY')
local tooltip = getMessage('Translate', requested_lang, 'Translate')
tooltip = mw.text.nowiki(tooltip)
return '<span class="plainlinks wikidata-label-edit">['
.. url
.. ' <span title="' .. tooltip .. '">🏷</span>]</span>'
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * lang - language of the project
-- OUTPUT:
-- * sitelink
local function getSitelink(item, entity, lang)
if entity and entity.getSitelink then -- if we have entity then use it
return entity:getSitelink(lang .. 'wiki')
else -- if no entity then use different function
return mw.wikibase.getSitelink(item, lang .. 'wiki')
end
end
local function canUseLocalLink(link_type, requested_lang, label_lang)
link_type = normalizeLanguageCode(link_type) or 'default'
if link_type == 'default' then
return label_lang == requested_lang
elseif link_type == 'mul' then
return label_lang == requested_lang or label_lang == 'mul'
elseif link_type == 'all' then
return label_lang ~= nil
end
return false
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * prop - property for which to return the best statment
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function getBestStatementsValue(item, entity, prop)
local statments
if entity then
statments = entity:getBestStatements(prop)
else
statments = mw.wikibase.getBestStatements(item, prop)
end
for _, statment in ipairs(statments) do
if statment and statment.mainsnak.datavalue.value then
return statment.mainsnak.datavalue.value
end
end
end
---------------------------------------------------------------------------
-- change capitalization of the label
-- INPUTS:
-- * label - label string
-- * capitalization - capitalization to be applied: allowed values are "tc", "lc",
-- "uc", "lcfirst", and "ucfirst". Any other value will return original string
-- * lang - language of the label
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function apply_capitalization(label, capitalization, lang)
capitalization = string.lower(capitalization or 'none')
if capitalization == 'none' then
return label
elseif capitalization == 'uc' then
return mw.language.new(lang):uc(label)
elseif capitalization == 'lc' then
return mw.language.new(lang):lc(label)
elseif capitalization == 'tc' then -- title case
local new_label = {}
for _, word in ipairs(mw.text.split(label, ' ')) do
table.insert(new_label, mw.language.new(lang):ucfirst(word))
end
return table.concat(new_label, ' ')
elseif capitalization == 'ucfirst' then
return mw.language.new(lang):ucfirst(label)
elseif capitalization == 'lcfirst' then
return mw.language.new(lang):lcfirst(label)
end
return label
end
--[[-------------------------------------------------------------------------
get link based on user preference
INPUTS:
* link_type - can be :
* "wikidata" - link to wikidata
* "wikipedia" - link to wikipedia (language dependent)
* "wikidata talk" - link to wikidata talk page
* "commons" - link to commons (try sitelink then commons category then commons gallery)
* "commonscat" - link to commons (try commons category then commons gallery)
* "-" - means no link
* item - entity ID (always provided)
* entity - whole entity. It can be nil if whole entity is not loaded
* langList - language fallback list for preferred language (required)
OUTPUT:
* link - link to the wikimedia page
]]
local function getLink(link_type, item, entity, requested_lang)
local link, eLink
link_type = mw.ustring.lower(link_type or 'default')
local item_type = mw.ustring.sub(item, 1, 1) -- first letter prefix of item entity ID: 'Q', 'P' or 'M'
if item_type == 'M' then
eLink='c:Special:EntityPage/'..item
elseif item_type == 'Q' then
eLink='d:'..item -- wikibase entity page link
elseif item_type == 'P' then
eLink='d:Property:'..item -- wikibase entity page link
else
eLink='d:Special:EntityPage/'..item
end
if link_type == '-' or link_type == 'none' then -- allow different link formats
return '' -- no link
elseif link_type == 'wikidata' or item_type == 'M' then
return eLink -- link to wikibase entity page
elseif link_type == 'wikidata talk' and item_type == 'P' then
return 'd:Property talk:'.. item -- link to wikidata property talk page
elseif link_type == 'wikidata talk' then
return 'd:Talk:'..item -- link to wikidata talk page
elseif link_type == 'commons' or link_type == 'commonscat' then
--[[
When link_type == 'commons' we try the following links (in specified order):
1) commons sitelink
2) P373 "Commons Category" claims
3) P935 "Commons Gallery" claims
Since most items have a commons sitelink we never have to look for claims
When link_type == 'commonscat' we try to maximize chances of commons link being a category, so we
try the following links (in specified order):
1) commons sitelink, which is kept if it points to a category
2) P373 "Commons Category" claims
3) commons sitelink (which does not point to a category)
4) P935 "Commons Gallery" claims
Since most pages have a commons sitelink we never have to look for claims
]]
local sLink = getSitelink(item, entity, 'commons') -- look for sitelink to commons
if sLink then
sLink = 'c:'..sLink
if (link_type == 'commons') or (link_type == 'commonscat' and mw.ustring.find(sLink, 'Category:')) then
link = sLink
end
end
if not link then -- try linking to P373 "Commons Category"
local cat = getBestStatementsValue(item, entity, 'P373')
link = (cat ~= nil and 'c:Category:' .. cat) or nil
end
link = link or sLink
if not link then -- try linking to P935 "Commons Gallery"
link = getBestStatementsValue(item, entity, 'P935')
end
return link or eLink
end
local sitelink = getSitelink(item, entity, requested_lang)
if sitelink then
return ':' .. requested_lang .. ':' .. sitelink
end
return eLink
end
--=============================================
--=== External functions ======================
--=============================================
local p = {}
--======================================================================
--=== API functions for use from other Scribunto modules ===============
--======================================================================
--[[
_getLabel
This function returns a label translated to desired language, created based on wikidata
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - desired language of the label
3: link_type - link style. Possible values (case-insensitive): "wikipedia", "wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc" (upper case), "lc" (lower case), "ucfirst" (upper case for the first letter),
"lcfirst" (lower case for the first letter), or 'none' (default)
Error Handling:
Bad q-id will result in displayed error
]]
function p._getLabel(item, lang, link_type, capitalization, show_id, fallback, show_lang, edit, show_qid, article, category_mode, category_label, strip_namespace)
local entity, s, link, label, language, desc
local label_lang, requested_lang, langList, output
local local_title, raw_label, local_link_label
-- clean up the input parameters
if type(item) ~= 'string' then -- "item" is not a q-id
entity = item -- "item" must be the entity
if not entity or not entity.id then
return '<strong class="error">Wikidata label: missing or invalid item</strong>'
end
item = entity.id -- look-up q-id
elseif tonumber(item) then -- if it is just the number then add "Q" in front
item = 'Q'..item
end
item = mw.ustring.gsub(mw.ustring.upper(item), 'PROPERTY:P', 'P') -- make all the properties the same and capitalize
if link_type == 'no' then
link_type = 'none'
end
link_type = normalizeLanguageCode(link_type) or 'default'
requested_lang = normalizeLanguageCode(lang)
if not requested_lang then
requested_lang = mw.getCurrentFrame():callParserFunction("int","lang")
requested_lang = normalizeLanguageCode(requested_lang)
end
if not requested_lang then
requested_lang = 'en'
end
langList, requested_lang = getLabelLanguages(requested_lang, fallback)
label, label_lang = getLabelInLanguages(item, entity, langList)
raw_label = label
if yesno(strip_namespace, false) and label then
label = stripNamespace(label)
end
if label then -- wikitext-escape the label if we have one
label = mw.text.nowiki(label)
end
if not label then -- no labels found, so just show the q-id
label = item
elseif show_id then -- add id
show_id = yesno(show_id,false)
if show_id then
local wordsep = getMessage('Word-separator', requested_lang, ' ')
local id = mw.message.new('parentheses', item):inLanguage(requested_lang):plain()
id = (id~=nil and id) or ('('..item..')') -- in case this module is moved to a project where {{int:parenthesis}} is not set
label = label .. wordsep .. "<small>" .. id .. "</small>"
end
end
label = apply_capitalization(label, capitalization, requested_lang)
-- look for description
desc = getDescriptionInLanguages(item, entity, langList)
if desc and link_type ~= '-' and link_type ~= 'none' then -- wikitext-escape the description if we have one
desc = mw.text.nowiki(desc) -- add description as hover text
label = '<span title="' .. desc .. '">' .. label .. '</span>'
end
local_title = article
if not local_title or local_title == '' then
local_title = getSitelink(item, entity, requested_lang)
end
if (not local_title or local_title == '')
and raw_label
and (
label_lang == requested_lang
or (link_type == 'mul' and label_lang == 'mul')
)
then
local_title = raw_label
end
local_link_label = label
if category_label and category_label ~= '' then
if yesno(strip_namespace, false) then
local_link_label = mw.text.nowiki(stripNamespace(category_label))
else
local_link_label = category_label
end
end
if link_type == '-' or link_type == 'none' then
if local_title then
if yesno(strip_namespace, false) then
output = mw.text.nowiki(stripNamespace(local_title))
else
output = mw.text.nowiki(local_title)
end
else
output = label
end
elseif link_type == 'wikidata' then
output = '[[d:' .. item .. '|' .. label .. ']]'
elseif link_type == 'olddefault' then
if local_title then
output = renderLocalLink(local_title, local_link_label, category_mode)
else
output = '[[d:' .. item .. '|' .. label .. ']]'
end
elseif canUseLocalLink(link_type, requested_lang, label_lang) and local_title then
output = renderLocalLink(local_title, local_link_label, category_mode)
else
output = label
end
output = output .. renderFallbackMarker(
label_lang,
item,
show_lang,
show_qid,
requested_lang
)
if shouldShowEdit(edit, requested_lang, label_lang) then
output = output .. renderLabelEditLink(item, requested_lang)
end
return output
end
--[[-------------------------------------------------------------------------------
_sitelinks
This function returns a table of sitelinks for a single project organized by language
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - (case-insensitive) one of: "wikipedia", "wikisource", "wikiquote", "wikibooks", "wikinews",
"wikiversity", "wikivoyage", "wiktionary", "commons", "mediawiki", "wikispecies", "wikidata", etc.
Output:
Table of sitelinks with language fields
Output:
Table of sitelinks with language fields
See also
* [https://foundation.wikimedia.org/wiki/Special:SiteMatrix] for the full list of supported interwikis.
* [https://dumps.wikimedia.org/backup-index.html] for the full list of sitecodes (used in database dumps).
]]
function p._sitelinks(item, project)
local entity, sitelink
-- get entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
-- convert from english project name to proproject code
local projLUT = {
wikipedia = 'wiki', commons = 'commonswiki',
foundation = 'foundationwiki', mediawiki = 'mediawikiwiki',
wikispecies = 'specieswiki', wikidata = 'wikidatawiki',
incubator = 'incubatorwiki',oldwikisource = 'sourceswiki',
}
local langLUT = {
-- These are not language codes before the 'wiki' or 'wikiversity' suffix in a sitecode:
foundation = '~', commons = '~',-- they will be skipped
incubator = '~', meta = '~',
mediawiki = '~', sources = '~',
species = '~', beta = '~',
-- Legacy language codes used in sitecodes, remapped to standard Wikimedia language codes:
-- See [https://meta.wikimedia.org/wiki/Special_language_codes](https://meta.wikimedia.org/wiki/Special_language_codes) for details
als = 'gsw', bat_smg = 'sgs',
fiu_vro = 'vro', be_x_old = 'be-tarask',
roa_rup = 'rup', zh_classical = 'lzh',
zh_yue = 'yue', zh_min_nan = 'nan',
zh_wuu = 'wuu', no = 'nb',
}
project = project:lower()
project = projLUT[project] or project -- correct the project name
local n = project:len()
local linkTable = {}
if entity and entity.sitelinks then -- See if entity exists, and that it has sitelinks
for _, sitelink in pairs(entity.sitelinks) do -- loop over all sitelinks
local site = sitelink.site
local m = site:len() - n
local proj = site:sub(m +1) -- project part of the siteID
if proj == project then -- proj matches desired "project"
local lang = site:sub(1, m) -- language part of the siteID
lang = langLUT[lang] or lang:gsub('_','-')
if lang ~= '~' then -- proj matches desired "project"
linkTable[lang] = sitelink.title
end
end
end
end
return linkTable
end
--[[----------------------------------------------------------------
_aliases
This function returns a table of aliases for a single language
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Table of aliases with language fields
]]
function p._aliases(item, lang)
local entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
local aliasTable = {}
if entity and entity.aliases then-- See if there is an entity and that it has aliases
if entity.aliases[lang] then-- See if it has English Aliases
for _, alias in pairs(entity.aliases[lang]) do -- Make a loop around the English aliases
table.insert(aliasTable, alias.value)-- Create a table of English aliases
end
end
end
return aliasTable
end
--======================================================================
--=== Invoke functions for use from wikitext, e.g., templates ==========
---=====================================================================
--[[
getLabel
This function returns a label translated to desired language, created based on wikidata
Usage:
{{#invoke:Wikidata label|getLabel|item=Q...|lang=..|link_style=..|capitalization=..}}
Parameters
1: wikidata's item's q-id (required)
2: language (optional; default {{int:lang}})
3: link_style: "wikipedia" (default), "Wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc", "lc", "tc", "ucfirst", "lcfirst"
Error Handling:
Bad q-id will result in displayed error
]]
function p.getLabel(frame)
local args = getArgs(frame)
return p._getLabel(
args.item,
args.lang,
args.link,
args.capitalization,
args.show_id,
args.fallback,
args.show_lang,
args.edit,
args.show_qid,
args.article,
args.category_mode,
args.category_label,
args.strip_namespace
)
end
--[[-------------------------------------------------------------------------------
sitelinks
This function returns a comma separated list of sitelinks for a single project organized by language
Its main purpose is to help with testing of _sitelinks function.
Usage:
{{#invoke:Wikidata label|sitelinks|item=Q...|project=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - "wikipedia" (or "wiki"), "wikisource", "wikiquote", "wikibooks",
"wikinews", "wikiversity", "wikivoyage", "wiktionary", etc.
Output:
comma separated list
]]
function p.sitelinks(frame)
local args = getArgs(frame)
local sitelinks = p._sitelinks(args.item, args.project)
local sitelinkList = {}
for lang, sitelink in pairs(sitelinks) do
table.insert(sitelinkList, (lang=='' and sitelink) or (lang .. ':' .. sitelink))
end
return table.concat(sitelinkList, ', ')
end
--[[----------------------------------------------------------------------------
aliases
This function returns a comma separated list of aliases for a single language
Its main purpose is to help with testing of _aliases function.
Usage:
{{#invoke:Wikidata label|aliases|item=Q...|lang=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Comma separated list
]]
function p.aliases(frame)
local args = getArgs(frame)
return table.concat(p._aliases(args.item, args.lang), ', ')
end
return p
i9lkno6fso6qeo6rg4mhalrmza6eiwy
Wilem-Aleksander
0
14187
216459
2026-10-04T13:09:03Z
DawnyTest
14843
nowo starna
216459
wikitext
text/x-wiki
[[Òbrôzk:Zijne Majesteit Koning Willem-Alexander met koningsmantel april 2013 (cropped 2).jpeg|mały|Wilhelm-Aleksander w 2013]]
'''Wilhelm-Aleksander''' ({{Jãz.|nl}} Willem-Alexander Claus George Ferdinand; ùr. 27 łżëkwiata 1967 w Utrechcie) je królã [[Néderlandzkô|Néderlandsczi]] òd 30 łżëkwiata 2013.
Je synã królowi Beatricze ë ksãca Clausa von Amsberga<ref>''[https://www.royal-house.nl/members-royal-house/king-willem-alexander King Willem-Alexander]'' [online], Royal House of the Netherlands, 13 stëcznika 2026 [dost. 2026-10-04] ({{Jãz.|en}}).</ref>. Sztudérowôł historiã na Ùniwersytece w Lejdzé<ref>''King Willem-Alexander'', [w:] [https://www.royal-house.nl/members-royal-house/king-willem-alexander/education ''Education''], Royal House of the Netherlands, 8 séwnika 2025 [dost. 2026-10-04] ({{Jãz.|en}}).</ref>. Pracôwôł jakno wòlontariusz w [[Keniô|Kenie]], dze jakno pilot pracôwôł przë transpòrce lekarsczi pòmocë ë przë òchronie strzodowiska<ref>King Willem-Alexander, [w:] ''[https://www.royal-house.nl/members-royal-house/king-willem-alexander/flying Flying, Royal House of the Netherlands]'', 26 séwnika 2025 [dost. 2026-10-04] ({{Jãz.|en}}).</ref>. Je pierszim òficerã (F/O) w lotniczi linie KLM<ref>''[https://www.wprost.pl/swiat/10055207/krol-holandii-przez-lata-ukrywal-swoja-tajemnice-w-koncu-ujawnil-sekret.html Król Holandii przez lata ukrywał, że jest pilotem]'' [online], wprost.pl [dostęp 2017-11-27] ({{Jãz.|pl}}).</ref>. W 2002 òżenił sã z [[Argentina|Argentińską]] ekònomistką Maximą Zorreguietą Cerruti para mô trzë córczi Katarzënã Amaliã (ùr. 2003), Aleksjã (ùr. 2005) ë Arianã (ùr. 2007)<ref>''King Willem-Alexander'', [w:] [https://www.royal-house.nl/members-royal-house/king-willem-alexander/marriage-and-family ''Marriage and family''], Royal House of the Netherlands, [dost. 2026-10-04] ({{Jãz.|en}}).</ref>. 30 łżëkwiata 2013 òstał królã Hòlandie po abdikacje swòji matczi. W 2014 òbczas gòscënë w [[Pòlskô|Pòlsce]] prezydent [[Barnisłôw Komorowsczi|Barnisłôw Komorowski]] wëapartnił gò [[Order Biôłégò Orła|Orderã Biôłégò Orła]]<ref>''[https://web.archive.org/web/20140625010424/http://www.telegraaf.nl/binnenland/22779386/___Vrijheid_dankzij_Polen___.html Koning: vrijheid mede te danken aan Polen]''. telegraaf.nl, 24 czerwińca 2014. [dost. 2014-06-26]. ({{Jãz.|nl}}).</ref>.
== Przëpisë ==
{{Przëpisë}}
[[Kategòrëjô:Mònarchòwie Néderlandsczi]]
gitxnl0stfq7v3nx1fv4hfdwrtfnycx
216467
216459
2026-10-04T15:35:06Z
Terrus38
14026
Terrus38 przeniós starnã [[Wilhelm-Aleksander]] do [[Wilem-Aleksander]]: kaszëbskô fòrma miona, ùchwałë RKJ 4, 5, 6, 8/08
216459
wikitext
text/x-wiki
[[Òbrôzk:Zijne Majesteit Koning Willem-Alexander met koningsmantel april 2013 (cropped 2).jpeg|mały|Wilhelm-Aleksander w 2013]]
'''Wilhelm-Aleksander''' ({{Jãz.|nl}} Willem-Alexander Claus George Ferdinand; ùr. 27 łżëkwiata 1967 w Utrechcie) je królã [[Néderlandzkô|Néderlandsczi]] òd 30 łżëkwiata 2013.
Je synã królowi Beatricze ë ksãca Clausa von Amsberga<ref>''[https://www.royal-house.nl/members-royal-house/king-willem-alexander King Willem-Alexander]'' [online], Royal House of the Netherlands, 13 stëcznika 2026 [dost. 2026-10-04] ({{Jãz.|en}}).</ref>. Sztudérowôł historiã na Ùniwersytece w Lejdzé<ref>''King Willem-Alexander'', [w:] [https://www.royal-house.nl/members-royal-house/king-willem-alexander/education ''Education''], Royal House of the Netherlands, 8 séwnika 2025 [dost. 2026-10-04] ({{Jãz.|en}}).</ref>. Pracôwôł jakno wòlontariusz w [[Keniô|Kenie]], dze jakno pilot pracôwôł przë transpòrce lekarsczi pòmocë ë przë òchronie strzodowiska<ref>King Willem-Alexander, [w:] ''[https://www.royal-house.nl/members-royal-house/king-willem-alexander/flying Flying, Royal House of the Netherlands]'', 26 séwnika 2025 [dost. 2026-10-04] ({{Jãz.|en}}).</ref>. Je pierszim òficerã (F/O) w lotniczi linie KLM<ref>''[https://www.wprost.pl/swiat/10055207/krol-holandii-przez-lata-ukrywal-swoja-tajemnice-w-koncu-ujawnil-sekret.html Król Holandii przez lata ukrywał, że jest pilotem]'' [online], wprost.pl [dostęp 2017-11-27] ({{Jãz.|pl}}).</ref>. W 2002 òżenił sã z [[Argentina|Argentińską]] ekònomistką Maximą Zorreguietą Cerruti para mô trzë córczi Katarzënã Amaliã (ùr. 2003), Aleksjã (ùr. 2005) ë Arianã (ùr. 2007)<ref>''King Willem-Alexander'', [w:] [https://www.royal-house.nl/members-royal-house/king-willem-alexander/marriage-and-family ''Marriage and family''], Royal House of the Netherlands, [dost. 2026-10-04] ({{Jãz.|en}}).</ref>. 30 łżëkwiata 2013 òstał królã Hòlandie po abdikacje swòji matczi. W 2014 òbczas gòscënë w [[Pòlskô|Pòlsce]] prezydent [[Barnisłôw Komorowsczi|Barnisłôw Komorowski]] wëapartnił gò [[Order Biôłégò Orła|Orderã Biôłégò Orła]]<ref>''[https://web.archive.org/web/20140625010424/http://www.telegraaf.nl/binnenland/22779386/___Vrijheid_dankzij_Polen___.html Koning: vrijheid mede te danken aan Polen]''. telegraaf.nl, 24 czerwińca 2014. [dost. 2014-06-26]. ({{Jãz.|nl}}).</ref>.
== Przëpisë ==
{{Przëpisë}}
[[Kategòrëjô:Mònarchòwie Néderlandsczi]]
gitxnl0stfq7v3nx1fv4hfdwrtfnycx
216470
216467
2026-10-04T15:39:24Z
Terrus38
14026
kòrekta
216470
wikitext
text/x-wiki
[[Òbrôzk:Zijne Majesteit Koning Willem-Alexander met koningsmantel april 2013 (cropped 2).jpeg|mały|Wilem-Aleksander w 2013]]
'''Wilem-Aleksander''' ({{Jãz.|nl}} ''Willem-Alexander Claus George Ferdinand''; ùr. [[27 łżëkwiata]] [[1967]] w [[Ùtrecht|Ùtrechce]]) – król [[Néderlandzkô|Néderlandzczi]] òd [[30 łżëkwiata]] [[2013]].
Je synã królewi Beatriczë ë ksãca Clausa von Amsberga<ref>''[https://www.royal-house.nl/members-royal-house/king-willem-alexander King Willem-Alexander]'' [online], Royal House of the Netherlands, 13 stëcznika 2026 [dost. 2026-10-04] ({{Jãz.|en}}).</ref>. Sztudérowôł historiã na Ùniwersytece w Leiden<ref>''King Willem-Alexander'', [w:] [https://www.royal-house.nl/members-royal-house/king-willem-alexander/education ''Education''], Royal House of the Netherlands, 8 séwnika 2025 [dost. 2026-10-04] ({{Jãz.|en}}).</ref>. Prôcowôł jakno wòlontariusz w [[Keniô|Kenie]], dze jakno pilot robił przë transpòrce lékarsczi pòmocë ë przë òchronie strzodowiszcza<ref>King Willem-Alexander, [w:] ''[https://www.royal-house.nl/members-royal-house/king-willem-alexander/flying Flying, Royal House of the Netherlands]'', 26 séwnika 2025 [dost. 2026-10-04] ({{Jãz.|en}}).</ref>. Je pierszim òficérą (F/O) w lotniczi linie KLM<ref>''[https://www.wprost.pl/swiat/10055207/krol-holandii-przez-lata-ukrywal-swoja-tajemnice-w-koncu-ujawnil-sekret.html Król Holandii przez lata ukrywał, że jest pilotem]'' [online], wprost.pl [dostęp 2017-11-27] ({{Jãz.|pl}}).</ref>. W [[2002]] òżenił sã z [[Argentina|argentińską]] ekònomistką Maximą Zorreguietą Cerruti. Pôra mô trzë córczi, [[Katarzëna Amaliô|Katarzënã Amaliã]] (ùr. [[2003]]), Aleksjã (ùr. [[2005]]) ë Arianã (ùr. [[2007]])<ref>''King Willem-Alexander'', [w:] [https://www.royal-house.nl/members-royal-house/king-willem-alexander/marriage-and-family ''Marriage and family''], Royal House of the Netherlands, [dost. 2026-10-04] ({{Jãz.|en}}).</ref>. 30 łżëkwiata 2013 òstôł królã Holandie pò abdikacje swòji matczi. W [[2014]] òb czas gòscënë w [[Pòlskô|Pòlsce]] prezydeńt [[Barnisłôw Komorowsczi|Barnisłôw Kòmòrowsczi]] wëapartnił gò [[Òrder Biôłégò Òrzła|Òrderã Biôłégò Òrzła]]<ref>''[https://web.archive.org/web/20140625010424/http://www.telegraaf.nl/binnenland/22779386/___Vrijheid_dankzij_Polen___.html Koning: vrijheid mede te danken aan Polen]''. telegraaf.nl, 24 czerwińca 2014. [dost. 2014-06-26]. ({{Jãz.|nl}}).</ref>.
== Przëpisë ==
{{Przëpisë}}
[[Kategòrëjô:Mònarchòwie Néderlandsczi]]
pdvwi4ittroa8q65ap0n19ikewybdo2
216503
216470
2026-10-05T10:08:28Z
Terrus38
14026
216503
wikitext
text/x-wiki
[[Òbrôzk:Zijne Majesteit Koning Willem-Alexander met koningsmantel april 2013 (cropped 2).jpeg|mały|Wilem-Aleksander w 2013]]
'''Wilem-Aleksander''' ({{Jãz.|nl}} ''Willem-Alexander Claus George Ferdinand''; ùr. [[27 łżëkwiata]] [[1967]] w [[Ùtrecht|Ùtrechce]]) – król [[Niderlandë|Niderlandów]] òd [[30 łżëkwiata]] [[2013]].
Je synã królewi Beatriczë ë ksãca Clausa von Amsberga<ref>''[https://www.royal-house.nl/members-royal-house/king-willem-alexander King Willem-Alexander]'' [online], Royal House of the Netherlands, 13 stëcznika 2026 [dost. 2026-10-04] ({{Jãz.|en}}).</ref>. Sztudérowôł historiã na Ùniwersytece w Leiden<ref>''King Willem-Alexander'', [w:] [https://www.royal-house.nl/members-royal-house/king-willem-alexander/education ''Education''], Royal House of the Netherlands, 8 séwnika 2025 [dost. 2026-10-04] ({{Jãz.|en}}).</ref>. Prôcowôł jakno wòlontariusz w [[Keniô|Kenie]], dze jakno pilot robił przë transpòrce lékarsczi pòmocë ë przë òchronie strzodowiszcza<ref>King Willem-Alexander, [w:] ''[https://www.royal-house.nl/members-royal-house/king-willem-alexander/flying Flying, Royal House of the Netherlands]'', 26 séwnika 2025 [dost. 2026-10-04] ({{Jãz.|en}}).</ref>. Je pierszim òficérą (F/O) w lotniczi linie KLM<ref>''[https://www.wprost.pl/swiat/10055207/krol-holandii-przez-lata-ukrywal-swoja-tajemnice-w-koncu-ujawnil-sekret.html Król Holandii przez lata ukrywał, że jest pilotem]'' [online], wprost.pl [dostęp 2017-11-27] ({{Jãz.|pl}}).</ref>. W [[2002]] òżenił sã z [[Argentina|argentińską]] ekònomistką Maximą Zorreguietą Cerruti. Pôra mô trzë córczi, [[Katarzëna Amaliô|Katarzënã Amaliã]] (ùr. [[2003]]), Aleksjã (ùr. [[2005]]) ë Arianã (ùr. [[2007]])<ref>''King Willem-Alexander'', [w:] [https://www.royal-house.nl/members-royal-house/king-willem-alexander/marriage-and-family ''Marriage and family''], Royal House of the Netherlands, [dost. 2026-10-04] ({{Jãz.|en}}).</ref>. 30 łżëkwiata 2013 òstôł królã Holandie pò abdikacje swòji matczi. W [[2014]] òb czas gòscënë w [[Pòlskô|Pòlsce]] prezydeńt [[Barnisłôw Komorowsczi|Barnisłôw Kòmòrowsczi]] wëapartnił gò [[Òrder Biôłégò Òrzła|Òrderã Biôłégò Òrzła]]<ref>''[https://web.archive.org/web/20140625010424/http://www.telegraaf.nl/binnenland/22779386/___Vrijheid_dankzij_Polen___.html Koning: vrijheid mede te danken aan Polen]''. telegraaf.nl, 24 czerwińca 2014. [dost. 2014-06-26]. ({{Jãz.|nl}}).</ref>.
== Przëpisë ==
{{Przëpisë}}
[[Kategòrëjô:Mònarchòwie Néderlandsczi]]
onam3priyh9glr2k7fn6ybn1l0tci9i
216506
216503
2026-10-05T10:09:51Z
Terrus38
14026
216506
wikitext
text/x-wiki
[[Òbrôzk:Zijne Majesteit Koning Willem-Alexander met koningsmantel april 2013 (cropped 2).jpeg|mały|Wilem-Aleksander w 2013]]
'''Wilem-Aleksander''' ({{Jãz.|nl}} ''Willem-Alexander Claus George Ferdinand''; ùr. [[27 łżëkwiata]] [[1967]] w [[Ùtrecht|Ùtrechce]]) – król [[Niderlandë|Niderlandów]] òd [[30 łżëkwiata]] [[2013]].
Je synã królewi Beatriczë ë ksãca Clausa von Amsberga<ref>''[https://www.royal-house.nl/members-royal-house/king-willem-alexander King Willem-Alexander]'' [online], Royal House of the Netherlands, 13 stëcznika 2026 [dost. 2026-10-04] ({{Jãz.|en}}).</ref>. Sztudérowôł historiã na Ùniwersytece w Leiden<ref>''King Willem-Alexander'', [w:] [https://www.royal-house.nl/members-royal-house/king-willem-alexander/education ''Education''], Royal House of the Netherlands, 8 séwnika 2025 [dost. 2026-10-04] ({{Jãz.|en}}).</ref>. Prôcowôł jakno wòlontariusz w [[Keniô|Kenie]], dze jakno pilot robił przë transpòrce lékarsczi pòmocë ë przë òchronie strzodowiszcza<ref>King Willem-Alexander, [w:] ''[https://www.royal-house.nl/members-royal-house/king-willem-alexander/flying Flying, Royal House of the Netherlands]'', 26 séwnika 2025 [dost. 2026-10-04] ({{Jãz.|en}}).</ref>. Je pierszim òficérą (F/O) w lotniczi linie KLM<ref>''[https://www.wprost.pl/swiat/10055207/krol-holandii-przez-lata-ukrywal-swoja-tajemnice-w-koncu-ujawnil-sekret.html Król Holandii przez lata ukrywał, że jest pilotem]'' [online], wprost.pl [dostęp 2017-11-27] ({{Jãz.|pl}}).</ref>. W [[2002]] òżenił sã z [[Argentina|argentińską]] ekònomistką Maximą Zorreguietą Cerruti. Pôra mô trzë córczi, [[Katarzëna Amaliô|Katarzënã Amaliã]] (ùr. [[2003]]), Aleksjã (ùr. [[2005]]) ë Arianã (ùr. [[2007]])<ref>''King Willem-Alexander'', [w:] [https://www.royal-house.nl/members-royal-house/king-willem-alexander/marriage-and-family ''Marriage and family''], Royal House of the Netherlands, [dost. 2026-10-04] ({{Jãz.|en}}).</ref>. 30 łżëkwiata 2013 òstôł królã Holandie pò abdikacje swòji matczi. W [[2014]] òb czas gòscënë w [[Pòlskô|Pòlsce]] prezydeńt [[Barnisłôw Komorowsczi|Barnisłôw Kòmòrowsczi]] wëapartnił gò [[Òrder Biôłégò Òrzła|Òrderã Biôłégò Òrzła]]<ref>''[https://web.archive.org/web/20140625010424/http://www.telegraaf.nl/binnenland/22779386/___Vrijheid_dankzij_Polen___.html Koning: vrijheid mede te danken aan Polen]''. telegraaf.nl, 24 czerwińca 2014. [dost. 2014-06-26]. ({{Jãz.|nl}}).</ref>.
== Przëpisë ==
{{Przëpisë}}
e8n44n0tykavls3fbrypls6pxdwlmyh
216507
216506
2026-10-05T10:10:16Z
Terrus38
14026
216507
wikitext
text/x-wiki
[[Òbrôzk:Zijne Majesteit Koning Willem-Alexander met koningsmantel april 2013 (cropped 2).jpeg|mały|Wilem-Aleksander w 2013]]
'''Wilem-Aleksander''' ({{Jãz.|nl}} ''Willem-Alexander Claus George Ferdinand''; ùr. [[27 łżëkwiata]] [[1967]] w [[Ùtrecht|Ùtrechce]]) – król [[Niderlandë|Niderlandów]] òd [[30 łżëkwiata]] [[2013]].
Je synã królewi Beatriczë ë ksãca Clausa von Amsberga<ref>''[https://www.royal-house.nl/members-royal-house/king-willem-alexander King Willem-Alexander]'' [online], Royal House of the Netherlands, 13 stëcznika 2026 [dost. 2026-10-04] ({{Jãz.|en}}).</ref>. Sztudérowôł historiã na Ùniwersytece w Leiden<ref>''King Willem-Alexander'', [w:] [https://www.royal-house.nl/members-royal-house/king-willem-alexander/education ''Education''], Royal House of the Netherlands, 8 séwnika 2025 [dost. 2026-10-04] ({{Jãz.|en}}).</ref>. Prôcowôł jakno wòlontariusz w [[Keniô|Kenie]], dze jakno pilot robił przë transpòrce lékarsczi pòmocë ë przë òchronie strzodowiszcza<ref>King Willem-Alexander, [w:] ''[https://www.royal-house.nl/members-royal-house/king-willem-alexander/flying Flying, Royal House of the Netherlands]'', 26 séwnika 2025 [dost. 2026-10-04] ({{Jãz.|en}}).</ref>. Je pierszim òficérą (F/O) w lotniczi linie KLM<ref>''[https://www.wprost.pl/swiat/10055207/krol-holandii-przez-lata-ukrywal-swoja-tajemnice-w-koncu-ujawnil-sekret.html Król Holandii przez lata ukrywał, że jest pilotem]'' [online], wprost.pl [dostęp 2017-11-27] ({{Jãz.|pl}}).</ref>. W [[2002]] òżenił sã z [[Argentina|argentińską]] ekònomistką Maximą Zorreguietą Cerruti. Pôra mô trzë córczi, [[Katarzëna Amaliô|Katarzënã Amaliã]] (ùr. [[2003]]), Aleksjã (ùr. [[2005]]) ë Arianã (ùr. [[2007]])<ref>''King Willem-Alexander'', [w:] [https://www.royal-house.nl/members-royal-house/king-willem-alexander/marriage-and-family ''Marriage and family''], Royal House of the Netherlands, [dost. 2026-10-04] ({{Jãz.|en}}).</ref>. 30 łżëkwiata 2013 òstôł królã Holandie pò abdikacje swòji matczi. W [[2014]] òb czas gòscënë w [[Pòlskô|Pòlsce]] prezydeńt [[Barnisłôw Komorowsczi|Barnisłôw Kòmòrowsczi]] wëapartnił gò [[Òrder Biôłégò Òrzła|Òrderã Biôłégò Òrzła]]<ref>''[https://web.archive.org/web/20140625010424/http://www.telegraaf.nl/binnenland/22779386/___Vrijheid_dankzij_Polen___.html Koning: vrijheid mede te danken aan Polen]''. telegraaf.nl, 24 czerwińca 2014. [dost. 2014-06-26]. ({{Jãz.|nl}}).</ref>.
== Przëpisë ==
{{Przëpisë}}
[[Kategòrëjô:Mònarchòwie Niderlandów]]
raao7hajvfdmmynwn6wsdyd09ggjxpe
Kategòrëjô:Mònarchòwie Niderlandów
14
14188
216460
2026-10-04T13:09:50Z
DawnyTest
14843
Ùsôdzonô nowô starna "[[Kategòrëjô:Mònarchòwie]] [[Kategòrëjô:Néderlandzkô]]"
216460
wikitext
text/x-wiki
[[Kategòrëjô:Mònarchòwie]]
[[Kategòrëjô:Néderlandzkô]]
f4074g1hr9zvkj9s0jspxoyi1l0q2vz
216504
216460
2026-10-05T10:09:11Z
Terrus38
14026
Terrus38 przeniós starnã [[Kategòrëjô:Mònarchòwie Néderlandsczi]] do [[Kategòrëjô:Mònarchòwie Niderlandów]]: 1. pisënk, 2. pòwszechno brëkòwóną fòrmą w kaszëbsczim są "Niderlandë", nié "Néderlandzkô"
216460
wikitext
text/x-wiki
[[Kategòrëjô:Mònarchòwie]]
[[Kategòrëjô:Néderlandzkô]]
f4074g1hr9zvkj9s0jspxoyi1l0q2vz
216520
216504
2026-10-05T10:19:53Z
Terrus38
14026
216520
wikitext
text/x-wiki
[[Kategòrëjô:Mònarchòwie]]
[[Kategòrëjô:Niderlandë]]
5upquyg545i8ttn69nz2ols9m1qb33r
Wilhelm-Aleksander
0
14189
216468
2026-10-04T15:35:07Z
Terrus38
14026
Terrus38 przeniós starnã [[Wilhelm-Aleksander]] do [[Wilem-Aleksander]]: kaszëbskô fòrma miona, ùchwałë RKJ 4, 5, 6, 8/08
216468
wikitext
text/x-wiki
#PATRZ [[Wilem-Aleksander]]
ecrbz88lww8eq23kyxa14y5vhdkjeb3
216469
216468
2026-10-04T15:35:38Z
Terrus38
14026
216469
wikitext
text/x-wiki
#PATRZ [[Wilem-Aleksander]]
[[Kategòrëjô:Przeczerowania z jinégò jãzëka/pl]]
5933f288p4pk7crr04oryop9ez0dfq4
Moduł:PAGENAMEish
828
14190
216471
2026-10-04T16:08:35Z
Iketsi
3254
N
216471
Scribunto
text/plain
local function stripThroughFirstColon(value)
local position = string.find(value, ":", 1, true)
return position
and string.sub(value, position + 1)
or value
end
hw8ojxzb9fv2mln838yfxryzvsnph85
Wiki:1000
4
14191
216494
2026-10-05T04:34:03Z
Iketsi
3254
N – Wiki:1000 – tësąc nôjwôżniejszëch artiklów
216494
wikitext
text/x-wiki
Wiki:1000 – tësąc nôjwôżniejszëch artiklów:
== {{Etikéta|preset=1kat|item=Q5640343}} == <!-- Biography -->
=== {{Etikéta|preset=1kat|item=Q4266974}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q6460970}}}} === <!-- Philosophers and social scientists -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q868}}
# {{Etikéta|preset=1k|item=Q7197}}
# {{Etikéta|preset=1k|item=Q9045}}
# {{Etikéta|preset=1k|item=Q4604}}
# {{Etikéta|preset=1k|item=Q9191}}
# {{Etikéta|preset=1k|item=Q9215}}
# {{Etikéta|preset=1k|item=Q9235}}
# {{Etikéta|preset=1k|item=Q48301}}
# {{Etikéta|preset=1k|item=Q9294}}
# {{Etikéta|preset=1k|item=Q9312}}
# {{Etikéta|preset=1k|item=Q9317}}
# {{Etikéta|preset=1k|item=Q9333}}
# {{Etikéta|preset=1k|item=Q9353}}
# {{Etikéta|preset=1k|item=Q1399}}
# {{Etikéta|preset=1k|item=Q9061}}
# {{Etikéta|preset=1k|item=Q9358}}
# {{Etikéta|preset=1k|item=Q859}}
# {{Etikéta|preset=1k|item=Q6527}}
# {{Etikéta|preset=1k|item=Q9364}}
# {{Etikéta|preset=1k|item=Q9372}}
# {{Etikéta|preset=1k|item=Q9381}}
# {{Etikéta|preset=1k|item=Q913}}
# {{Etikéta|preset=1k|item=Q9068}}
# {{Etikéta|preset=1k|item=Q9387}}
# {{Etikéta|preset=1k|item=Q9391}}
# {{Etikéta|preset=1k|item=Q9397}}
}}
=== {{Etikéta|preset=1kat|item=Q7582881}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q6997334}}}} === <!--Religious figures and theologians-->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q9181}}
# {{Etikéta|preset=1k|item=Q9438}}
# {{Etikéta|preset=1k|item=Q8018}}
# {{Etikéta|preset=1k|item=Q9441}}
# {{Etikéta|preset=1k|item=Q9546}}
# {{Etikéta|preset=1k|item=Q302}}
# {{Etikéta|preset=1k|item=Q9554}}
# {{Etikéta|preset=1k|item=Q9077}}
# {{Etikéta|preset=1k|item=Q9458}}
# {{Etikéta|preset=1k|item=Q171195}}
}}
=== {{Etikéta|preset=1kat|item=Q5753390}} === <!-- Politicians -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q8597}}
# {{Etikéta|preset=1k|item=Q8409}}
# {{Etikéta|preset=1k|item=Q8589}}<!-- Great Indian monarch of antiquity; spread Buddhism -->
# {{Etikéta|preset=1k|item=Q5152}}
# {{Etikéta|preset=1k|item=Q1405}}
# {{Etikéta|preset=1k|item=Q8442}}
# {{Etikéta|preset=1k|item=Q8605}}
# {{Etikéta|preset=1k|item=Q1048}}
# {{Etikéta|preset=1k|item=Q3044}}
# {{Etikéta|preset=1k|item=Q8016}}
# {{Etikéta|preset=1k|item=Q8413}}
# {{Etikéta|preset=1k|item=Q8423}}
# {{Etikéta|preset=1k|item=Q2042}}
# {{Etikéta|preset=1k|item=Q7207}}
# {{Etikéta|preset=1k|item=Q1001}}
# {{Etikéta|preset=1k|item=Q720}}
# {{Etikéta|preset=1k|item=Q5809}}
# {{Etikéta|preset=1k|item=Q352}}
# {{Etikéta|preset=1k|item=Q7226}}
# {{Etikéta|preset=1k|item=Q8027}}
# {{Etikéta|preset=1k|item=Q1394}}
# {{Etikéta|preset=1k|item=Q91}}
# {{Etikéta|preset=1k|item=Q7742}}
# {{Etikéta|preset=1k|item=Q7231}}
# {{Etikéta|preset=1k|item=Q517}}
# {{Etikéta|preset=1k|item=Q8023}}
# {{Etikéta|preset=1k|item=Q5816}}
# {{Etikéta|preset=1k|item=Q1047}}
# {{Etikéta|preset=1k|item=Q8620}}
# {{Etikéta|preset=1k|item=Q8479}}
# {{Etikéta|preset=1k|item=Q7192}}<!-- Created first Chinese state and dynasty -->
# {{Etikéta|preset=1k|item=Q8007}}
# {{Etikéta|preset=1k|item=Q8581}}
# {{Etikéta|preset=1k|item=Q855}}
# {{Etikéta|preset=1k|item=Q8474}}<!-- Greatest Ottoman sultan -->
# {{Etikéta|preset=1k|item=Q8573}}
# {{Etikéta|preset=1k|item=Q8462}}
# {{Etikéta|preset=1k|item=Q8467}}<!-- Conquered Persia, Syria, Palestine, and Egypt for Islam -->
# {{Etikéta|preset=1k|item=Q23}}
}}
=== {{Etikéta|preset=1kat|item=Q6528885}}, {{lcfirst:{{Etikéta|preset=1kat|item=Q7043111}}}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q7217485}}}} === <!-- Inventors, scientists and mathematicians -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q8739}}
# {{Etikéta|preset=1k|item=Q8011}}
# {{Etikéta|preset=1k|item=Q80}}
# {{Etikéta|preset=1k|item=Q202943}}
# {{Etikéta|preset=1k|item=Q619}}
# {{Etikéta|preset=1k|item=Q7186}}
# {{Etikéta|preset=1k|item=Q1035}}
# {{Etikéta|preset=1k|item=Q8743}}
# {{Etikéta|preset=1k|item=Q937}}
# {{Etikéta|preset=1k|item=Q8747}}
# {{Etikéta|preset=1k|item=Q7604}}
# {{Etikéta|preset=1k|item=Q8750}}
# {{Etikéta|preset=1k|item=Q8753}}
# {{Etikéta|preset=1k|item=Q8768}}
# {{Etikéta|preset=1k|item=Q8778}}
# {{Etikéta|preset=1k|item=Q307}}
# {{Etikéta|preset=1k|item=Q6722}}
# {{Etikéta|preset=1k|item=Q8958}}
# {{Etikéta|preset=1k|item=Q41585}}
# {{Etikéta|preset=1k|item=Q8962}}
# {{Etikéta|preset=1k|item=Q8963}}
# {{Etikéta|preset=1k|item=Q9038}}
# {{Etikéta|preset=1k|item=Q9047}}
# {{Etikéta|preset=1k|item=Q1043}}
# {{Etikéta|preset=1k|item=Q9095}}
# {{Etikéta|preset=1k|item=Q9106}}
# {{Etikéta|preset=1k|item=Q935}}
# {{Etikéta|preset=1k|item=Q529}}
# {{Etikéta|preset=1k|item=Q9021}}
# {{Etikéta|preset=1k|item=Q9123}}
# {{Etikéta|preset=1k|item=Q9130}}
# {{Etikéta|preset=1k|item=Q9036}}
# {{Etikéta|preset=1k|item=Q7251}}
# {{Etikéta|preset=1k|item=Q9041}}
}}
=== {{Etikéta|preset=1kat|item=Q6442246}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q6875304}}}} === <!-- Artists and architects -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q4724}}
# {{Etikéta|preset=1k|item=Q5577}}
# {{Etikéta|preset=1k|item=Q5580}}
# {{Etikéta|preset=1k|item=Q5582}}
# {{Etikéta|preset=1k|item=Q5432}}
# {{Etikéta|preset=1k|item=Q5586}}
# {{Etikéta|preset=1k|item=Q5588}}
# {{Etikéta|preset=1k|item=Q762}}
# {{Etikéta|preset=1k|item=Q5589}}
# {{Etikéta|preset=1k|item=Q5592}}
# {{Etikéta|preset=1k|item=Q5593}}
# {{Etikéta|preset=1k|item=Q5597}}
# {{Etikéta|preset=1k|item=Q5598}}
# {{Etikéta|preset=1k|item=Q5599}}
# {{Etikéta|preset=1k|item=Q5600}}
# {{Etikéta|preset=1k|item=Q297}}
# {{Etikéta|preset=1k|item=Q5603}}
# {{Etikéta|preset=1k|item=Q5604}}
}}
=== {{Etikéta|preset=1kat|item=Q8008937}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q6606401}}}} === <!-- Composers and musicians -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q1779}}
# {{Etikéta|preset=1k|item=Q1339}}
# {{Etikéta|preset=1k|item=Q1299}}
# {{Etikéta|preset=1k|item=Q255}}
# {{Etikéta|preset=1k|item=Q7294}}
# {{Etikéta|preset=1k|item=Q1268}}
# {{Etikéta|preset=1k|item=Q7298}}
# {{Etikéta|preset=1k|item=Q7302}}
# {{Etikéta|preset=1k|item=Q7349}}
# {{Etikéta|preset=1k|item=Q2831}}
# {{Etikéta|preset=1k|item=Q1110560}}
# {{Etikéta|preset=1k|item=Q7304}}
# {{Etikéta|preset=1k|item=Q254}}
# {{Etikéta|preset=1k|item=Q179277}}
# {{Etikéta|preset=1k|item=Q7311}}
# {{Etikéta|preset=1k|item=Q7312}}
# {{Etikéta|preset=1k|item=Q7314}}
# {{Etikéta|preset=1k|item=Q7315}}
# {{Etikéta|preset=1k|item=Q7317}}
# {{Etikéta|preset=1k|item=Q1340}}
# {{Etikéta|preset=1k|item=Q1511}}
}}
=== {{Etikéta|preset=1kat|item=Q3919997}}, {{lcfirst:{{Etikéta|preset=1kat|item=Q3920019}}}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q3919792}}}} === <!-- Film directors, screenwriters and actors -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q7546}}
# {{Etikéta|preset=1k|item=Q4605}}
# {{Etikéta|preset=1k|item=Q882}}
# {{Etikéta|preset=1k|item=Q4612}}
# {{Etikéta|preset=1k|item=Q8704}}
# {{Etikéta|preset=1k|item=Q8003}}
# {{Etikéta|preset=1k|item=Q7371}}
# {{Etikéta|preset=1k|item=Q7374}}
# {{Etikéta|preset=1k|item=Q2001}}
# {{Etikéta|preset=1k|item=Q8006}}
# {{Etikéta|preset=1k|item=Q4616}}
# {{Etikéta|preset=1k|item=Q8873}}
}}
=== {{Etikéta|preset=1kat|item=Q5849863}}, {{lcfirst:{{Etikéta|preset=1kat|item=Q9702405}}}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q6487149}}}} === <!-- Authors, playwrights and poets -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q5670}}
# {{Etikéta|preset=1k|item=Q5673}}
# {{Etikéta|preset=1k|item=Q36322}}
# {{Etikéta|preset=1k|item=Q5676}}
# {{Etikéta|preset=1k|item=Q909}}
# {{Etikéta|preset=1k|item=Q5679}}
# {{Etikéta|preset=1k|item=Q5682}}
# {{Etikéta|preset=1k|item=Q5683}}
# {{Etikéta|preset=1k|item=Q5685}}
# {{Etikéta|preset=1k|item=Q1067}}
# {{Etikéta|preset=1k|item=Q5686}}
# {{Etikéta|preset=1k|item=Q991}}
# {{Etikéta|preset=1k|item=Q5878}}
# {{Etikéta|preset=1k|item=Q5879}}
# {{Etikéta|preset=1k|item=Q6240}}
# {{Etikéta|preset=1k|item=Q6691}}
# {{Etikéta|preset=1k|item=Q535}}
# {{Etikéta|preset=1k|item=Q6882}}
# {{Etikéta|preset=1k|item=Q905}}
# {{Etikéta|preset=1k|item=Q7011}}
# {{Etikéta|preset=1k|item=Q7071}}
# {{Etikéta|preset=1k|item=Q7176}}
# {{Etikéta|preset=1k|item=Q687}}
# {{Etikéta|preset=1k|item=Q7198}}
# {{Etikéta|preset=1k|item=Q7199}}
# {{Etikéta|preset=1k|item=Q7200}}
# {{Etikéta|preset=1k|item=Q692}}
# {{Etikéta|preset=1k|item=Q7235}}
# {{Etikéta|preset=1k|item=Q7241}}
# {{Etikéta|preset=1k|item=Q7243}}
# {{Etikéta|preset=1k|item=Q7245}}
# {{Etikéta|preset=1k|item=Q1398}}
}}
=== {{Etikéta|preset=1kat|item=Q7043334}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q7074786}}}} === <!-- Explorers and travellers -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q926}}
# {{Etikéta|preset=1k|item=Q1615}}
# {{Etikéta|preset=1k|item=Q7321}}
# {{Etikéta|preset=1k|item=Q7322}}
# {{Etikéta|preset=1k|item=Q7324}}
# {{Etikéta|preset=1k|item=Q7326}}
# {{Etikéta|preset=1k|item=Q7327}}
# {{Etikéta|preset=1k|item=Q7328}}
# {{Etikéta|preset=1k|item=Q7331}}
# {{Etikéta|preset=1k|item=Q1496}}
# {{Etikéta|preset=1k|item=Q6101}}
# {{Etikéta|preset=1k|item=Q7333}}
}}
== {{Etikéta|preset=1kat|item=Q1983674}} == <!-- Philosophy -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q7066}}
# {{Etikéta|preset=1k|item=Q7242}}
# {{Etikéta|preset=1k|item=Q9581}}
# {{Etikéta|preset=1k|item=Q9453}}
# {{Etikéta|preset=1k|item=Q9465}}
# {{Etikéta|preset=1k|item=Q9471}}
# {{Etikéta|preset=1k|item=Q9476}}
# {{Etikéta|preset=1k|item=Q9081}}
# {{Etikéta|preset=1k|item=Q8078}}
# {{Etikéta|preset=1k|item=Q7081}}
# {{Etikéta|preset=1k|item=Q5891}}
# {{Etikéta|preset=1k|item=Q9510}}
# {{Etikéta|preset=1k|item=Q7949}}
}}
== {{Etikéta|preset=1kat|item=Q1457903}} == <!-- Religion -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q9149}}
# {{Etikéta|preset=1k|item=Q190}}
## {{Etikéta|preset=1k|item=Q9159}}
## {{Etikéta|preset=1k|item=Q9163}}
# {{Etikéta|preset=1k|item=Q9134}}
# {{Etikéta|preset=1k|item=Q128593}}
# {{Etikéta|preset=1k|item=Q9174}}
# {{Etikéta|preset=1k|item=Q9165}}
# {{Etikéta|preset=1kat|item=Q5881075}} <!-- Specific religions -->
## {{Etikéta|preset=1k|item=Q748}}
## {{Etikéta|preset=1k|item=Q5043}}
### {{Etikéta|preset=1k|item=Q9592}}
### {{Etikéta|preset=1k|item=Q23540}}
## {{Etikéta|preset=1k|item=Q9089}}
## {{Etikéta|preset=1k|item=Q432}}
### {{Etikéta|preset=1k|item=Q9585}}
### {{Etikéta|preset=1k|item=Q483654}}
## {{Etikéta|preset=1k|item=Q9232}}
## {{Etikéta|preset=1k|item=Q9268}}
## {{Etikéta|preset=1k|item=Q812767}}
## {{Etikéta|preset=1k|item=Q9316}}
## {{Etikéta|preset=1k|item=Q9598}}
## {{Etikéta|preset=1k|item=Q9601}}
}}
== {{Etikéta|preset=1kat|item=Q6577596}} == <!-- Social sciences -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q8425}}
# {{Etikéta|preset=1k|item=Q8432}}
# {{Etikéta|preset=1k|item=Q8434}}
=== {{Etikéta|preset=1kat|item=Q1983760}} === <!-- Psychology -->
# {{Etikéta|preset=1k|item=Q9332}}
# {{Etikéta|preset=1k|item=Q9415}}
# {{Etikéta|preset=1k|item=Q316}}
# {{Etikéta|preset=1k|item=Q450}}
# {{Etikéta|preset=1k|item=Q9418}}
# {{Etikéta|preset=1k|item=Q9420}}
=== {{Etikéta|preset=1kat|item=Q7216461}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q7237794}}}} === <!-- Family and relationships -->
# {{Etikéta|preset=1k|item=Q8436}}
# {{Etikéta|preset=1k|item=Q7569}}
# {{Etikéta|preset=1k|item=Q8441}}
# {{Etikéta|preset=1k|item=Q8445}}
# {{Etikéta|preset=1k|item=Q467}}
=== {{Etikéta|preset=1kat|item=Q4103183}} === <!-- Politics -->
# {{Etikéta|preset=1k|item=Q7163}}
# {{Etikéta|preset=1k|item=Q7167}}
# {{Etikéta|preset=1k|item=Q1889}}
# {{Etikéta|preset=1k|item=Q7188}}
## {{Etikéta|preset=1k|item=Q7174}}
## {{Etikéta|preset=1k|item=Q317}}
## {{Etikéta|preset=1k|item=Q7269}}
## {{Etikéta|preset=1k|item=Q7270}}
# {{Etikéta|preset=1k|item=Q7257}}
## {{Etikéta|preset=1k|item=Q6199}}
## {{Etikéta|preset=1k|item=Q6206}}
## {{Etikéta|preset=1k|item=Q6186}}
## {{Etikéta|preset=1k|item=Q7169}}
## {{Etikéta|preset=1k|item=Q6223}}
## {{Etikéta|preset=1k|item=Q6216}}
## {{Etikéta|preset=1k|item=Q7264}}
## {{Etikéta|preset=1k|item=Q6235}}
## {{Etikéta|preset=1k|item=Q7272}}
# {{Etikéta|preset=1k|item=Q7260}}
# {{Etikéta|preset=1k|item=Q7275}}
# {{Etikéta|preset=1k|item=Q7278}}
# {{Etikéta|preset=1k|item=Q7281}}
=== {{Etikéta|preset=1kat|item=Q6353120}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q4026633}}}} === <!-- Business and economics -->
# {{Etikéta|preset=1k|item=Q8134}}
# {{Etikéta|preset=1k|item=Q8137}}
# {{Etikéta|preset=1k|item=Q8142}}
## {{Etikéta|preset=1k|item=Q4916}}
## {{Etikéta|preset=1k|item=Q4917}}
# {{Etikéta|preset=1k|item=Q8148}}
# {{Etikéta|preset=1k|item=Q1368}}
# {{Etikéta|preset=1k|item=Q8161}}
# {{Etikéta|preset=1k|item=Q601401}}
=== {{Etikéta|preset=1kat|item=Q4026563}} === <!-- Law -->
# {{Etikéta|preset=1k|item=Q7748}}
# {{Etikéta|preset=1k|item=Q7755}}
=== {{Etikéta|preset=1kat|item=Q6528085}} === <!-- International organizations -->
# {{Etikéta|preset=1k|item=Q7159}}
# {{Etikéta|preset=1k|item=Q7172}}
# {{Etikéta|preset=1k|item=Q7768}}
# {{Etikéta|preset=1k|item=Q7785}}
# {{Etikéta|preset=1k|item=Q458}}
# {{Etikéta|preset=1k|item=Q7178}}
# {{Etikéta|preset=1k|item=Q7184}}
# {{Etikéta|preset=1k|item=Q7191}}
# {{Etikéta|preset=1k|item=Q7795}}
# {{Etikéta|preset=1k|item=Q1065}}
## {{Etikéta|preset=1k|item=Q7801}}
## {{Etikéta|preset=1k|item=Q7804}}
## {{Etikéta|preset=1k|item=Q7809}}
## {{Etikéta|preset=1k|item=Q7817}}
# {{Etikéta|preset=1k|item=Q7164}}
# {{Etikéta|preset=1k|item=Q7825}}
=== {{Etikéta|preset=1kat|item=Q8394144}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q5850187}}}} === <!-- War and military -->
# {{Etikéta|preset=1k|item=Q8473}}
# {{Etikéta|preset=1k|item=Q454}}
# {{Etikéta|preset=1k|item=Q7283}}
# {{Etikéta|preset=1k|item=Q198}}
## {{Etikéta|preset=1k|item=Q8465}}
=== {{Etikéta|preset=1kat|item=Q7090668}} === <!-- Social issues -->
# {{Etikéta|preset=1k|item=Q8452}}
# {{Etikéta|preset=1k|item=Q8454}}
# {{Etikéta|preset=1k|item=Q169207}}
## {{Etikéta|preset=1k|item=Q8461}}
# {{Etikéta|preset=1k|item=Q7252}}
# {{Etikéta|preset=1k|item=Q7181}}
# {{Etikéta|preset=1k|item=Q8458}}
# {{Etikéta|preset=1k|item=Q10294}}
# {{Etikéta|preset=1k|item=Q8463}}
}}
== {{Etikéta|preset=1kat|item=Q1458484}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q8259}}}} == <!-- Language and literature -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q315}}
# {{Etikéta|preset=1kat|item=Q4960490}}
## {{Etikéta|preset=1k|item=Q13955}} <!-- Technically, not a single language. -->
## {{Etikéta|preset=1k|item=Q9610}}
## {{Etikéta|preset=1k|item=Q7850}} <!-- Technically, not a single language. -->
## {{Etikéta|preset=1k|item=Q1860}}
## {{Etikéta|preset=1k|item=Q150}}
## {{Etikéta|preset=1k|item=Q188}}
## {{Etikéta|preset=1k|item=Q9129}}
## {{Etikéta|preset=1k|item=Q9288}}
## {{Etikéta|preset=1k|item=Q11051}}
## {{Etikéta|preset=1k|item=Q9176}}
## {{Etikéta|preset=1k|item=Q5287}}
## {{Etikéta|preset=1k|item=Q397}}
## {{Etikéta|preset=1k|item=Q9168}}
## {{Etikéta|preset=1k|item=Q5146}}
## {{Etikéta|preset=1k|item=Q7737}}
## {{Etikéta|preset=1k|item=Q11059}}
## {{Etikéta|preset=1k|item=Q1321}}
## {{Etikéta|preset=1k|item=Q7838}}
## {{Etikéta|preset=1k|item=Q256}}
# {{Etikéta|preset=1k|item=Q8162}}
# {{Etikéta|preset=1k|item=Q8091}}
# {{Etikéta|preset=1k|item=Q8171}}
## {{Etikéta|preset=1k|item=Q8183}}
## {{Etikéta|preset=1k|item=Q8188}}
# {{Etikéta|preset=1k|item=Q8192}}
## {{Etikéta|preset=1k|item=Q1828555}}
## {{Etikéta|preset=1k|item=Q8201}}
## {{Etikéta|preset=1k|item=Q8209}}
## {{Etikéta|preset=1k|item=Q8216}}
## {{Etikéta|preset=1k|item=Q8229}}
# {{Etikéta|preset=1k|item=Q8236}}
# {{Etikéta|preset=1k|item=Q7553}}
# {{Etikéta|preset=1k|item=Q8242}}
## {{Etikéta|preset=1k|item=Q676}}
### ''{{Etikéta|preset=1k|item=Q8251}}''
## {{Etikéta|preset=1k|item=Q8253}}
### ''{{Etikéta|preset=1k|item=Q8258}}''
## {{Etikéta|preset=1k|item=Q8261}}
### ''{{Etikéta|preset=1k|item=Q8269}}''
## {{Etikéta|preset=1k|item=Q482}}
### ''{{Etikéta|preset=1k|item=Q8272}}''
### ''{{Etikéta|preset=1k|item=Q8275}}''
### ''{{Etikéta|preset=1k|item=Q8279}}''
## {{Etikéta|preset=1kat|item=Q9232453}} <!-- Religious texts -->
### ''{{Etikéta|preset=1k|item=Q1845}}''
### ''{{Etikéta|preset=1k|item=Q8276}}''
}}
== {{Etikéta|preset=1kat|item=Q8840652}} == <!-- Measurements -->
{{Kòlumnë|number=2|1=
# {{Etikéta|preset=1k|item=Q12453}}
# {{Etikéta|preset=1k|item=Q12457}}
=== {{Etikéta|preset=1kat|item=Q5828462}} ({{lcfirst:{{Etikéta|preset=1kat|item=Q105592638}}}}; {{lcfirst:{{Etikéta|preset=1kat|item=Q8175902}}}}; {{lcfirst:{{Etikéta|preset=1kat|item=Q9648275}}}}) === <!-- Weight, volume and distance -->
# {{Etikéta|preset=1k|item=Q11570}}
# {{Etikéta|preset=1k|item=Q11582}}
# {{Etikéta|preset=1k|item=Q11573}}
=== {{Etikéta|preset=1kat|item=Q4049213}} === <!-- Time -->
# {{Etikéta|preset=1k|item=Q12132}}
## {{Etikéta|preset=1k|item=Q12138}}
# {{Etikéta|preset=1k|item=Q376}}
# {{Etikéta|preset=1k|item=Q11574}}
# {{Etikéta|preset=1k|item=Q573}}
# {{Etikéta|preset=1k|item=Q577}}
# {{Etikéta|preset=1k|item=Q12143}}
}}
=== {{Etikéta|preset=1kat|item=Q1458083}} === <!-- Science -->
# {{Etikéta|preset=1k|item=Q336}}
# {{Etikéta|preset=1k|item=Q7860}}
=== {{Etikéta|preset=1kat|item=Q6508}} === <!-- Astronomy -->
{{Kòlumnë|number=2|1=
# {{Etikéta|preset=1k|item=Q333}}
# {{Etikéta|preset=1k|item=Q3863}}
# {{Etikéta|preset=1k|item=Q323}}
# {{Etikéta|preset=1k|item=Q589}}
# {{Etikéta|preset=1k|item=Q3559}}
# {{Etikéta|preset=1k|item=Q318}}
## {{Etikéta|preset=1k|item=Q321}}
# {{Etikéta|preset=1k|item=Q405}}
# {{Etikéta|preset=1k|item=Q634}}
## {{Etikéta|preset=1k|item=Q308}}
## {{Etikéta|preset=1k|item=Q313}}
## {{Etikéta|preset=1k|item=Q2}}
## {{Etikéta|preset=1k|item=Q111}}
## {{Etikéta|preset=1k|item=Q319}}
## {{Etikéta|preset=1k|item=Q193}}
## {{Etikéta|preset=1k|item=Q324}}
## {{Etikéta|preset=1k|item=Q332}}
# {{Etikéta|preset=1k|item=Q544}}
# {{Etikéta|preset=1k|item=Q5916}}
# {{Etikéta|preset=1k|item=Q523}}
## {{Etikéta|preset=1k|item=Q525}}
# {{Etikéta|preset=1k|item=Q1}}
}}
=== {{Etikéta|preset=1kat|item=Q1457402}} === <!-- Biology -->
{{Kòlumnë|number=2|1=
# {{Etikéta|preset=1k|item=Q420}}
# {{Etikéta|preset=1kat|item=Q6807119}} <!-- Organic compounds -->
## {{Etikéta|preset=1k|item=Q7430}}
## {{Etikéta|preset=1k|item=Q8047}}
## {{Etikéta|preset=1k|item=Q11364}}
## {{Etikéta|preset=1k|item=Q8054}}
# {{Etikéta|preset=1k|item=Q441}}
# {{Etikéta|preset=1k|item=Q4}}
## {{Etikéta|preset=1k|item=Q10737}}
# {{Etikéta|preset=1k|item=Q7150}}
## {{Etikéta|preset=1k|item=Q11394}}
# {{Etikéta|preset=1k|item=Q3}}
# {{Etikéta|preset=1k|item=Q11398}}
## {{Etikéta|preset=1k|item=Q7432}}
}}
==== {{Etikéta|preset=1kat|item=Q6226217}} ==== <!-- Biological processes -->
{{Kòlumnë|number=2|1=
# {{Etikéta|preset=1k|item=Q1057}}
## {{Etikéta|preset=1k|item=Q11978}}
## {{Etikéta|preset=1k|item=Q11982}}
## {{Etikéta|preset=1k|item=Q472287}}
# {{Etikéta|preset=1k|item=Q1063}}
# {{Etikéta|preset=1k|item=Q11990}}
## {{Etikéta|preset=1k|item=Q11995}}
## {{Etikéta|preset=1k|item=Q290}}
}}
==== {{Etikéta|preset=1kat|item=Q5626060}} ==== <!-- Organisms -->
{{Kòlumnë|number=2|1=
# {{Etikéta|preset=1k|item=Q7239}}
# {{Etikéta|preset=1k|item=Q729}}
## {{Etikéta|preset=1k|item=Q5185}}
## {{Etikéta|preset=1k|item=Q25326}}
## {{Etikéta|preset=1k|item=Q1360}}
### {{Etikéta|preset=1k|item=Q1390}}
#### {{Etikéta|preset=1k|item=Q7386}}
#### {{Etikéta|preset=1k|item=Q7391}}
#### {{Etikéta|preset=1k|item=Q7367}}
### {{Etikéta|preset=1k|item=Q1357}}
## {{Etikéta|preset=1kat|item=Q8734609}} <!-- Chordates -->
### {{Etikéta|preset=1k|item=Q10908}}
### {{Etikéta|preset=1k|item=Q5113}}
#### {{Etikéta|preset=1k|item=Q780}}
#### {{Etikéta|preset=1k|item=Q10856}}
### {{Etikéta|preset=1k|item=Q152}}
#### {{Etikéta|preset=1k|item=Q7372}}
### {{Etikéta|preset=1k|item=Q7377}}
#### {{Etikéta|preset=1k|item=Q7375}}
#### {{Etikéta|preset=1k|item=Q146}}
#### {{Etikéta|preset=1k|item=Q830}}
#### {{Etikéta|preset=1k|item=Q160}}
#### {{Etikéta|preset=1k|item=Q144}}
#### {{Etikéta|preset=1k|item=Q726}}
#### {{Etikéta|preset=1k|item=Q7368}}
#### {{Etikéta|preset=1k|item=Q10850}}
#### {{Etikéta|preset=1k|item=Q787}}
#### {{Etikéta|preset=1k|item=Q7380}}
##### {{Etikéta|preset=1k|item=Q5}}
### {{Etikéta|preset=1k|item=Q10811}}
#### {{Etikéta|preset=1k|item=Q430}}
#### {{Etikéta|preset=1k|item=Q2102}}
# {{Etikéta|preset=1k|item=Q37868}}
# {{Etikéta|preset=1k|item=Q10872}}
# {{Etikéta|preset=1k|item=Q10876}}
# {{Etikéta|preset=1k|item=Q764}}
# {{Etikéta|preset=1k|item=Q756}}
## {{Etikéta|preset=1k|item=Q506}}
## {{Etikéta|preset=1k|item=Q1364}}
## {{Etikéta|preset=1k|item=Q10884}}
# {{Etikéta|preset=1k|item=Q10892}}
}}
==== {{Etikéta|preset=1kat|item=Q4095469}} ==== <!-- Anatomy -->
{{Kòlumnë|number=2|1=
# {{Etikéta|preset=1k|item=Q514}}
# {{Etikéta|preset=1k|item=Q7868}}
# {{Etikéta|preset=1k|item=Q11068}}
## {{Etikéta|preset=1k|item=Q7873}}
## {{Etikéta|preset=1k|item=Q1072}}
# {{Etikéta|preset=1k|item=Q11078}}
# {{Etikéta|preset=1k|item=Q9649}}
## {{Etikéta|preset=1k|item=Q11083}}
## {{Etikéta|preset=1k|item=Q11090}}
## {{Etikéta|preset=1k|item=Q9368}}
# {{Etikéta|preset=1k|item=Q7365}}
# {{Etikéta|preset=1k|item=Q9404}}
## {{Etikéta|preset=1k|item=Q1073}}
## {{Etikéta|preset=1k|item=Q9620}}
## {{Etikéta|preset=1k|item=Q11101}}
### {{Etikéta|preset=1k|item=Q7362}}
### {{Etikéta|preset=1k|item=Q7363}}
### {{Etikéta|preset=1k|item=Q7364}}
### {{Etikéta|preset=1k|item=Q124794}}
# {{Etikéta|preset=1k|item=Q7895}}
# {{Etikéta|preset=1k|item=Q7891}}
# {{Etikéta|preset=1k|item=Q7881}}
# {{Etikéta|preset=1k|item=Q1074}}
}}
=== {{Etikéta|preset=1kat|item=Q7486603}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q4095812}}}} === <!-- Health and medicine -->
{{Kòlumnë|number=2|1=
# {{Etikéta|preset=1k|item=Q11190}}
# {{Etikéta|preset=1k|item=Q12128}}
# {{Etikéta|preset=1k|item=Q12136}}
# {{Etikéta|preset=1k|item=Q12140}}
## {{Etikéta|preset=1k|item=Q12187}}
# {{Etikéta|preset=1k|item=Q12147}}
# {{Etikéta|preset=1k|item=Q1059}}
# {{Etikéta|preset=1k|item=Q12171}}
# {{Etikéta|preset=1k|item=Q12184}}
# {{Etikéta|preset=1k|item=Q134808}}
# {{Etikéta|preset=1k|item=Q808}}
==== {{Etikéta|preset=1kat|item=Q7215431}} ==== <!-- Diseases/disorders -->
# {{Etikéta|preset=1k|item=Q12029}}
## {{Etikéta|preset=1k|item=Q153}}
## {{Etikéta|preset=1k|item=Q1566}}
# {{Etikéta|preset=1k|item=Q11081}}
# {{Etikéta|preset=1k|item=Q12078}}
# {{Etikéta|preset=1k|item=Q199804}}
# {{Etikéta|preset=1k|item=Q12125}}
# {{Etikéta|preset=1k|item=Q12131}}
## {{Etikéta|preset=1k|item=Q10874}}
## {{Etikéta|preset=1k|item=Q12133}}
# {{Etikéta|preset=1k|item=Q12135}}
# {{Etikéta|preset=1k|item=Q41571}}
# {{Etikéta|preset=1k|item=Q156103}}
# {{Etikéta|preset=1k|item=Q86}}
# {{Etikéta|preset=1k|item=Q12152}}
# {{Etikéta|preset=1k|item=Q2840}}
# {{Etikéta|preset=1k|item=Q12156}}
# {{Etikéta|preset=1k|item=Q12167}}
# {{Etikéta|preset=1k|item=Q12174}}
# {{Etikéta|preset=1k|item=Q12192}}
# {{Etikéta|preset=1k|item=Q12195}}
# {{Etikéta|preset=1k|item=Q12198}}
## {{Etikéta|preset=1k|item=Q12199}}
# {{Etikéta|preset=1k|item=Q12214}}
# {{Etikéta|preset=1k|item=Q12202}}
# {{Etikéta|preset=1k|item=Q12204}}
# {{Etikéta|preset=1k|item=Q12206}}
}}
=== {{Etikéta|preset=1kat|item=Q1457474}} === <!-- Chemistry -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q2329}}
# {{Etikéta|preset=1k|item=Q11165}}
# {{Etikéta|preset=1k|item=Q7094}}
# {{Etikéta|preset=1k|item=Q11173}}
## {{Etikéta|preset=1k|item=Q11158}}
## {{Etikéta|preset=1k|item=Q11193}}
## {{Etikéta|preset=1k|item=Q12370}}
# {{Etikéta|preset=1k|item=Q11344}}
## {{Etikéta|preset=1k|item=Q10693}}
## {{Etikéta|preset=1k|item=Q663}}
## {{Etikéta|preset=1k|item=Q623}}
## {{Etikéta|preset=1k|item=Q753}}
## {{Etikéta|preset=1k|item=Q897}}
## {{Etikéta|preset=1k|item=Q556}}
## {{Etikéta|preset=1k|item=Q677}}
## {{Etikéta|preset=1k|item=Q627}}
## {{Etikéta|preset=1k|item=Q629}}
## {{Etikéta|preset=1k|item=Q1090}}
## {{Etikéta|preset=1k|item=Q1096}}
# {{Etikéta|preset=1k|item=Q11351}}
## {{Etikéta|preset=1k|item=Q156}}
## {{Etikéta|preset=1k|item=Q11358}}
## {{Etikéta|preset=1k|item=Q11367}}
# {{Etikéta|preset=1k|item=Q11369}}
# {{Etikéta|preset=1k|item=Q2346}}
# {{Etikéta|preset=1k|item=Q11372}}
}}
=== {{Etikéta|preset=1kat|item=Q1457551}} === <!-- Earth science -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q7937}}
# {{Etikéta|preset=1k|item=Q81041}}
# {{Etikéta|preset=1k|item=Q7939}}
# {{Etikéta|preset=1k|item=Q7942}}
# {{Etikéta|preset=1k|item=Q7944}}
# {{Etikéta|preset=1k|item=Q1069}}
## {{Etikéta|preset=1k|item=Q7946}}
### {{Etikéta|preset=1k|item=Q5283}}
## {{Etikéta|preset=1k|item=Q7950}}
## {{Etikéta|preset=1k|item=Q8063}}
# {{Etikéta|preset=1k|item=Q8065}}
## {{Etikéta|preset=1k|item=Q8068}}
## {{Etikéta|preset=1k|item=Q8070}}
# {{Etikéta|preset=1k|item=Q8072}}
# {{Etikéta|preset=1k|item=Q11663}}
## {{Etikéta|preset=1k|item=Q8074}}
## {{Etikéta|preset=1k|item=Q7925}}
## {{Etikéta|preset=1k|item=Q7561}}
## {{Etikéta|preset=1k|item=Q8081}}
## {{Etikéta|preset=1k|item=Q8092}}
## {{Etikéta|preset=1k|item=Q8094}}
}}
=== {{Etikéta|preset=1kat|item=Q1457258}} === <!-- Physics -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q413}}
# {{Etikéta|preset=1k|item=Q11376}}
# {{Etikéta|preset=1k|item=Q9121}}
# {{Etikéta|preset=1k|item=Q11379}}
## {{Etikéta|preset=1k|item=Q11382}}
# {{Etikéta|preset=1k|item=Q12969754}}
## {{Etikéta|preset=1k|item=Q11388}}
## {{Etikéta|preset=1k|item=Q11391}}
## {{Etikéta|preset=1k|item=Q9128}}
### {{Etikéta|preset=1k|item=Q1075}}
# {{Etikéta|preset=1k|item=Q11397}}
# {{Etikéta|preset=1k|item=Q11402}}
## {{Etikéta|preset=1k|item=Q849919}}
### {{Etikéta|preset=1k|item=Q11408}}
## {{Etikéta|preset=1k|item=Q11412}}
## {{Etikéta|preset=1k|item=Q11415}}
## {{Etikéta|preset=1k|item=Q11418}}
# {{Etikéta|preset=1k|item=Q11421}}
# {{Etikéta|preset=1k|item=Q11423}}
# {{Etikéta|preset=1k|item=Q11426}}
## {{Etikéta|preset=1k|item=Q11427}}
# {{Etikéta|preset=1k|item=Q11429}}
# {{Etikéta|preset=1k|item=Q11430}}
## {{Etikéta|preset=1k|item=Q11432}}
## {{Etikéta|preset=1k|item=Q11435}}
## {{Etikéta|preset=1k|item=Q10251}}
## {{Etikéta|preset=1k|item=Q11438}}
# {{Etikéta|preset=1k|item=Q944}}
# {{Etikéta|preset=1k|item=Q11448}}
# {{Etikéta|preset=1k|item=Q11452}}
# {{Etikéta|preset=1k|item=Q11455}}
# {{Etikéta|preset=1k|item=Q11456}}
# {{Etikéta|preset=1k|item=Q11461}}
# {{Etikéta|preset=1k|item=Q11465}}
## {{Etikéta|preset=1k|item=Q2111}}
# {{Etikéta|preset=1k|item=Q11466}}
# {{Etikéta|preset=1k|item=Q11471}}
# {{Etikéta|preset=1k|item=Q11473}}
# {{Etikéta|preset=1k|item=Q11475}}
}}
=== {{Etikéta|preset=1kat|item=Q4619}} === <!-- Mathematics -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q395}}
# {{Etikéta|preset=1k|item=Q11205}}
## {{Etikéta|preset=1k|item=Q11197}}
## {{Etikéta|preset=1k|item=Q11563}}
## {{Etikéta|preset=1k|item=Q12479}}
# {{Etikéta|preset=1k|item=Q3968}}
## {{Etikéta|preset=1k|item=Q11567}}
## {{Etikéta|preset=1k|item=Q11345}}
## {{Etikéta|preset=1k|item=Q82571}}
# {{Etikéta|preset=1k|item=Q8087}}
## {{Etikéta|preset=1k|item=Q11352}}
## {{Etikéta|preset=1k|item=Q11500}}
## {{Etikéta|preset=1k|item=Q11210}}
## {{Etikéta|preset=1k|item=Q167}}
## {{Etikéta|preset=1k|item=Q11518}}
## {{Etikéta|preset=1k|item=Q12485}}
## {{Etikéta|preset=1k|item=Q8084}}
# {{Etikéta|preset=1k|item=Q7754}}
## {{Etikéta|preset=1k|item=Q11214}}
## {{Etikéta|preset=1k|item=Q11216}}
# {{Etikéta|preset=1kat|item=Q7066183}} <!-- Probability and statistics -->
## {{Etikéta|preset=1k|item=Q9492}}
## {{Etikéta|preset=1k|item=Q12483}}
# {{Etikéta|preset=1kat|item=Q7217201}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q7145042}}}} <!-- Logic and foundations -->
## {{Etikéta|preset=1k|item=Q11348}}
## {{Etikéta|preset=1k|item=Q205}}
## {{Etikéta|preset=1k|item=Q11538}}
## {{Etikéta|preset=1k|item=Q12482}}
}}
== {{Etikéta|preset=1kat|item=Q5611149}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q5658978}}}} == <!-- Food and agriculture -->
=== {{Etikéta|preset=1kat|item=Q5658978}} === <!-- Agriculture -->
# {{Etikéta|preset=1k|item=Q11451}}
## {{Etikéta|preset=1k|item=Q11453}}
## {{Etikéta|preset=1k|item=Q11464}}
## {{Etikéta|preset=1k|item=Q11395}}
=== {{Etikéta|preset=1kat|item=Q5611149}} === <!-- Food -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q2095}}
# {{Etikéta|preset=1k|item=Q7802}}
# {{Etikéta|preset=1k|item=Q12117}}
## {{Etikéta|preset=1k|item=Q11577}}
## {{Etikéta|preset=1k|item=Q11575}}
## {{Etikéta|preset=1k|item=Q5090}}
## {{Etikéta|preset=1k|item=Q332062}}
## {{Etikéta|preset=1k|item=Q15645384}}
# {{Etikéta|preset=1k|item=Q10943}}
# {{Etikéta|preset=1k|item=Q195}}
# {{Etikéta|preset=1k|item=Q10987}}
# {{Etikéta|preset=1k|item=Q89}}
# {{Etikéta|preset=1k|item=Q503}}
# {{Etikéta|preset=1k|item=Q81513}}
# {{Etikéta|preset=1k|item=Q10978}}
# {{Etikéta|preset=1k|item=Q11009}}
# {{Etikéta|preset=1k|item=Q11006}}
# {{Etikéta|preset=1k|item=Q10990}}
# {{Etikéta|preset=1k|item=Q11002}}
# {{Etikéta|preset=1k|item=Q42527}}
# {{Etikéta|preset=1k|item=Q11254}}
# {{Etikéta|preset=1k|item=Q11004}}
## {{Etikéta|preset=1k|item=Q10998}}
}}
=== {{Etikéta|preset=1kat|item=Q6543743}} === <!-- Beverages -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q44}}
# {{Etikéta|preset=1k|item=Q8486}}
# {{Etikéta|preset=1k|item=Q8492}}
# {{Etikéta|preset=1k|item=Q8495}}
# {{Etikéta|preset=1k|item=Q6097}}
# {{Etikéta|preset=1k|item=Q283}}
# {{Etikéta|preset=1k|item=Q282}}
}}
== {{Etikéta|preset=1kat|item=Q4884546}} == <!-- Technology -->
{{Kòlumnë|number=2|1=
# {{Etikéta|preset=1k|item=Q11016}}
# {{Etikéta|preset=1k|item=Q7108}}
# {{Etikéta|preset=1k|item=Q11460}}
## {{Etikéta|preset=1k|item=Q11457}}
# {{Etikéta|preset=1k|item=Q11023}}
## {{Etikéta|preset=1k|item=Q11019}}
## {{Etikéta|preset=1k|item=Q11012}}
## {{Etikéta|preset=1k|item=Q11022}}
## {{Etikéta|preset=1k|item=Q446}}
# {{Etikéta|preset=1k|item=Q11467}}
# {{Etikéta|preset=1k|item=Q11468}}
=== {{Etikéta|preset=1kat|item=Q1458498}} === <!-- Communication -->
# {{Etikéta|preset=1k|item=Q11024}}
# {{Etikéta|preset=1k|item=Q11028}}
## {{Etikéta|preset=1k|item=Q5292}}
# {{Etikéta|preset=1k|item=Q11030}}
## {{Etikéta|preset=1k|item=Q11032}}
# {{Etikéta|preset=1k|item=Q7075}}
## {{Etikéta|preset=1k|item=Q571}}
# {{Etikéta|preset=1k|item=Q11034}}
# {{Etikéta|preset=1k|item=Q11035}}
=== {{Etikéta|preset=1kat|item=Q5460952}} === <!-- Electronics -->
# {{Etikéta|preset=1k|item=Q11650}}
## {{Etikéta|preset=1k|item=Q11651}}
## {{Etikéta|preset=1k|item=Q11652}}
# {{Etikéta|preset=1kat|item=Q7493787}} <!-- Components -->
## {{Etikéta|preset=1k|item=Q5322}}
## {{Etikéta|preset=1k|item=Q5325}}
## {{Etikéta|preset=1k|item=Q5339}}
## {{Etikéta|preset=1k|item=Q11656}}
## {{Etikéta|preset=1k|item=Q5321}}
## {{Etikéta|preset=1k|item=Q11658}}
==== {{Etikéta|preset=1kat|item=Q6517860}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q4049595}}}} ==== <!-- Computer science and Internet -->
# {{Etikéta|preset=1k|item=Q68}}
## {{Etikéta|preset=1k|item=Q4439}}
## {{Etikéta|preset=1k|item=Q5300}}
# {{Etikéta|preset=1k|item=Q11660}}
# {{Etikéta|preset=1k|item=Q11661}}
## {{Etikéta|preset=1k|item=Q8366}}
# {{Etikéta|preset=1k|item=Q75}}
## {{Etikéta|preset=1k|item=Q9158}}
## {{Etikéta|preset=1k|item=Q466}}
# {{Etikéta|preset=1k|item=Q9135}}
# {{Etikéta|preset=1k|item=Q9143}}
# {{Etikéta|preset=1k|item=Q7397}}
=== {{Etikéta|preset=1kat|item=Q8413436}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q7214212}}}} === <!-- Energy and fuels -->
# {{Etikéta|preset=1k|item=Q12705}}
# {{Etikéta|preset=1k|item=Q12725}}
## {{Etikéta|preset=1k|item=Q12739}}
# {{Etikéta|preset=1k|item=Q12748}}
# {{Etikéta|preset=1kat|item=Q8414840}} <!-- Engine -->
## {{Etikéta|preset=1k|item=Q12757}}
## {{Etikéta|preset=1k|item=Q12760}}
# {{Etikéta|preset=1k|item=Q3196}}
=== {{Etikéta|preset=1kat|item=Q4057308}} === <!-- Materials -->
# {{Etikéta|preset=1k|item=Q11469}}
# {{Etikéta|preset=1k|item=Q11472}}
# {{Etikéta|preset=1k|item=Q11474}}
# {{Etikéta|preset=1k|item=Q287}}
=== {{Etikéta|preset=1kat|item=Q7216108}} === <!-- Transportation -->
# {{Etikéta|preset=1k|item=Q7590}}
# {{Etikéta|preset=1k|item=Q11436}}
# {{Etikéta|preset=1k|item=Q11442}}
# {{Etikéta|preset=1k|item=Q1420}}
# {{Etikéta|preset=1k|item=Q2811}}
# {{Etikéta|preset=1k|item=Q11446}}
# {{Etikéta|preset=1k|item=Q870}}
=== {{Etikéta|preset=1kat|item=Q7166566}} === <!-- Weapons -->
# {{Etikéta|preset=1k|item=Q728}}
## {{Etikéta|preset=1k|item=Q12791}}
## {{Etikéta|preset=1k|item=Q12796}}
### {{Etikéta|preset=1k|item=Q12800}}
## {{Etikéta|preset=1k|item=Q12802}}
# {{Etikéta|preset=1k|item=Q12876}}
# {{Etikéta|preset=1k|item=Q12870}}
## {{Etikéta|preset=1k|item=Q12861}}
}}
== {{Etikéta|preset=1kat|item=Q4104783}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q7045033}}}} == <!-- Arts and recreation -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q11042}}
# {{Etikéta|preset=1k|item=Q735}}
## {{Etikéta|preset=1k|item=Q1004}}
## {{Etikéta|preset=1k|item=Q11629}}
## {{Etikéta|preset=1k|item=Q11633}}
## {{Etikéta|preset=1k|item=Q11634}}
## {{Etikéta|preset=1k|item=Q11642}}
# {{Etikéta|preset=1k|item=Q11639}}
# {{Etikéta|preset=1k|item=Q12684}}
# {{Etikéta|preset=1k|item=Q11635}}
# {{Etikéta|preset=1k|item=Q12681}}
=== {{Etikéta|preset=1kat|item=Q6204331}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q6135934}}}} === <!-- Architecture and civil engineering -->
# {{Etikéta|preset=1k|item=Q12271}}
# {{Etikéta|preset=1k|item=Q12277}}
# {{Etikéta|preset=1k|item=Q12280}}
# {{Etikéta|preset=1k|item=Q12284}}
# {{Etikéta|preset=1k|item=Q12323}}
# {{Etikéta|preset=1k|item=Q12493}}
# {{Etikéta|preset=1k|item=Q3947}}
# {{Etikéta|preset=1kat|item=Q1458429}} <!-- Buildings and structures -->
## {{Etikéta|preset=1k|item=Q43473}}
## {{Etikéta|preset=1k|item=Q10285}}
## {{Etikéta|preset=1k|item=Q12501}}
## {{Etikéta|preset=1k|item=Q243}}
## {{Etikéta|preset=1k|item=Q9188}}
## {{Etikéta|preset=1k|item=Q12506}}
## {{Etikéta|preset=1k|item=Q10288}}
## {{Etikéta|preset=1k|item=Q13217298}}
## {{Etikéta|preset=1k|item=Q12512}}
## {{Etikéta|preset=1k|item=Q9202}}
## {{Etikéta|preset=1k|item=Q9141}}
## {{Etikéta|preset=1k|item=Q12514}}
# {{Etikéta|preset=1k|item=Q12516}}
# {{Etikéta|preset=1k|item=Q12518}}
=== {{Etikéta|preset=1kat|item=Q1458269}}, {{lcfirst:{{Etikéta|preset=1kat|item=Q7153700}}}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q7018418}}}} === <!-- Film, radio and television -->
# {{Etikéta|preset=1k|item=Q11424}}
## {{Etikéta|preset=1k|item=Q11425}}
# {{Etikéta|preset=1k|item=Q872}}
# {{Etikéta|preset=1k|item=Q289}}
=== {{Etikéta|preset=1kat|item=Q8255}} === <!-- Music -->
# {{Etikéta|preset=1k|item=Q638}}
# {{Etikéta|preset=1k|item=Q7366}}
# {{Etikéta|preset=1kat|item=Q6134246}} <!-- Music genres -->
## {{Etikéta|preset=1k|item=Q9759}}
## {{Etikéta|preset=1k|item=Q9730}}
### {{Etikéta|preset=1k|item=Q1344}}
### {{Etikéta|preset=1k|item=Q9734}}
## {{Etikéta|preset=1k|item=Q9778}}
## {{Etikéta|preset=1k|item=Q9764}}
## {{Etikéta|preset=1k|item=Q11401}}
## {{Etikéta|preset=1k|item=Q8341}}
## {{Etikéta|preset=1k|item=Q9794}}
## {{Etikéta|preset=1k|item=Q11399}}
## {{Etikéta|preset=1k|item=Q11403}}
# {{Etikéta|preset=1kat|item=Q7212463}}<!-- Musical instruments -->
## {{Etikéta|preset=1k|item=Q11404}}
## {{Etikéta|preset=1k|item=Q11405}}
## {{Etikéta|preset=1k|item=Q6607}}
## {{Etikéta|preset=1k|item=Q5994}}
## {{Etikéta|preset=1k|item=Q8338}}
## {{Etikéta|preset=1k|item=Q8355}}
=== {{Etikéta|preset=1kat|item=Q7045033}} === <!-- Recreation -->
# {{Etikéta|preset=1k|item=Q11410}}
## {{Etikéta|preset=1k|item=Q11411}}
## {{Etikéta|preset=1k|item=Q718}}
## {{Etikéta|preset=1k|item=Q11413}}
## {{Etikéta|preset=1k|item=Q7889}}
# {{Etikéta|preset=1k|item=Q11416}}
# {{Etikéta|preset=1k|item=Q11417}}
## {{Etikéta|preset=1k|item=Q11420}}
# {{Etikéta|preset=1k|item=Q5389}}
# {{Etikéta|preset=1k|item=Q349}}
## {{Etikéta|preset=1k|item=Q542}}
## {{Etikéta|preset=1kat|item=Q7379346}} <!-- Ball games -->
### {{Etikéta|preset=1k|item=Q5369}}
### {{Etikéta|preset=1k|item=Q5372}}
### {{Etikéta|preset=1k|item=Q5375}}
### {{Etikéta|preset=1k|item=Q2736}}
### {{Etikéta|preset=1k|item=Q5377}}
### {{Etikéta|preset=1k|item=Q5378}}
### {{Etikéta|preset=1k|item=Q847}}
## {{Etikéta|preset=1k|item=Q6388}}
# {{Etikéta|preset=1k|item=Q11422}}
}}
== {{Etikéta|preset=1kat|item=Q1457595}} == <!-- History -->
# {{Etikéta|preset=1k|item=Q309}}
==== {{Etikéta|preset=1kat|item=Q9084370}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q6499653}}}} ==== <!-- Prehistoric and ancient history -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q11768}}
# {{Etikéta|preset=1k|item=Q11772}}
# {{Etikéta|preset=1k|item=Q11761}}
# {{Etikéta|preset=1k|item=Q11774}}
# {{Etikéta|preset=1k|item=Q7209}}
# {{Etikéta|preset=1k|item=Q11764}}
# {{Etikéta|preset=1k|item=Q28567}}
# {{Etikéta|preset=1k|item=Q11767}}
# {{Etikéta|preset=1k|item=Q11756}}
# {{Etikéta|preset=1k|item=Q2277}}
# {{Etikéta|preset=1k|item=Q35355}}
# {{Etikéta|preset=1k|item=Q11759}}
# {{Etikéta|preset=1k|item=Q9683}}
}}
==== {{Etikéta|preset=1kat|item=Q7461740}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q8651924}}}} ==== <!-- Medieval and Renaissance periods -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q12536}}
# {{Etikéta|preset=1k|item=Q12542}}
# {{Etikéta|preset=1k|item=Q12544}}
# {{Etikéta|preset=1k|item=Q12546}}
# {{Etikéta|preset=1k|item=Q12548}}
# {{Etikéta|preset=1k|item=Q28573}}
# {{Etikéta|preset=1k|item=Q184536}}
# {{Etikéta|preset=1k|item=Q12554}}
# {{Etikéta|preset=1k|item=Q9903}}
# {{Etikéta|preset=1k|item=Q12557}}
# {{Etikéta|preset=1k|item=Q12560}}
# {{Etikéta|preset=1k|item=Q4692}}
# {{Etikéta|preset=1k|item=Q12567}}
}}
==== {{Etikéta|preset=1kat|item=Q7473369}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q6115583}}}} ==== <!-- Early modern and modern periods -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q12539}}
# {{Etikéta|preset=1k|item=Q8676}}
# {{Etikéta|preset=1k|item=Q8669}}
# {{Etikéta|preset=1k|item=Q11409}}
# {{Etikéta|preset=1k|item=Q8680}}
# {{Etikéta|preset=1k|item=Q8683}}
# {{Etikéta|preset=1k|item=Q6534}}
# {{Etikéta|preset=1k|item=Q8698}}
# {{Etikéta|preset=1k|item=Q2763}}
# {{Etikéta|preset=1k|item=Q2269}}
# {{Etikéta|preset=1k|item=Q7318}}
# {{Etikéta|preset=1k|item=Q8707}} <!-- most significant event in Japanese history -->
# {{Etikéta|preset=1k|item=Q12562}}
# {{Etikéta|preset=1k|item=Q8729}}
# {{Etikéta|preset=1k|item=Q8733}}
# {{Etikéta|preset=1k|item=Q15180}}
# {{Etikéta|preset=1k|item=Q8740}}
# {{Etikéta|preset=1k|item=Q361}}
# {{Etikéta|preset=1k|item=Q362}}
}}
== {{Etikéta|preset=1kat|item=Q1457673}} == <!-- Geography -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q1071}}
# {{Etikéta|preset=1k|item=Q515}}
# {{Etikéta|preset=1k|item=Q5107}}
# {{Etikéta|preset=1k|item=Q4421}}
# {{Etikéta|preset=1k|item=Q8502}}
# {{Etikéta|preset=1k|item=Q8514}}
# {{Etikéta|preset=1k|item=Q934}}
# {{Etikéta|preset=1k|item=Q9430}}
# {{Etikéta|preset=1k|item=Q4022}}
# {{Etikéta|preset=1k|item=Q165}}
# {{Etikéta|preset=1k|item=Q933}}
=== {{Etikéta|preset=1kat|item=Q2945667}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q6581383}}}} === <!-- Continents and major regions -->
# {{Etikéta|preset=1k|item=Q15}}
# {{Etikéta|preset=1k|item=Q51}}
# {{Etikéta|preset=1k|item=Q48}}
# {{Etikéta|preset=1k|item=Q46}}
# {{Etikéta|preset=1k|item=Q7204}}
# {{Etikéta|preset=1k|item=Q49}}
# {{Etikéta|preset=1k|item=Q55643}}
# {{Etikéta|preset=1k|item=Q18}}
}}
=== {{Etikéta|preset=1kat|item=Q4026570}} === <!-- Countries -->
{{Kòlumnë|em=16|1=
Eventually, there should be articles on most or all of the countries listed at [[:w:en:List of sovereign states|List of countries]]. However, for the smaller Wikipedias, some of the more high-priority countries to have articles on are:
==== {{Etikéta|preset=1kat|item=Q6581695}} ==== <!-- Africa -->
# {{Etikéta|preset=1k|item=Q262}}
# {{Etikéta|preset=1k|item=Q974}}
# {{Etikéta|preset=1k|item=Q79}}
# {{Etikéta|preset=1k|item=Q115}}
# {{Etikéta|preset=1k|item=Q1033}}
# {{Etikéta|preset=1k|item=Q258}}
# {{Etikéta|preset=1k|item=Q1049}}
# {{Etikéta|preset=1k|item=Q924}}
==== {{Etikéta|preset=1kat|item=Q8055354}} ==== <!-- Asia -->
# {{Etikéta|preset=1k|item=Q889}}
# {{Etikéta|preset=1k|item=Q902}}
# {{Etikéta|preset=1k|item=Q148}}
# {{Etikéta|preset=1k|item=Q668}}
# {{Etikéta|preset=1k|item=Q252}}
# {{Etikéta|preset=1k|item=Q794}}
# {{Etikéta|preset=1k|item=Q796}}
# {{Etikéta|preset=1k|item=Q801}}
# {{Etikéta|preset=1k|item=Q17}}
# {{Etikéta|preset=1k|item=Q843}}
# {{Etikéta|preset=1k|item=Q928}}
# {{Etikéta|preset=1k|item=Q851}}
# {{Etikéta|preset=1k|item=Q884}}
# {{Etikéta|preset=1k|item=Q869}}
# {{Etikéta|preset=1k|item=Q43}}
# {{Etikéta|preset=1k|item=Q881}}
==== {{Etikéta|preset=1kat|item=Q4587626}} ==== <!-- Europe -->
# {{Etikéta|preset=1k|item=Q40}}
# {{Etikéta|preset=1k|item=Q142}}
# {{Etikéta|preset=1k|item=Q183}}
# {{Etikéta|preset=1k|item=Q38}}
# {{Etikéta|preset=1k|item=Q55}}
# {{Etikéta|preset=1k|item=Q36}}
# {{Etikéta|preset=1k|item=Q45}}
# {{Etikéta|preset=1k|item=Q159}}
# {{Etikéta|preset=1k|item=Q29}}
# {{Etikéta|preset=1k|item=Q39}}
# {{Etikéta|preset=1k|item=Q212}}
# {{Etikéta|preset=1k|item=Q145}}
# {{Etikéta|preset=1k|item=Q237}}
==== {{Etikéta|preset=1kat|item=Q7131138}} ==== <!-- North America -->
# {{Etikéta|preset=1k|item=Q16}}
# {{Etikéta|preset=1k|item=Q241}}
# {{Etikéta|preset=1k|item=Q96}}
# {{Etikéta|preset=1k|item=Q30}}
==== {{Etikéta|preset=1kat|item=Q7185534}} ==== <!-- South America -->
# {{Etikéta|preset=1k|item=Q414}}
# {{Etikéta|preset=1k|item=Q155}}
# {{Etikéta|preset=1k|item=Q739}}
==== {{Etikéta|preset=1kat|item=Q7130988}} ==== <!-- Oceania -->
# {{Etikéta|preset=1k|item=Q408}}
}}
=== {{Etikéta|preset=1kat|item=Q9126476}} === <!-- Cities -->
{{Kòlumnë|em=16|1=
==== {{Etikéta|preset=1kat|item=Q7230788}} ==== <!-- Africa -->
# {{Etikéta|preset=1k|item=Q85}}
# {{Etikéta|preset=1k|item=Q5465}}
# {{Etikéta|preset=1k|item=Q3838}}
# {{Etikéta|preset=1k|item=Q8673}}
# {{Etikéta|preset=1k|item=Q3870}}
==== {{Etikéta|preset=1kat|item=Q7229671}} ==== <!-- Asia -->
# {{Etikéta|preset=1k|item=Q1530}}
# {{Etikéta|preset=1k|item=Q1861}}
# {{Etikéta|preset=1k|item=Q956}}
# {{Etikéta|preset=1k|item=Q3766}}
# {{Etikéta|preset=1k|item=Q1353}}
# {{Etikéta|preset=1k|item=Q1354}}
# {{Etikéta|preset=1k|item=Q612}}
# {{Etikéta|preset=1k|item=Q8646}}
# {{Etikéta|preset=1k|item=Q3630}}
# {{Etikéta|preset=1k|item=Q1218}}
# {{Etikéta|preset=1k|item=Q8660}}
# {{Etikéta|preset=1k|item=Q1348}}
# {{Etikéta|preset=1k|item=Q5806}}
# {{Etikéta|preset=1k|item=Q1156}}
# {{Etikéta|preset=1k|item=Q8684}}
# {{Etikéta|preset=1k|item=Q8686}}
# {{Etikéta|preset=1k|item=Q334}}
# {{Etikéta|preset=1k|item=Q3616}}
# {{Etikéta|preset=1k|item=Q1490}}
==== {{Etikéta|preset=1kat|item=Q4992948}} ==== <!-- Europe -->
# {{Etikéta|preset=1k|item=Q727}}
# {{Etikéta|preset=1k|item=Q1524}}
# {{Etikéta|preset=1k|item=Q64}}
# {{Etikéta|preset=1k|item=Q239}}
# {{Etikéta|preset=1k|item=Q406}}
# {{Etikéta|preset=1k|item=Q84}}
# {{Etikéta|preset=1k|item=Q2807}}
# {{Etikéta|preset=1k|item=Q649}}
# {{Etikéta|preset=1k|item=Q90}}
# {{Etikéta|preset=1k|item=Q220}}
# {{Etikéta|preset=1k|item=Q656}}
# {{Etikéta|preset=1k|item=Q1741}}
==== {{Etikéta|preset=1kat|item=Q7150911}} ==== <!-- North America -->
# {{Etikéta|preset=1k|item=Q65}}
# {{Etikéta|preset=1k|item=Q1489}}
# {{Etikéta|preset=1k|item=Q60}}
# {{Etikéta|preset=1k|item=Q61}}
==== {{Etikéta|preset=1kat|item=Q7228572}} ==== <!-- South America -->
# {{Etikéta|preset=1k|item=Q2841}}
# {{Etikéta|preset=1k|item=Q1486}}
# {{Etikéta|preset=1k|item=Q8678}}
# {{Etikéta|preset=1k|item=Q174}}
==== {{Etikéta|preset=1kat|item=Q9055844}} ==== <!-- Oceania -->
# {{Etikéta|preset=1k|item=Q3130}}
}}
=== {{Etikéta|preset=1kat|item=Q5933994}} === <!-- Bodies of water -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q3783}}
# {{Etikéta|preset=1k|item=Q788}}
# {{Etikéta|preset=1k|item=Q97}}
# {{Etikéta|preset=1k|item=Q545}}
# {{Etikéta|preset=1k|item=Q166}}
# {{Etikéta|preset=1k|item=Q1247}}
# {{Etikéta|preset=1k|item=Q5484}}
# {{Etikéta|preset=1k|item=Q3503}}
# {{Etikéta|preset=1k|item=Q1653}}
# {{Etikéta|preset=1k|item=Q5089}}
# {{Etikéta|preset=1k|item=Q7343}}
# {{Etikéta|preset=1k|item=Q7347}}
# {{Etikéta|preset=1k|item=Q1239}}
# {{Etikéta|preset=1k|item=Q7348}}
# {{Etikéta|preset=1k|item=Q5513}}
# {{Etikéta|preset=1k|item=Q5505}}
# {{Etikéta|preset=1k|item=Q4918}}
# {{Etikéta|preset=1k|item=Q1497}}
# {{Etikéta|preset=1k|item=Q3542}}
# {{Etikéta|preset=1k|item=Q3392}}
# {{Etikéta|preset=1k|item=Q1693}}
# {{Etikéta|preset=1k|item=Q98}}
# {{Etikéta|preset=1k|item=Q7350}}
# {{Etikéta|preset=1k|item=Q584}}
# {{Etikéta|preset=1k|item=Q37660}}
# {{Etikéta|preset=1k|item=Q899}}
# {{Etikéta|preset=1k|item=Q7354}}
# {{Etikéta|preset=1k|item=Q626}}
# {{Etikéta|preset=1k|item=Q5413}}
# {{Etikéta|preset=1k|item=Q7355}}
}}
=== {{Etikéta|preset=1kat|item=Q5741923}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q7217334}}}} === <!-- Mountains and deserts -->
# {{Etikéta|preset=1k|item=Q1286}}
# {{Etikéta|preset=1k|item=Q5456}}
# {{Etikéta|preset=1k|item=Q5451}}
## {{Etikéta|preset=1k|item=Q513}}
# {{Etikéta|preset=1k|item=Q7296}}
# {{Etikéta|preset=1k|item=Q5463}}
# {{Etikéta|preset=1k|item=Q6583}}
[[Kategòrëjô:Metastarnë Wikipedie]]
8pkqbxjd9c5qy7vv5rlya0ybo53tmea
216526
216494
2026-10-05T10:28:11Z
Terrus38
14026
216526
wikitext
text/x-wiki
Wiki:1000 – tësąc nôwôżniészich artiklów:
== {{Etikéta|preset=1kat|item=Q5640343}} == <!-- Biography -->
=== {{Etikéta|preset=1kat|item=Q4266974}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q6460970}}}} === <!-- Philosophers and social scientists -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q868}}
# {{Etikéta|preset=1k|item=Q7197}}
# {{Etikéta|preset=1k|item=Q9045}}
# {{Etikéta|preset=1k|item=Q4604}}
# {{Etikéta|preset=1k|item=Q9191}}
# {{Etikéta|preset=1k|item=Q9215}}
# {{Etikéta|preset=1k|item=Q9235}}
# {{Etikéta|preset=1k|item=Q48301}}
# {{Etikéta|preset=1k|item=Q9294}}
# {{Etikéta|preset=1k|item=Q9312}}
# {{Etikéta|preset=1k|item=Q9317}}
# {{Etikéta|preset=1k|item=Q9333}}
# {{Etikéta|preset=1k|item=Q9353}}
# {{Etikéta|preset=1k|item=Q1399}}
# {{Etikéta|preset=1k|item=Q9061}}
# {{Etikéta|preset=1k|item=Q9358}}
# {{Etikéta|preset=1k|item=Q859}}
# {{Etikéta|preset=1k|item=Q6527}}
# {{Etikéta|preset=1k|item=Q9364}}
# {{Etikéta|preset=1k|item=Q9372}}
# {{Etikéta|preset=1k|item=Q9381}}
# {{Etikéta|preset=1k|item=Q913}}
# {{Etikéta|preset=1k|item=Q9068}}
# {{Etikéta|preset=1k|item=Q9387}}
# {{Etikéta|preset=1k|item=Q9391}}
# {{Etikéta|preset=1k|item=Q9397}}
}}
=== {{Etikéta|preset=1kat|item=Q7582881}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q6997334}}}} === <!--Religious figures and theologians-->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q9181}}
# {{Etikéta|preset=1k|item=Q9438}}
# {{Etikéta|preset=1k|item=Q8018}}
# {{Etikéta|preset=1k|item=Q9441}}
# {{Etikéta|preset=1k|item=Q9546}}
# {{Etikéta|preset=1k|item=Q302}}
# {{Etikéta|preset=1k|item=Q9554}}
# {{Etikéta|preset=1k|item=Q9077}}
# {{Etikéta|preset=1k|item=Q9458}}
# {{Etikéta|preset=1k|item=Q171195}}
}}
=== {{Etikéta|preset=1kat|item=Q5753390}} === <!-- Politicians -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q8597}}
# {{Etikéta|preset=1k|item=Q8409}}
# {{Etikéta|preset=1k|item=Q8589}}<!-- Great Indian monarch of antiquity; spread Buddhism -->
# {{Etikéta|preset=1k|item=Q5152}}
# {{Etikéta|preset=1k|item=Q1405}}
# {{Etikéta|preset=1k|item=Q8442}}
# {{Etikéta|preset=1k|item=Q8605}}
# {{Etikéta|preset=1k|item=Q1048}}
# {{Etikéta|preset=1k|item=Q3044}}
# {{Etikéta|preset=1k|item=Q8016}}
# {{Etikéta|preset=1k|item=Q8413}}
# {{Etikéta|preset=1k|item=Q8423}}
# {{Etikéta|preset=1k|item=Q2042}}
# {{Etikéta|preset=1k|item=Q7207}}
# {{Etikéta|preset=1k|item=Q1001}}
# {{Etikéta|preset=1k|item=Q720}}
# {{Etikéta|preset=1k|item=Q5809}}
# {{Etikéta|preset=1k|item=Q352}}
# {{Etikéta|preset=1k|item=Q7226}}
# {{Etikéta|preset=1k|item=Q8027}}
# {{Etikéta|preset=1k|item=Q1394}}
# {{Etikéta|preset=1k|item=Q91}}
# {{Etikéta|preset=1k|item=Q7742}}
# {{Etikéta|preset=1k|item=Q7231}}
# {{Etikéta|preset=1k|item=Q517}}
# {{Etikéta|preset=1k|item=Q8023}}
# {{Etikéta|preset=1k|item=Q5816}}
# {{Etikéta|preset=1k|item=Q1047}}
# {{Etikéta|preset=1k|item=Q8620}}
# {{Etikéta|preset=1k|item=Q8479}}
# {{Etikéta|preset=1k|item=Q7192}}<!-- Created first Chinese state and dynasty -->
# {{Etikéta|preset=1k|item=Q8007}}
# {{Etikéta|preset=1k|item=Q8581}}
# {{Etikéta|preset=1k|item=Q855}}
# {{Etikéta|preset=1k|item=Q8474}}<!-- Greatest Ottoman sultan -->
# {{Etikéta|preset=1k|item=Q8573}}
# {{Etikéta|preset=1k|item=Q8462}}
# {{Etikéta|preset=1k|item=Q8467}}<!-- Conquered Persia, Syria, Palestine, and Egypt for Islam -->
# {{Etikéta|preset=1k|item=Q23}}
}}
=== {{Etikéta|preset=1kat|item=Q6528885}}, {{lcfirst:{{Etikéta|preset=1kat|item=Q7043111}}}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q7217485}}}} === <!-- Inventors, scientists and mathematicians -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q8739}}
# {{Etikéta|preset=1k|item=Q8011}}
# {{Etikéta|preset=1k|item=Q80}}
# {{Etikéta|preset=1k|item=Q202943}}
# {{Etikéta|preset=1k|item=Q619}}
# {{Etikéta|preset=1k|item=Q7186}}
# {{Etikéta|preset=1k|item=Q1035}}
# {{Etikéta|preset=1k|item=Q8743}}
# {{Etikéta|preset=1k|item=Q937}}
# {{Etikéta|preset=1k|item=Q8747}}
# {{Etikéta|preset=1k|item=Q7604}}
# {{Etikéta|preset=1k|item=Q8750}}
# {{Etikéta|preset=1k|item=Q8753}}
# {{Etikéta|preset=1k|item=Q8768}}
# {{Etikéta|preset=1k|item=Q8778}}
# {{Etikéta|preset=1k|item=Q307}}
# {{Etikéta|preset=1k|item=Q6722}}
# {{Etikéta|preset=1k|item=Q8958}}
# {{Etikéta|preset=1k|item=Q41585}}
# {{Etikéta|preset=1k|item=Q8962}}
# {{Etikéta|preset=1k|item=Q8963}}
# {{Etikéta|preset=1k|item=Q9038}}
# {{Etikéta|preset=1k|item=Q9047}}
# {{Etikéta|preset=1k|item=Q1043}}
# {{Etikéta|preset=1k|item=Q9095}}
# {{Etikéta|preset=1k|item=Q9106}}
# {{Etikéta|preset=1k|item=Q935}}
# {{Etikéta|preset=1k|item=Q529}}
# {{Etikéta|preset=1k|item=Q9021}}
# {{Etikéta|preset=1k|item=Q9123}}
# {{Etikéta|preset=1k|item=Q9130}}
# {{Etikéta|preset=1k|item=Q9036}}
# {{Etikéta|preset=1k|item=Q7251}}
# {{Etikéta|preset=1k|item=Q9041}}
}}
=== {{Etikéta|preset=1kat|item=Q6442246}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q6875304}}}} === <!-- Artists and architects -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q4724}}
# {{Etikéta|preset=1k|item=Q5577}}
# {{Etikéta|preset=1k|item=Q5580}}
# {{Etikéta|preset=1k|item=Q5582}}
# {{Etikéta|preset=1k|item=Q5432}}
# {{Etikéta|preset=1k|item=Q5586}}
# {{Etikéta|preset=1k|item=Q5588}}
# {{Etikéta|preset=1k|item=Q762}}
# {{Etikéta|preset=1k|item=Q5589}}
# {{Etikéta|preset=1k|item=Q5592}}
# {{Etikéta|preset=1k|item=Q5593}}
# {{Etikéta|preset=1k|item=Q5597}}
# {{Etikéta|preset=1k|item=Q5598}}
# {{Etikéta|preset=1k|item=Q5599}}
# {{Etikéta|preset=1k|item=Q5600}}
# {{Etikéta|preset=1k|item=Q297}}
# {{Etikéta|preset=1k|item=Q5603}}
# {{Etikéta|preset=1k|item=Q5604}}
}}
=== {{Etikéta|preset=1kat|item=Q8008937}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q6606401}}}} === <!-- Composers and musicians -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q1779}}
# {{Etikéta|preset=1k|item=Q1339}}
# {{Etikéta|preset=1k|item=Q1299}}
# {{Etikéta|preset=1k|item=Q255}}
# {{Etikéta|preset=1k|item=Q7294}}
# {{Etikéta|preset=1k|item=Q1268}}
# {{Etikéta|preset=1k|item=Q7298}}
# {{Etikéta|preset=1k|item=Q7302}}
# {{Etikéta|preset=1k|item=Q7349}}
# {{Etikéta|preset=1k|item=Q2831}}
# {{Etikéta|preset=1k|item=Q1110560}}
# {{Etikéta|preset=1k|item=Q7304}}
# {{Etikéta|preset=1k|item=Q254}}
# {{Etikéta|preset=1k|item=Q179277}}
# {{Etikéta|preset=1k|item=Q7311}}
# {{Etikéta|preset=1k|item=Q7312}}
# {{Etikéta|preset=1k|item=Q7314}}
# {{Etikéta|preset=1k|item=Q7315}}
# {{Etikéta|preset=1k|item=Q7317}}
# {{Etikéta|preset=1k|item=Q1340}}
# {{Etikéta|preset=1k|item=Q1511}}
}}
=== {{Etikéta|preset=1kat|item=Q3919997}}, {{lcfirst:{{Etikéta|preset=1kat|item=Q3920019}}}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q3919792}}}} === <!-- Film directors, screenwriters and actors -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q7546}}
# {{Etikéta|preset=1k|item=Q4605}}
# {{Etikéta|preset=1k|item=Q882}}
# {{Etikéta|preset=1k|item=Q4612}}
# {{Etikéta|preset=1k|item=Q8704}}
# {{Etikéta|preset=1k|item=Q8003}}
# {{Etikéta|preset=1k|item=Q7371}}
# {{Etikéta|preset=1k|item=Q7374}}
# {{Etikéta|preset=1k|item=Q2001}}
# {{Etikéta|preset=1k|item=Q8006}}
# {{Etikéta|preset=1k|item=Q4616}}
# {{Etikéta|preset=1k|item=Q8873}}
}}
=== {{Etikéta|preset=1kat|item=Q5849863}}, {{lcfirst:{{Etikéta|preset=1kat|item=Q9702405}}}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q6487149}}}} === <!-- Authors, playwrights and poets -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q5670}}
# {{Etikéta|preset=1k|item=Q5673}}
# {{Etikéta|preset=1k|item=Q36322}}
# {{Etikéta|preset=1k|item=Q5676}}
# {{Etikéta|preset=1k|item=Q909}}
# {{Etikéta|preset=1k|item=Q5679}}
# {{Etikéta|preset=1k|item=Q5682}}
# {{Etikéta|preset=1k|item=Q5683}}
# {{Etikéta|preset=1k|item=Q5685}}
# {{Etikéta|preset=1k|item=Q1067}}
# {{Etikéta|preset=1k|item=Q5686}}
# {{Etikéta|preset=1k|item=Q991}}
# {{Etikéta|preset=1k|item=Q5878}}
# {{Etikéta|preset=1k|item=Q5879}}
# {{Etikéta|preset=1k|item=Q6240}}
# {{Etikéta|preset=1k|item=Q6691}}
# {{Etikéta|preset=1k|item=Q535}}
# {{Etikéta|preset=1k|item=Q6882}}
# {{Etikéta|preset=1k|item=Q905}}
# {{Etikéta|preset=1k|item=Q7011}}
# {{Etikéta|preset=1k|item=Q7071}}
# {{Etikéta|preset=1k|item=Q7176}}
# {{Etikéta|preset=1k|item=Q687}}
# {{Etikéta|preset=1k|item=Q7198}}
# {{Etikéta|preset=1k|item=Q7199}}
# {{Etikéta|preset=1k|item=Q7200}}
# {{Etikéta|preset=1k|item=Q692}}
# {{Etikéta|preset=1k|item=Q7235}}
# {{Etikéta|preset=1k|item=Q7241}}
# {{Etikéta|preset=1k|item=Q7243}}
# {{Etikéta|preset=1k|item=Q7245}}
# {{Etikéta|preset=1k|item=Q1398}}
}}
=== {{Etikéta|preset=1kat|item=Q7043334}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q7074786}}}} === <!-- Explorers and travellers -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q926}}
# {{Etikéta|preset=1k|item=Q1615}}
# {{Etikéta|preset=1k|item=Q7321}}
# {{Etikéta|preset=1k|item=Q7322}}
# {{Etikéta|preset=1k|item=Q7324}}
# {{Etikéta|preset=1k|item=Q7326}}
# {{Etikéta|preset=1k|item=Q7327}}
# {{Etikéta|preset=1k|item=Q7328}}
# {{Etikéta|preset=1k|item=Q7331}}
# {{Etikéta|preset=1k|item=Q1496}}
# {{Etikéta|preset=1k|item=Q6101}}
# {{Etikéta|preset=1k|item=Q7333}}
}}
== {{Etikéta|preset=1kat|item=Q1983674}} == <!-- Philosophy -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q7066}}
# {{Etikéta|preset=1k|item=Q7242}}
# {{Etikéta|preset=1k|item=Q9581}}
# {{Etikéta|preset=1k|item=Q9453}}
# {{Etikéta|preset=1k|item=Q9465}}
# {{Etikéta|preset=1k|item=Q9471}}
# {{Etikéta|preset=1k|item=Q9476}}
# {{Etikéta|preset=1k|item=Q9081}}
# {{Etikéta|preset=1k|item=Q8078}}
# {{Etikéta|preset=1k|item=Q7081}}
# {{Etikéta|preset=1k|item=Q5891}}
# {{Etikéta|preset=1k|item=Q9510}}
# {{Etikéta|preset=1k|item=Q7949}}
}}
== {{Etikéta|preset=1kat|item=Q1457903}} == <!-- Religion -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q9149}}
# {{Etikéta|preset=1k|item=Q190}}
## {{Etikéta|preset=1k|item=Q9159}}
## {{Etikéta|preset=1k|item=Q9163}}
# {{Etikéta|preset=1k|item=Q9134}}
# {{Etikéta|preset=1k|item=Q128593}}
# {{Etikéta|preset=1k|item=Q9174}}
# {{Etikéta|preset=1k|item=Q9165}}
# {{Etikéta|preset=1kat|item=Q5881075}} <!-- Specific religions -->
## {{Etikéta|preset=1k|item=Q748}}
## {{Etikéta|preset=1k|item=Q5043}}
### {{Etikéta|preset=1k|item=Q9592}}
### {{Etikéta|preset=1k|item=Q23540}}
## {{Etikéta|preset=1k|item=Q9089}}
## {{Etikéta|preset=1k|item=Q432}}
### {{Etikéta|preset=1k|item=Q9585}}
### {{Etikéta|preset=1k|item=Q483654}}
## {{Etikéta|preset=1k|item=Q9232}}
## {{Etikéta|preset=1k|item=Q9268}}
## {{Etikéta|preset=1k|item=Q812767}}
## {{Etikéta|preset=1k|item=Q9316}}
## {{Etikéta|preset=1k|item=Q9598}}
## {{Etikéta|preset=1k|item=Q9601}}
}}
== {{Etikéta|preset=1kat|item=Q6577596}} == <!-- Social sciences -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q8425}}
# {{Etikéta|preset=1k|item=Q8432}}
# {{Etikéta|preset=1k|item=Q8434}}
=== {{Etikéta|preset=1kat|item=Q1983760}} === <!-- Psychology -->
# {{Etikéta|preset=1k|item=Q9332}}
# {{Etikéta|preset=1k|item=Q9415}}
# {{Etikéta|preset=1k|item=Q316}}
# {{Etikéta|preset=1k|item=Q450}}
# {{Etikéta|preset=1k|item=Q9418}}
# {{Etikéta|preset=1k|item=Q9420}}
=== {{Etikéta|preset=1kat|item=Q7216461}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q7237794}}}} === <!-- Family and relationships -->
# {{Etikéta|preset=1k|item=Q8436}}
# {{Etikéta|preset=1k|item=Q7569}}
# {{Etikéta|preset=1k|item=Q8441}}
# {{Etikéta|preset=1k|item=Q8445}}
# {{Etikéta|preset=1k|item=Q467}}
=== {{Etikéta|preset=1kat|item=Q4103183}} === <!-- Politics -->
# {{Etikéta|preset=1k|item=Q7163}}
# {{Etikéta|preset=1k|item=Q7167}}
# {{Etikéta|preset=1k|item=Q1889}}
# {{Etikéta|preset=1k|item=Q7188}}
## {{Etikéta|preset=1k|item=Q7174}}
## {{Etikéta|preset=1k|item=Q317}}
## {{Etikéta|preset=1k|item=Q7269}}
## {{Etikéta|preset=1k|item=Q7270}}
# {{Etikéta|preset=1k|item=Q7257}}
## {{Etikéta|preset=1k|item=Q6199}}
## {{Etikéta|preset=1k|item=Q6206}}
## {{Etikéta|preset=1k|item=Q6186}}
## {{Etikéta|preset=1k|item=Q7169}}
## {{Etikéta|preset=1k|item=Q6223}}
## {{Etikéta|preset=1k|item=Q6216}}
## {{Etikéta|preset=1k|item=Q7264}}
## {{Etikéta|preset=1k|item=Q6235}}
## {{Etikéta|preset=1k|item=Q7272}}
# {{Etikéta|preset=1k|item=Q7260}}
# {{Etikéta|preset=1k|item=Q7275}}
# {{Etikéta|preset=1k|item=Q7278}}
# {{Etikéta|preset=1k|item=Q7281}}
=== {{Etikéta|preset=1kat|item=Q6353120}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q4026633}}}} === <!-- Business and economics -->
# {{Etikéta|preset=1k|item=Q8134}}
# {{Etikéta|preset=1k|item=Q8137}}
# {{Etikéta|preset=1k|item=Q8142}}
## {{Etikéta|preset=1k|item=Q4916}}
## {{Etikéta|preset=1k|item=Q4917}}
# {{Etikéta|preset=1k|item=Q8148}}
# {{Etikéta|preset=1k|item=Q1368}}
# {{Etikéta|preset=1k|item=Q8161}}
# {{Etikéta|preset=1k|item=Q601401}}
=== {{Etikéta|preset=1kat|item=Q4026563}} === <!-- Law -->
# {{Etikéta|preset=1k|item=Q7748}}
# {{Etikéta|preset=1k|item=Q7755}}
=== {{Etikéta|preset=1kat|item=Q6528085}} === <!-- International organizations -->
# {{Etikéta|preset=1k|item=Q7159}}
# {{Etikéta|preset=1k|item=Q7172}}
# {{Etikéta|preset=1k|item=Q7768}}
# {{Etikéta|preset=1k|item=Q7785}}
# {{Etikéta|preset=1k|item=Q458}}
# {{Etikéta|preset=1k|item=Q7178}}
# {{Etikéta|preset=1k|item=Q7184}}
# {{Etikéta|preset=1k|item=Q7191}}
# {{Etikéta|preset=1k|item=Q7795}}
# {{Etikéta|preset=1k|item=Q1065}}
## {{Etikéta|preset=1k|item=Q7801}}
## {{Etikéta|preset=1k|item=Q7804}}
## {{Etikéta|preset=1k|item=Q7809}}
## {{Etikéta|preset=1k|item=Q7817}}
# {{Etikéta|preset=1k|item=Q7164}}
# {{Etikéta|preset=1k|item=Q7825}}
=== {{Etikéta|preset=1kat|item=Q8394144}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q5850187}}}} === <!-- War and military -->
# {{Etikéta|preset=1k|item=Q8473}}
# {{Etikéta|preset=1k|item=Q454}}
# {{Etikéta|preset=1k|item=Q7283}}
# {{Etikéta|preset=1k|item=Q198}}
## {{Etikéta|preset=1k|item=Q8465}}
=== {{Etikéta|preset=1kat|item=Q7090668}} === <!-- Social issues -->
# {{Etikéta|preset=1k|item=Q8452}}
# {{Etikéta|preset=1k|item=Q8454}}
# {{Etikéta|preset=1k|item=Q169207}}
## {{Etikéta|preset=1k|item=Q8461}}
# {{Etikéta|preset=1k|item=Q7252}}
# {{Etikéta|preset=1k|item=Q7181}}
# {{Etikéta|preset=1k|item=Q8458}}
# {{Etikéta|preset=1k|item=Q10294}}
# {{Etikéta|preset=1k|item=Q8463}}
}}
== {{Etikéta|preset=1kat|item=Q1458484}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q8259}}}} == <!-- Language and literature -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q315}}
# {{Etikéta|preset=1kat|item=Q4960490}}
## {{Etikéta|preset=1k|item=Q13955}} <!-- Technically, not a single language. -->
## {{Etikéta|preset=1k|item=Q9610}}
## {{Etikéta|preset=1k|item=Q7850}} <!-- Technically, not a single language. -->
## {{Etikéta|preset=1k|item=Q1860}}
## {{Etikéta|preset=1k|item=Q150}}
## {{Etikéta|preset=1k|item=Q188}}
## {{Etikéta|preset=1k|item=Q9129}}
## {{Etikéta|preset=1k|item=Q9288}}
## {{Etikéta|preset=1k|item=Q11051}}
## {{Etikéta|preset=1k|item=Q9176}}
## {{Etikéta|preset=1k|item=Q5287}}
## {{Etikéta|preset=1k|item=Q397}}
## {{Etikéta|preset=1k|item=Q9168}}
## {{Etikéta|preset=1k|item=Q5146}}
## {{Etikéta|preset=1k|item=Q7737}}
## {{Etikéta|preset=1k|item=Q11059}}
## {{Etikéta|preset=1k|item=Q1321}}
## {{Etikéta|preset=1k|item=Q7838}}
## {{Etikéta|preset=1k|item=Q256}}
# {{Etikéta|preset=1k|item=Q8162}}
# {{Etikéta|preset=1k|item=Q8091}}
# {{Etikéta|preset=1k|item=Q8171}}
## {{Etikéta|preset=1k|item=Q8183}}
## {{Etikéta|preset=1k|item=Q8188}}
# {{Etikéta|preset=1k|item=Q8192}}
## {{Etikéta|preset=1k|item=Q1828555}}
## {{Etikéta|preset=1k|item=Q8201}}
## {{Etikéta|preset=1k|item=Q8209}}
## {{Etikéta|preset=1k|item=Q8216}}
## {{Etikéta|preset=1k|item=Q8229}}
# {{Etikéta|preset=1k|item=Q8236}}
# {{Etikéta|preset=1k|item=Q7553}}
# {{Etikéta|preset=1k|item=Q8242}}
## {{Etikéta|preset=1k|item=Q676}}
### ''{{Etikéta|preset=1k|item=Q8251}}''
## {{Etikéta|preset=1k|item=Q8253}}
### ''{{Etikéta|preset=1k|item=Q8258}}''
## {{Etikéta|preset=1k|item=Q8261}}
### ''{{Etikéta|preset=1k|item=Q8269}}''
## {{Etikéta|preset=1k|item=Q482}}
### ''{{Etikéta|preset=1k|item=Q8272}}''
### ''{{Etikéta|preset=1k|item=Q8275}}''
### ''{{Etikéta|preset=1k|item=Q8279}}''
## {{Etikéta|preset=1kat|item=Q9232453}} <!-- Religious texts -->
### ''{{Etikéta|preset=1k|item=Q1845}}''
### ''{{Etikéta|preset=1k|item=Q8276}}''
}}
== {{Etikéta|preset=1kat|item=Q8840652}} == <!-- Measurements -->
{{Kòlumnë|number=2|1=
# {{Etikéta|preset=1k|item=Q12453}}
# {{Etikéta|preset=1k|item=Q12457}}
=== {{Etikéta|preset=1kat|item=Q5828462}} ({{lcfirst:{{Etikéta|preset=1kat|item=Q105592638}}}}; {{lcfirst:{{Etikéta|preset=1kat|item=Q8175902}}}}; {{lcfirst:{{Etikéta|preset=1kat|item=Q9648275}}}}) === <!-- Weight, volume and distance -->
# {{Etikéta|preset=1k|item=Q11570}}
# {{Etikéta|preset=1k|item=Q11582}}
# {{Etikéta|preset=1k|item=Q11573}}
=== {{Etikéta|preset=1kat|item=Q4049213}} === <!-- Time -->
# {{Etikéta|preset=1k|item=Q12132}}
## {{Etikéta|preset=1k|item=Q12138}}
# {{Etikéta|preset=1k|item=Q376}}
# {{Etikéta|preset=1k|item=Q11574}}
# {{Etikéta|preset=1k|item=Q573}}
# {{Etikéta|preset=1k|item=Q577}}
# {{Etikéta|preset=1k|item=Q12143}}
}}
=== {{Etikéta|preset=1kat|item=Q1458083}} === <!-- Science -->
# {{Etikéta|preset=1k|item=Q336}}
# {{Etikéta|preset=1k|item=Q7860}}
=== {{Etikéta|preset=1kat|item=Q6508}} === <!-- Astronomy -->
{{Kòlumnë|number=2|1=
# {{Etikéta|preset=1k|item=Q333}}
# {{Etikéta|preset=1k|item=Q3863}}
# {{Etikéta|preset=1k|item=Q323}}
# {{Etikéta|preset=1k|item=Q589}}
# {{Etikéta|preset=1k|item=Q3559}}
# {{Etikéta|preset=1k|item=Q318}}
## {{Etikéta|preset=1k|item=Q321}}
# {{Etikéta|preset=1k|item=Q405}}
# {{Etikéta|preset=1k|item=Q634}}
## {{Etikéta|preset=1k|item=Q308}}
## {{Etikéta|preset=1k|item=Q313}}
## {{Etikéta|preset=1k|item=Q2}}
## {{Etikéta|preset=1k|item=Q111}}
## {{Etikéta|preset=1k|item=Q319}}
## {{Etikéta|preset=1k|item=Q193}}
## {{Etikéta|preset=1k|item=Q324}}
## {{Etikéta|preset=1k|item=Q332}}
# {{Etikéta|preset=1k|item=Q544}}
# {{Etikéta|preset=1k|item=Q5916}}
# {{Etikéta|preset=1k|item=Q523}}
## {{Etikéta|preset=1k|item=Q525}}
# {{Etikéta|preset=1k|item=Q1}}
}}
=== {{Etikéta|preset=1kat|item=Q1457402}} === <!-- Biology -->
{{Kòlumnë|number=2|1=
# {{Etikéta|preset=1k|item=Q420}}
# {{Etikéta|preset=1kat|item=Q6807119}} <!-- Organic compounds -->
## {{Etikéta|preset=1k|item=Q7430}}
## {{Etikéta|preset=1k|item=Q8047}}
## {{Etikéta|preset=1k|item=Q11364}}
## {{Etikéta|preset=1k|item=Q8054}}
# {{Etikéta|preset=1k|item=Q441}}
# {{Etikéta|preset=1k|item=Q4}}
## {{Etikéta|preset=1k|item=Q10737}}
# {{Etikéta|preset=1k|item=Q7150}}
## {{Etikéta|preset=1k|item=Q11394}}
# {{Etikéta|preset=1k|item=Q3}}
# {{Etikéta|preset=1k|item=Q11398}}
## {{Etikéta|preset=1k|item=Q7432}}
}}
==== {{Etikéta|preset=1kat|item=Q6226217}} ==== <!-- Biological processes -->
{{Kòlumnë|number=2|1=
# {{Etikéta|preset=1k|item=Q1057}}
## {{Etikéta|preset=1k|item=Q11978}}
## {{Etikéta|preset=1k|item=Q11982}}
## {{Etikéta|preset=1k|item=Q472287}}
# {{Etikéta|preset=1k|item=Q1063}}
# {{Etikéta|preset=1k|item=Q11990}}
## {{Etikéta|preset=1k|item=Q11995}}
## {{Etikéta|preset=1k|item=Q290}}
}}
==== {{Etikéta|preset=1kat|item=Q5626060}} ==== <!-- Organisms -->
{{Kòlumnë|number=2|1=
# {{Etikéta|preset=1k|item=Q7239}}
# {{Etikéta|preset=1k|item=Q729}}
## {{Etikéta|preset=1k|item=Q5185}}
## {{Etikéta|preset=1k|item=Q25326}}
## {{Etikéta|preset=1k|item=Q1360}}
### {{Etikéta|preset=1k|item=Q1390}}
#### {{Etikéta|preset=1k|item=Q7386}}
#### {{Etikéta|preset=1k|item=Q7391}}
#### {{Etikéta|preset=1k|item=Q7367}}
### {{Etikéta|preset=1k|item=Q1357}}
## {{Etikéta|preset=1kat|item=Q8734609}} <!-- Chordates -->
### {{Etikéta|preset=1k|item=Q10908}}
### {{Etikéta|preset=1k|item=Q5113}}
#### {{Etikéta|preset=1k|item=Q780}}
#### {{Etikéta|preset=1k|item=Q10856}}
### {{Etikéta|preset=1k|item=Q152}}
#### {{Etikéta|preset=1k|item=Q7372}}
### {{Etikéta|preset=1k|item=Q7377}}
#### {{Etikéta|preset=1k|item=Q7375}}
#### {{Etikéta|preset=1k|item=Q146}}
#### {{Etikéta|preset=1k|item=Q830}}
#### {{Etikéta|preset=1k|item=Q160}}
#### {{Etikéta|preset=1k|item=Q144}}
#### {{Etikéta|preset=1k|item=Q726}}
#### {{Etikéta|preset=1k|item=Q7368}}
#### {{Etikéta|preset=1k|item=Q10850}}
#### {{Etikéta|preset=1k|item=Q787}}
#### {{Etikéta|preset=1k|item=Q7380}}
##### {{Etikéta|preset=1k|item=Q5}}
### {{Etikéta|preset=1k|item=Q10811}}
#### {{Etikéta|preset=1k|item=Q430}}
#### {{Etikéta|preset=1k|item=Q2102}}
# {{Etikéta|preset=1k|item=Q37868}}
# {{Etikéta|preset=1k|item=Q10872}}
# {{Etikéta|preset=1k|item=Q10876}}
# {{Etikéta|preset=1k|item=Q764}}
# {{Etikéta|preset=1k|item=Q756}}
## {{Etikéta|preset=1k|item=Q506}}
## {{Etikéta|preset=1k|item=Q1364}}
## {{Etikéta|preset=1k|item=Q10884}}
# {{Etikéta|preset=1k|item=Q10892}}
}}
==== {{Etikéta|preset=1kat|item=Q4095469}} ==== <!-- Anatomy -->
{{Kòlumnë|number=2|1=
# {{Etikéta|preset=1k|item=Q514}}
# {{Etikéta|preset=1k|item=Q7868}}
# {{Etikéta|preset=1k|item=Q11068}}
## {{Etikéta|preset=1k|item=Q7873}}
## {{Etikéta|preset=1k|item=Q1072}}
# {{Etikéta|preset=1k|item=Q11078}}
# {{Etikéta|preset=1k|item=Q9649}}
## {{Etikéta|preset=1k|item=Q11083}}
## {{Etikéta|preset=1k|item=Q11090}}
## {{Etikéta|preset=1k|item=Q9368}}
# {{Etikéta|preset=1k|item=Q7365}}
# {{Etikéta|preset=1k|item=Q9404}}
## {{Etikéta|preset=1k|item=Q1073}}
## {{Etikéta|preset=1k|item=Q9620}}
## {{Etikéta|preset=1k|item=Q11101}}
### {{Etikéta|preset=1k|item=Q7362}}
### {{Etikéta|preset=1k|item=Q7363}}
### {{Etikéta|preset=1k|item=Q7364}}
### {{Etikéta|preset=1k|item=Q124794}}
# {{Etikéta|preset=1k|item=Q7895}}
# {{Etikéta|preset=1k|item=Q7891}}
# {{Etikéta|preset=1k|item=Q7881}}
# {{Etikéta|preset=1k|item=Q1074}}
}}
=== {{Etikéta|preset=1kat|item=Q7486603}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q4095812}}}} === <!-- Health and medicine -->
{{Kòlumnë|number=2|1=
# {{Etikéta|preset=1k|item=Q11190}}
# {{Etikéta|preset=1k|item=Q12128}}
# {{Etikéta|preset=1k|item=Q12136}}
# {{Etikéta|preset=1k|item=Q12140}}
## {{Etikéta|preset=1k|item=Q12187}}
# {{Etikéta|preset=1k|item=Q12147}}
# {{Etikéta|preset=1k|item=Q1059}}
# {{Etikéta|preset=1k|item=Q12171}}
# {{Etikéta|preset=1k|item=Q12184}}
# {{Etikéta|preset=1k|item=Q134808}}
# {{Etikéta|preset=1k|item=Q808}}
==== {{Etikéta|preset=1kat|item=Q7215431}} ==== <!-- Diseases/disorders -->
# {{Etikéta|preset=1k|item=Q12029}}
## {{Etikéta|preset=1k|item=Q153}}
## {{Etikéta|preset=1k|item=Q1566}}
# {{Etikéta|preset=1k|item=Q11081}}
# {{Etikéta|preset=1k|item=Q12078}}
# {{Etikéta|preset=1k|item=Q199804}}
# {{Etikéta|preset=1k|item=Q12125}}
# {{Etikéta|preset=1k|item=Q12131}}
## {{Etikéta|preset=1k|item=Q10874}}
## {{Etikéta|preset=1k|item=Q12133}}
# {{Etikéta|preset=1k|item=Q12135}}
# {{Etikéta|preset=1k|item=Q41571}}
# {{Etikéta|preset=1k|item=Q156103}}
# {{Etikéta|preset=1k|item=Q86}}
# {{Etikéta|preset=1k|item=Q12152}}
# {{Etikéta|preset=1k|item=Q2840}}
# {{Etikéta|preset=1k|item=Q12156}}
# {{Etikéta|preset=1k|item=Q12167}}
# {{Etikéta|preset=1k|item=Q12174}}
# {{Etikéta|preset=1k|item=Q12192}}
# {{Etikéta|preset=1k|item=Q12195}}
# {{Etikéta|preset=1k|item=Q12198}}
## {{Etikéta|preset=1k|item=Q12199}}
# {{Etikéta|preset=1k|item=Q12214}}
# {{Etikéta|preset=1k|item=Q12202}}
# {{Etikéta|preset=1k|item=Q12204}}
# {{Etikéta|preset=1k|item=Q12206}}
}}
=== {{Etikéta|preset=1kat|item=Q1457474}} === <!-- Chemistry -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q2329}}
# {{Etikéta|preset=1k|item=Q11165}}
# {{Etikéta|preset=1k|item=Q7094}}
# {{Etikéta|preset=1k|item=Q11173}}
## {{Etikéta|preset=1k|item=Q11158}}
## {{Etikéta|preset=1k|item=Q11193}}
## {{Etikéta|preset=1k|item=Q12370}}
# {{Etikéta|preset=1k|item=Q11344}}
## {{Etikéta|preset=1k|item=Q10693}}
## {{Etikéta|preset=1k|item=Q663}}
## {{Etikéta|preset=1k|item=Q623}}
## {{Etikéta|preset=1k|item=Q753}}
## {{Etikéta|preset=1k|item=Q897}}
## {{Etikéta|preset=1k|item=Q556}}
## {{Etikéta|preset=1k|item=Q677}}
## {{Etikéta|preset=1k|item=Q627}}
## {{Etikéta|preset=1k|item=Q629}}
## {{Etikéta|preset=1k|item=Q1090}}
## {{Etikéta|preset=1k|item=Q1096}}
# {{Etikéta|preset=1k|item=Q11351}}
## {{Etikéta|preset=1k|item=Q156}}
## {{Etikéta|preset=1k|item=Q11358}}
## {{Etikéta|preset=1k|item=Q11367}}
# {{Etikéta|preset=1k|item=Q11369}}
# {{Etikéta|preset=1k|item=Q2346}}
# {{Etikéta|preset=1k|item=Q11372}}
}}
=== {{Etikéta|preset=1kat|item=Q1457551}} === <!-- Earth science -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q7937}}
# {{Etikéta|preset=1k|item=Q81041}}
# {{Etikéta|preset=1k|item=Q7939}}
# {{Etikéta|preset=1k|item=Q7942}}
# {{Etikéta|preset=1k|item=Q7944}}
# {{Etikéta|preset=1k|item=Q1069}}
## {{Etikéta|preset=1k|item=Q7946}}
### {{Etikéta|preset=1k|item=Q5283}}
## {{Etikéta|preset=1k|item=Q7950}}
## {{Etikéta|preset=1k|item=Q8063}}
# {{Etikéta|preset=1k|item=Q8065}}
## {{Etikéta|preset=1k|item=Q8068}}
## {{Etikéta|preset=1k|item=Q8070}}
# {{Etikéta|preset=1k|item=Q8072}}
# {{Etikéta|preset=1k|item=Q11663}}
## {{Etikéta|preset=1k|item=Q8074}}
## {{Etikéta|preset=1k|item=Q7925}}
## {{Etikéta|preset=1k|item=Q7561}}
## {{Etikéta|preset=1k|item=Q8081}}
## {{Etikéta|preset=1k|item=Q8092}}
## {{Etikéta|preset=1k|item=Q8094}}
}}
=== {{Etikéta|preset=1kat|item=Q1457258}} === <!-- Physics -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q413}}
# {{Etikéta|preset=1k|item=Q11376}}
# {{Etikéta|preset=1k|item=Q9121}}
# {{Etikéta|preset=1k|item=Q11379}}
## {{Etikéta|preset=1k|item=Q11382}}
# {{Etikéta|preset=1k|item=Q12969754}}
## {{Etikéta|preset=1k|item=Q11388}}
## {{Etikéta|preset=1k|item=Q11391}}
## {{Etikéta|preset=1k|item=Q9128}}
### {{Etikéta|preset=1k|item=Q1075}}
# {{Etikéta|preset=1k|item=Q11397}}
# {{Etikéta|preset=1k|item=Q11402}}
## {{Etikéta|preset=1k|item=Q849919}}
### {{Etikéta|preset=1k|item=Q11408}}
## {{Etikéta|preset=1k|item=Q11412}}
## {{Etikéta|preset=1k|item=Q11415}}
## {{Etikéta|preset=1k|item=Q11418}}
# {{Etikéta|preset=1k|item=Q11421}}
# {{Etikéta|preset=1k|item=Q11423}}
# {{Etikéta|preset=1k|item=Q11426}}
## {{Etikéta|preset=1k|item=Q11427}}
# {{Etikéta|preset=1k|item=Q11429}}
# {{Etikéta|preset=1k|item=Q11430}}
## {{Etikéta|preset=1k|item=Q11432}}
## {{Etikéta|preset=1k|item=Q11435}}
## {{Etikéta|preset=1k|item=Q10251}}
## {{Etikéta|preset=1k|item=Q11438}}
# {{Etikéta|preset=1k|item=Q944}}
# {{Etikéta|preset=1k|item=Q11448}}
# {{Etikéta|preset=1k|item=Q11452}}
# {{Etikéta|preset=1k|item=Q11455}}
# {{Etikéta|preset=1k|item=Q11456}}
# {{Etikéta|preset=1k|item=Q11461}}
# {{Etikéta|preset=1k|item=Q11465}}
## {{Etikéta|preset=1k|item=Q2111}}
# {{Etikéta|preset=1k|item=Q11466}}
# {{Etikéta|preset=1k|item=Q11471}}
# {{Etikéta|preset=1k|item=Q11473}}
# {{Etikéta|preset=1k|item=Q11475}}
}}
=== {{Etikéta|preset=1kat|item=Q4619}} === <!-- Mathematics -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q395}}
# {{Etikéta|preset=1k|item=Q11205}}
## {{Etikéta|preset=1k|item=Q11197}}
## {{Etikéta|preset=1k|item=Q11563}}
## {{Etikéta|preset=1k|item=Q12479}}
# {{Etikéta|preset=1k|item=Q3968}}
## {{Etikéta|preset=1k|item=Q11567}}
## {{Etikéta|preset=1k|item=Q11345}}
## {{Etikéta|preset=1k|item=Q82571}}
# {{Etikéta|preset=1k|item=Q8087}}
## {{Etikéta|preset=1k|item=Q11352}}
## {{Etikéta|preset=1k|item=Q11500}}
## {{Etikéta|preset=1k|item=Q11210}}
## {{Etikéta|preset=1k|item=Q167}}
## {{Etikéta|preset=1k|item=Q11518}}
## {{Etikéta|preset=1k|item=Q12485}}
## {{Etikéta|preset=1k|item=Q8084}}
# {{Etikéta|preset=1k|item=Q7754}}
## {{Etikéta|preset=1k|item=Q11214}}
## {{Etikéta|preset=1k|item=Q11216}}
# {{Etikéta|preset=1kat|item=Q7066183}} <!-- Probability and statistics -->
## {{Etikéta|preset=1k|item=Q9492}}
## {{Etikéta|preset=1k|item=Q12483}}
# {{Etikéta|preset=1kat|item=Q7217201}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q7145042}}}} <!-- Logic and foundations -->
## {{Etikéta|preset=1k|item=Q11348}}
## {{Etikéta|preset=1k|item=Q205}}
## {{Etikéta|preset=1k|item=Q11538}}
## {{Etikéta|preset=1k|item=Q12482}}
}}
== {{Etikéta|preset=1kat|item=Q5611149}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q5658978}}}} == <!-- Food and agriculture -->
=== {{Etikéta|preset=1kat|item=Q5658978}} === <!-- Agriculture -->
# {{Etikéta|preset=1k|item=Q11451}}
## {{Etikéta|preset=1k|item=Q11453}}
## {{Etikéta|preset=1k|item=Q11464}}
## {{Etikéta|preset=1k|item=Q11395}}
=== {{Etikéta|preset=1kat|item=Q5611149}} === <!-- Food -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q2095}}
# {{Etikéta|preset=1k|item=Q7802}}
# {{Etikéta|preset=1k|item=Q12117}}
## {{Etikéta|preset=1k|item=Q11577}}
## {{Etikéta|preset=1k|item=Q11575}}
## {{Etikéta|preset=1k|item=Q5090}}
## {{Etikéta|preset=1k|item=Q332062}}
## {{Etikéta|preset=1k|item=Q15645384}}
# {{Etikéta|preset=1k|item=Q10943}}
# {{Etikéta|preset=1k|item=Q195}}
# {{Etikéta|preset=1k|item=Q10987}}
# {{Etikéta|preset=1k|item=Q89}}
# {{Etikéta|preset=1k|item=Q503}}
# {{Etikéta|preset=1k|item=Q81513}}
# {{Etikéta|preset=1k|item=Q10978}}
# {{Etikéta|preset=1k|item=Q11009}}
# {{Etikéta|preset=1k|item=Q11006}}
# {{Etikéta|preset=1k|item=Q10990}}
# {{Etikéta|preset=1k|item=Q11002}}
# {{Etikéta|preset=1k|item=Q42527}}
# {{Etikéta|preset=1k|item=Q11254}}
# {{Etikéta|preset=1k|item=Q11004}}
## {{Etikéta|preset=1k|item=Q10998}}
}}
=== {{Etikéta|preset=1kat|item=Q6543743}} === <!-- Beverages -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q44}}
# {{Etikéta|preset=1k|item=Q8486}}
# {{Etikéta|preset=1k|item=Q8492}}
# {{Etikéta|preset=1k|item=Q8495}}
# {{Etikéta|preset=1k|item=Q6097}}
# {{Etikéta|preset=1k|item=Q283}}
# {{Etikéta|preset=1k|item=Q282}}
}}
== {{Etikéta|preset=1kat|item=Q4884546}} == <!-- Technology -->
{{Kòlumnë|number=2|1=
# {{Etikéta|preset=1k|item=Q11016}}
# {{Etikéta|preset=1k|item=Q7108}}
# {{Etikéta|preset=1k|item=Q11460}}
## {{Etikéta|preset=1k|item=Q11457}}
# {{Etikéta|preset=1k|item=Q11023}}
## {{Etikéta|preset=1k|item=Q11019}}
## {{Etikéta|preset=1k|item=Q11012}}
## {{Etikéta|preset=1k|item=Q11022}}
## {{Etikéta|preset=1k|item=Q446}}
# {{Etikéta|preset=1k|item=Q11467}}
# {{Etikéta|preset=1k|item=Q11468}}
=== {{Etikéta|preset=1kat|item=Q1458498}} === <!-- Communication -->
# {{Etikéta|preset=1k|item=Q11024}}
# {{Etikéta|preset=1k|item=Q11028}}
## {{Etikéta|preset=1k|item=Q5292}}
# {{Etikéta|preset=1k|item=Q11030}}
## {{Etikéta|preset=1k|item=Q11032}}
# {{Etikéta|preset=1k|item=Q7075}}
## {{Etikéta|preset=1k|item=Q571}}
# {{Etikéta|preset=1k|item=Q11034}}
# {{Etikéta|preset=1k|item=Q11035}}
=== {{Etikéta|preset=1kat|item=Q5460952}} === <!-- Electronics -->
# {{Etikéta|preset=1k|item=Q11650}}
## {{Etikéta|preset=1k|item=Q11651}}
## {{Etikéta|preset=1k|item=Q11652}}
# {{Etikéta|preset=1kat|item=Q7493787}} <!-- Components -->
## {{Etikéta|preset=1k|item=Q5322}}
## {{Etikéta|preset=1k|item=Q5325}}
## {{Etikéta|preset=1k|item=Q5339}}
## {{Etikéta|preset=1k|item=Q11656}}
## {{Etikéta|preset=1k|item=Q5321}}
## {{Etikéta|preset=1k|item=Q11658}}
==== {{Etikéta|preset=1kat|item=Q6517860}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q4049595}}}} ==== <!-- Computer science and Internet -->
# {{Etikéta|preset=1k|item=Q68}}
## {{Etikéta|preset=1k|item=Q4439}}
## {{Etikéta|preset=1k|item=Q5300}}
# {{Etikéta|preset=1k|item=Q11660}}
# {{Etikéta|preset=1k|item=Q11661}}
## {{Etikéta|preset=1k|item=Q8366}}
# {{Etikéta|preset=1k|item=Q75}}
## {{Etikéta|preset=1k|item=Q9158}}
## {{Etikéta|preset=1k|item=Q466}}
# {{Etikéta|preset=1k|item=Q9135}}
# {{Etikéta|preset=1k|item=Q9143}}
# {{Etikéta|preset=1k|item=Q7397}}
=== {{Etikéta|preset=1kat|item=Q8413436}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q7214212}}}} === <!-- Energy and fuels -->
# {{Etikéta|preset=1k|item=Q12705}}
# {{Etikéta|preset=1k|item=Q12725}}
## {{Etikéta|preset=1k|item=Q12739}}
# {{Etikéta|preset=1k|item=Q12748}}
# {{Etikéta|preset=1kat|item=Q8414840}} <!-- Engine -->
## {{Etikéta|preset=1k|item=Q12757}}
## {{Etikéta|preset=1k|item=Q12760}}
# {{Etikéta|preset=1k|item=Q3196}}
=== {{Etikéta|preset=1kat|item=Q4057308}} === <!-- Materials -->
# {{Etikéta|preset=1k|item=Q11469}}
# {{Etikéta|preset=1k|item=Q11472}}
# {{Etikéta|preset=1k|item=Q11474}}
# {{Etikéta|preset=1k|item=Q287}}
=== {{Etikéta|preset=1kat|item=Q7216108}} === <!-- Transportation -->
# {{Etikéta|preset=1k|item=Q7590}}
# {{Etikéta|preset=1k|item=Q11436}}
# {{Etikéta|preset=1k|item=Q11442}}
# {{Etikéta|preset=1k|item=Q1420}}
# {{Etikéta|preset=1k|item=Q2811}}
# {{Etikéta|preset=1k|item=Q11446}}
# {{Etikéta|preset=1k|item=Q870}}
=== {{Etikéta|preset=1kat|item=Q7166566}} === <!-- Weapons -->
# {{Etikéta|preset=1k|item=Q728}}
## {{Etikéta|preset=1k|item=Q12791}}
## {{Etikéta|preset=1k|item=Q12796}}
### {{Etikéta|preset=1k|item=Q12800}}
## {{Etikéta|preset=1k|item=Q12802}}
# {{Etikéta|preset=1k|item=Q12876}}
# {{Etikéta|preset=1k|item=Q12870}}
## {{Etikéta|preset=1k|item=Q12861}}
}}
== {{Etikéta|preset=1kat|item=Q4104783}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q7045033}}}} == <!-- Arts and recreation -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q11042}}
# {{Etikéta|preset=1k|item=Q735}}
## {{Etikéta|preset=1k|item=Q1004}}
## {{Etikéta|preset=1k|item=Q11629}}
## {{Etikéta|preset=1k|item=Q11633}}
## {{Etikéta|preset=1k|item=Q11634}}
## {{Etikéta|preset=1k|item=Q11642}}
# {{Etikéta|preset=1k|item=Q11639}}
# {{Etikéta|preset=1k|item=Q12684}}
# {{Etikéta|preset=1k|item=Q11635}}
# {{Etikéta|preset=1k|item=Q12681}}
=== {{Etikéta|preset=1kat|item=Q6204331}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q6135934}}}} === <!-- Architecture and civil engineering -->
# {{Etikéta|preset=1k|item=Q12271}}
# {{Etikéta|preset=1k|item=Q12277}}
# {{Etikéta|preset=1k|item=Q12280}}
# {{Etikéta|preset=1k|item=Q12284}}
# {{Etikéta|preset=1k|item=Q12323}}
# {{Etikéta|preset=1k|item=Q12493}}
# {{Etikéta|preset=1k|item=Q3947}}
# {{Etikéta|preset=1kat|item=Q1458429}} <!-- Buildings and structures -->
## {{Etikéta|preset=1k|item=Q43473}}
## {{Etikéta|preset=1k|item=Q10285}}
## {{Etikéta|preset=1k|item=Q12501}}
## {{Etikéta|preset=1k|item=Q243}}
## {{Etikéta|preset=1k|item=Q9188}}
## {{Etikéta|preset=1k|item=Q12506}}
## {{Etikéta|preset=1k|item=Q10288}}
## {{Etikéta|preset=1k|item=Q13217298}}
## {{Etikéta|preset=1k|item=Q12512}}
## {{Etikéta|preset=1k|item=Q9202}}
## {{Etikéta|preset=1k|item=Q9141}}
## {{Etikéta|preset=1k|item=Q12514}}
# {{Etikéta|preset=1k|item=Q12516}}
# {{Etikéta|preset=1k|item=Q12518}}
=== {{Etikéta|preset=1kat|item=Q1458269}}, {{lcfirst:{{Etikéta|preset=1kat|item=Q7153700}}}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q7018418}}}} === <!-- Film, radio and television -->
# {{Etikéta|preset=1k|item=Q11424}}
## {{Etikéta|preset=1k|item=Q11425}}
# {{Etikéta|preset=1k|item=Q872}}
# {{Etikéta|preset=1k|item=Q289}}
=== {{Etikéta|preset=1kat|item=Q8255}} === <!-- Music -->
# {{Etikéta|preset=1k|item=Q638}}
# {{Etikéta|preset=1k|item=Q7366}}
# {{Etikéta|preset=1kat|item=Q6134246}} <!-- Music genres -->
## {{Etikéta|preset=1k|item=Q9759}}
## {{Etikéta|preset=1k|item=Q9730}}
### {{Etikéta|preset=1k|item=Q1344}}
### {{Etikéta|preset=1k|item=Q9734}}
## {{Etikéta|preset=1k|item=Q9778}}
## {{Etikéta|preset=1k|item=Q9764}}
## {{Etikéta|preset=1k|item=Q11401}}
## {{Etikéta|preset=1k|item=Q8341}}
## {{Etikéta|preset=1k|item=Q9794}}
## {{Etikéta|preset=1k|item=Q11399}}
## {{Etikéta|preset=1k|item=Q11403}}
# {{Etikéta|preset=1kat|item=Q7212463}}<!-- Musical instruments -->
## {{Etikéta|preset=1k|item=Q11404}}
## {{Etikéta|preset=1k|item=Q11405}}
## {{Etikéta|preset=1k|item=Q6607}}
## {{Etikéta|preset=1k|item=Q5994}}
## {{Etikéta|preset=1k|item=Q8338}}
## {{Etikéta|preset=1k|item=Q8355}}
=== {{Etikéta|preset=1kat|item=Q7045033}} === <!-- Recreation -->
# {{Etikéta|preset=1k|item=Q11410}}
## {{Etikéta|preset=1k|item=Q11411}}
## {{Etikéta|preset=1k|item=Q718}}
## {{Etikéta|preset=1k|item=Q11413}}
## {{Etikéta|preset=1k|item=Q7889}}
# {{Etikéta|preset=1k|item=Q11416}}
# {{Etikéta|preset=1k|item=Q11417}}
## {{Etikéta|preset=1k|item=Q11420}}
# {{Etikéta|preset=1k|item=Q5389}}
# {{Etikéta|preset=1k|item=Q349}}
## {{Etikéta|preset=1k|item=Q542}}
## {{Etikéta|preset=1kat|item=Q7379346}} <!-- Ball games -->
### {{Etikéta|preset=1k|item=Q5369}}
### {{Etikéta|preset=1k|item=Q5372}}
### {{Etikéta|preset=1k|item=Q5375}}
### {{Etikéta|preset=1k|item=Q2736}}
### {{Etikéta|preset=1k|item=Q5377}}
### {{Etikéta|preset=1k|item=Q5378}}
### {{Etikéta|preset=1k|item=Q847}}
## {{Etikéta|preset=1k|item=Q6388}}
# {{Etikéta|preset=1k|item=Q11422}}
}}
== {{Etikéta|preset=1kat|item=Q1457595}} == <!-- History -->
# {{Etikéta|preset=1k|item=Q309}}
==== {{Etikéta|preset=1kat|item=Q9084370}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q6499653}}}} ==== <!-- Prehistoric and ancient history -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q11768}}
# {{Etikéta|preset=1k|item=Q11772}}
# {{Etikéta|preset=1k|item=Q11761}}
# {{Etikéta|preset=1k|item=Q11774}}
# {{Etikéta|preset=1k|item=Q7209}}
# {{Etikéta|preset=1k|item=Q11764}}
# {{Etikéta|preset=1k|item=Q28567}}
# {{Etikéta|preset=1k|item=Q11767}}
# {{Etikéta|preset=1k|item=Q11756}}
# {{Etikéta|preset=1k|item=Q2277}}
# {{Etikéta|preset=1k|item=Q35355}}
# {{Etikéta|preset=1k|item=Q11759}}
# {{Etikéta|preset=1k|item=Q9683}}
}}
==== {{Etikéta|preset=1kat|item=Q7461740}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q8651924}}}} ==== <!-- Medieval and Renaissance periods -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q12536}}
# {{Etikéta|preset=1k|item=Q12542}}
# {{Etikéta|preset=1k|item=Q12544}}
# {{Etikéta|preset=1k|item=Q12546}}
# {{Etikéta|preset=1k|item=Q12548}}
# {{Etikéta|preset=1k|item=Q28573}}
# {{Etikéta|preset=1k|item=Q184536}}
# {{Etikéta|preset=1k|item=Q12554}}
# {{Etikéta|preset=1k|item=Q9903}}
# {{Etikéta|preset=1k|item=Q12557}}
# {{Etikéta|preset=1k|item=Q12560}}
# {{Etikéta|preset=1k|item=Q4692}}
# {{Etikéta|preset=1k|item=Q12567}}
}}
==== {{Etikéta|preset=1kat|item=Q7473369}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q6115583}}}} ==== <!-- Early modern and modern periods -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q12539}}
# {{Etikéta|preset=1k|item=Q8676}}
# {{Etikéta|preset=1k|item=Q8669}}
# {{Etikéta|preset=1k|item=Q11409}}
# {{Etikéta|preset=1k|item=Q8680}}
# {{Etikéta|preset=1k|item=Q8683}}
# {{Etikéta|preset=1k|item=Q6534}}
# {{Etikéta|preset=1k|item=Q8698}}
# {{Etikéta|preset=1k|item=Q2763}}
# {{Etikéta|preset=1k|item=Q2269}}
# {{Etikéta|preset=1k|item=Q7318}}
# {{Etikéta|preset=1k|item=Q8707}} <!-- most significant event in Japanese history -->
# {{Etikéta|preset=1k|item=Q12562}}
# {{Etikéta|preset=1k|item=Q8729}}
# {{Etikéta|preset=1k|item=Q8733}}
# {{Etikéta|preset=1k|item=Q15180}}
# {{Etikéta|preset=1k|item=Q8740}}
# {{Etikéta|preset=1k|item=Q361}}
# {{Etikéta|preset=1k|item=Q362}}
}}
== {{Etikéta|preset=1kat|item=Q1457673}} == <!-- Geography -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q1071}}
# {{Etikéta|preset=1k|item=Q515}}
# {{Etikéta|preset=1k|item=Q5107}}
# {{Etikéta|preset=1k|item=Q4421}}
# {{Etikéta|preset=1k|item=Q8502}}
# {{Etikéta|preset=1k|item=Q8514}}
# {{Etikéta|preset=1k|item=Q934}}
# {{Etikéta|preset=1k|item=Q9430}}
# {{Etikéta|preset=1k|item=Q4022}}
# {{Etikéta|preset=1k|item=Q165}}
# {{Etikéta|preset=1k|item=Q933}}
=== {{Etikéta|preset=1kat|item=Q2945667}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q6581383}}}} === <!-- Continents and major regions -->
# {{Etikéta|preset=1k|item=Q15}}
# {{Etikéta|preset=1k|item=Q51}}
# {{Etikéta|preset=1k|item=Q48}}
# {{Etikéta|preset=1k|item=Q46}}
# {{Etikéta|preset=1k|item=Q7204}}
# {{Etikéta|preset=1k|item=Q49}}
# {{Etikéta|preset=1k|item=Q55643}}
# {{Etikéta|preset=1k|item=Q18}}
}}
=== {{Etikéta|preset=1kat|item=Q4026570}} === <!-- Countries -->
{{Kòlumnë|em=16|1=
Eventually, there should be articles on most or all of the countries listed at [[:w:en:List of sovereign states|List of countries]]. However, for the smaller Wikipedias, some of the more high-priority countries to have articles on are:
==== {{Etikéta|preset=1kat|item=Q6581695}} ==== <!-- Africa -->
# {{Etikéta|preset=1k|item=Q262}}
# {{Etikéta|preset=1k|item=Q974}}
# {{Etikéta|preset=1k|item=Q79}}
# {{Etikéta|preset=1k|item=Q115}}
# {{Etikéta|preset=1k|item=Q1033}}
# {{Etikéta|preset=1k|item=Q258}}
# {{Etikéta|preset=1k|item=Q1049}}
# {{Etikéta|preset=1k|item=Q924}}
==== {{Etikéta|preset=1kat|item=Q8055354}} ==== <!-- Asia -->
# {{Etikéta|preset=1k|item=Q889}}
# {{Etikéta|preset=1k|item=Q902}}
# {{Etikéta|preset=1k|item=Q148}}
# {{Etikéta|preset=1k|item=Q668}}
# {{Etikéta|preset=1k|item=Q252}}
# {{Etikéta|preset=1k|item=Q794}}
# {{Etikéta|preset=1k|item=Q796}}
# {{Etikéta|preset=1k|item=Q801}}
# {{Etikéta|preset=1k|item=Q17}}
# {{Etikéta|preset=1k|item=Q843}}
# {{Etikéta|preset=1k|item=Q928}}
# {{Etikéta|preset=1k|item=Q851}}
# {{Etikéta|preset=1k|item=Q884}}
# {{Etikéta|preset=1k|item=Q869}}
# {{Etikéta|preset=1k|item=Q43}}
# {{Etikéta|preset=1k|item=Q881}}
==== {{Etikéta|preset=1kat|item=Q4587626}} ==== <!-- Europe -->
# {{Etikéta|preset=1k|item=Q40}}
# {{Etikéta|preset=1k|item=Q142}}
# {{Etikéta|preset=1k|item=Q183}}
# {{Etikéta|preset=1k|item=Q38}}
# {{Etikéta|preset=1k|item=Q55}}
# {{Etikéta|preset=1k|item=Q36}}
# {{Etikéta|preset=1k|item=Q45}}
# {{Etikéta|preset=1k|item=Q159}}
# {{Etikéta|preset=1k|item=Q29}}
# {{Etikéta|preset=1k|item=Q39}}
# {{Etikéta|preset=1k|item=Q212}}
# {{Etikéta|preset=1k|item=Q145}}
# {{Etikéta|preset=1k|item=Q237}}
==== {{Etikéta|preset=1kat|item=Q7131138}} ==== <!-- North America -->
# {{Etikéta|preset=1k|item=Q16}}
# {{Etikéta|preset=1k|item=Q241}}
# {{Etikéta|preset=1k|item=Q96}}
# {{Etikéta|preset=1k|item=Q30}}
==== {{Etikéta|preset=1kat|item=Q7185534}} ==== <!-- South America -->
# {{Etikéta|preset=1k|item=Q414}}
# {{Etikéta|preset=1k|item=Q155}}
# {{Etikéta|preset=1k|item=Q739}}
==== {{Etikéta|preset=1kat|item=Q7130988}} ==== <!-- Oceania -->
# {{Etikéta|preset=1k|item=Q408}}
}}
=== {{Etikéta|preset=1kat|item=Q9126476}} === <!-- Cities -->
{{Kòlumnë|em=16|1=
==== {{Etikéta|preset=1kat|item=Q7230788}} ==== <!-- Africa -->
# {{Etikéta|preset=1k|item=Q85}}
# {{Etikéta|preset=1k|item=Q5465}}
# {{Etikéta|preset=1k|item=Q3838}}
# {{Etikéta|preset=1k|item=Q8673}}
# {{Etikéta|preset=1k|item=Q3870}}
==== {{Etikéta|preset=1kat|item=Q7229671}} ==== <!-- Asia -->
# {{Etikéta|preset=1k|item=Q1530}}
# {{Etikéta|preset=1k|item=Q1861}}
# {{Etikéta|preset=1k|item=Q956}}
# {{Etikéta|preset=1k|item=Q3766}}
# {{Etikéta|preset=1k|item=Q1353}}
# {{Etikéta|preset=1k|item=Q1354}}
# {{Etikéta|preset=1k|item=Q612}}
# {{Etikéta|preset=1k|item=Q8646}}
# {{Etikéta|preset=1k|item=Q3630}}
# {{Etikéta|preset=1k|item=Q1218}}
# {{Etikéta|preset=1k|item=Q8660}}
# {{Etikéta|preset=1k|item=Q1348}}
# {{Etikéta|preset=1k|item=Q5806}}
# {{Etikéta|preset=1k|item=Q1156}}
# {{Etikéta|preset=1k|item=Q8684}}
# {{Etikéta|preset=1k|item=Q8686}}
# {{Etikéta|preset=1k|item=Q334}}
# {{Etikéta|preset=1k|item=Q3616}}
# {{Etikéta|preset=1k|item=Q1490}}
==== {{Etikéta|preset=1kat|item=Q4992948}} ==== <!-- Europe -->
# {{Etikéta|preset=1k|item=Q727}}
# {{Etikéta|preset=1k|item=Q1524}}
# {{Etikéta|preset=1k|item=Q64}}
# {{Etikéta|preset=1k|item=Q239}}
# {{Etikéta|preset=1k|item=Q406}}
# {{Etikéta|preset=1k|item=Q84}}
# {{Etikéta|preset=1k|item=Q2807}}
# {{Etikéta|preset=1k|item=Q649}}
# {{Etikéta|preset=1k|item=Q90}}
# {{Etikéta|preset=1k|item=Q220}}
# {{Etikéta|preset=1k|item=Q656}}
# {{Etikéta|preset=1k|item=Q1741}}
==== {{Etikéta|preset=1kat|item=Q7150911}} ==== <!-- North America -->
# {{Etikéta|preset=1k|item=Q65}}
# {{Etikéta|preset=1k|item=Q1489}}
# {{Etikéta|preset=1k|item=Q60}}
# {{Etikéta|preset=1k|item=Q61}}
==== {{Etikéta|preset=1kat|item=Q7228572}} ==== <!-- South America -->
# {{Etikéta|preset=1k|item=Q2841}}
# {{Etikéta|preset=1k|item=Q1486}}
# {{Etikéta|preset=1k|item=Q8678}}
# {{Etikéta|preset=1k|item=Q174}}
==== {{Etikéta|preset=1kat|item=Q9055844}} ==== <!-- Oceania -->
# {{Etikéta|preset=1k|item=Q3130}}
}}
=== {{Etikéta|preset=1kat|item=Q5933994}} === <!-- Bodies of water -->
{{Kòlumnë|em=16|1=
# {{Etikéta|preset=1k|item=Q3783}}
# {{Etikéta|preset=1k|item=Q788}}
# {{Etikéta|preset=1k|item=Q97}}
# {{Etikéta|preset=1k|item=Q545}}
# {{Etikéta|preset=1k|item=Q166}}
# {{Etikéta|preset=1k|item=Q1247}}
# {{Etikéta|preset=1k|item=Q5484}}
# {{Etikéta|preset=1k|item=Q3503}}
# {{Etikéta|preset=1k|item=Q1653}}
# {{Etikéta|preset=1k|item=Q5089}}
# {{Etikéta|preset=1k|item=Q7343}}
# {{Etikéta|preset=1k|item=Q7347}}
# {{Etikéta|preset=1k|item=Q1239}}
# {{Etikéta|preset=1k|item=Q7348}}
# {{Etikéta|preset=1k|item=Q5513}}
# {{Etikéta|preset=1k|item=Q5505}}
# {{Etikéta|preset=1k|item=Q4918}}
# {{Etikéta|preset=1k|item=Q1497}}
# {{Etikéta|preset=1k|item=Q3542}}
# {{Etikéta|preset=1k|item=Q3392}}
# {{Etikéta|preset=1k|item=Q1693}}
# {{Etikéta|preset=1k|item=Q98}}
# {{Etikéta|preset=1k|item=Q7350}}
# {{Etikéta|preset=1k|item=Q584}}
# {{Etikéta|preset=1k|item=Q37660}}
# {{Etikéta|preset=1k|item=Q899}}
# {{Etikéta|preset=1k|item=Q7354}}
# {{Etikéta|preset=1k|item=Q626}}
# {{Etikéta|preset=1k|item=Q5413}}
# {{Etikéta|preset=1k|item=Q7355}}
}}
=== {{Etikéta|preset=1kat|item=Q5741923}} {{int:And}} {{lcfirst:{{Etikéta|preset=1kat|item=Q7217334}}}} === <!-- Mountains and deserts -->
# {{Etikéta|preset=1k|item=Q1286}}
# {{Etikéta|preset=1k|item=Q5456}}
# {{Etikéta|preset=1k|item=Q5451}}
## {{Etikéta|preset=1k|item=Q513}}
# {{Etikéta|preset=1k|item=Q7296}}
# {{Etikéta|preset=1k|item=Q5463}}
# {{Etikéta|preset=1k|item=Q6583}}
[[Kategòrëjô:Metastarnë Wikipedie]]
ee1o24x7ookft0yzpmxmdqp383og59h
Néderlandzkô
0
14192
216502
2026-10-05T10:08:01Z
Terrus38
14026
Terrus38 przeniós starnã [[Néderlandzkô]] do [[Niderlandë]]: "Néderlandzkô" to fòrma znónô prakticzno blós z Wikipedie, pòwszechno ùżiwóną fòrmą są Niderlandë, zdrz. https://bibliotekacyfrowa.eu/Content/75801/82460.pdf, https://mojestrone.com/artykul/nato-rozwinie-swoj-system-n1312141, https://mojestrone.com/artykul/dzin-na-niderlandzczich-n2282927, https://biersztuba.wordpress.com/2021/04/30/ropsmenowie-z-erengrad-kaszebi-w-swiece-warhammera/
216502
wikitext
text/x-wiki
#PATRZ [[Niderlandë]]
qn4jmu4uofxug2y5uknqq93fv7l3jas
Kategòrëjô:Mònarchòwie Néderlandsczi
14
14193
216505
2026-10-05T10:09:11Z
Terrus38
14026
Terrus38 przeniós starnã [[Kategòrëjô:Mònarchòwie Néderlandsczi]] do [[Kategòrëjô:Mònarchòwie Niderlandów]]: 1. pisënk, 2. pòwszechno brëkòwóną fòrmą w kaszëbsczim są "Niderlandë", nié "Néderlandzkô"
216505
wikitext
text/x-wiki
#PATRZ [[:Kategòrëjô:Mònarchòwie Niderlandów]]
r0h8vnke47ccdra117yyc3izp8f1ecj
216508
216505
2026-10-05T10:10:52Z
Terrus38
14026
Usunięto przekierowanie do [[Kategòrëjô:Mònarchòwie Niderlandów]]
216508
wikitext
text/x-wiki
{{ADR|pisënk, pòwszechno brëkòwóną pòzwą te kraju są "Niderlandë", nié "Néderlandzkô"}}
4q0nepfwn9te29g75j8727982u8hyy6
Kategòrëjô:Néderlandzkô
14
14194
216518
2026-10-05T10:17:39Z
Terrus38
14026
Terrus38 przeniós starnã [[Kategòrëjô:Néderlandzkô]] do [[Kategòrëjô:Niderlandë]]: pòwszechno brëkòwóną pòżwą te kraju są Niderlandë, nié Néderlandzkô
216518
wikitext
text/x-wiki
#PATRZ [[:Kategòrëjô:Niderlandë]]
sdz39g4dnpvnu4mjib6b436mowjsxqo
216519
216518
2026-10-05T10:19:33Z
Terrus38
14026
Usunięto przekierowanie do [[Kategòrëjô:Niderlandë]]
216519
wikitext
text/x-wiki
{{ADR|pòwszechno brëkòwóną pòzwą te państwa są ''Niderlandë''<ref>https://mojestrone.com/artykul/nato-rozwinie-swoj-system-n1312141</ref><ref>https://mojestrone.com/artykul/dzin-na-niderlandzczich-n2282927</ref><ref>https://bibliotekacyfrowa.eu/Content/75801/82460.pdf</ref><ref>https://biersztuba.wordpress.com/2021/04/30/ropsmenowie-z-erengrad-kaszebi-w-swiece-warhammera/</ref>
}}
smewh4bboglf2csf6wx4mmolpp94163