Modulus:Vicidata
 Documentatio moduli[ostende] [recense] [historiam inspice] [purga]
 Documentatio moduli[ostende] [recense] [historiam inspice] [purga]Hic modulus nonnullas functiones ad Vicidata attinentes praebet.
De usu
[fontem recensere]{{#invoke:vicidata|nomen functionis}}
De functionibus
[fontem recensere]qid
[fontem recensere]Haec functio tesseram Vicidatorum cuiusdam paginae intervicialis reddit.
De usu
[fontem recensere]- {{#invoke:vicidata|qid|Spatiplanum}}- ↳ Q1414565
 
- {{#invoke:vicidata|qid|Morpheme|enwiki}}- ↳ Q43249
 
- {{#invoke:vicidata|qid|Carte géographique|frwiki}}- ↳ Q4006
 
- {{#invoke:vicidata|qid|difieuhnbdsjhdseihrgy}}- ↳
 
- {{#invoke:vicidata|qid}}- ↳
 
idem_qid_si_exsistit_aut_nihil
[fontem recensere]Si tessera Vicidatorum exsistit denuo redditur, sin secus nihil redditur.
De usu
[fontem recensere]- {{#invoke:vicidata|idem_qid_si_exsistit_aut_nihil|Q4006}}- ↳ Q4006
 
- {{#invoke:vicidata|idem_qid_si_exsistit_aut_nihil|kflnwnrvizrnvifo}}- ↳
 
appellatio
[fontem recensere]Haec functio appellationem Vicidatorum cuiusdam paginae intervicialis reddit.
De usu
[fontem recensere]- {{#invoke:vicidata|appellatio|pagina=Spatiplanum}}- ↳ Spatiplanum
 
- {{#invoke:vicidata|appellatio|it|pagina=Spatiplanum}}- ↳ spazioplano
 
- {{#invoke:vicidata|appellatio|qid=Q11936}}- ↳ Minerva Mus
 
- {{#invoke:vicidata|appellatio|fr|qid=Q1747618}}- ↳ art de la Grèce antique
 
- {{#invoke:vicidata|appellatio}}- ↳
 
quantae_translationes
[fontem recensere]Haec functio numerum translationum intervicialium cuiusdam paginae reddit.
De usu
[fontem recensere]- {{#invoke:vicidata|quantae_translationes|pagina=Spatiplanum}}- ↳ 33
 
- {{#invoke:vicidata|quantae_translationes|qid=Q4006}}- ↳ 154
 
- {{#invoke:vicidata|quantae_translationes|pagina=difieuhnbdsjhdseihrgy}}- ↳ 0
 
- {{#invoke:vicidata|quantae_translationes}}- ↳ 0
 
si_sunt_translationes
[fontem recensere]Haec functio quaerit num sint translationes cuiusdam paginae.
De usu
[fontem recensere]- {{#invoke:vicidata|si_sunt_translationes|pagina=Spatiplanum|Sunt translationes|Non sunt translationes|Nodus Vicidatorum abest}}- ↳ Sunt translationes
 
- {{#invoke:vicidata|si_sunt_translationes|qid=Q4006|Sunt translationes|Non sunt translationes|Nodus Vicidatorum abest}}- ↳ Sunt translationes
 
- {{#invoke:vicidata|si_sunt_translationes|pagina=difieuhnbdsjhdseihrgy|Sunt translationes|Non sunt translationes|Nodus Vicidatorum abest}}- ↳ Nodus Vicidatorum abest
 
- {{#invoke:vicidata|si_sunt_translationes|Sunt translationes|Non sunt translationes|Nodus Vicidatorum abest}}- ↳ Nodus Vicidatorum abest
 
si_sunt_translationes_interviciales
[fontem recensere]Haec functio quaerit num sint translationes interviciales cuiusdam paginae.
De usu
[fontem recensere]- {{#invoke:vicidata|si_sunt_translationes_interviciales|pagina=Spatiplanum|Sunt translationes|Sunt translationes speciales tantum|Non sunt translationes|Nodus Vicidatorum abest}}- ↳ Sunt translationes
 
- {{#invoke:vicidata|si_sunt_translationes_interviciales|qid=Q4006|Sunt translationes|Sunt translationes speciales tantum|Non sunt translationes|Nodus Vicidatorum abest}}- ↳ Sunt translationes
 
- {{#invoke:vicidata|si_sunt_translationes_interviciales|pagina=difieuhnbdsjhdseihrgy|Sunt translationes|Sunt translationes speciales tantum|Non sunt translationes|Nodus Vicidatorum abest}}- ↳ Nodus Vicidatorum abest
 
- {{#invoke:vicidata|si_sunt_translationes_interviciales|Sunt translationes|Sunt translationes speciales tantum|Non sunt translationes|Nodus Vicidatorum abest}}- ↳ Nodus Vicidatorum abest
 
index_translationum
[fontem recensere]Haec functio omnes translationes cuiusdam paginae numerat.
De usu
[fontem recensere]Codex manuscriptus:
{{Folium fugax|style = border: 1px dashed #aaa; border-radius: 1em;
	|{{#invoke:vicidata|index_translationum|pagina=Spatiplanum}}
}}
Effectus:
- ar:طائرة فضائية
- be:Арбітальны самалёт
- bn:মহাকাশ বিমান
- ca:Avió espacial
- ckb:فڕۆکەی بۆشایی
- cs:Kosmický raketoplán
- de:Raumflugzeug
- en:Spaceplane
- es:Avión espacial
- et:Kosmoselennuk
- fa:هواپیمای فضایی
- fi:Avaruuslentokone
- fr:Avion spatial
- fy:Romtefear
- id:Spaceplane
- it:Spazioplano
- ja:スペースプレーン
- ko:스페이스플레인
- ky:Космоплан
- lv:Kosmoplāns
- ml:ബഹിരാകാശ വിമാനം
- nl:Ruimteveer
- pl:Samolot kosmiczny
- pt:Avião espacial
- ru:Орбитальный самолёт
- sk:Raketoplán
- sl:Raketoplan
- sv:Rymdflygplan
- ta:விண்ணூர்தி
- tr:Uzay uçağı
- uk:Орбітальний літак
- zh:太空飛機
Codex manuscriptus:
{{Folium fugax|style = border: 1px dashed #aaa; border-radius: 1em;
	|{{#invoke:vicidata|index_translationum|qid=Q4006}}
}}
Effectus:
- ace:Peuta
- af:Kaart
- an:Mapa
- ang:Carte (land)
- ar:خريطة
- arz:خريطه
- as:মানচিত্ৰ
- ast:Mapa
- awa:नक्शा
- az:Xəritə
- ba:Географик карта
- bat-smg:Žemielapis
- be-x-old:Мапа
- be:Геаграфічная карта
- bg:Карта
- bh:नक्शा
- bjn:Kar
- bn:মানচিত্র
- bs:Karta
- ca:Mapa
- cdo:Dê-dù
- chr:ᏅᏃᎯ ᏓᏟᎶᏍᏛᎢ
- ckb:نەخشە
- commons:Map
- cs:Mapa
- cv:Географилле карттă
- cy:Map
- da:Kort (geografi)
- de:Karte (Kartografie)
- el:Χάρτης
- en:Map
- eo:Mapo
- es:Mapa
- et:Kaart
- eu:Mapa
- ext:Mapa
- fa:نقشه
- fi:Kartta
- fj:Mape
- fo:Kort
- fr:Carte géographique
- fy:Kaart (kartografy)
- ga:Léarscáil
- gan:地圖
- gd:Mapa
- gl:Mapa
- gu:નકશો
- he:מפה
- hi:मानचित्र
- hr:Zemljovid
- hu:Térkép
- hy:Քարտեզ
- ia:Mappa
- id:Peta
- ik:Nunauraq
- io:Mapo
- is:Landakort
- it:Mappa
- ja:地図
- jv:Petha
- ka:გეოგრაფიული რუკა
- kaa:Geografiyalıq karta
- kab:Tagertilt
- kcg:Ta̱si̱la
- ki:Kĩũrang'a
- kk:Карта
- kn:ಭೌಗೋಳಿಕ ನಕ್ಷೆ
- ko:지도
- ks:نقشہٕ
- ky:Географиялык карталар
- lb:Landkaart
- lmo:Mapa
- lt:Žemėlapis
- lv:Karte
- min:Peta
- mk:Географска карта
- ml:ഭൂപടം
- mn:Газрын зураг
- mni:ꯃꯦꯞ
- mr:नकाशा
- ms:Peta
- my:မြေပုံ
- nds-nl:Kaorte (cartografie)
- ne:नक्सा
- nl:Kaart (cartografie)
- nn:Kart
- no:Kart
- om:Kaartaa
- pa:ਨਕਸ਼ਾ
- pl:Mapa
- pnb:نقشہ
- pt:Mapa
- q:bn:মানচিত্র
- q:cs:Mapa
- q:en:Map
- q:es:Mapa
- q:et:Kaart
- q:he:מפה
- q:it:Mappa
- q:pl:Mapa
- q:sk:Mapa
- q:sr:Географска карта
- q:uk:Географічна карта
- qu:Saywiti
- ro:Hartă
- roa-rup:Hartâ
- ru:Географическая карта
- s:kn:ಮೈಸೂರು ವಿಶ್ವವಿದ್ಯಾನಿಲಯ ವಿಶ್ವಕೋಶ/ಭೌಗೋಳಿಕ ನಕ್ಷೆ
- sah:Хаарта
- sco:Map
- sd:نقشو
- se:Kárta
- sh:Karta
- si:සිතියම්
- simple:Map
- sk:Mapa
- sl:Zemljevid
- sq:Harta
- sr:Географска карта
- su:Atlas
- sv:Karta
- sw:Ramani
- szl:Karta
- ta:நிலப்படம்
- te:భౌగోళిక పటం
- tg:Харита
- th:แผนที่
- tl:Mapa
- tr:Harita
- tt:Харита
- uk:Географічна карта
- ur:نقشہ
- uz:Xarita
- vec:Mapa
- vi:Bản đồ
- wa:Mape (djeyografeye)
- war:Mapa
- wikinews:eo:Kategorio:Mapoj
- wikinews:ru:Категория:Географические карты
- wikiversity:fr:Représentations et cartes du monde
- wikivoyage:bn:মানচিত্র
- wikivoyage:en:Maps
- wikivoyage:he:מפות
- wikivoyage:ja:地図
- wo:Lonkoyoon
- wuu:地图
- xh:Imephu
- xmf:გეოგრაფიული რუკა
- yi:מאפע
- zh-classical:地圖
- zh-min-nan:Tē-tô͘
- zh-yue:地圖
- zh:地图
titulus_barbarus
[fontem recensere]Haec functio titulum barbarum cuiusdam paginae reddit.
De usu
[fontem recensere]- {{#invoke:vicidata|titulus_barbarus|dewiki|pagina=Spatiplanum}}- ↳ Raumflugzeug
 
- {{#invoke:vicidata|titulus_barbarus|cawiki|qid=Q4006}}- ↳ Mapa
 
- {{#invoke:vicidata|titulus_barbarus|frwiki|pagina=difieuhnbdsjhdseihrgy}}- ↳
 
- {{#invoke:vicidata|titulus_barbarus|enwiki}}- ↳
 
proprietas
[fontem recensere]Haec functio singulam proprietatem cuiusdam nodi Vicidatorum reddit. Si proprietas est index plurium indiciorum, nomen nonnullius formulae scribi potest primum argumentum (vide formulam {{Debug}} his in exemplis). Si nomen formulae abest et proprietas est index, semper unus valor tantum ostendetur.
De usu
[fontem recensere]- {{#invoke:vicidata|proprietas|P18|pagina=Spatiplanum}}- ↳ SRBsepfromDiscovery07042006.png
 
- {{#invoke:vicidata|proprietas|debug|P18|pagina=Alanus Aspect}}- ↳ {{Debug|1=Alain Aspect (26341660894) (cropped).jpg|2=Alain Aspect.jpg}}
 
- {{#invoke:vicidata|P18|proprietas|qid=Q4006}}- ↳ Topographic map of Jezero crater and surrounds (annotated) ESA23162625.png
 
- {{#invoke:vicidata|proprietas|debug|P18|qid=Q364997}}- ↳ {{Debug|1=Alain Aspect (26341660894) (cropped).jpg|2=Alain Aspect.jpg}}
 
- {{#invoke:vicidata|proprietas|P18|pagina=difieuhnbdsjhdseihrgy}}- ↳
 
- {{#invoke:vicidata|proprietas|P31}}- ↳
 
Ulteriora si cupis
[fontem recensere]Documentatio pristina transclusa est ex Modulus:Vicidata/doc. (recense | historiam inspice) 
Quaesumus auctores experturos esse in harenarii (crea | effinge) ac periclitationum (crea) subpaginis huius moduli. 
 Vide etiam subpaginas huius moduli.
require[[strict]]
local multilinguia = {
	commonswiki = true,
	foundationwiki = true,
	incubatorwiki = true, -- Does not currently have Wikidata sitelinks
	mediawikiwiki = true,
	metawiki = true,
	outreachwiki = true,
	sourceswiki = true,  -- multilingual wikisource AKA old wikisource
	specieswiki = true,
	wikidatawiki = true,
	wikifunctionswiki = true,
	wikitechwiki = true, -- Does not currently have Wikidata sitelinks
	wiktionary = true
}
local function discerne_qid (frame)
	local qid
	if frame.args.qid ~= nil then qid = frame.args.qid:match'^%s*(.*%S)' end
	if qid == nil then
		local titulus
		if frame.args.pagina ~= nil then titulus = frame.args.pagina:match'^%s*(.*%S)' end
		if titulus == nil then qid = mw.wikibase.getEntityIdForCurrentPage()
		else qid = mw.wikibase.getEntityIdForTitle(titulus) end
	end
	return qid
end
local ifacies = {}
ifacies.qid = function (frame)
	local titulus
	local situs
	if frame.args[1] ~= nil then titulus = frame.args[1]:match'^%s*(.*%S)' end
	if frame.args[2] ~= nil then situs = frame.args[2]:match'^%s*(.*%S)' end
	if situs ~= nil then
		if titulus == nil then titulus = frame:getParent():getTitle() end
		return mw.wikibase.getEntityIdForTitle(titulus, situs) or ''
	end
	if titulus == nil then return mw.wikibase.getEntityIdForCurrentPage() or '' end
	return mw.wikibase.getEntityIdForTitle(titulus) or ''
end
ifacies.idem_qid_si_exsistit_aut_nihil = function (frame)
	local qid
	if frame.args[1] ~= nil then qid = frame.args[1]:match'^%s*(.*%S)' end
	if qid ~= nil and mw.wikibase.isValidEntityId(qid) and mw.wikibase.entityExists(qid) then return qid end
	return ''
end
ifacies.appellatio = function (frame)
	local situs
	local qid = discerne_qid(frame)
	if not qid then return '' end
	local lingua
	if frame.args[1] ~= nil then lingua = frame.args[1]:match'^%s*(.*%S)' end
	if lingua == nil then lingua = 'la' end
	local entitas = mw.wikibase.getEntity(qid)
	if not entitas then return '' end
	return entitas:getLabel(lingua)
end
ifacies.quantae_translationes = function (frame)
	local situs
	local qid = discerne_qid(frame)
	if not qid then return '0' end
	local entitas = mw.wikibase.getEntity(qid)
	if not entitas or not entitas.sitelinks then return '0' end
	local num = 0
	for _ in pairs(entitas.sitelinks) do num = num + 1 end
	return tostring(num)
end
ifacies.si_sunt_translationes = function (frame)
	local situs
	local qid = discerne_qid(frame)
	if not qid then return frame.args[3] or frame.args[2] or '' end
	local entitas = mw.wikibase.getEntity(qid)
	if not entitas or not entitas.sitelinks then return frame.args[2] or '' end
	local plures = false
	for _ in pairs(entitas.sitelinks) do
		if plures then return frame.args[1] or '' end
		plures = true
	end
	return frame.args[2] or ''
end
ifacies.si_sunt_translationes_interviciales = function (frame)
	local situs
	local qid = discerne_qid(frame)
	if not qid then return frame.args[4] or frame.args[3] or frame.args[2] or '' end
	local entitas = mw.wikibase.getEntity(qid)
	if not entitas or not entitas.sitelinks then return frame.args[3] or frame.args[2] or '' end
	local speciales = false
	for _, sitelink in pairs(entitas.sitelinks) do
		situs = sitelink.site
		if situs ~= 'lawiki' then
			if not multilinguia[situs] and situs:sub(-4) == 'wiki' then
				return frame.args[1] or ''
			end
			speciales = true
		end
	end
	if speciales and frame.args[3] then return frame.args[2] end
	return frame.args[3] or frame.args[2] or ''
end
ifacies.index_translationum = function (frame)
	local situs
	local qid = discerne_qid(frame)
	if not qid then return '' end
	local entitas = mw.wikibase.getEntity(qid)
	if not entitas or not entitas.sitelinks then return '' end
	local index = {}
	for _, sitelink in pairs(entitas.sitelinks) do
		situs = sitelink.site
		if situs == 'mediawikiwiki' then situs = 'mwwiki' end
		if situs:sub(-4) == 'wiki' then
			if situs ~= 'lawiki' then
				table.insert(index, '* [[:' ..
					situs:sub(1, -1 -4):gsub('_', '-') .. ':' ..
					sitelink.title .. ']]\n')
			end
		elseif situs:sub(-10) == 'wikisource' then
			table.insert(index, '* [[:s:' ..
				situs:sub(1, -1 -10):gsub('_', '-') .. ':' ..
				sitelink.title .. ']]\n')
		elseif situs:sub(-9) == 'wikiquote' then
			table.insert(index, '* [[:q:' ..
				situs:sub(1, -1 -9):gsub('_', '-') .. ':' ..
				sitelink.title .. ']]\n')
		elseif situs:sub(-11) == 'wikiversity' then
			table.insert(index, '* [[:wikiversity:' ..
				situs:sub(1, -1 -11):gsub('_', '-') .. ':' ..
				sitelink.title .. ']]\n')
		elseif situs:sub(-10) == 'wikivoyage' then
			table.insert(index, '* [[:wikivoyage:' ..
				situs:sub(1, -1 -10):gsub('_', '-') .. ':' ..
				sitelink.title .. ']]\n')
		elseif situs:sub(-8) == 'wikinews' then
			table.insert(index, '* [[:wikinews:' ..
				situs:sub(1, -1 -8):gsub('_', '-') .. ':' ..
				sitelink.title .. ']]\n')
		elseif situs:sub(-10) == 'wiktionary' then
			table.insert(index, '* [[:wiktionary:' ..
				situs:sub(1, -1 -10):gsub('_', '-') .. ':' ..
				sitelink.title .. ']]\n')
		else
			table.insert(index, '* [[:' .. situs .. ':' .. sitelink.title ..
				']]\n')
		end
	end
	table.sort(index)
	return table.concat(index, '')
end
ifacies.titulus_barbarus = function (frame)
	local situs
	if frame.args[1] ~= nil then situs = frame.args[1]:match'^%s*(.*%S)' end
	if situs == nil then error(frame:getTitle() .. ', ‘titulus_barbarus’: Situs abest', 0) end
	local qid = discerne_qid(frame)
	if not qid then return '' end
	local entitas = mw.wikibase.getEntity(qid)
	if not entitas or not entitas.sitelinks then return '' end
	local index = {}
	for _, sl in pairs(entitas.sitelinks) do index[sl.site] = sl.title end
	return index[situs] or ''
end
ifacies.proprietas = function (frame)
	local formula
	local pid
	if frame.args[2] ~= nil then
		if frame.args[1] ~= nil then formula = frame.args[1]:match'^%s*(.*%S)' end
		pid = frame.args[2]:match'^%s*(.*%S)'
	elseif frame.args[1] ~= nil then pid = frame.args[1]:match'^%s*(.*%S)' end
	if pid == nil then error(frame:getTitle() ..
		', ‘proprietas’: Tessera proprietatis abest', 0) end
	local qid = discerne_qid(frame)
	if not qid then return '' end
	local indicia = mw.wikibase.getAllStatements(qid, pid)
	if not indicia then return '' end
	if formula ~= nil then
		local index = {}
		local cmpt = 1
		for key, val in pairs(indicia) do
			if val and val.mainsnak and val.mainsnak.datavalue and val.mainsnak.datavalue.value then
				index[cmpt] = tostring(val.mainsnak.datavalue.value)
				cmpt = cmpt + 1
			end
		end
		return frame:expandTemplate{ title = formula, args = index }
	end
	if not indicia[1] or not indicia[1].mainsnak or not
		indicia[1].mainsnak.datavalue or not
		indicia[1].mainsnak.datavalue.value then return '' end
	return tostring(indicia[1].mainsnak.datavalue.value)
end
return ifacies
