<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ro">
	<id>https://enciclopedia.md/index.php?action=history&amp;feed=atom&amp;title=Modul%3ATaxonbar</id>
	<title>Modul:Taxonbar - Revizia istoricului</title>
	<link rel="self" type="application/atom+xml" href="https://enciclopedia.md/index.php?action=history&amp;feed=atom&amp;title=Modul%3ATaxonbar"/>
	<link rel="alternate" type="text/html" href="https://enciclopedia.md/index.php?title=Modul:Taxonbar&amp;action=history"/>
	<updated>2026-04-22T11:23:22Z</updated>
	<subtitle>Istoricul versiunilor pentru această pagină din wiki</subtitle>
	<generator>MediaWiki 1.42.1</generator>
	<entry>
		<id>https://enciclopedia.md/index.php?title=Modul:Taxonbar&amp;diff=637&amp;oldid=prev</id>
		<title>Ana Vornic: Pagină nouă: require(&#039;Modul:No globals&#039;)  local conf = require( &#039;Modul:Taxonbar/conf&#039; ) -- configuration module local TaxonItalics = require(&#039;Modul:TaxonItalics&#039;) -- use a function from Modul:TaxonItalics to italicize a taxon name  local function isNilOrEmpty( thing ) 	if thing == nil or thing == &#039;&#039; then 		return true 	end 	return nil end  local function getIdFromWikidata( item, property ) 	local id = nil 	if property == &#039;PWikispecies:$1&#039; then 		local siteLinks = item.sitelinks 		if siteL...</title>
		<link rel="alternate" type="text/html" href="https://enciclopedia.md/index.php?title=Modul:Taxonbar&amp;diff=637&amp;oldid=prev"/>
		<updated>2024-07-19T15:46:34Z</updated>

		<summary type="html">&lt;p&gt;Pagină nouă: require(&amp;#039;Modul:No globals&amp;#039;)  local conf = require( &amp;#039;Modul:Taxonbar/conf&amp;#039; ) -- configuration module local TaxonItalics = require(&amp;#039;Modul:TaxonItalics&amp;#039;) -- use a function from Modul:TaxonItalics to italicize a taxon name  local function isNilOrEmpty( thing ) 	if thing == nil or thing == &amp;#039;&amp;#039; then 		return true 	end 	return nil end  local function getIdFromWikidata( item, property ) 	local id = nil 	if property == &amp;#039;PWikispecies:$1&amp;#039; then 		local siteLinks = item.sitelinks 		if siteL...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Pagină nouă&lt;/b&gt;&lt;/p&gt;&lt;div&gt;require(&amp;#039;Modul:No globals&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
local conf = require( &amp;#039;Modul:Taxonbar/conf&amp;#039; ) -- configuration module&lt;br /&gt;
local TaxonItalics = require(&amp;#039;Modul:TaxonItalics&amp;#039;) -- use a function from Modul:TaxonItalics to italicize a taxon name&lt;br /&gt;
&lt;br /&gt;
local function isNilOrEmpty( thing )&lt;br /&gt;
	if thing == nil or thing == &amp;#039;&amp;#039; then&lt;br /&gt;
		return true&lt;br /&gt;
	end&lt;br /&gt;
	return nil&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function getIdFromWikidata( item, property )&lt;br /&gt;
	local id = nil&lt;br /&gt;
	if property == &amp;#039;PWikispecies:$1&amp;#039; then&lt;br /&gt;
		local siteLinks = item.sitelinks&lt;br /&gt;
		if siteLinks then&lt;br /&gt;
			local speciesWiki = item.sitelinks.specieswiki&lt;br /&gt;
			if speciesWiki then&lt;br /&gt;
				id = speciesWiki.title&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		return id&lt;br /&gt;
	elseif item.claims[property] == nil then&lt;br /&gt;
		return id&lt;br /&gt;
	end&lt;br /&gt;
	for _, statement in pairs( item.claims[property] ) do&lt;br /&gt;
		if statement.mainsnak.datavalue then&lt;br /&gt;
			id = statement.mainsnak.datavalue.value&lt;br /&gt;
			break&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	return id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function getLink( property, val )&lt;br /&gt;
	local link, returnVal = &amp;#039;&amp;#039;, {}&lt;br /&gt;
	&lt;br /&gt;
	returnVal.isError = false&lt;br /&gt;
	&lt;br /&gt;
	if mw.ustring.find( val, &amp;#039;//&amp;#039; ) then&lt;br /&gt;
		link = val&lt;br /&gt;
	else&lt;br /&gt;
		if type(property) == &amp;#039;number&amp;#039; and property &amp;gt; 0 then&lt;br /&gt;
			local entityObject = mw.wikibase.getEntity(&amp;#039;P&amp;#039;..property)&lt;br /&gt;
			local dataType&lt;br /&gt;
			&lt;br /&gt;
			if entityObject then dataType = entityObject.datatype&lt;br /&gt;
			else returnVal.isError = true end&lt;br /&gt;
			&lt;br /&gt;
			if dataType == &amp;#039;external-id&amp;#039; then&lt;br /&gt;
				local formatterURL = nil&lt;br /&gt;
				if property == 3746 then --Wildflowers of Israel ID&amp;#039;s 2nd formatterURL is in English&lt;br /&gt;
					formatterURL = entityObject:getBestStatements(&amp;#039;P1630&amp;#039;)[2]&lt;br /&gt;
				end&lt;br /&gt;
				if formatterURL == nil then formatterURL = entityObject:getBestStatements(&amp;#039;P1630&amp;#039;)[1] end&lt;br /&gt;
				if formatterURL then&lt;br /&gt;
					if formatterURL.mainsnak.datavalue and formatterURL.mainsnak.datavalue.value then --nil check for ABA&lt;br /&gt;
						link = formatterURL.mainsnak.datavalue.value&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
			elseif dataType == &amp;#039;url&amp;#039; then&lt;br /&gt;
				local subjectItem = entityObject:getBestStatements(&amp;#039;P1629&amp;#039;)[1]&lt;br /&gt;
				if subjectItem then&lt;br /&gt;
					local officialWebsite = mw.wikibase.getEntity(subjectItem.mainsnak.datavalue.value.id):getBestStatements(&amp;#039;P856&amp;#039;)[1]&lt;br /&gt;
					if officialWebsite then	link = officialWebsite.mainsnak.datavalue.value end&lt;br /&gt;
				end&lt;br /&gt;
			elseif dataType == &amp;#039;string&amp;#039; then&lt;br /&gt;
				local formatterURL = entityObject:getBestStatements(&amp;#039;P1630&amp;#039;)[1]&lt;br /&gt;
				if formatterURL then&lt;br /&gt;
					link = formatterURL.mainsnak.datavalue.value&lt;br /&gt;
				else&lt;br /&gt;
					local subjectItem = entityObject:getBestStatements(&amp;#039;P1629&amp;#039;)[1]&lt;br /&gt;
					if subjectItem then&lt;br /&gt;
						local officialWebsite = mw.wikibase.getEntity(subjectItem.mainsnak.datavalue.value.id):getBestStatements(&amp;#039;P856&amp;#039;)[1]&lt;br /&gt;
						if officialWebsite then	link = officialWebsite.mainsnak.datavalue.value end&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
			else&lt;br /&gt;
				returnVal.isError = true&lt;br /&gt;
			end&lt;br /&gt;
		elseif type(property) == &amp;#039;string&amp;#039; then&lt;br /&gt;
			link = property&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		local valurl = val&lt;br /&gt;
		if mw.ustring.find( link, &amp;#039;antweb.org&amp;#039; ) then valurl = mw.ustring.gsub(valurl, &amp;#039; &amp;#039;, &amp;#039;%%20&amp;#039;) end&lt;br /&gt;
		if type(property) == &amp;#039;number&amp;#039; then&lt;br /&gt;
			--doublecheck language for Wildflowers of Israel ID&lt;br /&gt;
			if property == 3746 then link = mw.ustring.gsub(link, &amp;#039;/hebrew/&amp;#039;, &amp;#039;/english/&amp;#039;) end&lt;br /&gt;
			--format spaces in PfaF, e.g. for &amp;quot;Elaeagnus x ebbingei&amp;quot;&lt;br /&gt;
			if property == 4301 then valurl = mw.ustring.gsub(valurl, &amp;#039; &amp;#039;, &amp;#039;+&amp;#039;) end&lt;br /&gt;
		end&lt;br /&gt;
		valurl = mw.ustring.gsub(valurl,&amp;#039;%%&amp;#039;,&amp;#039;%%%%&amp;#039;)&lt;br /&gt;
		link = mw.ustring.gsub(link, &amp;#039;$1&amp;#039;, valurl)&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	link = mw.ustring.gsub(link, &amp;#039;^[Hh][Tt][Tt][Pp]([Ss]?)&amp;amp;#58;//&amp;#039;, &amp;#039;http%1://&amp;#039;) -- fix wikidata URL&lt;br /&gt;
	val = mw.ustring.match(val, &amp;#039;([^=/]*)/?$&amp;#039;) -- get display name from end of URL&lt;br /&gt;
	if mw.ustring.find( link, &amp;#039;//&amp;#039; ) then&lt;br /&gt;
		returnVal.text = &amp;#039;[&amp;#039;..link..&amp;#039; &amp;#039;..mw.text.encode(mw.uri.decode(val, &amp;#039;PATH&amp;#039;),&amp;#039;%[%]&amp;#039;)..&amp;#039;]&amp;#039;&lt;br /&gt;
	elseif link == &amp;#039;&amp;#039; then&lt;br /&gt;
		returnVal.text = val&lt;br /&gt;
	else&lt;br /&gt;
		returnVal.text = &amp;#039;&amp;lt;span class=&amp;quot;external&amp;quot;&amp;gt;[[&amp;#039;..link..&amp;#039;|&amp;#039;..val..&amp;#039;]]&amp;lt;/span&amp;gt;&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
	return returnVal&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function createRow( id, label, rawValue, link, withUid )&lt;br /&gt;
	if link then&lt;br /&gt;
		local outStr = &amp;#039;*&amp;lt;span style=&amp;quot;white-space:nowrap;&amp;quot;&amp;gt;&amp;#039; .. label .. &amp;#039; &amp;lt;span&amp;#039;&lt;br /&gt;
		if withUid then outStr = outStr..&amp;#039; class=&amp;quot;uid&amp;quot;&amp;#039; end&lt;br /&gt;
		return outStr..&amp;#039;&amp;gt;&amp;#039; .. link .. &amp;#039;&amp;lt;/span&amp;gt;&amp;lt;/span&amp;gt;\n&amp;#039;&lt;br /&gt;
	else&lt;br /&gt;
		return &amp;#039;* &amp;#039; .. mw.text.tag(&amp;#039;span&amp;#039;, {class=&amp;#039;error&amp;#039;}, &amp;#039;Identificatorul &amp;#039; .. id .. &amp;#039; &amp;#039; .. rawValue .. &amp;#039; nu este valid.&amp;#039;) .. &amp;#039;\n&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function copyTable(inTable)&lt;br /&gt;
	if type(inTable) ~= &amp;#039;table&amp;#039; then return inTable end&lt;br /&gt;
	local outTable = setmetatable({}, getmetatable(inTable))&lt;br /&gt;
	for key, value in pairs (inTable) do outTable[copyTable(key)] = copyTable(value) end&lt;br /&gt;
	return outTable&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
function p.authorityControlTaxon( frame )&lt;br /&gt;
	local resolve = require( &amp;#039;Modul:ResolveEntityId&amp;#039; )&lt;br /&gt;
	local parentArgs = copyTable(frame:getParent().args)&lt;br /&gt;
	local currentTitle = mw.title.getCurrentTitle()&lt;br /&gt;
	local currentEntityId = mw.wikibase.getEntityIdForCurrentPage()&lt;br /&gt;
	&lt;br /&gt;
	local stringArgs = false&lt;br /&gt;
	local fromTitleCount, firstRow, rowCount = 1, 0, 0&lt;br /&gt;
	local outString, errors = &amp;#039;&amp;#039;, &amp;#039;&amp;#039;&lt;br /&gt;
	local tFroms = {} --non-sequential table of unique froms&lt;br /&gt;
	local iFroms = 0 --integer size of tFroms, b/c Lua&lt;br /&gt;
	local categories = {&lt;br /&gt;
		&amp;#039;[[Categorie:Taxonbars without from parameter]]&amp;#039;,&lt;br /&gt;
		&amp;#039;[[Categorie:Taxonbars desynced from Wikidata]]&amp;#039;,&lt;br /&gt;
		&amp;#039;&amp;#039;, -- [3] placeholder for [[Category:Taxonbars using multiple manual Wikidata items]]&lt;br /&gt;
		&amp;#039;&amp;#039;, -- [4] placeholder for [[Category:Taxonbars with invalid from parameters]]&lt;br /&gt;
		&amp;#039;&amp;#039;, -- [5] placeholder for [[Category:Taxonbars using manual taxon IDs]]&lt;br /&gt;
		&amp;#039;&amp;#039;, -- [6] placeholder for [[Category:Taxonbar pages requiring a Wikidata item]]&lt;br /&gt;
		&amp;#039;&amp;#039;, -- [7] placeholder for [[Category:Taxonbar pages without Wikidata taxon IDs]]&lt;br /&gt;
		&amp;#039;&amp;#039;, -- [8] placeholder for [[Category:Taxonbars with duplicate from parameters]]&lt;br /&gt;
		&amp;#039;&amp;#039;, -- [9] placeholder for [[Category:Taxonbars with manual taxon IDs differing from Wikidata]]&lt;br /&gt;
		&amp;#039;&amp;#039;, --[10] placeholder for [[Category:Taxonbars with manual taxon IDs identical to Wikidata]]&lt;br /&gt;
		&amp;#039;&amp;#039;, --[11] placeholder for [[Category:Taxonbars on possible non-taxon pages]]&lt;br /&gt;
		&amp;#039;&amp;#039;, --[12] placeholder for [[Category:Taxonbars with 20+ taxon IDs]]&lt;br /&gt;
		&amp;#039;&amp;#039;, --[13] placeholder for [[Category:Taxonbars with 25+ taxon IDs]]&lt;br /&gt;
		&amp;#039;&amp;#039;, --[14] placeholder for [[Category:Taxonbars with automatically added basionyms]]&lt;br /&gt;
		&amp;#039;&amp;#039;, --[15] placeholder for [[Category:Taxonbars with automatically added monotypic genera]]&lt;br /&gt;
		&amp;#039;&amp;#039;, --[16] placeholder for [[Category:Taxonbars of monotypic species missing genera]]&lt;br /&gt;
		&amp;#039;&amp;#039;, --[17] placeholder for [[Category:Taxonbars with unknown parameters]]&lt;br /&gt;
		&amp;#039;&amp;#039;, --[18] placeholder for [[Category:Taxonbars with 30+ taxon IDs]]&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	--Assess the page&amp;#039;s relationship with Wikidata&lt;br /&gt;
	local currentItem = nil&lt;br /&gt;
	if currentTitle.namespace == 10 then --i.e. Module:Taxonbar/sandbox, Template:Taxonbar/doc, etc.&lt;br /&gt;
		if resolve._entityid(frame, parentArgs[&amp;#039;from&amp;#039;]) then&lt;br /&gt;
			currentItem = mw.wikibase.getEntity(parentArgs[&amp;#039;from&amp;#039;])&lt;br /&gt;
		end&lt;br /&gt;
		if currentItem == nil then&lt;br /&gt;
			if resolve._entityid(frame, parentArgs[&amp;#039;from1&amp;#039;]) then&lt;br /&gt;
				currentItem = mw.wikibase.getEntity(parentArgs[&amp;#039;from1&amp;#039;])&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	elseif resolve._entityid(frame, currentEntityId) then&lt;br /&gt;
		currentItem = mw.wikibase.getEntity(currentEntityId)&lt;br /&gt;
	else --currentEntityId == nil/unresolvable&lt;br /&gt;
		categories[6] = &amp;#039;[[Categorie:Pagini de taxonomie care necesită un element Wikidata]]&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
	if currentItem then&lt;br /&gt;
		local acceptable = {&lt;br /&gt;
		   [&amp;#039;Q16521&amp;#039;] = &amp;#039;taxon&amp;#039;,                      --strict&lt;br /&gt;
		   [&amp;#039;Q310890&amp;#039;] = &amp;#039;taxon monotipic&amp;#039;,           --strict&lt;br /&gt;
		   [&amp;#039;Q2568288&amp;#039;] = &amp;#039;ichnotaxon&amp;#039;,               --strict&lt;br /&gt;
		   [&amp;#039;Q23038290&amp;#039;] = &amp;#039;taxonul fosil&amp;#039;,            --strict&lt;br /&gt;
		   [&amp;#039;Q47487597&amp;#039;] = &amp;#039;monotopul fosil&amp;#039;,  --strict&lt;br /&gt;
		   [&amp;#039;Q42621&amp;#039;] = &amp;#039;hibrid&amp;#039;,                     --lax&lt;br /&gt;
		   [&amp;#039;Q235536&amp;#039;] = &amp;#039;monotopul fosil&amp;#039;,            --lax&lt;br /&gt;
		   [&amp;#039;Q713623&amp;#039;] = &amp;#039;clade&amp;#039;,                     --lax&lt;br /&gt;
		   [&amp;#039;Q848328&amp;#039;] = &amp;#039;serotip&amp;#039;,                  --lax&lt;br /&gt;
		   [&amp;#039;Q857968&amp;#039;] = &amp;#039;candidatus&amp;#039;,                --lax&lt;br /&gt;
		   [&amp;#039;Q17487588&amp;#039;] = &amp;#039;indisponibilă&amp;#039;, --lax&lt;br /&gt;
		}&lt;br /&gt;
		categories[11] = &amp;#039;[[Categorie:Bare de taxonomie pe posibile pagini non-taxon]]&amp;#039; --unset if acceptable found&lt;br /&gt;
		for _, instanceOfState in pairs ( currentItem:getBestStatements(&amp;#039;P31&amp;#039;) ) do --instance of&lt;br /&gt;
			local instanceOf = instanceOfState.mainsnak.datavalue.value.id&lt;br /&gt;
			if acceptable[instanceOf] then&lt;br /&gt;
				categories[11] = &amp;#039;&amp;#039;&lt;br /&gt;
				break&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	--Cleanup args&lt;br /&gt;
	for k, v in pairs( frame:getParent().args ) do&lt;br /&gt;
		if type(k) == &amp;#039;string&amp;#039; then&lt;br /&gt;
			--make args case insensitive&lt;br /&gt;
			local lowerk = mw.ustring.lower(k)&lt;br /&gt;
			if isNilOrEmpty( parentArgs[lowerk] ) then&lt;br /&gt;
				parentArgs[k] = nil&lt;br /&gt;
				parentArgs[lowerk] = v&lt;br /&gt;
			end&lt;br /&gt;
			--remap abc to abc1&lt;br /&gt;
			if mw.ustring.find(lowerk,&amp;#039;%d$&amp;#039;) == nil then --if no number at end of param&lt;br /&gt;
				if isNilOrEmpty( parentArgs[lowerk..&amp;#039;1&amp;#039;] ) then&lt;br /&gt;
					parentArgs[lowerk] = nil&lt;br /&gt;
					lowerk = lowerk..&amp;#039;1&amp;#039;&lt;br /&gt;
					parentArgs[lowerk] = v&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
			if v and v ~= &amp;#039;&amp;#039; then&lt;br /&gt;
				--remap &amp;#039;for&amp;#039; to &amp;#039;title&amp;#039;&lt;br /&gt;
				if mw.ustring.sub(lowerk,1,3) == &amp;#039;for&amp;#039; then&lt;br /&gt;
					local forTitle = mw.ustring.gsub(lowerk,&amp;#039;^for&amp;#039;,&amp;#039;title&amp;#039;,1)&lt;br /&gt;
					if isNilOrEmpty( parentArgs[forTitle] ) then&lt;br /&gt;
						parentArgs[lowerk] = nil&lt;br /&gt;
						lowerk = forTitle&lt;br /&gt;
						parentArgs[lowerk] = v&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
				--find highest from or title param&lt;br /&gt;
				if mw.ustring.sub(lowerk,1,4) == &amp;#039;from&amp;#039; then&lt;br /&gt;
					local fromNumber = tonumber(mw.ustring.sub(lowerk,5,-1))&lt;br /&gt;
					if fromNumber and fromNumber &amp;gt;= fromTitleCount then fromTitleCount = fromNumber end&lt;br /&gt;
					--look for duplicate froms while we&amp;#039;re here&lt;br /&gt;
					if mw.ustring.find(v, &amp;#039;^Q%d&amp;#039;) then&lt;br /&gt;
						if tFroms[v] then&lt;br /&gt;
							categories[8] = &amp;#039;[[Categorie:Taxonbare cu duplicat de parametri]]&amp;#039;&lt;br /&gt;
							tFroms[v] = tFroms[v] + 1&lt;br /&gt;
						else&lt;br /&gt;
							tFroms[v] = 1&lt;br /&gt;
							iFroms = iFroms + 1&lt;br /&gt;
						end&lt;br /&gt;
						if iFroms == 2 then&lt;br /&gt;
							categories[3] = &amp;#039;[[Categorie:Taxonbaruri care utilizează mai multe articole Wikidata manual]]&amp;#039;&lt;br /&gt;
						end&lt;br /&gt;
					end&lt;br /&gt;
				elseif mw.ustring.sub(lowerk,1,5) == &amp;#039;title&amp;#039; then&lt;br /&gt;
					local titleNumber = tonumber(mw.ustring.sub(lowerk,4,-1))&lt;br /&gt;
					if titleNumber and titleNumber &amp;gt;= fromTitleCount then fromTitleCount = titleNumber end&lt;br /&gt;
				elseif mw.ustring.lower(v) ~= &amp;#039;no&amp;#039; then&lt;br /&gt;
					stringArgs = true&lt;br /&gt;
					categories[5] = &amp;#039;[[Categorie:Taxonobare cu identificare manuală a taxonului]]&amp;#039;&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	--Check for unknown parameters&lt;br /&gt;
	--create knowns list&lt;br /&gt;
	local acceptableArgs = { from = true, } --master list of l/c acceptable args&lt;br /&gt;
	for _, d in pairs( conf.databases ) do&lt;br /&gt;
		if d[1] ~= &amp;#039;Wikidata&amp;#039; then --făcut învechit de la&lt;br /&gt;
			acceptableArgs[mw.ustring.lower(d[1])] = true&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	for _, a in pairs( conf.aliases ) do&lt;br /&gt;
		acceptableArgs[mw.ustring.lower(a[1])] = true&lt;br /&gt;
	end&lt;br /&gt;
	--create trimmed parents list&lt;br /&gt;
	local baseParentArgs = {} --condensed list of l/c parent args w/o trailing #s&lt;br /&gt;
	for k, v in pairs( parentArgs ) do&lt;br /&gt;
		if type(k) == &amp;#039;string&amp;#039; then --ignore unnamed params, which have keys of type &amp;#039;number&amp;#039;&lt;br /&gt;
			local lowerk = mw.ustring.lower(k)&lt;br /&gt;
			local base = mw.ustring.gsub(lowerk, &amp;#039;[%d]*$&amp;#039;, &amp;#039;&amp;#039;)&lt;br /&gt;
			baseParentArgs[base] = true&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	--compare lists and spit out unknowns&lt;br /&gt;
	local unknownParams = {}&lt;br /&gt;
	for k, v in pairs( baseParentArgs ) do&lt;br /&gt;
		if acceptableArgs[k] == nil then&lt;br /&gt;
			categories[17] = &amp;#039;[[Categorie:Taxonobare cu parametri necunoscuți|&amp;#039; .. k ..&amp;#039;]]&amp;#039;&lt;br /&gt;
			unknownParams[#unknownParams + 1] = k&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	--warn if unknown(s) present&lt;br /&gt;
	if #unknownParams &amp;gt; 0 then&lt;br /&gt;
		local plural = nil&lt;br /&gt;
		local itthem = nil&lt;br /&gt;
		if #unknownParams == 1 then&lt;br /&gt;
			plural = &amp;#039;&amp;#039;&lt;br /&gt;
			itthem = &amp;#039;it&amp;#039;&lt;br /&gt;
		else&lt;br /&gt;
			plural = &amp;#039;s&amp;#039;&lt;br /&gt;
			itthem = &amp;#039;them&amp;#039;&lt;br /&gt;
		end&lt;br /&gt;
		if frame:preprocess( &amp;#039;{{REVISIONID}}&amp;#039; ) == &amp;#039;&amp;#039; then&lt;br /&gt;
			errors = errors..&amp;#039;&amp;lt;div class=&amp;quot;hatnote&amp;quot; style=&amp;quot;color:red&amp;quot;&amp;gt;&amp;#039;..&lt;br /&gt;
				     &amp;#039;&amp;lt;strong&amp;gt;Avertizare:&amp;lt;/strong&amp;gt; parametru necunoscut&amp;#039;..plural..&amp;#039; &amp;lt;strong&amp;gt;&amp;#039;..table.concat(unknownParams, &amp;#039;, &amp;#039;)..&amp;#039;&amp;lt;/strong&amp;gt;.&amp;lt;br /&amp;gt;&amp;#039;..&lt;br /&gt;
				     &amp;#039;Vă rugăm să corectați &amp;#039;..itthem..&amp;#039; sau luați în considerare adăugarea &amp;#039;..itthem..&amp;#039; la Wikidata.&amp;lt;br /&amp;gt;&amp;#039;..&lt;br /&gt;
				     &amp;#039;Acest mesaj este afișat numai în previzualizare.&amp;lt;/div&amp;gt;&amp;#039;&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	--Append basionym to arg list, if not already provided&lt;br /&gt;
	if currentItem then&lt;br /&gt;
		local currentBasState = currentItem:getBestStatements(&amp;#039;P566&amp;#039;)[1] --basionym&lt;br /&gt;
		if currentBasState then&lt;br /&gt;
			local basionymId = currentBasState.mainsnak.datavalue.value.id&lt;br /&gt;
			if basionymId and resolve._entityid(frame, basionymId) and tFroms[basionymId] == nil then&lt;br /&gt;
				--check that basionym is a strict instance of taxon&lt;br /&gt;
				local basionymItem = mw.wikibase.getEntity(basionymId)&lt;br /&gt;
				if basionymItem then&lt;br /&gt;
					local acceptable = {&lt;br /&gt;
					   [&amp;#039;Q16521&amp;#039;] = &amp;#039;taxon&amp;#039;,                     --strict&lt;br /&gt;
					   [&amp;#039;Q310890&amp;#039;] = &amp;#039;taxon monotipic&amp;#039;,          --strict&lt;br /&gt;
					   [&amp;#039;Q2568288&amp;#039;] = &amp;#039;ichnotaxon&amp;#039;,              --strict&lt;br /&gt;
					   [&amp;#039;Q23038290&amp;#039;] = &amp;#039;taxonul fosil&amp;#039;,           --strict&lt;br /&gt;
					   [&amp;#039;Q47487597&amp;#039;] = &amp;#039;monotopul fosil&amp;#039;, --strict&lt;br /&gt;
					}&lt;br /&gt;
					for _, instanceOfState in pairs ( basionymItem:getBestStatements(&amp;#039;P31&amp;#039;) ) do --instance of&lt;br /&gt;
						local instanceOf = instanceOfState.mainsnak.datavalue.value.id&lt;br /&gt;
						if acceptable[instanceOf] then&lt;br /&gt;
							--housekeeping&lt;br /&gt;
							tFroms[basionymId] = 1&lt;br /&gt;
							iFroms = iFroms + 1&lt;br /&gt;
							fromTitleCount = fromTitleCount + 1&lt;br /&gt;
							--append basionym &amp;amp; track&lt;br /&gt;
							parentArgs[&amp;#039;from&amp;#039;..fromTitleCount] = basionymId&lt;br /&gt;
							categories[14] = &amp;#039;[[Categorie:Taxonoare cu basionime adăugate automat]]&amp;#039;&lt;br /&gt;
							break&lt;br /&gt;
	end	end	end	end	end	end&lt;br /&gt;
	&lt;br /&gt;
	--Append monotypic genus/species to arg list of monotypic species/genus, if not already provided&lt;br /&gt;
	if currentItem then&lt;br /&gt;
		for _, instanceOfState in pairs ( currentItem:getBestStatements(&amp;#039;P31&amp;#039;) ) do --instance of&lt;br /&gt;
			local taxonRank = nil&lt;br /&gt;
			local parentItem = nil&lt;br /&gt;
			local parentTaxon = nil&lt;br /&gt;
			local parentTaxonRank = nil&lt;br /&gt;
			local parentMonoGenus = nil --holy grail/tbd&lt;br /&gt;
			local instanceOf = instanceOfState.mainsnak.datavalue.value.id&lt;br /&gt;
			if instanceOf and (instanceOf == &amp;#039;Q310890&amp;#039; or instanceOf == &amp;#039;Q47487597&amp;#039;) then --monotip/taxonul fosil&lt;br /&gt;
				local taxonRankState = currentItem:getBestStatements(&amp;#039;P105&amp;#039;)[1] --loc taxon&lt;br /&gt;
				if taxonRankState then taxonRank = taxonRankState.mainsnak.datavalue.value.id end&lt;br /&gt;
				&lt;br /&gt;
				if taxonRank and taxonRank == &amp;#039;Q7432&amp;#039; then --specie&lt;br /&gt;
					--is monotypic species; add genus&lt;br /&gt;
					local parentTaxonState = currentItem:getBestStatements(&amp;#039;P171&amp;#039;)[1] --parent taxon&lt;br /&gt;
					if parentTaxonState then parentTaxon = parentTaxonState.mainsnak.datavalue.value.id end&lt;br /&gt;
					--confirm parent taxon rank == genus &amp;amp; monotypic&lt;br /&gt;
					if parentTaxon and resolve._entityid(frame, parentTaxon) then&lt;br /&gt;
						parentItem = mw.wikibase.getEntity(parentTaxon)&lt;br /&gt;
						if parentItem then&lt;br /&gt;
							local parentTaxonRankState = parentItem:getBestStatements(&amp;#039;P105&amp;#039;)[1] --taxon rank&lt;br /&gt;
							if parentTaxonRankState then parentTaxonRank = parentTaxonRankState.mainsnak.datavalue.value.id end&lt;br /&gt;
							if parentTaxonRank and parentTaxonRank == &amp;#039;Q34740&amp;#039; then --parent == genus&lt;br /&gt;
								for _, parentInstanceOfState in pairs ( parentItem:getBestStatements(&amp;#039;P31&amp;#039;) ) do --instance of&lt;br /&gt;
									local parentInstanceOf = parentInstanceOfState.mainsnak.datavalue.value.id &lt;br /&gt;
									if parentInstanceOf and&lt;br /&gt;
									  (parentInstanceOf == &amp;#039;Q310890&amp;#039; or parentInstanceOf == &amp;#039;Q47487597&amp;#039;) then --monotypic/fossil taxon&lt;br /&gt;
										parentMonoGenus = parentTaxon --confirmed&lt;br /&gt;
										break&lt;br /&gt;
									end&lt;br /&gt;
								end&lt;br /&gt;
								if parentMonoGenus and tFroms[parentMonoGenus] == nil then&lt;br /&gt;
									--housekeeping&lt;br /&gt;
									tFroms[parentMonoGenus] = 1&lt;br /&gt;
									iFroms = iFroms + 1&lt;br /&gt;
									fromTitleCount = fromTitleCount + 1&lt;br /&gt;
									--append monotypic genus &amp;amp; track&lt;br /&gt;
									parentArgs[&amp;#039;from&amp;#039;..fromTitleCount] = parentMonoGenus&lt;br /&gt;
									categories[15] = &amp;#039;[[Categorie:Taxonobară cu grupe monotipice adăugate automat]]&amp;#039;&lt;br /&gt;
									break&lt;br /&gt;
								end&lt;br /&gt;
							end&lt;br /&gt;
						end&lt;br /&gt;
					end&lt;br /&gt;
					if parentMonoGenus == nil or tFroms[parentMonoGenus] == nil then&lt;br /&gt;
						categories[16] = &amp;#039;[[Category:Taxonbars of monotypic species missing genera]]&amp;#039;&lt;br /&gt;
						break&lt;br /&gt;
					end&lt;br /&gt;
				elseif taxonRank and taxonRank == &amp;#039;Q34740&amp;#039; then --genus&lt;br /&gt;
					--is monotypic genus; add species&lt;br /&gt;
					--...&lt;br /&gt;
				end&lt;br /&gt;
				&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end --if currentItem&lt;br /&gt;
	&lt;br /&gt;
	--Setup navbox&lt;br /&gt;
	local navboxParams = {&lt;br /&gt;
		name  = &amp;#039;Taxonbar&amp;#039;,&lt;br /&gt;
		bodyclass = &amp;#039;hlist&amp;#039;,&lt;br /&gt;
		listclass = &amp;#039;&amp;#039;,&lt;br /&gt;
		groupstyle = &amp;#039;text-align: left;&amp;#039;,&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	for f = 1, fromTitleCount, 1&lt;br /&gt;
	do&lt;br /&gt;
		local elements, title = {}, nil&lt;br /&gt;
		--cleanup parameters&lt;br /&gt;
		if parentArgs[&amp;#039;from&amp;#039;..f] == &amp;#039;&amp;#039; then parentArgs[&amp;#039;from&amp;#039;..f] = nil end&lt;br /&gt;
		if parentArgs[&amp;#039;title&amp;#039;..f] == &amp;#039;&amp;#039; then parentArgs[&amp;#039;title&amp;#039;..f] = nil end&lt;br /&gt;
		--remap aliases&lt;br /&gt;
		for _, a in pairs( conf.aliases ) do&lt;br /&gt;
			local alias, name = mw.ustring.lower(a[1]), mw.ustring.lower(a[2])&lt;br /&gt;
			if parentArgs[alias..f] and parentArgs[name..f] == nil then&lt;br /&gt;
				parentArgs[name..f] = parentArgs[alias..f]&lt;br /&gt;
				parentArgs[alias..f] = nil&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		--Fetch Wikidata item&lt;br /&gt;
		local from = resolve._entityid(frame, parentArgs[&amp;#039;from&amp;#039;..f])&lt;br /&gt;
		local item = mw.wikibase.getEntity(from)&lt;br /&gt;
		local label = nil&lt;br /&gt;
		if type(item) == &amp;#039;table&amp;#039; then&lt;br /&gt;
			local statements = item:getBestStatements(&amp;#039;P225&amp;#039;)[1] --taxon name&lt;br /&gt;
			if statements then&lt;br /&gt;
				local datavalue = statements.mainsnak.datavalue&lt;br /&gt;
				if datavalue then&lt;br /&gt;
					label = datavalue.value&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
			label = label or item:getLabel()&lt;br /&gt;
		else&lt;br /&gt;
			if parentArgs[&amp;#039;from&amp;#039;..f] then&lt;br /&gt;
				categories[1] = &amp;#039;&amp;#039;&lt;br /&gt;
				categories[4] = &amp;#039;[[Category:Taxonbars with invalid from parameters]]&amp;#039;&lt;br /&gt;
				errors = errors .. mw.text.tag(&amp;#039;strong&amp;#039;, {class=&amp;#039;error&amp;#039;}, &amp;#039;Error: &amp;quot;&amp;#039; .. &lt;br /&gt;
				         parentArgs[&amp;#039;from&amp;#039;..f] .. &amp;#039;&amp;quot; is not a valid Wikidata entity ID.&amp;lt;br /&amp;gt;&amp;#039;)				&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		if label and label ~= &amp;#039;&amp;#039; then&lt;br /&gt;
			title = mw.title.new(label)&lt;br /&gt;
		end&lt;br /&gt;
		if title == nil and parentArgs[&amp;#039;title&amp;#039;..f] then&lt;br /&gt;
			title = mw.title.new(parentArgs[&amp;#039;title&amp;#039;..f])&lt;br /&gt;
		end&lt;br /&gt;
		if title == nil and f == 1 then&lt;br /&gt;
			title = currentTitle&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		if title then&lt;br /&gt;
			if isNilOrEmpty( parentArgs[&amp;#039;wikidata&amp;#039;..f] ) and &lt;br /&gt;
			   (title.namespace == 0) then&lt;br /&gt;
				if parentArgs[&amp;#039;from&amp;#039;..f] then&lt;br /&gt;
					parentArgs[&amp;#039;wikidata&amp;#039;..f] = parentArgs[&amp;#039;from&amp;#039;..f]&lt;br /&gt;
				elseif item then&lt;br /&gt;
					parentArgs[&amp;#039;wikidata&amp;#039;..f] = item.id&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
			if title.namespace == 0 or stringArgs then --only in mainspace or if manual overrides exist&lt;br /&gt;
				local sourceCount = 0&lt;br /&gt;
				for _, params in pairs( conf.databases ) do&lt;br /&gt;
					params[1] = mw.ustring.lower(params[1])&lt;br /&gt;
					local propId = params[3]&lt;br /&gt;
					--Wikidata fallback if requested&lt;br /&gt;
					if (item and item.claims) and&lt;br /&gt;
					   (type(propId) == &amp;#039;string&amp;#039; or (type(propId) == &amp;#039;number&amp;#039; and propId &amp;gt; 0)) then&lt;br /&gt;
						local wikidataId = getIdFromWikidata( item, &amp;#039;P&amp;#039; .. propId )&lt;br /&gt;
						local v = parentArgs[params[1]..f]&lt;br /&gt;
						if wikidataId then&lt;br /&gt;
							if isNilOrEmpty(v) then&lt;br /&gt;
								parentArgs[params[1]..f] = wikidataId&lt;br /&gt;
							else&lt;br /&gt;
								if v and v ~= &amp;#039;no&amp;#039; and v ~= wikidataId then&lt;br /&gt;
									categories[9] = &amp;#039;[[Category:Taxonbars with manual taxon IDs differing from Wikidata]]&amp;#039;&lt;br /&gt;
								elseif v and v == wikidataId then&lt;br /&gt;
									categories[10] = &amp;#039;[[Category:Taxonbars with manual taxon IDs identical to Wikidata]]&amp;#039;&lt;br /&gt;
								end&lt;br /&gt;
							end&lt;br /&gt;
						end&lt;br /&gt;
					end&lt;br /&gt;
					local val = parentArgs[params[1]..f]&lt;br /&gt;
					if val and val ~= &amp;#039;&amp;#039; and mw.ustring.lower(val) ~= &amp;#039;no&amp;#039; then&lt;br /&gt;
						if type(propId) == &amp;#039;number&amp;#039; then&lt;br /&gt;
							if propId &amp;lt; 0 then propId = -propId end --allow link&lt;br /&gt;
							if propId &amp;gt; 0 then --link&lt;br /&gt;
								table.insert( elements, createRow( params[1], params[2]..&amp;#039;:&amp;#039;, val, getLink( propId, val ).text, true ) )&lt;br /&gt;
							else --propId == 0; no link&lt;br /&gt;
								table.insert( elements, createRow( params[1], params[2]..&amp;#039;:&amp;#039;, val, val, true ) )&lt;br /&gt;
							end&lt;br /&gt;
						else&lt;br /&gt;
							table.insert( elements, createRow( params[1], params[2]..&amp;#039;:&amp;#039;, val, getLink( propId, val ).text, true ) )&lt;br /&gt;
						end&lt;br /&gt;
						if params[1] ~= &amp;#039;wikidata&amp;#039; and params[1] ~= &amp;#039;wikispecies&amp;#039; then&lt;br /&gt;
							sourceCount = sourceCount + 1&lt;br /&gt;
						end&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
				&lt;br /&gt;
				if     sourceCount &amp;gt;= 30 then categories[18] = &amp;#039;[[Category:Taxonbars with 30+ taxon IDs]]&amp;#039;&lt;br /&gt;
				elseif sourceCount &amp;gt;= 25 then categories[13] = &amp;#039;[[Category:Taxonbars with 25+ taxon IDs]]&amp;#039;&lt;br /&gt;
				elseif sourceCount &amp;gt;= 20 then categories[12] = &amp;#039;[[Category:Taxonbars with 20+ taxon IDs]]&amp;#039;&lt;br /&gt;
				end&lt;br /&gt;
				&lt;br /&gt;
				--Generate navbox title&lt;br /&gt;
				if sourceCount &amp;gt; 0 then --TODO: don&amp;#039;t count Wikispecies towards &amp;#039;taxon ID count&amp;#039;&lt;br /&gt;
					rowCount = rowCount + 1&lt;br /&gt;
					if firstRow == 0 then firstRow = f end&lt;br /&gt;
					--set title from wikidata if it doesn&amp;#039;t exist&lt;br /&gt;
					if isNilOrEmpty( parentArgs[&amp;#039;title&amp;#039;..f] ) then&lt;br /&gt;
						parentArgs[&amp;#039;noTitle&amp;#039;..f] = true&lt;br /&gt;
						parentArgs[&amp;#039;title&amp;#039;..f] = title.text&lt;br /&gt;
					end&lt;br /&gt;
					--if it exists now, set row heading to title&lt;br /&gt;
					if not isNilOrEmpty( parentArgs[&amp;#039;title&amp;#039;..f] ) then&lt;br /&gt;
						navboxParams[&amp;#039;group&amp;#039;..f] = TaxonItalics.italicizeTaxonName(parentArgs[&amp;#039;title&amp;#039;..f], false)&lt;br /&gt;
					else&lt;br /&gt;
						navboxParams[&amp;#039;group&amp;#039;..f] = &amp;#039;&amp;#039;&lt;br /&gt;
					end&lt;br /&gt;
					navboxParams[&amp;#039;list&amp;#039;..f] = table.concat( elements )&lt;br /&gt;
				elseif currentEntityId then&lt;br /&gt;
					categories[7] = &amp;#039;[[Category:Taxonbar pages without Wikidata taxon IDs]]&amp;#039;&lt;br /&gt;
				end&lt;br /&gt;
				&lt;br /&gt;
				--Categorize&lt;br /&gt;
				if not isNilOrEmpty( parentArgs[&amp;#039;from&amp;#039;..f] ) then&lt;br /&gt;
					--blank &amp;quot;missing from&amp;quot; if &amp;#039;from&amp;#039; exists&lt;br /&gt;
					categories[1] = &amp;#039;&amp;#039;&lt;br /&gt;
					--blank &amp;quot;desynced&amp;quot; if &amp;#039;from&amp;#039; matches current page&lt;br /&gt;
					if parentArgs[&amp;#039;from&amp;#039;..f] == currentEntityId then categories[2] = &amp;#039;&amp;#039; end&lt;br /&gt;
				end&lt;br /&gt;
					--cannot be &amp;quot;desynced&amp;quot; if no &amp;#039;from&amp;#039; params&lt;br /&gt;
				if categories[1] ~= &amp;#039;&amp;#039; then categories[2] = &amp;#039;&amp;#039; end&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end --for f = 1, fromTitleCount, 1&lt;br /&gt;
	&lt;br /&gt;
	if rowCount &amp;gt; 0 then&lt;br /&gt;
		local Navbox = require(&amp;#039;Module:Navbox&amp;#039;)&lt;br /&gt;
		if rowCount &amp;gt; 1 then&lt;br /&gt;
			--remove duplicates and move page title to top&lt;br /&gt;
			local rowIDs = {}&lt;br /&gt;
			for f = 1,fromTitleCount,1&lt;br /&gt;
			do&lt;br /&gt;
				if not isNilOrEmpty( parentArgs[&amp;#039;title&amp;#039;..f] ) then&lt;br /&gt;
					if rowIDs[parentArgs[&amp;#039;wikidata&amp;#039;..f]] then --remove duplicate&lt;br /&gt;
						navboxParams[&amp;#039;group&amp;#039;..f] = nil&lt;br /&gt;
						navboxParams[&amp;#039;list&amp;#039;..f] = nil&lt;br /&gt;
					else&lt;br /&gt;
						rowIDs[parentArgs[&amp;#039;wikidata&amp;#039;..f]] = true&lt;br /&gt;
						if f &amp;gt; firstRow and (parentArgs[&amp;#039;title&amp;#039;..f] == currentTitle.text or &lt;br /&gt;
						   parentArgs[&amp;#039;wikidata&amp;#039;..f] == currentEntityId) then --move item linked to page to top&lt;br /&gt;
							if navboxParams[&amp;#039;group&amp;#039;..f] and &lt;br /&gt;
							   navboxParams[&amp;#039;group&amp;#039;..f] ~= &amp;#039;&amp;#039; and &lt;br /&gt;
							   navboxParams[&amp;#039;list&amp;#039;..f] and &lt;br /&gt;
							   navboxParams[&amp;#039;list&amp;#039;..f] ~= &amp;#039;&amp;#039; then&lt;br /&gt;
								local tempGroup, tempList = navboxParams[&amp;#039;group&amp;#039;..f], navboxParams[&amp;#039;list&amp;#039;..f]&lt;br /&gt;
								navboxParams[&amp;#039;group&amp;#039;..f], navboxParams[&amp;#039;list&amp;#039;..f] = navboxParams[&amp;#039;group&amp;#039;..firstRow], navboxParams[&amp;#039;list&amp;#039;..firstRow]&lt;br /&gt;
								navboxParams[&amp;#039;group&amp;#039;..firstRow], navboxParams[&amp;#039;list&amp;#039;..firstRow] = tempGroup, tempList&lt;br /&gt;
							end&lt;br /&gt;
						end&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
			--adjust navbox for number of rows&lt;br /&gt;
			navboxParams[&amp;#039;title&amp;#039;] = &amp;#039;[[Ajutor:Identificatori taxonomici|Identificatori taxonomici]]&amp;#039;&lt;br /&gt;
			if rowCount &amp;gt; 2 then&lt;br /&gt;
				navboxParams[&amp;#039;navbar&amp;#039;] = &amp;#039;plain&amp;#039;&lt;br /&gt;
			else&lt;br /&gt;
				navboxParams[&amp;#039;state&amp;#039;] = &amp;#039;off&amp;#039;&lt;br /&gt;
				navboxParams[&amp;#039;navbar&amp;#039;] = &amp;#039;off&amp;#039;&lt;br /&gt;
			end&lt;br /&gt;
		elseif parentArgs[&amp;#039;noTitle&amp;#039;..firstRow] then&lt;br /&gt;
			navboxParams[&amp;#039;group&amp;#039;..firstRow] = &amp;#039;[[Ajutor:Identificatori taxonomici|Identificatori taxonomici]]&amp;#039;&lt;br /&gt;
		else&lt;br /&gt;
			navboxParams[&amp;#039;group&amp;#039;..firstRow] = &amp;#039;[[Ajutor:Identificatori taxonomici|Identificatori taxonomici]]&amp;lt;br /&amp;gt;&amp;#039; .. navboxParams[&amp;#039;group&amp;#039;..firstRow]&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		--return navbox&lt;br /&gt;
		outString = Navbox._navbox(navboxParams)&lt;br /&gt;
	end --if rowCount &amp;gt; 0&lt;br /&gt;
	&lt;br /&gt;
	--Add categories&lt;br /&gt;
	if string.sub(currentTitle.subpageText,1,9) == &amp;#039;testcases&amp;#039; then parentArgs[&amp;#039;demo&amp;#039;] = true end&lt;br /&gt;
	if not isNilOrEmpty( parentArgs[&amp;#039;demo&amp;#039;] ) then&lt;br /&gt;
		outString = outString .. mw.text.nowiki(table.concat(categories)) .. &amp;#039;&amp;lt;br /&amp;gt;&amp;#039;&lt;br /&gt;
	elseif currentTitle.namespace == 0 then&lt;br /&gt;
		outString = outString .. table.concat(categories)&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	return outString .. errors&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Ana Vornic</name></author>
	</entry>
</feed>