<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://mywikibiz.com/index.php?action=history&amp;feed=atom&amp;title=Module%3AWikidata_Infobox</id>
	<title>Module:Wikidata Infobox - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://mywikibiz.com/index.php?action=history&amp;feed=atom&amp;title=Module%3AWikidata_Infobox"/>
	<link rel="alternate" type="text/html" href="https://mywikibiz.com/index.php?title=Module:Wikidata_Infobox&amp;action=history"/>
	<updated>2026-05-04T11:11:26Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.35.3</generator>
	<entry>
		<id>https://mywikibiz.com/index.php?title=Module:Wikidata_Infobox&amp;diff=480065&amp;oldid=prev</id>
		<title>Zoran: Pywikibot 6.4.0</title>
		<link rel="alternate" type="text/html" href="https://mywikibiz.com/index.php?title=Module:Wikidata_Infobox&amp;diff=480065&amp;oldid=prev"/>
		<updated>2021-07-16T08:00:15Z</updated>

		<summary type="html">&lt;p&gt;Pywikibot 6.4.0&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&lt;br /&gt;
local p = {}&lt;br /&gt;
local WikidataIB = require(&amp;quot;Module:WikidataIB&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
-- Code from 'Module:No globals'&lt;br /&gt;
local mt = getmetatable(_G) or {}&lt;br /&gt;
function mt.__index (t, k)&lt;br /&gt;
	if k ~= 'arg' then&lt;br /&gt;
		error('Tried to read nil global ' .. tostring(k), 2)&lt;br /&gt;
	end&lt;br /&gt;
	return nil&lt;br /&gt;
end&lt;br /&gt;
function mt.__newindex(t, k, v)&lt;br /&gt;
	if k ~= 'arg' then&lt;br /&gt;
		error('Tried to write global ' .. tostring(k), 2)&lt;br /&gt;
	end&lt;br /&gt;
	rawset(t, k, v)&lt;br /&gt;
end&lt;br /&gt;
setmetatable(_G, mt)&lt;br /&gt;
-- End of code from 'Module:No globals'&lt;br /&gt;
&lt;br /&gt;
function p.getMID()&lt;br /&gt;
	return &amp;quot;M&amp;quot; .. mw.title.getCurrentTitle().id&lt;br /&gt;
end&lt;br /&gt;
function p.getFilename()&lt;br /&gt;
	return mw.title.getCurrentTitle().nsText .. ':' .. mw.title.getCurrentTitle().text&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.getP180vals(frame)&lt;br /&gt;
	local mid = frame.args[1]&lt;br /&gt;
	local prefix = frame.args[2] or ''&lt;br /&gt;
	local postfix = frame.args[3] or ' '&lt;br /&gt;
	local text = ''&lt;br /&gt;
	local tablevals = mw.wikibase.getBestStatements( mid, 'P180')&lt;br /&gt;
	for i, v in ipairs(tablevals) do&lt;br /&gt;
		text = text .. prefix .. v.mainsnak.datavalue.value.id .. postfix&lt;br /&gt;
	end&lt;br /&gt;
	return text&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.getCombinedWikidataTemplates(frame)&lt;br /&gt;
	local qid = frame.args[1] or ''&lt;br /&gt;
	local outputcode = ''&lt;br /&gt;
	if mw.text.trim(qid or '') ~= '' then&lt;br /&gt;
		local tablevals = mw.wikibase.getAllStatements( qid, 'P971')&lt;br /&gt;
		for i, v in ipairs(tablevals) do&lt;br /&gt;
			outputcode = outputcode .. frame:expandTemplate{ title = 'Wikidata Infobox/core', args = { qid=v.mainsnak.datavalue.value.id, embed='Yes', conf_authoritycontrol='yes' } }&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	return outputcode&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.ifThenShow(frame)&lt;br /&gt;
	if mw.text.trim(frame.args[1] or '') ~= '' then&lt;br /&gt;
		return (frame.args[3] or '') .. (frame.args[1] or '') .. (frame.args[4] or '')&lt;br /&gt;
	else&lt;br /&gt;
		return (frame.args[2] or '')&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--  Given an input area, return a map zoom level to use with mw:Extension:Kartographer in {{Wikidata Infobox}}. Defaults to mapzoom=15. &lt;br /&gt;
function p.autoMapZoom(frame)&lt;br /&gt;
	local size = tonumber(frame.args[1]) or 0&lt;br /&gt;
	local LUT = { 5000000, 1000000, 100000, 50000, 10000, 2000, 150, 50, 19, 14, 5, 1, 0.5 } &lt;br /&gt;
	for zoom, scale in ipairs(LUT) do&lt;br /&gt;
		if size &amp;gt; scale then&lt;br /&gt;
			return zoom+1&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	return 15&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.formatLine(frame)&lt;br /&gt;
	local part2 = mw.text.trim(frame.args[2] or '')&lt;br /&gt;
	local returnstr = ''&lt;br /&gt;
	if part2 ~= '' then&lt;br /&gt;
		returnstr = '&amp;lt;tr '&lt;br /&gt;
		if (frame.args.mobile or 'n') == 'y' then&lt;br /&gt;
			returnstr = returnstr .. 'class=&amp;quot;wdinfo_nomobile&amp;quot;'&lt;br /&gt;
		end&lt;br /&gt;
		local newframe = {}&lt;br /&gt;
		newframe.args = {}&lt;br /&gt;
		newframe.args.qid = frame.args[1]&lt;br /&gt;
		returnstr = returnstr .. '&amp;gt;&amp;lt;th class=&amp;quot;wikidatainfobox-lcell&amp;quot;&amp;gt;' .. mw.getContentLanguage():ucfirst(WikidataIB.getLabel(newframe))&lt;br /&gt;
		returnstr = returnstr .. '&amp;lt;/th&amp;gt;&amp;lt;td '&lt;br /&gt;
		if (frame.args.wrap or 'n') == 'y' then&lt;br /&gt;
			returnstr = returnstr .. 'style=&amp;quot;white-space: nowrap&amp;quot;'&lt;br /&gt;
		end&lt;br /&gt;
		returnstr = returnstr .. '&amp;gt;' .. part2 .. '&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;'&lt;br /&gt;
	end&lt;br /&gt;
	return returnstr&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.hasValue (tab, val)&lt;br /&gt;
    for index, value in ipairs(tab) do&lt;br /&gt;
        if value == val then&lt;br /&gt;
            return true&lt;br /&gt;
        end&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    return false&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- baseLang is a utility function that returns the base language in use&lt;br /&gt;
-- so for example, both English (en) and British English (en-gb) return 'en'&lt;br /&gt;
-- from https://commons.wikimedia.org/wiki/Module:Wikidata2&lt;br /&gt;
function p.baseLang(frame)&lt;br /&gt;
	local txtlang = frame:callParserFunction( &amp;quot;int&amp;quot;, &amp;quot;lang&amp;quot; ) or &amp;quot;&amp;quot;&lt;br /&gt;
	-- This deals with specific exceptions: be-tarask -&amp;gt; be_x_old&lt;br /&gt;
	if txtlang == &amp;quot;be-tarask&amp;quot; then&lt;br /&gt;
		return &amp;quot;be_x_old&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
	local pos = txtlang:find(&amp;quot;-&amp;quot;)&lt;br /&gt;
	local ret = &amp;quot;&amp;quot;&lt;br /&gt;
	if pos then&lt;br /&gt;
		ret = txtlang:sub(1, pos-1)&lt;br /&gt;
	else&lt;br /&gt;
		ret = txtlang&lt;br /&gt;
	end&lt;br /&gt;
	return ret&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.langDirection(frame)&lt;br /&gt;
	local lang = mw.text.trim(frame.args[1] or '') &lt;br /&gt;
	if (not mw.language.isSupportedLanguage(lang)) then &lt;br /&gt;
		lang = frame:callParserFunction( &amp;quot;int&amp;quot;, &amp;quot;lang&amp;quot; ) -- get user's chosen language&lt;br /&gt;
	end&lt;br /&gt;
	return mw.getLanguage(lang):getDir()&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[[&lt;br /&gt;
convertChar returns the non-diacritic version of the supplied character.&lt;br /&gt;
stripDiacrits replaces words with diacritical characters with their non-diacritic equivalent.&lt;br /&gt;
strip_diacrits is available for export to other modules.&lt;br /&gt;
stringIsLike tests two words, returning true if they only differ in diacritics, false otherwise.&lt;br /&gt;
stringIs_like is available for export to other modules.&lt;br /&gt;
--]]&lt;br /&gt;
&lt;br /&gt;
local function characterMap()&lt;br /&gt;
	-- table with characters with diacrits and their equivalent basic latin characters&lt;br /&gt;
	local charMap_from, charMap_to&lt;br /&gt;
	charMap_from =  'ÁÀÂÄǍĂĀÃÅĄƏĆĊĈČÇĎĐḌÐÉÈĖÊËĚĔĒẼĘẸĠĜĞĢĤĦḤİÍÌÎÏǏĬĪĨĮỊĴĶĹĿĽĻŁḶḸṂŃŇÑŅṆŊÓÒÔÖǑŎŌÕǪỌŐØŔŘŖṚṜŚŜŠŞȘṢŤŢȚṬÚÙÛÜǓŬŪŨŮŲỤŰǗǛǙǕŴÝŶŸỸȲŹŻŽ'..&lt;br /&gt;
					'áàâäǎăāãåąəćċĉčçďđḍðéèėêëěĕēẽęẹġĝğģĥħḥıíìîïǐĭīĩįịĵķĺŀľļłḷḹṃńňñņṇŋóòôöǒŏōõǫọőøŕřŗṛṝśŝšşșṣťţțṭúùûüǔŭūũůųụűǘǜǚǖŵýŷÿỹȳźżž'&lt;br /&gt;
	charMap_to   =  'AAAAAAAAAAACCCCCDDDDEEEEEEEEEEEGGGGHHHIIIIIIIIIIIJKLLLLLLLMNNNNNNOOOOOOOOOOOORRRRRSSSSSSTTTTUUUUUUUUUUUUUUUUWYYYYYZZZ'..&lt;br /&gt;
					'aaaaaaaaaaacccccddddeeeeeeeeeeegggghhhiiiiiiiiiiijklllllllmnnnnnnoooooooooooorrrrrssssssttttuuuuuuuuuuuuuuuuwyyyyyzzz'&lt;br /&gt;
	local charMap = {}&lt;br /&gt;
	for i = 1,mw.ustring.len(charMap_from) do&lt;br /&gt;
		charMap[mw.ustring.sub(charMap_from, i, i)] = mw.ustring.sub(charMap_to, i, i)&lt;br /&gt;
	end&lt;br /&gt;
	charMap['ß'] = 'ss'&lt;br /&gt;
	return charMap&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.convertChar(frame)&lt;br /&gt;
	local ch = frame.args.char or mw.text.trim(frame.args[1]) or &amp;quot;&amp;quot;&lt;br /&gt;
	local charMap = characterMap()&lt;br /&gt;
	return charMap[ch] or ch&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.strip_diacrits(wrd)&lt;br /&gt;
	if wrd then &lt;br /&gt;
		local charMap = characterMap()&lt;br /&gt;
		wrd = string.gsub(wrd, &amp;quot;[^\128-\191][\128-\191]*&amp;quot;, charMap )&lt;br /&gt;
	end&lt;br /&gt;
	return wrd&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.stripDiacrits(frame)&lt;br /&gt;
	return p.strip_diacrits(frame.args.word or mw.text.trim(frame.args[1]))&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.stringIs_like(wrd1, wrd2)&lt;br /&gt;
	return p.strip_diacrits(wrd1) == p.strip_diacrits(wrd2)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.stringIsLike(frame)&lt;br /&gt;
	local wrd1 = frame.args.word1 or frame.args[1]&lt;br /&gt;
	local wrd2 = frame.args.word2 or frame.args[2]&lt;br /&gt;
	if p.strip_diacrits(wrd1) == p.strip_diacrits(wrd2) then&lt;br /&gt;
		return true&lt;br /&gt;
	else&lt;br /&gt;
		return nil&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.expandhiero(frame, hiero)&lt;br /&gt;
	-- added by Jura1&lt;br /&gt;
	-- for string values in Wikihiero syntax&lt;br /&gt;
	-- inline recommended by https://meta.wikimedia.org/wiki/Help_talk:WikiHiero_syntax#Unwanted_newlines https://en.wikipedia.org/wiki/Help:WikiHiero_syntax&lt;br /&gt;
	-- maybe not needed in all contexts&lt;br /&gt;
	return 	frame:preprocess('&amp;lt;div style=&amp;quot;text-align:center;display:inline&amp;quot;&amp;gt; &amp;lt;hiero&amp;gt; ' .. hiero .. ' &amp;lt;/hiero&amp;gt; &amp;lt;/div&amp;gt;')&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function format2rowline(cell1, cell2)&lt;br /&gt;
	-- added by Jura1&lt;br /&gt;
	local tr = &amp;quot;&amp;quot;&lt;br /&gt;
	tr = '&amp;lt;tr&amp;gt;&amp;lt;th class=&amp;quot;wikidatainfobox-lcell&amp;quot; style=&amp;quot;text-align: left; vertical-align: text-top;&amp;quot; colspan=&amp;quot;2&amp;quot;&amp;gt;' .. cell1 .. '&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt;'&lt;br /&gt;
	tr = tr .. '&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot; colspan=&amp;quot;2&amp;quot;&amp;gt;' .. cell2 .. '&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;' &lt;br /&gt;
	return tr 							&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function format1rowline(trqid, cell1, cell2)&lt;br /&gt;
	-- added by Jura1&lt;br /&gt;
	local tr = &amp;quot;&amp;quot;&lt;br /&gt;
	tr = '&amp;lt;tr id=&amp;quot;' .. trqid .. '&amp;quot;&amp;gt;&amp;lt;th class=&amp;quot;wikidatainfobox-lcell&amp;quot; style=&amp;quot;vertical-align: top&amp;quot;&amp;gt;' .. cell1 .. '&amp;lt;/th&amp;gt;'&lt;br /&gt;
    tr = tr .. '&amp;lt;td valign=&amp;quot;top&amp;quot; style=&amp;quot;vertical-align: top&amp;quot;&amp;gt;' .. cell2 .. '&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;'							&lt;br /&gt;
	return tr 							&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.hieroP7383(frame)&lt;br /&gt;
-- added by Jura1&lt;br /&gt;
-- expand P7383 value in &amp;lt;hiero&amp;gt;&amp;lt;/hiero&amp;gt; tags	&lt;br /&gt;
	local qid = mw.text.trim(frame.args.qid or &amp;quot;&amp;quot;)&lt;br /&gt;
	local rows = &amp;quot;&amp;quot;&lt;br /&gt;
	local checkentry = mw.wikibase.isValidEntityId(qid)&lt;br /&gt;
	if not checkentry then&lt;br /&gt;
		return ''&lt;br /&gt;
	end&lt;br /&gt;
	local entity = mw.wikibase.getEntityObject(qid)&lt;br /&gt;
	if not entity then&lt;br /&gt;
		return ''&lt;br /&gt;
	end&lt;br /&gt;
	local mylang = frame:preprocess('{{int:lang}}')&lt;br /&gt;
	if entity.claims and entity.claims.P7383 then&lt;br /&gt;
			for _, v in ipairs(entity.claims.P7383) do&lt;br /&gt;
				local idv = v.mainsnak.datavalue.value &lt;br /&gt;
				if v.qualifiers and v.qualifiers.P3831 then&lt;br /&gt;
					for _, w in ipairs(v.qualifiers.P3831) do&lt;br /&gt;
						if w.snaktype == &amp;quot;value&amp;quot; then&lt;br /&gt;
							local qualid = w.datavalue.value[&amp;quot;id&amp;quot;]&lt;br /&gt;
							local encod = mw.wikibase.getEntityObject(qualid)&lt;br /&gt;
                   			rows = rows .. format2rowline(encod:getLabel(mylang), p.expandhiero(frame, idv)) &lt;br /&gt;
						end&lt;br /&gt;
					end&lt;br /&gt;
				else &lt;br /&gt;
					rows = rows .. format2rowline(&amp;quot;Name&amp;quot;, p.expandhiero(frame, idv)) &lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
	end	&lt;br /&gt;
	return 	rows	&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.urn(frame)&lt;br /&gt;
	local qid = mw.text.trim(frame.args.qid or &amp;quot;&amp;quot;)&lt;br /&gt;
	local mylang = frame:preprocess('{{int:lang}}')&lt;br /&gt;
	local entity = mw.wikibase.getEntityObject(qid)&lt;br /&gt;
	if not entity then&lt;br /&gt;
		return ''&lt;br /&gt;
	end&lt;br /&gt;
	local urn = &amp;quot;&amp;quot;&lt;br /&gt;
	return urn&lt;br /&gt;
	--- return &amp;quot;&amp;lt;div style='display:none'&amp;gt;&amp;quot; .. urn .. &amp;quot;&amp;lt;/span&amp;gt;&amp;quot;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.numberInfo(frame)&lt;br /&gt;
		-- from additions by Jura1&lt;br /&gt;
		-- tests at  Category:987_(number)   Category:8_(number)&lt;br /&gt;
		local qid = mw.text.trim(frame.args.qid or &amp;quot;&amp;quot;)&lt;br /&gt;
		local mylang = frame:preprocess('{{int:lang}}')&lt;br /&gt;
		local rows = &amp;quot;&amp;quot;&lt;br /&gt;
		local checkentry = mw.wikibase.isValidEntityId(qid)&lt;br /&gt;
		if not checkentry then&lt;br /&gt;
			return ''&lt;br /&gt;
		end&lt;br /&gt;
		local entity = mw.wikibase.getEntityObject(qid)&lt;br /&gt;
		if not entity then&lt;br /&gt;
			return ''&lt;br /&gt;
		end&lt;br /&gt;
		if entity.claims.P487 then&lt;br /&gt;
			for _, v in ipairs(entity.claims.P487) do&lt;br /&gt;
				local idv = v.mainsnak.datavalue.value &lt;br /&gt;
				if v.qualifiers and v.qualifiers.P3831 then&lt;br /&gt;
					for _, w in ipairs(v.qualifiers.P3831) do&lt;br /&gt;
						if w.snaktype == &amp;quot;value&amp;quot; then&lt;br /&gt;
							local qualid = w.datavalue.value[&amp;quot;id&amp;quot;]&lt;br /&gt;
							local encod = mw.wikibase.getEntityObject(qualid)&lt;br /&gt;
							rows = rows .. format1rowline(qualid,  encod:getLabel(mylang) , idv)&lt;br /&gt;
						end&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		-- use code/encoding and render as encoding/code&lt;br /&gt;
		if entity.claims.P3295 then&lt;br /&gt;
			for _, v in ipairs(entity.claims.P3295) do&lt;br /&gt;
				local idv = v.mainsnak.datavalue.value&lt;br /&gt;
				local commonsc = &amp;quot;&amp;quot;&lt;br /&gt;
				if v.qualifiers and v.qualifiers.P805 then&lt;br /&gt;
					for _, t in ipairs(v.qualifiers.P805) do&lt;br /&gt;
						if t.snaktype == &amp;quot;value&amp;quot; then&lt;br /&gt;
							local subjectframe = {}&lt;br /&gt;
							subjectframe.args = {}&lt;br /&gt;
							subjectframe.args.qid = t.datavalue.value[&amp;quot;id&amp;quot;]&lt;br /&gt;
							commonsc = WikidataIB.getCommonsLink( subjectframe )&lt;br /&gt;
						end&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
				if v.qualifiers and v.qualifiers.P3294 then&lt;br /&gt;
					for _, w in ipairs(v.qualifiers.P3294) do&lt;br /&gt;
						if w.snaktype == &amp;quot;value&amp;quot; then&lt;br /&gt;
							local qualid = w.datavalue.value[&amp;quot;id&amp;quot;]&lt;br /&gt;
							local encod = mw.wikibase.getEntityObject(qualid)&lt;br /&gt;
							local encodeframe = {}&lt;br /&gt;
							local encodecommons = &amp;quot;&amp;quot;&lt;br /&gt;
							encodeframe.args = {}&lt;br /&gt;
							encodeframe.args.qid = qualid&lt;br /&gt;
							encodecommons = WikidataIB.getCommonsLink( encodeframe ) or &amp;quot;&amp;quot;&lt;br /&gt;
                   			if encodecommons == &amp;quot;&amp;quot; then&lt;br /&gt;
                   				encodecommons = encod:getLabel(mylang)&lt;br /&gt;
                   			else &lt;br /&gt;
                   				encodecommons = &amp;quot;[[:&amp;quot; .. encodecommons .. &amp;quot;|&amp;quot; .. encod:getLabel(mylang) .. &amp;quot;]]&amp;quot;&lt;br /&gt;
                   			end&lt;br /&gt;
&lt;br /&gt;
							if qualid == &amp;quot;Q68101340&amp;quot; then&lt;br /&gt;
								idv = p.expandhiero(frame, idv)&lt;br /&gt;
							elseif commonsc ~= &amp;quot;&amp;quot; then&lt;br /&gt;
								idv = &amp;quot;[[:&amp;quot; .. commonsc .. &amp;quot;|&amp;quot; .. idv .. &amp;quot;]]&amp;quot;&lt;br /&gt;
							end&lt;br /&gt;
							rows = rows .. format1rowline(qualid,  encodecommons , idv)&lt;br /&gt;
						end&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		if entity.claims.P7415 then&lt;br /&gt;
			for _, v in ipairs(entity.claims.P7415) do&lt;br /&gt;
				local idv = v.mainsnak.datavalue.value&lt;br /&gt;
				if v.qualifiers and v.qualifiers.P3294 then&lt;br /&gt;
					for _, w in ipairs(v.qualifiers.P3294) do&lt;br /&gt;
						if w.snaktype == &amp;quot;value&amp;quot; then&lt;br /&gt;
							local qualid = w.datavalue.value[&amp;quot;id&amp;quot;]&lt;br /&gt;
							local encod = mw.wikibase.getEntityObject(qualid)&lt;br /&gt;
							rows = rows .. format1rowline(qualid,  encod:getLabel(mylang) , '[[File:' .. idv .. '|none|35px|'.. entity:getLabel(mylang) .. ' (' .. encod:getLabel(mylang) ..')]]')&lt;br /&gt;
						end&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		end		&lt;br /&gt;
		return rows&lt;br /&gt;
		-- return '&amp;lt;table class=&amp;quot;wikitable&amp;quot;&amp;gt;&amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;Encoding &amp;lt;/th&amp;gt;&amp;lt;td&amp;gt;code&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;' .. rows ..'&amp;lt;/table&amp;gt;'&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Zoran</name></author>
	</entry>
</feed>